vNF: como conferir o valor total da NF-e e da NFC-e
<vNF>total › ICMSTot › vNFRevisão editorial em 26 de set. de 2026. As versões e condições das regras estão indicadas ao longo do artigo.
vNF informa o valor total da nota no grupo total/ICMSTot. O emissor o calcula com os componentes da operação; por isso, ele pode diferir do total dos produtos. Para conferir uma diferença, compare o XML dos itens com os totais, incluindo descontos, frete e os tributos que efetivamente participam da soma. O campo está definido no MOC 7.0, Anexo I, campo W16.
Nesta página:
- O que entra na conferência
- Fórmula completa e parcelas condicionais
- Exemplo de soma e localização no XML
- Exemplo ampliado de reconciliação
- vNF, vProd, vPag e vNFTot são campos distintos
- Como conferir da origem até o XML
O que entra na conferência
Comece por ICMSTot/vProd, que consolida os produtos participantes da totalização. Depois confira vDesc, vFrete, vSeg, vOutro e os demais componentes aplicáveis. Não some todo imposto encontrado no XML: ICMS próprio, por exemplo, não aparece como parcela adicional na regra W16-10.
A regra possui atualizações posteriores ao MOC. A NT 2023.004 v1.20, seção 4.5, W16-10 contempla também o ICMS monofásico sujeito à retenção e, condicionalmente, PIS-ST e COFINS-ST. A dedução de ICMS desonerado depende do contexto dos itens e de indDeduzDeson. Importação e faturamento direto de veículos novos têm tratamento específico. Use a regra completa para esses casos; uma soma reduzida não serve para qualquer nota.
Se houver rejeição, identifique o código retornado: a rejeição 610 trata da divergência entre vNF e seus componentes. Corrigir apenas o total pode esconder um valor incorreto em um item ou componente.
Fórmula completa e parcelas condicionais
Para a regra geral, a NT 2023.004 v1.20 apresenta os seguintes componentes:
vNF = vProd − vDesc − vICMSDeson
+ vST + vFCPST + vICMSMonoReten
+ vFrete + vSeg + vOutro + vII + vIPI + vIPIDevol
+ ISSQNtot/vServ
+ soma de PISST/vPIS dos itens com indSomaPISST = 1
+ soma de COFINSST/vCOFINS dos itens com indSomaCOFINSST = 1
As parcelas até vIPIDevol estão em ICMSTot. vST é o total do ICMS por substituição tributária; vFCPST é o FCP da ST; vICMSMonoReten é o ICMS monofásico sujeito à retenção. vII é imposto de importação, vIPI é IPI e vIPIDevol é IPI devolvido, quando aplicáveis. O serviço vem de ISSQNtot/vServ, e as últimas duas somas vêm dos grupos de PIS-ST e COFINS-ST dos itens, condicionadas individualmente aos respectivos indicadores.
Isso explica por que ICMSTot/vPIS, ICMSTot/vCOFINS, ICMSTot/vICMS e ICMSTot/vFCP não podem ser acrescentados automaticamente: não são essas parcelas adicionais da regra. A incidência dos tributos, seu valor e sua participação precisam estar definidos para a operação; a fórmula é uma conferência técnica desses componentes, não uma escolha de tributação.
Faturamento direto de veículos, importação e desoneração
Na exceção 1, para veículos novos com veicProd/tpOp=2, a composição específica não inclui vST, vFCPST nem vIPIDevol. Mantém os demais componentes listados na composição específica, incluindo vICMSMonoReten e PIS-ST/COFINS-ST condicionais. Não basta retirar somente ICMS-ST da fórmula geral.
A exceção 2 afasta a W16-10 nas operações de importação com CFOP iniciado por 3. A dispensa dessa validação não dispensa coerência dos valores nem as outras regras da nota; não altere CFOP para afastar a conferência.
A exceção 4 permite não subtrair o ICMS desonerado dos itens com indDeduzDeson=0 ou indicador ausente. Para uma nota com indicadores distintos, examine cada parcela desonerada na sua origem. A antiga exceção 3 aparece riscada e foi substituída; não sustenta uma dispensa genérica de dedução para qualquer contexto.
Essas condições estão na NT 2023.004 v1.20, seção 4.5, p. 15–16. Quando houver dúvida sobre deduzir o benefício ou somar contribuição-ST, confirme o parâmetro específico e o fundamento com o responsável contábil; não escolha o indicador pela soma desejada.
Exemplo de soma e localização no XML
Considere uma operação sintética com produtos de R$ 200,00, desconto de R$ 10,00 e frete de R$ 28,00. Somente neste exemplo, sem serviços, desoneração ou outros tributos e despesas adicionais na totalização, e fora das exceções da W16-10:
200,00 − 10,00 + 28,00 = 218,00.
O campo correspondente seria:
<vNF xmlns="http://www.portalfiscal.inf.br/nfe">218.00</vNF>
O fragmento é parcial e sintético, destinado a localizar o campo. Não é uma NF-e completa nem está pronto para transmissão. No XML, use ponto decimal e não inclua símbolo de moeda. Na nota sem protocolo, o caminho é NFe/infNFe/total/ICMSTot/vNF; no XML processado, há o envelope nfeProc antes de NFe.
Exemplo ampliado de reconciliação
Assuma, exclusivamente para demonstrar a soma, operação fora das exceções de veículos/importação, com produtos de R$ 1.000,00, desconto de R$ 50,00, ICMS desonerado de R$ 20,00 integralmente sujeito à dedução já confirmada, ICMS-ST R$ 80,00, FCP-ST R$ 8,00, frete R$ 30,00, seguro R$ 5,00, despesas R$ 10,00 e IPI R$ 40,00. Assuma ainda PIS-ST R$ 3,00 com indicador 1 e COFINS-ST R$ 7,00 com indicador 0. Todos os demais componentes da fórmula são zero ou não aplicáveis neste exemplo. Esses dados não sugerem incidência nem alíquotas para uma operação real.
- Produtos menos desconto e desoneração dedutível:
1.000 − 50 − 20 = 930. - Acrescente ICMS-ST e FCP-ST:
930 + 80 + 8 = 1.018. - Acrescente frete, seguro e despesas:
1.018 + 30 + 5 + 10 = 1.063. - Acrescente IPI:
1.063 + 40 = 1.103. - Some somente PIS-ST marcado para somar:
1.103 + 3 = 1.106. - COFINS-ST com indicador 0 não acrescenta R$ 7,00. Resultado:
vNF=1106.00.
Se aparecer vNF=1113.00, a diferença R$ 7,00 sugere verificar o indicador de COFINS-ST e a soma feita. Se aparecer R$ 1.126,00, a diferença R$ 20,00 sugere conferir a participação da desoneração. Igualdade entre diferença e parcela orienta a investigação; não prova causa sem o XML dos itens.
Trecho parcial dos totais correspondentes à primeira soma, com os demais campos omitidos. Não é ICMSTot completo nem documento pronto para transmissão:
<ICMSTot xmlns="http://www.portalfiscal.inf.br/nfe">
<!-- demais campos obrigatórios omitidos no fragmento -->
<vICMSDeson>20.00</vICMSDeson>
<vST>80.00</vST>
<vFCPST>8.00</vFCPST>
<vProd>1000.00</vProd>
<vFrete>30.00</vFrete>
<vSeg>5.00</vSeg>
<vDesc>50.00</vDesc>
<vIPI>40.00</vIPI>
<vOutro>10.00</vOutro>
<vNF>1106.00</vNF>
</ICMSTot>
As contribuições-ST e seus indicadores não aparecem nesse fragmento: devem ser conferidos nos grupos dos itens. A dedução depende também de seu contexto por item; o total desonerado sozinho não informa os indicadores.
vNF, vProd, vPag e vNFTot são campos distintos
| Campo | O que representa |
|---|---|
ICMSTot/vProd |
Total de produtos e serviços consolidado nesse grupo, conforme os critérios de participação dos itens. |
ICMSTot/vNF |
Total da nota nesse grupo, com os componentes aplicáveis. |
pag/detPag/vPag |
Valor de cada detalhamento de pagamento; sua conferência envolve as regras de pagamento e, quando cabível, troco. |
total/vNFTot |
Total da NF-e com IBS, CBS e IS, previsto na NT 2025.002. Não é outro nome para ICMSTot/vNF. |
A NT 2025.002 v1.51, campo W60 e regras W60-05/W60-10 relaciona vNFTot à soma dos valores totais dos itens (vItem). Nessa versão, essas duas regras estão marcadas como implementação futura. A existência do campo no leiaute não comprova, por si, a ativação dessas validações. Confira o cronograma e as regras aplicáveis ao ambiente e à data do documento antes de utilizá-las.
Como conferir da origem até o XML
vNF é estruturalmente obrigatório dentro de ICMSTot. O tipo TDec_1302 do pacote oficial de schemas aceita valor não negativo de até 13 dígitos inteiros; quando fracionário, usa duas casas. Zero aceito no tipo não significa que uma nota sem valores confirmados deva ter total zero.
Para reconstruir ICMSTot/vProd, a W07-10 compara o total com valores dos itens sujeitos ao ICMS, considerando os que têm prod/indTot=1. Por exemplo, em uma NF-e sintética com item de R$ 100,00 participante e item de R$ 30,00 não participante, supondo que a indicação esteja corretamente definida e seja admissível naquele contexto, a parcela ICMSTot/vProd é R$ 100,00, não R$ 130,00. Isso ilustra a origem de uma parcela do total, sem autorizar excluir produtos para ajustar a nota. Frete, seguro, desconto e impostos possuem suas próprias relações de totalização; não estenda automaticamente o filtro de vProd a todos os campos. O MOC, p. 121, W07-10 a W12a-10 permite conferir essas relações separadamente.
Guarde o XML efetivamente transmitido, identifique modelo, ambiente e documento e reconcilie os componentes. Para cada total divergente, liste os itens que o formaram e suas parcelas de desconto, frete e tributos. Compare com pedido ou memória de cálculo apenas depois de estabelecer que representam a mesma versão.
Um total de produtos desatualizado, item excluído da participação, rateio duplicado ou contribuição-ST somada sem indicador podem produzir a mesma diferença final. Corrija a origem demonstrada, recalcule no emissor e confira itens e total. Não compense uma divergência em vOutro nem edite o XML assinado. A rejeição 610 identifica essa relação de totalização; o valor vNF isolado não comprova autorização, pagamento ou situação fiscal do documento.
Para conferir a origem do total de produtos, consulte ICMSTot/vProd. Para entender a participação da desoneração, consulte indDeduzDeson.
Referência técnica para integração
- XPath completo
/nfeProc/NFe/infNFe/total/ICMSTot/vNF- 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
- Obrigatório
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