Para resolver a Rejeição 1052, revise o cálculo do IBS Municipal do item (vIBSMun) dentro do grupo gIBSMun. A SEFAZ valida se o valor informado em vIBSMun foi calculado corretamente a partir da base vBC, da alíquota municipal (pIBSMun ou pAliqEfet, quando houver redução), subtraindo vDif e vDevTrib.
Se existir o grupo de redução gIBSMun/gRed, o cálculo deve usar a alíquota efetiva (pAliqEfet), e não a pIBSMun.
Explicando a validação
A Rejeição (1052): “Valor do IBS Municipal difere do calculado [nItem: 999]” indica que, ao informar o grupo IBS de competência do Município (gIBSMun), o valor de vIBSMun não bate com a fórmula esperada pela SEFAZ.
Na prática, o que isso significa?
A SEFAZ calcula o IBS Municipal assim:
Regra geral (sem redução):
vIBSMun = (vBC × (pIBSMun / 100)) – vDif – vDevTribSe informado grupo de redução (gIBSMun/gRed):
a alíquota utilizada deve ser a Alíquota Efetiva (pAliqEfet):
vIBSMun = (vBC × (pAliqEfet / 100)) – vDif – vDevTrib
Observações da regra:
A SEFAZ aceita tolerância de ±0,01 (por arredondamento).
A rejeição normalmente ocorre quando:
o sistema calcula vIBSMun sem subtrair vDif e/ou vDevTrib;
existe gRed, mas o cálculo usa pIBSMun (em vez de pAliqEfet);
há arredondamento/truncamento diferente do esperado e a diferença passa de 0,01.
Como Resolver
Para resolver a Rejeição: Valor do IBS Municipal difere do calculado, verifique se:
O item possui o grupo gIBSMun informado.
A base gIBSCBS/vBC (vBC) está correta.
Você está usando a alíquota correta:
Sem gRed: use pIBSMun
Com gRed: use pAliqEfet
Os valores vDif e vDevTrib (se informados) estão sendo subtraídos no cálculo.
A diferença entre vIBSMun calculado e vIBSMun informado está dentro de ±0,01.
Se sim, então:
Recalcule o IBS Municipal com a fórmula correspondente (com ou sem gRed).
Confirme se vDif e vDevTrib foram abatidos corretamente.
Ajuste o valor de vIBSMun no XML e reenvie.
Exemplo da estrutura em XML:
<det nItem="999">
<imposto>
<gIBSCBS>
<vBC>100.00</vBC>
</gIBSCBS>
<gIBSMun>
<pIBSMun>2.00</pIBSMun>
<vDif>0.00</vDif>
<vDevTrib>0.00</vDevTrib>
<!-- vIBSMun = 100,00 * 2% = 2,00 -->
<vIBSMun>2.00</vIBSMun>
</gIBSMun>
</imposto>
</det>JSON — exemplo
1) Sem redução / sem diferimento / sem devolução
{
"itens": [
{
"codigo": "001",
"tributos": {
"ibscbs": {
"cst": "550",
"classificacao": "5500020",
"baseCalculo": 1000.00,
"municipio": {
"aliquota": 0.05,
"valor": 0.50
}
}
}
}
]
}
2) Com redução (usar alíquota efetiva no cálculo)
{
"itens": [
{
"codigo": "001",
"tributos": {
"ibscbs": {
"cst": "550",
"classificacao": "5500020",
"baseCalculo": 1000.00,
"municipio": {
"aliquota": 0.05,
"reducao": {
"aliquota": 40.00,
"aliquotaEfetiva": 0.03
},
"valor": 0.30
}
}
}
}
]
}
3) Com diferimento e/ou devolução (quando aplicável)
Quando existir diferimento, a NT define:
vDif = vBC × (pIBSMun/100) × (pDif/100)(ou usandopAliqEfetse houver redução).
{
"itens": [
{
"codigo": "001",
"tributos": {
"ibscbs": {
"cst": "550",
"classificacao": "5500020",
"baseCalculo": 1000.00,
"municipio": {
"aliquota": 0.05,
"diferimento": { "percentual": 50.00, "valor": 0.25 },
"devolucao": { "valor": 0.05 },
"valor": 0.20
}
}
}
}
]
}
TX2 — exemplo
1) Sem redução
INCLUIRITEM
nItem_H02=1
; IBSCBS
CST_UB13=550
cClassTrib_UB14=5500020
vBC_UB15=1000.00
; IBS Municipal (gIBSMun)
pIBSMun_UB37=0.05
vIBSMun_UB54=0.50
SALVARITEM
2) Com redução (gIBSMun/gRed)
INCLUIRITEM
nItem_H02=1
CST_UB13=550
cClassTrib_UB14=5500020
vBC_UB15=1000.00
pIBSMun_UB37=0.05
; Redução Municipal (gRed)
pRedAliq_UB46=40.00
pAliqEfet_UB47=0.03
vIBSMun_UB54=0.30
SALVARITEM
3) Com diferimento e devolução (quando existirem)
INCLUIRITEM
nItem_H02=1
CST_UB13=550
cClassTrib_UB14=5500020
vBC_UB15=1000.00
pIBSMun_UB37=0.05
; Diferimento (gDif)
pDif_UB41=50.00
vDif_UB42=0.25
; Devolução (gDevTrib)
vDevTrib_UB44=0.05
vIBSMun_UB54=0.20
SALVARITEMREC — exemplo
1) Sem redução
UB|
UB12|550|5500020|
UB15|1000.00|0.00|
UB36|0.05|0.50|
2) Com redução
UB|
UB12|550|5500020|
UB15|1000.00|0.00|
UB36|0.05|0.30|
UB45|40.00|0.03|
3) Com diferimento e devolução (quando existirem)
UB|
UB12|550|5500020|
UB15|1000.00|0.00|
UB36|0.05|0.20|
UB40|50.00|0.25|
UB43|0.05|Exceções ou Observações
A SEFAZ aceita tolerância de ±0,01 na comparação do cálculo do vIBSMun (por arredondamento).
Se existir gIBSMun/gRed, o cálculo obrigatoriamente deve usar pAliqEfet (e não pIBSMun).
Se o seu sistema calcula com mais casas e só arredonda no final, garanta que o valor enviado no XML siga a mesma lógica do validador para não ultrapassar a tolerância.
Comentários
0 comentário
Por favor, entre para comentar.