O que é?
Cancelamento lógico é o processo de cancelamento de uma requisição, antes de ser enviada ao órgão competente (Prefeitura/SEFAZ).
Quando ocorre?
Esse tipo de cancelamento pode ocorrer em duas situações:
• a emissão de uma nota foi negada na API por algum motivo e a empresa cancela essa tentativa de emissão.
• uma NFC-e foi emitida em contingência e cancelada, antes de ser sincronizada com a SEFAZ. Para entender como funciona a emissão em contingência veja este artigo.
Em ambos os casos, ao consultar a nota no órgão competente teremos o retorno de que ela não existe. Isso acontece porque ela não chegou a ser enviada e foi cancelada antes disso ocorrer.
Como identificar a ocorrência desse tipo de cancelamento?
No caso das notas negadas na API onde a tentativa de emissão foi cancelada antes de autorização ocorrer, é possível validar que não existem alguns dados importantes: o link do PDF e XML, data de autorização e código de verificação.
Quando falamos do cancelamento lógico nas NFC-e, ou seja, aquelas que foram emitidas em contingência e canceladas antes da sincronização na SEFAZ ocorrer, é possível validar a partir do campo "protocolo" que estará como null.
Veja o exemplo abaixo:
Quando a nota é sincronizada com a SEFAZ, podemos notar que o retorno possui dois novos campos, dentro do objeto "protocolo": o "numero" e o "digestValue". Veja o exemplo abaixo onde mostramos estes campos presentes:
Quando uma NFC-e emitida em contingência é sincronizada com a SEFAZ, os campos citados acima obrigatoriamente estarão no retorno e isso servirá como parâmetro para julgar se ela foi sincronizada no órgão ou não.
Caso tenha ficado com alguma dúvida ou precise de auxílio, basta acionar nosso suporte! :D