NFeDistribuicaoDFe: Distribuição de DF-e para Atores da NF-e
Web Service NFeDistribuicaoDFe: distribua DF-e. Emitentes, destinatários e transportadores consultam documentos fiscais eletrônicos, conforme NT 2014.002.
NFeDistribuicaoDFe: Distribuição de DF-e para Atores da NF-e
A gestão eficiente de informações é fundamental no cenário fiscal. O projeto Nota Fiscal Eletrônica (NF-e) enfrenta o desafio de fornecer dados relevantes aos envolvidos nos processos da NF-e de forma eficaz. Para atender a essa demanda, a Nota Técnica 2014/002 introduziu o Web Service NFeDistribuicaoDFe.
Este Web Service centraliza a distribuição de informações e documentos fiscais eletrônicos (DF-e) de interesse dos atores da NF-e. Sua implementação visa substituir o serviço NfeConsultaDest, aprimorando o acesso a dados fiscais para emitentes, destinatários, transportadores e terceiros autorizados.
O Web Service NFeDistribuicaoDFe
O serviço NFeDistribuicaoDFe tem a função de distribuir informações resumidas e documentos fiscais eletrônicos (DF-e) de interesse de qualquer ator, seja pessoa física ou jurídica. Ele opera de forma síncrona, utilizando o método nfeDistDFeInteresse.
Este método permite que um ator da NF-e acesse DF-e e informações resumidas não gerados por ele, mas de seu interesse. Pode ser utilizado por qualquer Pessoa Jurídica ou Pessoa Física que possua um certificado digital válido (PJ ou PF). Para Pessoas Jurídicas, a autenticação ocorre pelo CNPJ base, permitindo consultas com qualquer CNPJ da empresa, desde que o CNPJ base consultado corresponda ao certificado digital.
Os documentos fiscais eletrônicos e informações resumidas ficam disponíveis para distribuição por até três meses após a recepção pelo Ambiente Nacional da NF-e.
Atores e documentos disponíveis
A distribuição de documentos é realizada para os seguintes atores, conforme seu papel na NF-e:
- Emitente: identificado no grupo C01 (
emit). - Destinatário: identificado no grupo E01 (
dest). - Transportador: identificado no grupo X03 (
transporta). - Terceiros: pessoas autorizadas a acessar o XML, informadas na tag GA01 (
autXML).
A tabela abaixo detalha quais documentos estão disponíveis para cada ator:
| Documentos | Emitente | Destinatário ¹ | Transportador ² | Terceiros ³ |
|---|---|---|---|---|
| NF-e | Não | Sim | Sim | Sim |
| Evento de Cancelamento | Não | Sim | Sim | Sim |
| Evento de Carta de Correção | Não | Sim | Sim | Sim |
| Eventos de Manifestação do Destinatário | Sim | Não | Não | Sim |
| Eventos da Suframa (Vistoria/Internalização) | Sim | Sim | Não | Sim |
| EPEC | Não | Sim | Sim | Não |
| Eventos de Pedido de Prorrogação de Prazo ⁴ | Não | Sim | Não | Não |
| Eventos do Fisco em Resposta à Prorrogação ⁵ | Sim | Sim | Não | Não |
| Resumo de NF-e | Não | Sim | Não | Não |
| Resumo de Eventos CT-e Autorizado/Cancelado | Sim | Sim | Sim | Sim |
| Resumo de Eventos MDF-e Autorizado/Cancelado | Sim | Sim | Sim | Sim |
| Resumo de Eventos de Registro de Passagem ⁶ | Sim | Sim | Sim | Sim |
¹ Os documentos fiscais e resumos de eventos ficam disponíveis para o destinatário apenas após manifestação ("Ciência da Operação", "Operação Não Realizada" ou "Confirmação de Operação"), com exceção do Evento de Cancelamento, que é disponibilizado mesmo sem manifestação. Antes da manifestação, o destinatário acessa apenas a estrutura XML de "Resumo de NF-e" e o cancelamento de NF-e.
² A NF-e está disponível apenas para o transportador identificado no grupo X03.
³ A NF-e está disponível para terceiros cujo CNPJ ou CPF esteja informado na tag autXML.
⁴ Inclui eventos EPP1, EPP2, ECPP1 e ECPP2 da NT 2015.001.
⁵ Inclui eventos EFPP1, EFPP2, EFCPP1 e EFCPP2 da NT 2015.001.
⁶ O Resumo de Eventos de Registro de Passagem será distribuído a partir da implantação da NT 2014/002 v.1.02.
Estrutura da Mensagem e Processo
O Web Service NFeDistribuicaoDFe utiliza estruturas XML específicas para as mensagens de entrada e retorno.
Leiaute da mensagem de entrada
A mensagem de entrada é uma estrutura XML com o pedido de distribuição de DF-e, baseada no schema distDFeInt_v9.99.xsd. Os campos incluem a versão do leiaute (versao), identificação do ambiente (tpAmb), código da UF do autor (cUFAutor), CNPJ ou CPF do interessado (CNPJ ou CPF).
O pedido de distribuição pode ser de dois tipos:
- distNSU: grupo para distribuição de um conjunto de DF-e a partir de um Número Sequencial Único (NSU) informado. O campo
ultNSUindica o último NSU recebido pelo ator. Se informado com zero ou um NSU muito antigo, a consulta retorna informações resumidas e DF-e recepcionados nos últimos 3 meses. - consNSU: grupo para consultar um DF-e específico a partir de um NSU. O campo
NSUdeve ser preenchido com o número sequencial único desejado.
Leiaute da mensagem de retorno
A mensagem de retorno é uma estrutura XML com os documentos de interesse do ator, limitada a um máximo de 50 documentos. Utiliza o schema retDistDFeInt_v9.99.xsd. Contém informações como a versão do leiaute, ambiente, versão do aplicativo que processou a consulta, código e descrição do status (cStat e xMotivo), data e hora da resposta (dhResp), e os NSUs para continuidade da consulta (ultNSU e maxNSU).
O campo loteDistDFeInt agrupa as informações resumidas e DF-e. Cada documento é retornado na tag docZip, compactado no padrão Gzip, com seu respectivo NSU e o schema XML para validação.
Mensagem de retorno compactada
Para otimizar o uso da infraestrutura de rede, cada documento na mensagem de retorno é compactado usando o padrão Gzip. Estima-se que essa compactação reduza o tamanho da mensagem em aproximadamente 60%. A aplicação cliente deve descompactar individualmente cada documento para o tratamento normal.
Processo de distribuição de DF-e
O serviço pode ser consumido por emitentes, destinatários, transportadores ou terceiros, sejam Pessoas Físicas ou Jurídicas, com certificado digital de PF ou PJ. O Ambiente Nacional gera um Número Sequencial Único (NSU) para cada interessado nos documentos fiscais, garantindo uma sequência sem intervalos.
A geração do pedido de distribuição suporta dois tipos de consultas, definidas pelas tags distNSU e consNSU no XML de requisição.
distNSU: Distribuição a partir do NSU informado
A aplicação cliente informa o último NSU que possui (ultNSU). O Ambiente Nacional fornece os documentos a partir do primeiro NSU disponível para consulta se o NSU informado for menor que o inicial.
O Web Service gera lotes de até 50 documentos, incluindo informações resumidas ou DF-e, com NSU superior ao informado. Os documentos são ordenados por NSU crescente e podem conter qualquer tipo de documento válido. Documentos emitidos pela própria empresa não estão disponíveis para consulta.
O processo de recepção e sincronização não segue ordem cronológica de emissão ou autorização de uso, mas sim a ordem cronológica de recepção pelo Ambiente Nacional, que gera o NSU. O Ambiente Nacional não precisa estar sincronizado em tempo real com todos os DF-e autorizados.
A resposta do serviço pode ser:
* Rejeição: mensagem com o motivo da falha (cStat).
* Nenhum documento localizado: cStat='137-Nenhum documento localizado'.
* Documento localizado: cStat='138-Documento localizado'.
É recomendado aguardar um mínimo de uma hora antes de fazer uma nova solicitação de distribuição se a resposta indicar que não há mais documentos a serem pesquisados (quando o ultNSU informado for igual ao maxNSU do Ambiente Nacional).
consNSU: Consulta de DF-e vinculado ao NSU informado
Este processo permite consultar pontualmente um NSU identificado como faltante na base de dados do interessado. A aplicação cliente informa o NSU desejado na tag consNSU.
A resposta pode ser:
* Rejeição: mensagem com o motivo da falha (cStat).
* Nenhum documento localizado: cStat='137-Nenhum documento localizado', indicando que o NSU não foi gerado pelo Ambiente Nacional.
* Documento localizado: cStat='138-Documento localizado', com a devolução do documento fiscal.
CNPJ ou CPF do interessado
É necessário informar o CPF ou CNPJ do interessado para recuperar os DF-e. Isso permite que uma empresa recupere DF-e de qualquer um de seus estabelecimentos usando apenas um certificado digital de PJ, desde que o CNPJ base seja o mesmo.
Envio das informações
O pedido de distribuição é enviado via Web Service, exigindo o uso de um certificado digital de PJ ou PF válido. O Web Service do Ambiente Nacional é acionado pela aplicação cliente, que deve enviar uma mensagem conforme os padrões estabelecidos na nota técnica.
Validações e leiautes resumidos
O processamento das requisições envolve diversas validações e a utilização de leiautes resumidos para compartilhamento de informações.
Validação do certificado de transmissão
O certificado digital usado para a transmissão é submetido a validações rigorosas, incluindo:
* Validade: o certificado deve ser válido em termos de data de início e fim.
* Cadeia de Certificação: verificação da Autoridade Certificadora (AC), revogação, e assinatura.
* Lista de Certificados Revogados (LCR): acesso e validade da LCR.
* Certificado Raiz: deve ser da "ICP-Brasil".
* Extensões: presença das extensões de CNPJ ou CPF no certificado.
Essas validações são essenciais para a segurança e autenticidade da comunicação. Muitas delas são realizadas pelo protocolo SSL.
Validação inicial da mensagem no Web Service
A mensagem de requisição passa por validações preliminares:
* Tamanho do XML: o XML de dados não pode exceder 10 KB. Mensagens maiores podem ser descartadas.
* Status do serviço: verifica se o servidor de processamento está temporariamente paralisado (código 108) ou paralisado sem previsão (código 109).
Validação da área de dados
A área de dados da mensagem é validada quanto à forma e regras de negócio:
Validação de forma
- Schema XML: verificação do schema XML da área de dados (código 215).
- Prefixo de namespace: uso de prefixos de namespace não permitido (código 404).
- Codificação: o XML deve usar codificação UTF-8 (código 402).
- Versão dos dados: a versão dos dados informada não pode ser superior à vigente (código 238) ou não suportada (código 239).
Validação de regras de negócio
- Ambiente: o tipo de ambiente da NF-e deve ser o mesmo do Web Service (código 252).
- CNPJ/CPF do interessado: validação da correção do CNPJ (código 489) ou CPF (código 490) informado.
- CNPJ/CPF do certificado: o CNPJ base do certificado digital deve ser o mesmo do CNPJ consultado (código 593). O CPF do certificado digital deve ser o mesmo do CPF consultado (código 472).
- NSU: o NSU informado não pode ser superior ao maior NSU disponível para consulta (código 589).
Leiautes resumidos
Para compartilhar informações relevantes mantendo o sigilo, foram criados dois novos leiautes:
Leiaute resumo da NF-e
Esta estrutura XML (resNFe_v9.99.xsd) é gerada pelo Ambiente Nacional com informações resumidas da NF-e, como chave de acesso (chNFe), CNPJ ou CPF do emitente, razão social (xNome), Inscrição Estadual (IE), data de emissão (dhEmi), tipo de operação (tpNF), valor total (vNF), Digest Value (digVal), data de autorização (dhRecbto), protocolo (nProt) e situação (cSitNFe). É distribuída aos destinatários para possibilitar a manifestação na operação.
Leiaute resumo do evento de NF-e
Esta estrutura XML (resEvento_v9.99.xsd) contém informações resumidas de um evento de NF-e, incluindo código do órgão de recepção (cOrgao), CNPJ ou CPF do emitente, chave de acesso da NF-e (chNFe), data e hora do evento (dhEvento), tipo de evento (tpEvento), número sequencial (nSeqEvento), descrição (xEvento), data de autorização (dhRecbto) e protocolo (nProt).
Visão geral do modelo de distribuição
O modelo de distribuição de documentos é baseado na geração de um Número Sequencial Único (NSU) para cada CNPJ ou CPF. O Ambiente Nacional atribui um NSU para cada documento de interesse.
O processo pode ser visualizado em um fluxo de comunicação:
1. O emitente gera e transmite uma NF-e, que é autorizada pela Sefaz e compartilhada com o Ambiente Nacional.
2. O Ambiente Nacional gera um NSU para o destinatário do resumo da NF-e e o disponibiliza para consulta.
3. O destinatário consulta o Web Service NFeDistribuicaoDFe com o último NSU recebido e recupera o resumo da NF-e.
4. Com o resumo, o destinatário gera um evento de NF-e, como um evento de manifestação.
5. O Ambiente Nacional gera um NSU para o emitente referente ao evento do destinatário e o disponibiliza.
6. Se o evento de manifestação for diferente de 'desconhecimento da operação', o Ambiente Nacional gera um NSU para o destinatário com a NF-e completa (liberando o download).
7. O emitente consulta o Web Service e recupera o evento gerado pelo destinatário.
8. O destinatário consulta o Web Service e recupera a NF-e.
9. O emitente gera um evento de sua NF-e (ex: cancelamento), que é compartilhado com o Ambiente Nacional.
10. O Ambiente Nacional gera um NSU para o destinatário do evento do emitente e o disponibiliza.
11. O destinatário consulta o Web Service e recupera o evento do emitente.
12. Um evento gerado pelo fisco é recebido pelo Ambiente Nacional, que gera NSUs para emitente e destinatário, disponibilizando-os.
13. Ambos, emitente e destinatário, consultam o Web Service e recuperam o evento do fisco.
Este modelo permite ao emitente consultar os eventos manifestados pelos destinatários de suas NF-e e disponibiliza para o destinatário qualquer evento gerado pelo emitente. Além disso, eventos gerados pelo fisco são acessíveis tanto ao emitente quanto ao destinatário. O processo simplifica o download da NF-e, pois a manifestação do destinatário aciona a geração automática de um NSU referenciando a NF-e, permitindo sua recuperação.
Recomendações e endereçamento
Para garantir a estabilidade do sistema e evitar sobrecargas, foram estabelecidas recomendações de uso.
Recomendações para evitar o uso indevido
Controles são mantidos para identificar situações de "uso indevido", como sucessivas tentativas de busca de registros já disponibilizados. Aplicações que entram em "loop", consumindo recursos de forma indevida e sobrecarregando os canais de comunicação, são um exemplo de mau uso. Novas tentativas nessas situações serão rejeitadas com o código de erro "656-Rejeição: Consumo Indevido".
Endereço do Web Service
O endereço do Web Service de Distribuição do Ambiente Nacional está disponível no Portal da NF-e no link 'Serviços' / 'Relação de Serviços Web'. Para o ambiente de homologação, o endereço é publicado no Portal de Homologação.
Tabela de códigos de erros
O Web Service retorna códigos de erro específicos para indicar o resultado do processamento ou os motivos de não atendimento da solicitação. Alguns exemplos incluem:
| Código | Descrição |
|---|---|
| 108 | Serviço Paralisado Momentaneamente (curto prazo) |
| 109 | Serviço Paralisado sem Previsão |
| 137 | Nenhum documento localizado |
| 138 | Documento localizado |
| 214 | Rejeição: Tamanho da mensagem excedeu o limite estabelecido |
| 215 | Rejeição: Falha no schema XML |
| 280 | Rejeição: Certificado Transmissor inválido |
| 472 | Rejeição: CPF consultado difere do CPF do Certificado Digital |
| 489 | Rejeição: CNPJ informado inválido (DV ou zeros) |
| 593 | Rejeição: CNPJ-Base consultado difere do CNPJ-Base do Certificado Digital |
| 656 | Rejeição: Consumo Indevido |
É recomendado evitar caracteres especiais ou acentuação nos textos das mensagens de erro. Para o código 999, o campo xMotivo deve conter a mensagem de erro da aplicação ou sistema que gerou a exceção não prevista.
Conclusão
A Nota Técnica 2014/002 e o Web Service NFeDistribuicaoDFe representam um avanço na disponibilização de informações fiscais. O serviço centraliza o acesso a documentos e eventos de interesse dos diversos atores da NF-e, como emitentes e destinatários, utilizando um sistema de numeração sequencial único (NSU). Este modelo otimiza a recuperação de informações, garante a rastreabilidade dos documentos e facilita a conformidade fiscal para empresas e profissionais envolvidos.