Quando um documentos fiscal (NFe, NFCe, CTe, CTeOS, MDFe, BPe ou NFSe) é criado ao ser enviado para o órgão autorizador (SEFAZ ou Prefeituras), pode retornar um TIMEOUT, ou seja não sabemos nesse momento se o documento foi ou não recebido pelo órgão autorizador, dessa forma esse documento fica numa situação PENDENTE de definição (ou seja, uma situação indefinida).
O documento já está criado e registrado em nossa base de dados, então "NÃO PODE SER RECRIADO", ou seja não adianta mandar criar novamente o sistema não irá processar essa nova solicitação até que seja feita a consulta do documento anterior, esse documento "DEVE SER CONSULTADO" usando a chave de acesso criada e retornada para você durante a criação do documento.
Ex. foi criada uma NFe chave 35210400822602000124550010009923461099234656 e não houve o retorno da SEFAZ (caiu no meio da transação), esse documento ficou PENDENTE no nosso sistema esperando que seja feita uma CONSULTA.
Para processar e ver se esse documento foi recebido e processado pela SEFAZ, DEVE ser feita uma chamada para a rota
/nfe/35210400822602000124550010009923461099234656 (rota de consulta)
Com essa chamada a api irá realizar uma consulta a SEFAZ e retornará o status da mesma.
Esses casos são muito mais comuns quando lidamos com NFSe pois os servidores usados pelas prefeituras não são dimensionados, nem mantidos de forma adequada, sua capacidade de processamento é inferior a necessidade e ao trafego a que estão sujeitos. Como o servidor dessa prefeitura não dá conta do processamento existem muitos retornos com TIMEOUT.
Mas o que fazer nesses casos ?
Se existem documentos com a situação PENDENTE, você deve, o mais rapidamente possível, fazer:
- uma consulta usando a chave informada para esse documento, essa consulta na maioria dos casos irá realizar uma busca no órgão autorizador, para saber se pelo menos esse documento foi recebido e processado pelo autorizador, e podemos ter como resposta;
- documento não encontrado,isso significa que esse documento nem foi recebido e processado pelo autorizador, a API vai deletar os registros desse documento e retornar essa resposta para você com o código de erro 5019 então você pode envia-lo novamente;
- caso o documento seja localizado, o mesmo será processado e retornado como autorizado;
- ou ainda poderá ser retornado o código de erro vindo do próprio autorizador, na ocorrência de alguma falha no preenchimento do documento;
Nota: sempre que um documento for consultado e houver o retorno de erro, o documento será removido da nossa base de dados, permitindo que seja enviado novamente, exceto se estiver na situação EM CONFLITO, pois nesse caso em particular o autorizador não dispõe de métodos de consulta que permitam saber se o documento foi ou não processado (esse é o caso de uns poucos provedores de NFSe).