Pular para o conteúdo
Fiscal ProBiblioteca
NF-e e NFC-e · ICMS

vICMS no ICMS00: cálculo do item, arredondamento e totalização

<vICMS>det › imposto › ICMS › ICMS00 › vICMS

Revisão editorial em 26 de set. de 2026. As versões e condições das regras estão indicadas ao longo do artigo.

ICMS00/vICMS informa o valor monetário do ICMS próprio daquele item. Sua conferência parte de vBC e pICMS: base multiplicada pelo percentual dividido por 100. É um resultado calculado, distinto da base, do preço e do FCP. O campo N17 é obrigatório nessa alternativa, conforme o MOC 7.0, Anexo I, p. 26.

Como conferir a conta sem escolher a tributação

Antes da multiplicação, base, modalidade, percentual e CST precisam estar definidos para a operação. A conta pode provar coerência desses números, mas não provar que a base ou alíquota adotadas são fiscalmente adequadas. Se o parâmetro estiver em dúvida, a confirmação deve considerar produto, UF, regime, operação, documentos e critério da base; o artigo não escolhe esses parâmetros.

Exemplo sintético: base já apurada de R$ 123,45 e percentual didático de 18%, sem FCP no grupo deste exemplo.

  1. Leia vBC=123.45 e pICMS=18.00.
  2. Converta percentual: 18 / 100 = 0,18.
  3. Calcule 123,45 × 0,18 = 22,221.
  4. Arredonde o resultado monetário para duas casas: R$ 22,22.
  5. Compare com vICMS=22.22.

A N17-20 do MOC, p. 111, com nota *4 na p. 117 se aplica à finalidade normal (finNFe=1) e aos CST 00, 10, 20 e 70, para modelos 55/65. É facultativa e associa divergência à rejeição 528. A nota manda arredondar o produto para duas casas e considerar tolerância de R$ 0,01 para mais ou para menos na validação. Essa tolerância não serve para completar imposto com valor arbitrário nem é regra universal para todas as rejeições.

Por que calcular por item importa

Considere, didaticamente, três itens com base R$ 0,03 cada e alíquota sintética de 18%. Cada produto é 0,03 × 0,18 = 0,0054, arredondado para R$ 0,01. A soma dos valores gravados nos três itens é R$ 0,03. Já recalcular sobre a base agregada de R$ 0,09 produz 0,09 × 0,18 = 0,0162, arredondado para R$ 0,02.

Esse exemplo explica uma diferença de consolidação: somar os valores monetários dos itens não equivale sempre a calcular novamente sobre a base total. Em notas com alíquotas distintas, a diferença de método é ainda mais evidente. A W04-10 compara o total de ICMS com o somatório dos valores dos itens, sem considerar valores dos CST 40, 41 e 50. A regra é facultativa e corresponde à rejeição 532. Não imponha essa exclusão ao ICMS00, que tem CST 00; examine a nota inteira para consolidar grupos diferentes corretamente.

Item, total, FCP e valor da nota

Informação Como distinguir
ICMS00/vICMS ICMS próprio de um item.
ICMSTot/vICMS Total consolidado de ICMS, conforme W04-10.
vFCP Valor do fundo em campo separado. Não entra somado em ICMS00/vICMS.
vICMSST ICMS por substituição tributária, em grupos que possuem essa informação. Não pertence a ICMS00.
ICMSTot/vNF Total da nota, com composição própria; não é a soma de preço mais todo tributo encontrado.

A fórmula geral da W16-10, atualizada na NT 2023.004 v1.20, seção 4.5, não apresenta ICMS próprio como parcela adicional. Assim, descobrir R$ 180,00 em vICMS não autoriza acrescentar R$ 180,00 ao vNF. Se o problema for rejeição 610, a conferência é dos componentes específicos do total, não a alteração desse campo por tentativa.

XML e formato monetário

No documento processado, procure nfeProc/NFe/infNFe/det/imposto/ICMS/ICMS00/vICMS. O nItem identifica a ocorrência. O tipo TDec_1302 do schema oficial aceita valor não negativo, até 13 dígitos inteiros e duas casas quando fracionário. Zero estruturalmente aceito não justifica substituir informação ausente por imposto zero.

Fragmento parcial do primeiro exemplo, com dados fiscais sintéticos assumidos; não inclui nota completa, assinatura ou protocolo e não está pronto para transmissão:

<ICMS00 xmlns="http://www.portalfiscal.inf.br/nfe">
  <orig>0</orig>
  <CST>00</CST>
  <modBC>3</modBC>
  <vBC>123.45</vBC>
  <pICMS>18.00</pICMS>
  <vICMS>22.22</vICMS> <!-- produto monetário arredondado -->
</ICMS00>

Diagnóstico: localizar a origem antes de corrigir

Retorno 528 no item: compare os três valores do XML enviado. Se a conta não bate, investigue fator percentual, percentual truncado, base diferente da memória e valor antigo mantido após alteração. Se a conta bate, confirme finalidade, item apontado, retorno e regra efetivamente aplicada; não atribua a diferença a dados de outro rascunho.

Retorno 532 no total: some os valores dos itens sujeitos à consolidação e confronte ICMSTot/vICMS. Se cada item está correto, o defeito pode estar na soma, na inclusão de grupos excluídos ou em recalcular sobre base agregada. Se um item está incorreto, recalcular apenas o total conserva o problema.

Valor maior pelo FCP: confira se a integração juntou os valores monetários de ICMS e FCP no mesmo campo. Com base sintética de R$ 1.000,00, ICMS 18% e FCP 2%, os valores separados são R$ 180,00 e R$ 20,00; vICMS=200.00 não representa essa separação.

Tela e XML diferentes: identifique a versão efetivamente transmitida e o momento do recálculo. A conferência fiscal ocorre sobre os valores enviados. Corrija a origem comprovada no emissor, regenere e confira item e total; não altere o arquivo assinado.

pICMS aprofunda precisão percentual, e vNF explica a composição distinta do total da nota.

Referência técnica para integração

XPath completo
/nfeProc/NFe/infNFe/det/imposto/ICMS/ICMS00/vICMS
Namespace
http://www.portalfiscal.inf.br/nfe
Leiaute
4.00 · PL_010e_v1.02
Ocorrências no XSD
1–1 no contexto do elemento pai
Tipo
TDec_1302 · string
Preenchimento no catálogo
Condicional

A ocorrência vale dentro da estrutura XML: um campo obrigatório em um grupo opcional não torna esse grupo obrigatório. A aplicação fiscal depende da operação e da versão da regra.

pattern
0|0\.[0-9]{2}|[1-9]{1}[0-9]{0,12}(\.[0-9]{2})?
whiteSpace
preserve