Oi, DEV! 👋
Crie sua conta para acessar mais recursos do portal.

API.UniNFemd

Como gerar o PDF de um evento da NF-e com o DANFE original anexado

Envie o XML processado de um evento, como a CC-e, e o XML autorizado da NF-e original para gerar o PDF e anexar o DANFE da nota. Este tutorial explica como gerar novamente o PDF de um evento vinculado a uma NF-e já autorizada. O caso principal é a Carta de Correção Eletrônica (CC-e): a requisição envia o XML processado do evento no conteúdo principal e o XML autorizado da NF-e de origem como anexo.

#PDF de evento#DANFE#CC-e#Carta de Correção Eletrônica#eventos da NF-e#XML processado#procEventoNFe#nfeProc#NF-e#API DFe

Como gerar o PDF de um evento da NF-e com o DANFE original anexado

Antes de começar: entenda a diferença entre evento e nova NF-e

Um evento é uma ação posterior vinculada a uma NF-e já autorizada. Exemplos comuns são:

  • Carta de Correção Eletrônica (CC-e);
  • Cancelamento.

Já a NF-e complementar e a NF-e de ajuste são novas NF-es. Elas possuem chave de acesso, XML autorizado e DANFE próprios.

SituaçãoO que gerarXML necessário
CC-e ou outro evento processadoPDF do eventoprocEventoNFe do evento + nfeProc da NF-e original
NF-e complementarDANFE da nova NF-enfeProc da NF-e complementar
NF-e de ajusteDANFE da nova NF-enfeProc da NF-e de ajuste

Não trate uma NF-e complementar ou de ajuste como se fosse um evento. Elas não usam o XML de evento nem precisam anexar a NF-e original para gerar seu próprio DANFE.

Pré-requisitos

Para gerar o PDF de um evento, tenha em mãos:

  • Token de acesso válido;
  • CPF ou CNPJ do emitente;
  • Chave de acesso da NF-e original;
  • XML processado do evento, no formato procEventoNFe;
  • XML autorizado da NF-e original, no formato nfeProc.

O evento deve estar processado e autorizado. Não envie somente o XML de solicitação, como envEvento.

Os dois XMLs da requisição

A geração do PDF usa uma requisição multipart/form-data com dois XMLs:

CampoArquivo enviadoUso no PDF
xmlContentprocEventoNFeÉ o evento que será apresentado no PDF.
xmlAutorizadoParaEventonfeProcÉ a NF-e autorizada à qual o evento está vinculado e deve ser enviada como anexo multipart.

Os dois XMLs devem referenciar a mesma chave de acesso. Não inverta os campos.

Gerar novamente o PDF do evento

Use a rota abaixo:

POST /api/v1/{CPF_CNPJ}/NFe/DANFE/{chaveDFe}?regerar=true&anexarDFe=true

Parâmetros:

  • regerar=true: gera um novo PDF e substitui o PDF armazenado para a chave informada;
  • anexarDFe=true: inclui o DANFE da NF-e original após o PDF do evento;
  • {chaveDFe}: chave de acesso da NF-e original.

Exemplo com cURL

curl --request POST \
  --url "https://{servidor}/api/v1/{CPF_CNPJ}/NFe/DANFE/{chaveDFe}?regerar=true&anexarDFe=true" \
  --header "Authorization: Bearer {seu_token}" \
  --form "xmlContent=<caminho/para/evento-processado.xml" \
  --form "xmlAutorizadoParaEvento=@caminho/para/nfe-autorizada.xml;type=application/xml"

O retorno é um arquivo PDF. Salve-o junto aos XMLs usados na geração para manter o histórico fiscal completo.

Quando houver mais de uma CC-e

Cada CC-e possui um nSeqEvento e gera um procEventoNFe próprio. Portanto, gere um PDF por evento.

Para duas cartas de correção vinculadas à mesma NF-e:

  1. Envie o primeiro procEventoNFe em xmlContent e o mesmo nfeProc original em xmlAutorizadoParaEvento;
  2. Gere o primeiro PDF;
  3. Repita a chamada usando o segundo procEventoNFe;
  4. Mantenha o mesmo nfeProc, pois a NF-e original não mudou.

Não envie dois ou mais procEventoNFe no mesmo campo xmlContent. Cada evento deve ser processado em uma requisição separada.

Gerar sem anexar o DANFE original

Caso seja necessário gerar somente o PDF do evento, omita anexarDFe ou informe anexarDFe=false:

POST /api/v1/{CPF_CNPJ}/NFe/DANFE/{chaveDFe}?regerar=true&anexarDFe=false

Erros comuns

  • Evento não processado: use o XML procEventoNFe retornado após o processamento do evento, não o XML inicial de envio.
  • XMLs invertidos: envie o evento em xmlContent e a NF-e original em xmlAutorizadoParaEvento.
  • Chaves diferentes: confirme que o evento e o nfeProc se referem à mesma NF-e.
  • Várias CC-e no mesmo PDF: faça uma chamada por sequência de evento.
  • NF-e complementar ou de ajuste no fluxo de evento: gere o DANFE próprio dessas notas a partir do nfeProc correspondente.

Observação sobre outros eventos

O formato da requisição usa um XML de evento processado e o XML autorizado da NF-e relacionada. Antes de publicar um fluxo específico para outro tipo de evento, valide no ambiente de homologação se o layout de PDF atende à necessidade fiscal e operacional do processo.