DI no XML da NF-e: dados de importação por produto
<DI>det › prod › DIRevisão editorial em 27 de set. de 2026. As versões e condições das regras estão indicadas ao longo do artigo.
DI é o grupo da NF-e que reúne dados do documento de importação vinculado a um produto. Fica em /nfeProc/NFe/infNFe/det/prod/DI, no namespace http://www.portalfiscal.inf.br/nfe. A sigla permanece no nome do grupo mesmo quando o número informado se refere a DSI, DIRE ou DUImp.
Esse grupo não é a declaração aduaneira e não a registra ou substitui. A tarefa técnica consiste em representar na nota os dados verdadeiros do documento de origem e a relação com cada produto.
O grupo identifica documentos vinculados ao produto
DI pode ocorrer de zero a 100 vezes por prod, e não como um bloco único de toda a nota. Se vários produtos se relacionam ao mesmo documento, cada relação deve ser conferida no item correspondente. Se um produto se relaciona a mais de um documento, a estrutura admite ocorrências separadas.
A opcionalidade no XSD não resolve a exigência fiscal. No modelo 55, I08-110 verifica CFOP iniciado por 3 sem DI, retorno 525. O MOC identifica essa regra como facultativa e lista exceções para 3.201, 3.202, 3.503 e 3.553. Esses números descrevem o alcance da validação; não são sugestões de CFOP. MOC 7.0, Anexo I, p. 92.
Para a avaliação da operação, reúna documento aduaneiro, vínculo dos produtos e classificação fiscal já definida. Não associe automaticamente toda mercadoria de origem estrangeira a uma importação direta do emitente.
Campos e origem dos dados
A NT 2023.004 v1.11, pp. 7–8 apresenta a composição atualizada, que complementa o MOC:
| Campo | Conteúdo e origem | Estrutura ou condição |
|---|---|---|
nDI |
Número do documento: DI, DSI, DIRE ou DUImp | Obrigatório, 1 a 15 caracteres |
dDI |
Data de registro do documento | Obrigatória, AAAA-MM-DD |
xLocDesemb |
Local de desembaraço documentado | Obrigatório, 1 a 60 caracteres |
UFDesemb |
UF onde ocorreu o desembaraço | Obrigatória, sigla brasileira de duas letras |
dDesemb |
Data do desembaraço | Obrigatória, AAAA-MM-DD |
tpViaTransp |
Via internacional registrada no documento | Obrigatória, código do domínio |
vAFRMM |
Valor do adicional ao frete para renovação da Marinha Mercante | Opcional na estrutura; exigido pela regra para via marítima |
tpIntermedio |
Forma de importação documentada | Obrigatória: 1 própria, 2 conta e ordem, 3 encomenda |
CNPJ ou CPF |
Adquirente ou encomendante | Escolha exclusiva; exigida em formas 2/3 |
UFTerceiro |
UF desse adquirente ou encomendante | Exigida em formas 2/3; não aceita EX |
cExportador |
Código do exportador nos sistemas internos do emitente | Obrigatório, 1 a 60 caracteres |
adi |
Adições e/ou itens do documento vinculados ao produto | De 1 a 999 ocorrências |
A via internacional admite: 1 marítima, 2 fluvial, 3 lacustre, 4 aérea, 5 postal, 6 ferroviária, 7 rodoviária, 8 conduto/rede de transmissão, 9 meios próprios, 10 entrada/saída ficta, 11 courier, 12 em mãos e 13 por reboque. O código vem do documento de importação; não do frete interno posterior.
Dentro de adi, nAdicao identifica a adição, até três dígitos, opcional no XSD; na DUImp não deve ser preenchido. nSeqAdic identifica o sequencial do item, obrigatório, até cinco dígitos. cFabricante é obrigatório, código interno do fabricante estrangeiro, 1 a 60 caracteres. vDescDI é o desconto do item, opcional; o tipo aceita valor positivo escrito como inteiro ou com exatamente duas casas decimais, sem aceitar zero; nDraw é o ato concessório de drawback, opcional na estrutura, até 20 caracteres e sujeito ao contexto documental. O formato de vDescDI está no tipo TDec_1302Opc, não apenas na indicação de tamanho do leiaute. Tipos básicos do schema, linhas 310–318
O MOC original registra nDI até 12 caracteres, adi até 100, nAdicao obrigatório e nSeqAdic até três dígitos. A NT e o schema posterior complementam esses limites. Um emissor preso ao leiaute antigo pode falhar mesmo quando os dados foram obtidos corretamente. Versão do schema e regra de negócio devem ser conferidas separadamente.
Exemplo completo do grupo, parcial em relação à nota
O exemplo sintético assume um documento de importação tradicional, transporte aéreo e importação por conta própria já caracterizados. Os números e códigos não correspondem a documentos ou empresas consultados:
<DI xmlns="http://www.portalfiscal.inf.br/nfe">
<nDI>2600000001</nDI>
<dDI>2026-09-10</dDI>
<xLocDesemb>Local aduaneiro sintético</xLocDesemb>
<UFDesemb>SP</UFDesemb>
<dDesemb>2026-09-12</dDesemb>
<tpViaTransp>4</tpViaTransp>
<tpIntermedio>1</tpIntermedio>
<cExportador>EXP-SINTETICO-01</cExportador>
<adi>
<nAdicao>2</nAdicao>
<nSeqAdic>7</nSeqAdic>
<cFabricante>FAB-SINTETICO-03</cFabricante>
<vDescDI>25.00</vDescDI>
</adi>
</DI>
As duas datas representam fatos diferentes: registro e desembaraço. SP é o local do desembaraço, não uma inferência sobre a UF do emitente. Via 4 é aérea; o exemplo não inclui AFRMM como se fosse dado necessário a todas as vias. Forma 1 é própria; o fragmento não possui identificação de terceiro. Exportador e fabricante usam códigos internos diferentes porque são papéis distintos.
Em adi, o produto está associado à adição 2 e ao seu item sequencial 7. O desconto de 25,00 pertence a essa relação. Não é automaticamente desconto total da nota nem uma fórmula de imposto.
Para uma DUImp, a mudança documentada é omitir nAdicao; o grupo adi e seu nSeqAdic continuam existindo. Não crie uma adição fictícia “1” para satisfazer um emissor antigo. Compare o sequencial com o item do documento de origem e confira a versão da integração.
O exemplo cobre o grupo, mas omite o restante de prod, os tributos, demais itens, assinatura e protocolo. Não está pronto para transmissão e não comprova validade ou existência aduaneira.
Conferência por item e por mensagem
Comece pelo det/@nItem indicado no retorno, localize sua DI e compare com o documento que efetivamente pertence àquele produto.
| Sintoma ou retorno | Evidência a conferir |
|---|---|
| 525 | CFOP já definido, presença de DI no produto correto e exceções de I08-110 |
| 330 | Via marítima tpViaTransp=1 sem vAFRMM |
| 331 | Forma 2/3 sem identificação por CNPJ ou CPF |
| 332 | Identificação existente, mas zerada, nula ou com dígito verificador inválido |
| 333 | Forma 2/3 sem UF do adquirente/encomendante |
| Falha de XSD | Ordem dos filhos, campos obrigatórios, escolha exclusiva CNPJ/CPF, limites e versão |
A atualização de 331/332 para CNPJ ou CPF está na NT 2023.004, p. 13. UF do desembaraço e UF do terceiro pertencem a papéis diferentes. Não copie uma para outra só porque a integração pede uma sigla.
O MOC p. 95 identifica I19-10, retorno 329, e I29a-20, retorno 335, como implementação futura naquela edição. Não se deve apresentar esses testes como ativos apenas pela presença na tabela. Tampouco um nDI aceito pelo XSD comprova existência da declaração.
Quando houver divergência, determine se ela está no documento de origem, na associação item/documento ou na serialização. Corrija a causa comprovada na origem e confira novamente o grupo gerado. Não invente documento, valor de AFRMM, ato concessório ou dado de terceiro; não edite XML assinado nem altere CFOP para eliminar a exigência de DI.
Para aprofundar, veja adi, UFDesemb e UFTerceiro.
Referência técnica para integração
- XPath completo
/nfeProc/NFe/infNFe/det/prod/DI- Namespace
http://www.portalfiscal.inf.br/nfe- Leiaute
- 4.00 · PL_010e_v1.02
- Ocorrências no XSD
- 0–100 no contexto do elemento pai
- Tipo
- inline:complexType
- 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.