Fiscal
Como é Feito o Rateio do Frete na NF-e? Fórmula, Exemplo Prático e Como Evitar a Rejeição 533

Entenda como funciona o rateio proporcional de frete na NF-e (modelo 55): cálculo sobre valor líquido dos itens, tratamento de dízimas e centavos, impacto no ICMS/PIS/COFINS e como a API NFER automatiza a distribuição sem Rejeição 533.
Ao vender produtos pela internet ou emitir uma Nota Fiscal Eletrônica (NF-e, modelo 55) que envolva entrega cobrada do destinatário, muitos empresários e desenvolvedores se deparam com uma exigência técnica da Secretaria da Fazenda (SEFAZ): o valor do frete não pode constar apenas no valor total da nota. Ele deve ser rateado e detalhado individualmente em cada um dos itens faturados.
Esse processo é conhecido como rateio do frete. Se a divisão entre os produtos não for feita com rigor matemático — especialmente no tratamento de frações de centavos e abatimento de descontos —, a SEFAZ bloqueia a autorização da nota com a Rejeição 533 (Total do Frete difere do somatório dos itens) ou a Rejeição 534 (Total da NF-e difere do somatório dos itens).
O Que É e Como Funciona o Rateio do Frete?
O rateio do frete consiste em distribuir o custo total de entrega pago pelo cliente entre todos os produtos que compõem o carrinho de compras. Essa distribuição é realizada de maneira proporcional à participação financeira líquida de cada mercadoria no pedido.
A fórmula padrão adotada pelo fisco e pelas melhores práticas contábeis é:
Exemplo Prático Passo a Passo
Imagine uma compra de informática em um e-commerce com 3 produtos e frete de R$ 30,00:
- Item 1 (Teclado Mecânico): R$ 100,00
- Item 2 (Mouse Gamer): R$ 60,00
- Item 3 (Monitor Ultrawide): R$ 140,00
- Valor Total dos Produtos: R$ 300,00 (R$ 100,00 + R$ 60,00 + R$ 140,00)
- Valor Total do Frete (vFrete da Nota): R$ 30,00
Aplicando a fórmula para descobrir a tag <vFrete> de cada item no XML da NF-e:
- Item 1: (R$ 100,00 / R$ 300,00) × R$ 30,00 = 0,3333... × R$ 30,00 = R$ 10,00
- Item 2: (R$ 60,00 / R$ 300,00) × R$ 30,00 = 0,2000 × R$ 30,00 = R$ 6,00
- Item 3: (R$ 140,00 / R$ 300,00) × R$ 30,00 = 0,4666... × R$ 30,00 = R$ 14,00
Ao somar os valores rateados: R$ 10,00 + R$ 6,00 + R$ 14,00 = R$ 30,00. A soma fecha perfeitamente com o total da entrega, e a NF-e é autorizada sem qualquer divergência.
O Grande Desafio de Engenharia: A Armadilha das Dízimas e Centavos
No mundo real do comércio eletrônico e do varejo, os números quase nunca são redondos. O que acontece quando um frete de R$ 10,00 precisa ser dividido entre 3 produtos de R$ 50,00 cada?
- Item 1: (50 / 150) × 10 = R$ 3,3333... → arredondado para R$ 3,33
- Item 2: (50 / 150) × 10 = R$ 3,3333... → arredondado para R$ 3,33
- Item 3: (50 / 150) × 10 = R$ 3,3333... → arredondado para R$ 3,33
Se o sistema somar os itens arredondados: R$ 3,33 + R$ 3,33 + R$ 3,33 = R$ 9,99. O frete total informado na capa da nota foi de R$ 10,00. Resultado? Rejeição 533 imediata da SEFAZ, pois existe uma diferença de R$ 0,01.
Como o NFER Executa o Rateio no Código
Em nossa infraestrutura interna (distributeValorFreteToItems), consideramos a base líquida real de cada item — subtraindo descontos incondicionais (vDesc) antes de calcular o percentual de rateio:
Rateio Automático vs Frete Manual por Item na API NFER
A API REST do NFER oferece flexibilidade total para desenvolvedores e softwares de ERP:
| Cenário de Envio | Como Funciona na API NFER | Quando Utilizar |
|---|---|---|
| Frete Global na Raiz (valorFrete / vFrete) | O NFER calcula o rateio líquido automático e faz a equalização de centavos em todos os itens. | Checkouts de e-commerce, VTEX, Shopify, Nuvemshop ou WooCommerce onde o frete é único no carrinho. |
| Frete Individual nos Itens (itens[].valorFrete) | Se você já calculou o frete item a item na sua TMS ou transportadora, o NFER preserva os seus valores e não sobrescreve. | Sistemas WMS e logísticos avançados com regras de frete por peso, cubagem ou múltiplos centros de distribuição. |
| Frete dentro de transporte (transporte.valorFrete) | Compatibilidade total com o layout do grupo de transporte da NF-e. | ERPs legados que agrupam dados de frete no bloco de transportadora. |
Exemplo de Payload na API REST do NFER
Basta enviar o valorFrete na raiz do documento. Você não precisa calcular frações decimais manualmente no seu código:
O NFER gera o XML oficial da SEFAZ com <vFrete>10.00</vFrete>, <vFrete>6.00</vFrete> e <vFrete>14.00</vFrete> em cada nó <prod>, posicionados rigorosamente na sequência exigida pelo XSD antes de <indTot>.
Perguntas Frequentes (FAQ)
O frete entra na base de cálculo do ICMS?
Sim. De acordo com a Lei Complementar 87/96 (art. 13, § 1º, II, "a"), o frete cobrado pelo emitente ao adquirente integra a base de cálculo do ICMS. O mesmo vale para o IPI, PIS e COFINS nas operações tributadas.
Posso ratear o frete pelo peso em vez do valor?
Para fins de precificação comercial interna ou contratos com transportadoras, o rateio por peso é bastante utilizado. No entanto, perante o fisco e para preenchimento dos campos da NF-e, o rateio proporcional ao valor das mercadorias é a regra padrão que assegura proporcionalidade direta com a base tributável dos produtos.
E se um produto tiver frete grátis e outro não no mesmo pedido?
Nesse caso específico, você deve informar o valor do frete manualmente nos itens correspondentes (itens[].valorFrete), deixando o item com frete grátis zerado. O NFER respeitará a distribuição manual fornecida pelo seu sistema.
Simplifique a emissão de NF-e e o rateio de frete com o NFER
Engine fiscal com rateio inteligente, tratamento automático de centavos, assinatura A1 e integração via API REST em minutos.
Testar gratuitamente em homologação









