Contingência offline
Contingência Offline na NFC-e
A NFC-e é emitida no ponto de venda, onde o consumidor precisa do cupom na hora. Quando a SEFAZ do estado está indisponível, a emissão não pode simplesmente falhar — entra o mecanismo de contingência offline: a nota é autorizada localmente e transmitida à SEFAZ assim que ela voltar.
Diferente da NF-e, a NFC-e não conta com servidor de contingência próprio na SEFAZ. Por isso o tratamento da indisponibilidade acontece no fluxo da API.
Como funciona a contingência automática
Com a contingência offline automática habilitada na empresa, o processo é todo conduzido pela API, sem ação do seu sistema:
- Tentativa normal. A API envia a NFC-e para a SEFAZ como uma emissão comum.
- Detecção de indisponibilidade. Se a SEFAZ não responde ou está fora do ar, a API identifica a indisponibilidade.
- Emissão offline na mesma referência. A API gera uma cópia do documento na mesma referência da requisição e devolve o cupom já emitido, marcado com o parâmetro
offline— o consumidor recebe a nota imediatamente. - Retransmissão quando a SEFAZ volta. Ao detectar que a SEFAZ voltou, a API transmite o documento emitido em contingência.
- Conciliação do primeiro envio. A API consulta o envio original (passo 1) para saber se ele chegou a gerar um documento:
- Gerou documento: a API cancela essa nota. O cupom offline permanece válido, porque já foi entregue ao consumidor.
- Não foi recepcionado / não gerou documento: a API inutiliza aquela numeração.
Por que a Focus controla a numeraçãoO controle automático de número e série é padrão da API e é o que torna possível essa conciliação: sem ele, a API não conseguiria cancelar a nota duplicada nem inutilizar a numeração perdida de forma segura. Manter esse controle com a Focus é fortemente recomendado para quem usa contingência.
O que seu sistema vê na resposta
O resultado da emissão offline chega nos campos da resposta de emissão:
| Campo | O que indica |
|---|---|
forma_emissao | Enviado como offline para forçar a emissão manual em contingência |
codigo_unico | Código único (tag cNF) usado na emissão offline |
contingencia_offline | true quando a nota foi emitida em contingência |
contingencia_offline_efetivada | true quando a contingência já foi efetivada na SEFAZ |
Assumindo o controle pelo seu lado
Deixar o controle de numeração e série com a API é o padrão e cobre a contingência automaticamente. Se, mesmo assim, você quiser conduzir esse processo pelo seu próprio sistema, há um gatilho que ajuda: o webhook nfce_consulta_automatica.
Cadastre-o com POST /hooks, informando o evento e a URL que receberá as notificações:
{
"cnpj": "12345678000123",
"event": "nfce_consulta_automatica",
"url": "https://seu-sistema.com.br/webhook/nfce"
}
Dois eventos de contingênciaA API expõe dois gatilhos ligados à NFC-e em contingência:
nfce_contingenciaenfce_consulta_automatica. Cadastre o que corresponde ao fluxo que você quer acompanhar no seu sistema.Verifique mais detalhes no Guide de Webkooks
Fonte: campos e webhooks da documentação de referência da API de NFC-e da Focus NFe (v2.0); fluxo interno de contingência automática conforme o processo da Focus.
Updated about 1 hour ago
