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:

  1. Tentativa normal. A API envia a NFC-e para a SEFAZ como uma emissão comum.
  2. Detecção de indisponibilidade. Se a SEFAZ não responde ou está fora do ar, a API identifica a indisponibilidade.
  3. 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.
  4. Retransmissão quando a SEFAZ volta. Ao detectar que a SEFAZ voltou, a API transmite o documento emitido em contingência.
  5. 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ção

O 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:

CampoO que indica
forma_emissaoEnviado como offline para forçar a emissão manual em contingência
codigo_unicoCódigo único (tag cNF) usado na emissão offline
contingencia_offlinetrue quando a nota foi emitida em contingência
contingencia_offline_efetivadatrue 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ência

A API expõe dois gatilhos ligados à NFC-e em contingência: nfce_contingencia e nfce_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.


Did this page help you?