Download de XML NF-e em Dois Sistemas: Por Que Um "Engole" as Notas do Outro
Você já passou por essa situação? O sistema do seu fornecedor baixou as NF-e de entrada e, quando você tenta consultar no seu próprio sistema, nenhuma nota aparece. Parece bug, mas não é. É o comportamento esperado da SEFAZ.
Neste artigo, vamos explicar tecnicamente por que isso acontece, como funciona o serviço de Distribuição DF-e, o que é o famoso NSU, e principalmente: como resolver esse problema na sua transportadora.
Como Funciona o Serviço de Distribuição DF-e
Para baixar os XMLs das NF-e destinadas a sua empresa, utiliza-se o Web Service de Distribuição DF-e oferecido pela SEFAZ. Esse serviço permite que atores interessados (emitente, destinatário, transportador ou terceiros autorizados) consultem documentos fiscais eletrônicos.
O Que é NSU (Número Sequencial Único)?
Cada documento ou evento disponível gera um NSU associado ao CNPJ interessado. Funciona como um identificador sequêncial que indica a ordem de recepção dos documentos no Ambiente Nacional.
Como funciona a consulta:
- Você informa o último NSU obtido na consulta anterior
- A SEFAZ retorna até 50 documentos posteriores a ele
- Se informar
ultNSU=0, retorna desde o primeiro disponível - A cada resposta, vem o novo
ultNSUpara usar na próxima
Limitações Importantes
Existem duas limitações críticas que você precisa conhecer:
- Prazo de 90 dias: A SEFAZ só mantém documentos disponíveis por até 90 dias após autorização. NF-e mais antigas não podem ser obtidas por esse serviço.
- Manifestação obrigatória: Para obter o XML completo, é necessário registrar a Manifestação do Destinatário (Ciência da Operação ou Confirmação). Antes disso, só vem um resumo.
O Problema: Dois Sistemas, Um CNPJ
Aqui está o ponto crucial: para a SEFAZ, não existe "Sistema A" e "Sistema B". Se ambos usam o mesmo CNPJ e certificado digital para consultar o serviço de Distribuição DF-e, eles são tratados como uma única entidade.
Isso significa que quando um sistema consulta e avança o NSU, aqueles documentos são marcados como já distribuídos. O segundo sistema, ao tentar consultar depois, simplesmente não encontra nada.
Atenção: Risco de Bloqueio!
Consultas fora de sequência podem resultar na Rejeição 656 - Consumo Indevido, bloqueando novas consultas por até 1 hora.
A mensagem é clara: "Deve ser utilizado o ultNSU nas solicitações subsequentes".
Por Que Isso Acontece? (Regras NT 2014.002)
A SEFAZ implementou regras rígidas para evitar cargas excessivas no serviço. Os pontos principais da NT 2014.002 são:
1. Consulta Sequencial Obrigatória
A aplicação deve sempre usar o ultNSU fornecido na última resposta. Consultar fora dessa ordem é identificado como uso indevido.
2. Intervalo Mínimo de 1 Hora
Se a consulta retornou cStat=137 (nenhum documento localizado), deve-se aguardar pelo menos 1 hora antes de consultar novamente.
NT 2014.002 - Sobre Múltiplas Aplicações:
"Se diversas aplicações do mesmo ator efetuarem consultas por NSU para o mesmo CNPJ, essas devem seguir a mesma sequência de numeração ordenada e de forma ascendente. Caso contrário, enquadrar-se-ão na categoria de uso indevido."
O Que Acontece na Prática?
Quando o Sistema A baixa as notas corretamente e avança o NSU, ao Sistema B tentar consultar:
- cStat=137: "Nenhum documento localizado" - as notas já foram consumidas
- cStat=656: "Consumo Indevido" - consulta fora de sequência, bloqueio de 1h
Em ambos os casos, o segundo sistema não recebe os XMLs. A SEFAZ não redistribui documentos já consultados para o mesmo destinatário.
Como Resolver: 4 Estratégias Práticas
Opção 1: Centralizar em Um Único Sistema (Recomendada)
Eleger um único sistema como fonte de consultas DF-e. O outro sistema deve obter as notas a partir do primeiro (via integração, exportação de XML ou banco de dados compartilhado).
Vantagens:
- Simplicidade de implementação
- Zero risco de Consumo Indevido
- Sequencia de NSU sempre ordenada
- Ambos sistemas tem acesso aos XMLs
Opção 2: Sincronizar NSU Entre Sistemas
Se for indispensável que ambos consultem a SEFAZ, eles precisam compartilhar o estado do último NSU em um local central (arquivo, tabela ou serviço). Um só consulta se o outro não o fez ainda.
Atenção: Isso é complexo e qualquer deslize (ambos consultarem ao mesmo tempo) resulta em erro.
Opção 3: Usar Serviço Agregador Especializado
Existem soluções especializadas (APIs de captura de NFe) que fazem o trabalho de forma unificada. A empresa usa esse serviço central e integra ambos os sistemas a ele.
Opção 4: Consulta Pontual por Chave de Acesso
Para recuperar notas específicas já consumidas pelo outro sistema, use a consulta por chave (consChNFe) informando a chave de 44 dígitos.
Limitação: Máximo de 20 consultas por hora. Serve para casos pontuais, não para uso massivo.
Checklist: Boas Práticas para Evitar Problemas
Recomendações Finais:
- Centralizar - Eleja um único sistema para baixar NF-e
- Persistir NSU - Armazene o último NSU retornado corretamente
- Respeitar intervalos - Após cStat=137, aguarde 1 hora
- Manifestar automaticamente - Registre Ciência da Operação para ter XML completo
- Monitorar erros 656 - Se ocorrerem, há sobreposição de consultas
- Integrar - O segundo sistema deve consumir do primeiro, não da SEFAZ
Conclusão
Não existe uma maneira suportada de "baixar novamente" via distribuição documentos que outro sistema já consumiu. A SEFAZ não redisponibiliza documentos duplicadamente para o mesmo destinatário.
A solução passa por organização e arquitetura: um único pipeline de download por CNPJ, do qual todos os sistemas interessados possam se alimentar, garantindo que nenhuma NF-e fique de fora.
Grandes empresas de software fiscal resolvem isso com uma arquitetura centralizada: um "monitor de DF-e" faz todas as consultas e armazena os XMLs em uma base unificada. Os demais sistemas consomem dessa base. É exatamente assim que o SmartGT funciona.
Fontes e Referências:
- SEFAZ - Nota Técnica 2014.002 (Distribuição DF-e)
- Portal Nacional da NF-e - Ambiente Nacional
- Documentação técnica Focus NFe
- Central de Atendimento TecnoSpeed
Centralize a Captura de NF-e com o SmartGT
O SmartGT gerencia automaticamente a consulta de DF-e, controla o NSU corretamente, manifesta as notas e disponibiliza os XMLs para toda sua operação. Sem conflitos, sem bloqueios.