Como emitir NFC-e offline
26/05/2022 - #: NFCe
Existes alguns cenários que devem ser bem entendidos para que o processo não fique falho, vamos aos dois casos:
1. Sefaz com lentidão, mas processou seu documento fiscal
Quando é enviado um documento fiscal por exemplo com o numero 1 e a Sefaz esta com lentidão e nos devolve um erro maior que 7000 isso indica um erro de comunicação que pode representar varias coisas, em alguns casos a Sefaz recebe o documento fiscal e o mesmo fica na fila de processamento, fazendo com que a consulta retorne uma nota ainda não processada, nesse caso iremos lhe retornar código 5023, fazendo com que seja aguardado alguns minutos para ser feito a consulta pela chave de acesso na API.
{
"sucesso": false,
"codigo": 7028,
"mensagem": "Falha de Comunicação! TimeOut.",
"chave": "50190813188739000110650010000012001581978549"
}
Nesse formato para não deixar o cliente parado e esperando a NFC-e ser autorizada, deve ser incrementado a numeração dessa NFC-e para 2 e enviado ela novamente com o grupo contingencia no payload, iremos devolver a impressão da NFC-e em contingência offline, deve ser entregue ao cliente e o processo é finalizado, assim o cliente não ira ficar esperando.
{
"contingencia": {
"data": "2022-05-20T10:00:00-03:00",
"motivo": "Sefaz fora do ar"
},
"natureza_operacao": "VENDA DENTRO DO ESTADO",
"serie": "1",
"numero": "1035",
"data_emissao": "2020-10-15T03:00:00-03:00",
"presenca_comprador": "9",
"destinatario": {
"cnpj": "15493535500128",
"nome": "EMPRESA MODELO",
"indicador_inscricao_estadual": "1",
"inscricao_estadual": "212055510",
"endereco": {
"logradouro": "AVENIDA TESTE",
"numero": "444",
"bairro": "CENTRO",
"codigo_municipio": "2408003",
"nome_municipio": "Mossoro",
"uf": "RN",
"cep": "59653120",
"codigo_pais": "1058",
"nome_pais": "BRASIL",
"telefone": "8499995555"
}
},
"itens": [
{
"numero_item": "1",
"codigo_produto": "000297",
"descricao": "SAL GROSSO 50KGS",
"codigo_ncm": "55110011",
"cfop": "5102",
"unidade_comercial": "SC",
"quantidade_comercial": 10,
"valor_unitario_comercial": "22.45",
"valor_bruto": "224.50",
"unidade_tributavel": "SC",
"quantidade_tributavel": "10.00",
"valor_unitario_tributavel": "22.45",
"origem": "0",
"inclui_no_total": "1",
"imposto": {
"valor_aproximado_tributos": 9.43,
"icms": {
"situacao_tributaria": "102",
"modalidade_base_calculo": "3",
"valor_base_calculo": "0.00",
"modalidade_base_calculo_st": "4",
"aliquota_reducao_base_calculo": "0.00",
"aliquota": "0.00",
"aliquota_final": "0.00",
"valor": "0.00",
"aliquota_margem_valor_adicionado_st": "0.00",
"aliquota_reducao_base_calculo_st": "0.00",
"valor_base_calculo_st": "0.00",
"aliquota_st": "0.00",
"valor_st": "0.00"
},
"pis": {
"situacao_tributaria": "01",
"valor_base_calculo": 224.5,
"aliquota": "1.65",
"valor": "3.70"
},
"cofins": {
"situacao_tributaria": "01",
"valor_base_calculo": 224.5,
"aliquota": "7.60",
"valor": "17.06"
}
},
"valor_desconto": 0,
"valor_frete": 0,
"valor_seguro": 0,
"valor_outras_despesas": 0,
"informacoes_adicionais_item": "Valor aproximado tributos R$: 9,43 (4,20%) Fonte: IBPT"
}
],
"frete": {
"modalidade_frete": "0",
"volumes": [
{
"quantidade": "10",
"especie": null,
"marca": "TESTE",
"numero": null,
"peso_liquido": 500,
"peso_bruto": 500
}
]
},
"pagamento": {
"formas_pagamento": [
{
"meio_pagamento": "01",
"valor": "224.50",
"tipo_integracao": "2"
}
]
},
"informacoes_adicionais_contribuinte": "PV: 3325 * Rep: DIRETO * Motorista: * Forma Pagto: 04 DIAS * teste de observação para a nota fiscal * Valor aproximado tributos R$9,43 (4,20%) Fonte: IBPT",
"pessoas_autorizadas": [
{
"cnpj": "96256273000170"
}, {
"cnpj": "80681257000195"
}
]
}
Após ser feito a emissão offline deve ser utilizado a rota de processamento de NFC-e offline na API,
com isso será enviado a NFC-e número 2 para a Sefaz.
Porém com esse cenário temos um problema, pois a Sefaz pode ter autorizado a NFC-e número 1(Emissão em modo normal porém com lentidão na Sefaz) e também a NFC-e número 2(Emissão em modo offline), para resolver isso existe uma rota na API que é para Cancelamento por Substituição, aonde tem um prazo de 168 horas para fazer a substituição de NFC-e número 1 pela número 2.
2. Sefaz fora e não recebeu seu documento fiscal
Nesse cenário a NFC-e número 1 não foi recebida nem processada pela Sefaz, então deve ser incrementado o número para 2 e feito o envio offline conforme mencionado no cenário a cima.
Tendo certeza de que a NFC-e número 1 não existe na Sefaz deve ser feito a inutilização dessa numeração.