Pular para o conteúdo
Fiscal ProBiblioteca
NF-e e NFC-e · Produtos e serviços

vFrete no item da NF-e: valor, rateio e rejeição 535

<vFrete>det › prod › vFrete

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

vFrete em /nfeProc/NFe/infNFe/det/prod/vFrete registra o valor de frete associado ao item. É um valor monetário opcional. Não identifica transportador, modalidade de responsabilidade ou imposto retido; esses dados possuem campos próprios em outros grupos.

Valor do frete e modalidade são informações diferentes

transp/modFrete descreve a modalidade de responsabilidade pelo frete. Seu código não é uma quantia em reais. O valor do produto em vProd continua sendo o bruto do item; o frete destacado é representado separadamente. A existência de transportador ou veículo não determina, por si só, qual valor deve ser declarado no item.

transp/retTransp/vServ representa o valor do serviço de transporte no grupo de retenção de ICMS. Não é automaticamente o total de prod/vFrete, e seus valores e condições dependem do serviço documentado. O valor de um CT-e também não deve ser copiado por uma correspondência de nomes sem verificar a operação e como o custo foi representado na NF-e.

Distribuição entre itens e centavos

Quando o documento possui um valor global de frete a distribuir, o critério precisa estar definido e documentado na origem. Peso, volume, valor ou outro critério podem resultar em distribuições diferentes; a tag não escolhe um deles. Depois de confirmada a distribuição, os centavos de cada item precisam somar o total efetivo.

Considere somente um exercício aritmético com frete total de R$ 10,00 distribuído igualmente entre três linhas. Arredondar cada parcela para 3.33 produz 9.99. Uma distribuição documentada de 3.33, 3.33 e 3.34 conserva 10.00. O exemplo mostra o resíduo de arredondamento; não define qual linha deve recebê-lo numa operação real.

Total do frete e rejeição 535

W08-10, de aplicação facultativa nos modelos 55/65, compara total/ICMSTot/vFrete ao somatório de det/prod/vFrete. A divergência gera 535. A regra publicada não manda filtrar essa soma por indTot como faz W07-10 para o bruto dos produtos. Não transfira o filtro de outra regra sem verificar a condição específica. MOC, W08-10.

O frete contribui para a composição de valores da nota no contexto de totalização aplicável. Isso não define a incidência ou a base dos tributos do item. Uma soma correta pode coexistir com um parâmetro fiscal não confirmado, que exige análise própria da operação.

Formato e exemplo de posição

O tipo do item TDec_1302Opc aceita valor positivo com até treze dígitos inteiros e duas casas quando decimal, sem zero. Quando não existe frete a informar no item, a tag pode ser omitida. O total de frete tem outra ocorrência e seu tipo admite 0.00; não se aplica automaticamente ao campo opcional do item.

Fragmento sintético e parcial de uma das parcelas do exercício. Não está pronto para transmissão.

<prod xmlns="http://www.portalfiscal.inf.br/nfe">
  <!-- Campos anteriores, inclusive vUnTrib, omitidos -->
  <vFrete>3.33</vFrete>
  <indTot>1</indTot>
</prod>

Como investigar soma diferente

Preserve XML, retorno e documento de origem. Some os fretes efetivamente serializados, confira o total e compare à distribuição documentada. Veja se uma parcela foi omitida, duplicada ou arredondada em etapa diferente, ou se o total recebeu valor do grupo de transporte em vez da soma dos itens.

Quando há erro de mapeamento ou cálculo demonstrável, corrija a origem e confira novamente todas as parcelas. Se falta valor ou critério confirmado, obtenha esse dado; não altere modFrete, tributação ou uma quantia verdadeira para contornar a rejeição. Não edite XML assinado.

Fontes oficiais

Leitura relacionada

Referência técnica para integração

XPath completo
/nfeProc/NFe/infNFe/det/prod/vFrete
Namespace
http://www.portalfiscal.inf.br/nfe
Leiaute
4.00 · PL_010e_v1.02
Ocorrências no XSD
0–1 no contexto do elemento pai
Tipo
TDec_1302Opc · string
Preenchimento no catálogo
Opcional

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-9]{1}[1-9]{1}|0\.[1-9]{1}[0-9]{1}|[1-9]{1}[0-9]{0,12}(\.[0-9]{2})?
whiteSpace
preserve