vICMSMono no ICMS02: cálculo, arredondamento e rejeição 962
<vICMSMono>det › imposto › ICMS › ICMS02 › vICMSMonoRevisão editorial em 14 de out. de 2026. As versões e condições das regras estão indicadas ao longo do artigo.
vICMSMono é o valor do ICMS próprio do item representado por ICMS02. Ele aparece em /nfeProc/NFe/infNFe/det/imposto/ICMS/ICMS02/vICMSMono e resulta da quantidade tributada qBCMono multiplicada pela alíquota ad rem adRemICMS.
É um valor monetário, diferente da quantidade e da alíquota por unidade. A tag é obrigatória no ICMS02; seu formato no XSD não comprova que o imposto foi calculado sobre dados corretos.
Como refazer a conta com as mesmas entradas
Use a quantidade e a alíquota efetivamente enviadas no item: vICMSMono = qBCMono × adRemICMS. A quantidade precisa estar na unidade à qual a alíquota se refere. Não use valor de venda no lugar de quantidade e não divida a alíquota ad rem por 100.
Exemplo exclusivamente sintético: 100,0000 unidades e R$ 1,2345 por unidade resultam em R$ 123,45. Para 12,3456 unidades com a mesma alíquota assumida, o produto é 15,2406432, arredondado para R$ 15,24. A alíquota e a unidade do exemplo não recomendam parâmetros para um combustível real.
Preserve as casas da quantidade e da alíquota antes de multiplicar. O imposto do XML usa até 13 dígitos inteiros e duas casas decimais quando expresso com fração (TDec_1302); vírgula, símbolo de moeda e separador de milhar não são aceitos. O resultado final com duas casas não significa que as entradas também só possam ter duas.
Quando a rejeição 962 se aplica
Na NT 2023.001 v1.60, N39-10/962 verifica NF-e modelo 55 com CST 02 ou 15, finalidade normal (finNFe=1) e quantidade tributada informada. O valor declarado é comparado ao produto qBCMono × adRemICMS.
A nota *4 manda arredondar a multiplicação para duas casas e admite tolerância de R$ 0,01 para mais ou para menos na validação. Isso descreve a checagem, não uma margem para escolher arbitrariamente o valor fiscal. O /65 aparece tachado no PDF: não se atribui essa mesma regra à NFC-e somente porque a extração de texto conserva “55/65”. NT 2023.001, p.37–38.
Se a quantidade estiver ausente numa NF-e com CST 02, a N37a-10/767 já trata dessa falta. Um valor monetário preenchido não substitui a base quantitativa.
Como ler o valor no grupo
Grupo sintético completo, parcial em relação à nota, sem produto real ou aptidão de transmissão:
<ICMS02 xmlns="http://www.portalfiscal.inf.br/nfe">
<orig>0</orig>
<CST>02</CST>
<qBCMono>12.3456</qBCMono>
<adRemICMS>1.2345</adRemICMS>
<vICMSMono>15.24</vICMSMono>
</ICMS02>
O valor de R$ 15,24 pertence a esse item. O mesmo nome vICMSMono aparece em total/ICMSTot, mas ali representa o somatório da nota. O caminho completo e o nItem evitam confundir essas ocorrências.
Valor próprio, retenção e total não são a mesma parcela
vICMSMonoReten é imposto monofásico sujeito a retenção, e vICMSMonoRet é imposto cobrado anteriormente. Têm significado e totalizadores próprios. Não some essas três parcelas para preencher o total de ICMS monofásico próprio.
A W06c-10/967, indicada como facultativa para o modelo 55, compara o total vICMSMono com a soma dos valores próprios dos itens; sua observação manda considerar zero quando não informado. Essa convenção é da validação, não autorização para substituir informação desconhecida por zero. Dois itens sintéticos com R$ 123,45 e R$ 15,24 têm total próprio de R$ 138,69. Some os valores monetários dos itens representados, sem somar alíquotas ou recalcular usando uma alíquota média.
Roteiro para uma diferença de valor
Localize o item no retorno, compare a quantidade serializada com a medição/conversão documentada e confronte a alíquota com o produto e a data da tabela. Refaça a multiplicação preservando precisão, confira o arredondamento e depois compare o total com a soma dos itens. Uma diferença de grandeza pode apontar unidade trocada; centavos podem envolver precisão, mas cada hipótese precisa ser comprovada.
Corrija a origem do dado ou a geração quando o erro estiver demonstrado. O tratamento, a alíquota e a quantidade legal precisam ser confirmados com os documentos da operação e o responsável contábil. Não ajuste só o resultado para forçar autorização, não edite XML assinado e não trate validação de schema como confirmação de autorização ou de regularidade da apuração.
Referências oficiais
- Schemas XML NF-e/NFC-e PL_010f_v1.04, versão 010f v1.04, catálogo publicado em 31/08/2026 — declarações ICMS02, ICMS51 e tipo Torig.
- Tipos básicos do schema NF-e/NFC-e, versão PL_010f_v1.04 — TDec_1302, TDec_1104v, TDec_0302a04, TDec_0302a04Opc, TDec_0302a04Max100.
- NT 2023.001 — Tributação Monofásica sobre Combustíveis, versão 1.60, junho de 2025 — p. 21: N02a/ICMS02; p. 34–35: N12-20/30/70; p. 36: N12-100/110, N37a-10 e N38-10 revogada; p. 37: N39-10, modelo 65 tachado; p. 38 nota *4; p. 39: totais W06b.1/W06c.
- IT 2023.003 — Tabela de Combustíveis Sujeitos à Tributação Monofásica, versão 1.08, dezembro de 2025 — p. 2: novos valores ad rem para 2026, implantação 01/01/2026; p. 3: finalidade e tabela usada na autorização.
Referência técnica para integração
- XPath completo
/nfeProc/NFe/infNFe/det/imposto/ICMS/ICMS02/vICMSMono- 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