anoFab na NF-e: ano de fabricação do veículo novo
<anoFab>det › prod › veicProd › anoFabRevisão editorial em 14 de out. de 2026. As versões e condições das regras estão indicadas ao longo do artigo.
anoFab informa o ano de fabricação do veículo novo no grupo veicProd. É um dado do veículo, não o ano em que a nota é emitida nem uma abreviação do ano modelo. A conferência deve preservar o ano efetivo informado na documentação do veículo.
O caminho no XML processado é /nfeProc/NFe/infNFe/det/prod/veicProd/anoFab. Sem o envelope nfeProc, a leitura começa em NFe. O namespace é http://www.portalfiscal.inf.br/nfe; consultas XPath precisam associá-lo a um prefixo.
- Fabricação, modelo e emissão
- Quando obter o ano e de onde ele vem
- Exemplo de anos diferentes
- Conferência antes de corrigir
Fabricação, modelo e emissão
anoFab é o campo J17; anoMod, J16, identifica o ano modelo. Eles não precisam ser copiados um do outro. Uma emissão realizada em 2026 também não obriga que o veículo tenha sido fabricado em 2026. A data da NF-e está no grupo ide, em outro contexto.
O formato de anoFab é exatamente quatro dígitos, pela expressão [0-9]{4} do XSD 010f. Essa restrição não estabelece que qualquer combinação de quatro dígitos seja um ano verdadeiro daquele veículo. 26, 2026/2027, espaços ou texto explicativo não representam o campo corretamente; a combinação fabricação/modelo precisa ser separada nas duas tags.
Quando obter o ano e de onde ele vem
A aplicação é restrita ao detalhamento de veículo novo, no grupo veicProd do item. Dentro desse grupo, o campo ocorre uma vez e é obrigatório; a ausência do grupo em uma operação diferente não torna este filho exigível isoladamente. A regra J01-10, mensagem 736, rejeita o grupo em NFC-e e em NF-e com DANFE Simplificado Tipo 2 (tpImp=6). A ampliação consta da NT 2026.002, com produção prevista em 03/08/2026; ela restringe o grupo inteiro, não o conteúdo deste campo.
Use o dado documental associado ao chassi do item. Em integrações, confira qual coluna do cadastro representa fabricação e qual representa modelo; nomes comerciais e datas de entrada no estoque não substituem essa identificação. Se o documento traz a dupla 2026/2027, confirme o significado de cada posição antes de mapear; não adivinhe a partir da ordem de uma tela.
Exemplo de anos diferentes
Suponha um veículo cuja documentação confirme fabricação 2026 e modelo 2027. O recorte sintético e parcial é:
<ns0:anoMod xmlns:ns0="http://www.portalfiscal.inf.br/nfe">2027</ns0:anoMod>
<ns0:anoFab xmlns:ns0="http://www.portalfiscal.inf.br/nfe">2026</ns0:anoFab>
O schema coloca anoMod antes de anoFab, mesmo que a fonte apresente “fabricação/modelo”. Os demais filhos de veicProd foram omitidos; o trecho não é uma nota ou grupo completo para envio. A diferença dos anos, por si só, não permite concluir erro. A comparação correta é com a documentação vinculada ao veículo.
Conferência antes de corrigir
- Localize o
detcorrespondente ao veículo e confirme seuchassi. - Compare o valor de
anoFabcom o ano de fabricação documental; confira separadamenteanoMod. - Verifique se o gerador preserva quatro dígitos e a ordem dos filhos, sem transportar a barra da descrição conjunta.
- Se a origem estiver errada, corrija o cadastro comprovado e confira a nova geração. Um resultado verde no XSD não comprova o ano real.
Não altere o ano para coincidir com a emissão ou para eliminar uma mensagem de outra regra. A rejeição 736 está ligada ao grupo em modelo ou DANFE vedado; não é uma validação específica de anoFab. A identificação técnica do ano também não define NCM, CFOP ou tributação da operação.
Campos relacionados
Fontes oficiais
- MOC 7.0, Anexo I — 7.00, novembro de 2020: p. 22: grupo JA, campo J17 (anoFab); p. 96 J01-10, complementada pela NT 2026.002.
- Schemas XML NF-e, PL_010f_v1.04 — 010f v.1.04, publicado em 31/08/2026: declaração veicProd e seus 24 filhos; escolha exclusiva; campos 1-1 na sequência.
- NT 2026.002, DANFE Simplificado Tipo 2 — 1.11, setembro 2026, catálogo 01/10/2026: p. 3 cronograma; p. 12 J01-10/736.
- Tipos básicos do schema NF-e — PL_010f_v1.04: tipo TString: whiteSpace preserve e padrão sem espaços nas extremidades.
Referência técnica para integração
- XPath completo
/nfeProc/NFe/infNFe/det/prod/veicProd/anoFab- 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
- inline:xs:string · 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-9]{4}- whiteSpace
preserve