vDed em cana: valor individual da dedução
<vDed>cana › deduc › vDedRevisão editorial em 14 de out. de 2026. As versões e condições das regras estão indicadas ao longo do artigo.
vDed é o valor monetário de uma dedução individual em cana/deduc. O campo vem acompanhado de xDed, que identifica a dedução. Ele não é o total de todas as deduções e não informa uma quantidade de cana.
Caminho desta página: /nfeProc/NFe/infNFe/cana/deduc/vDed. O prefixo nfeProc identifica a nota processada; a informação estudada pertence ao conteúdo da NF-e, dentro de NFe/infNFe.
Origem e formato do valor
O montante vem do lançamento documentado da taxa ou contribuição na liquidação da aquisição. O XML não calcula a dedução a partir de uma percentagem: dentro de deduc há somente descrição e valor. Se a origem usou alguma fórmula contratual, a memória precisa ser conferida na origem, sem presumir alíquota a partir desta tag.
vDed usa TDec_1302, com até 13 algarismos inteiros e duas casas decimais, ponto decimal, sem símbolo de moeda, separador de milhar ou sinal negativo. O valor representa a quantia deduzida; não se coloca um número negativo para expressar que houve desconto. Zero admitido pelo tipo não dispensa a confirmação do lançamento. XSD PL 010f v1.04.
Exemplo do campo e conferência do par
Para uma dedução sintética de R$ 18,40 já definida no demonstrativo:
<vDed xmlns="http://www.portalfiscal.inf.br/nfe">18.40</vDed>
Este é um fragmento parcial, sem XML completo da nota. Na ocorrência de deduc, xDed deve preceder o campo. Se outro lançamento documentado tem R$ 6,60, a soma aritmética de conferência é R$ 25,00. vTotDed deve ser confrontado com esse conjunto; não copie R$ 25,00 nos dois vDed.
Com fornecimentos de R$ 500,00, o demonstrativo do exemplo teria líquido de R$ 475,00 após R$ 25,00 de deduções. A hipótese serve para reconciliar lançamento, total e líquido, sem prescrever taxa, fórmula contratual ou rejeição SEFAZ.
Quando o campo é obrigatório
Dentro de uma ocorrência de deduc, existe exatamente um vDed obrigatório, junto da descrição. O grupo deduc é opcional e repetível até 10 vezes; não haver dedução é diferente de haver uma dedução cujo valor está ausente.
O grupo cana é opcional no XSD compartilhado, mas a regra ZC01-10 do MOC relaciona sua presença em NFC-e, modelo 65, à rejeição 763. O contexto deste conteúdo é a NF-e modelo 55 de registro de aquisição de cana. Passar no XSD não dispensa a regra por modelo. MOC 7.0, p. 64–65 e 128.
O campo vDeducao de outro contexto tributário não tem o mesmo significado. Nenhum valor de dedução de aquisição deve ser transportado para uma base fiscal apenas pela semelhança dos nomes.
Valor incorreto ou XML rejeitado: o que comparar
Se a linha do demonstrativo indica R$ 18,40 e o XML mostra R$ 1.840,00, confira transformação de vírgula/ponto e separador de milhar. Se o total diverge exatamente pelo valor de uma linha, procure ocorrência duplicada ou omitida. Se o XML falha no schema, examine duas casas, sinal, posição depois de xDed e presença da descrição.
Compare documentos da mesma aquisição, safra e referência antes de modificar valores. A natureza e o fundamento da dedução devem ser confirmados com o responsável pelo documento e, quando envolver tratamento fiscal, com o responsável contábil. Corrija somente a origem comprovadamente divergente e gere novamente antes de assinar.
Fontes oficiais
- Leiaute NF-e/NFC-e — PL_010f_v1.04: cana/deduc/vDed l6452–6456; TDec_1302
- Tipos básicos NF-e/NFC-e — PL_010f_v1.04: TDec_1110v l247–256; TDec_1302; TString
- MOC 7.0 — Anexo I — 7.00, novembro/2020: Grupo ZC, p. 64–65; regra ZC01-10 e rejeição 763, p. 128
Referência técnica para integração
- XPath completo
/nfeProc/NFe/infNFe/cana/deduc/vDed- 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