Nota Fiscal ao Consumidor Eletrônica (NFC-e) com a API da SEFAZ
Antes de chamar as funções do conector defina o modo NFC-e chamando a função “SEFAZ – Definir Tipo de Serviço”, passando como parâmetro:
- O Conector (Variante) – Criado com a função correspondente;
- A constante (Letras) “NFCE”.
Além dos passos básicos de geração de uma NF-e, após assinar o XML é necessário adicionar as informações referentes ao QrCode. Para tal, execute a função “SEFAZ NFC-e – Adicionar QrCode” passando os seguintes parâmetros:
- XML assinado: Caminho completo do arquivo, ou texto do XML já assinado.
- cldToken é o número sequencial de 06 digitos fornecido pela SEFAZ. Este dado é público e será exibido na URL do QRCode;
- CSC é a chave de segurança de 36 digitos.
O retorno da função será o XML com o QrCode adicionado. Na versão 4.00 será adicionado também a tag “urlChave”.
DICA: Para testar utilizem os dados disponibilizados pela SEFAZ do AM, a saber: Usuários do ambiente de desenvolvedores deverão utilizar o valor fixo “0123456789” para o CSC e o identificador “000001“.: http://portalnfce.sefaz.am.gov.br/desenvolvedor/ambiente-de-homologacao-para-desenvolvedores/
Cancelando um cupom fiscal
O cancelamento é feito usando carta de correção. Veja mais instruções no tópico específico sobre cancelamento.
Emissão OffLine
Para emissão de NFC-e em modo off-line, sem comunicação com a Internet ou SEFAZ, basta alterar/definir as tags abaixo:
- Na função “SEFAZ NF-e – Criar Nota Fiscal” mude o parâmetro “tpEmis” (sexto) – Definir o tipo de emissão como 9 – OffLine;
- infNFe/ide/dhCont – Informar a data e hora de entrada em contingência contingência;
- infNFe/ide/xJust – Informar a Justificativa da entrada, mínimo de 15 caracteres.
Assim que a Internet voltar você deve transmitir os XMLs previamente gerados para a SEFAZ. Observe o prazo máximo (normalmente 24 horas) para transmissão.
Se a UF autorizadora não aceitar esse tipo de contingência, será retornado a rejeição “712 – NFC-e com contingência off-line para a UF”. A Sefaz de São Paulo é um exemplo, ela atualmente (2016) não aceita a contingência off-line.
Mensagem de informação sobre emissão off-line
A emissão Off-Line requer uma mensagem indicativa que pode ser adicionada através do parâmetro: RODAPE_TEXTO, que deve ser informado como um parâmetro extra na impressão, o conteúdo do texto e o prazo de envio pode variar em cada estado. Para obter o texto correto a ser impresso você deve consultar a SEFAZ do seu estado.
Outras mensagens de erro
Se obtiver um erro “464”, com a mensagem “Rejeicao: Codigo de Hash no QR-Code difere do calculado”, verifique se o “cldToken” e “CSC” estão corretos.