Pular para o conteúdo
FazendaNota
Rejeição 531

Total da BC do ICMS difere do somatório dos itens

Rejeição 531: Total da BC ICMS difere do somatório dos itens

TotalizadoresModelo 55RejeiçãoAtualizado em 24 de maio de 2026
Campos afetados:vBCtotalICMSTot

O que significa esta rejeição

O valor declarado em <vBC> dentro do grupo <total><ICMSTot> (totalizador da nota) não bate com o somatório das bases de cálculo do ICMS dos itens. A SEFAZ percorre cada <det>, soma o vBC de cada <ICMS>, e compara com o valor declarado no totalizador. Diferença de mais que um centavo gera a 531.

Esse erro é comum em sistemas que calculam o ICMS item a item e fazem o totalizador a partir de uma fórmula independente, em vez de simplesmente somar os itens.

Causas mais comuns

  • Cálculo de totais usando função estatística (round na média) em vez de soma direta dos itens.
  • Itens com CST de isenção ou imunidade somados ao total quando não deveriam (CST 40, 41, 50 não geram base de cálculo).
  • Arredondamento item por item, gerando soma diferente do total declarado.
  • Frete ou despesas acessórias somadas no totalizador mas não nas bases dos itens.
  • Cancelamento de um item após o cálculo do totalizador, sem recalcular.
  • Conversão de moeda em operação de exportação aplicada em momentos diferentes.

Regra de validação oficial

O Anexo I do MOC define, na regra W03-10, que <vBC> em <ICMSTot> deve ser exatamente igual à soma de todos os <vBC> dos itens (<det>), considerando apenas os itens com CST que geram base tributada (00, 10, 20, 30, 51, 60, 70, 90 para CRT 3; ou ICMSSN* correspondentes para Simples).

Exemplo XML, antes (errado)

<det nItem="1">
  <imposto>
    <ICMS><ICMS00><vBC>18000.00</vBC></ICMS00></ICMS>
  </imposto>
</det>
<det nItem="2">
  <imposto>
    <ICMS><ICMS00><vBC>5000.00</vBC></ICMS00></ICMS>
  </imposto>
</det>
<total>
  <ICMSTot>
    <vBC>20000.00</vBC>
  </ICMSTot>
</total>

(soma correta seria 23000.00, não 20000.00)

Exemplo XML, depois (correto)

<det nItem="1">
  <imposto>
    <ICMS><ICMS00><vBC>18000.00</vBC></ICMS00></ICMS>
  </imposto>
</det>
<det nItem="2">
  <imposto>
    <ICMS><ICMS00><vBC>5000.00</vBC></ICMS00></ICMS>
  </imposto>
</det>
<total>
  <ICMSTot>
    <vBC>23000.00</vBC>
  </ICMSTot>
</total>

Passo a passo para corrigir

  1. Identifique cada item da nota e seu respectivo <vBC>.
  2. Some todos os <vBC> dos itens com CST/CSOSN que geram base tributada. Itens isentos ou imunes têm <vBC>0.00</vBC>.
  3. Atribua o resultado à tag <vBC> em <ICMSTot>.
  4. Não use fórmulas independentes para o total. Sempre derive do somatório dos itens.
  5. Reenvie a nota.

Como o FazendaNota previne

O FazendaNota calcula <ICMSTot> por agregação direta a partir dos itens, sem fórmula paralela. Cada <vBC> em <ICMSTot> é a soma matemática dos itens correspondentes, com a mesma regra de arredondamento usada nos itens, evitando divergência de centavos.

Rejeições relacionadas

Referência oficial

Esta rejeição está descrita no Anexo I - Leiaute e Regra de Validação do Manual de Orientação do Contribuinte (MOC) v7.0 da NF-e, publicado pelo CONFAZ. Texto integral em https://www.confaz.fazenda.gov.br/legislacao/arquivo-manuais/moc7-visao-geral.pdf

Rejeições relacionadas