No dia 02 de Março foi lançada a versão 5.0 do Manual de Especificações Técnicas do DANFE NFCe e QR Code que traz algumas mudanças no layout do documento impresso. Além de alterar a data de emissão da NFCe 4.0, o novo manual trouxe uma nova especificação do QR Code para o documento nesta versão.
No QR Code 2.0, a URL do código deverá ser composta de duas maneiras diferentes: uma para NFCe emitidas de forma online (sem contingência) e outra para as NFCe emitidas na contingência offline.
[ ATUALIZAÇÃO 23/03/2018 ] A Sefaz disponibilizou as novas URL a serem utilizadas nas versões online e offline no portal do ENCAT. As URLs são as mesmas utilizadas pela consulta por chave de acesso e podem ser encontradas aqui.
A alteração visa diminuir os dados quando a emissão já tiver sido autorizada pela Sefaz e passar mais informações sobre as notas que ainda não foram autorizadas, como data de emissão, valor total e DigestValue da NFCe. A Sefaz ainda disponibilizou um prazo para adequação à essa nova mudança:
- 09 de Julho de 2018 – início da produção da NFCe 4.0 e início da concomitância do QR Code 2.0 com a versão 1.0. Isto é, a NFCe 4.0 aceitará as versões 1.0 e 2.0 do QR Code;
- 1º de Outubro de 2018 – fim da concomitância com a versão 1.0 do QR Code. Ou seja, a NFCe aceitará somente o QR Code 2.0
Como funciona o QR Code 2.0
Para cada forma de emissão, devem ser gerados o hash e a URL do QR Code de modos diferentes. Segue abaixo:
NFCe Online
Para as notas emitidas com tipo de emissão Normal, o QR Code deve ser formado com o mínimo de identificação da NFCe. Uma vez que a nota já foi autorizada na Sefaz, não é mais necessário passar outros dados integrantes do documento como era feito na NFCe 3.10. Os campos são os seguintes:
- URL da Sefaz – link de consulta da Sefaz Autorizadora. A lista com todos os estados é sempre atualizada e pode ser encontrada aqui;
- Chave de Acesso – identificador da nota;
- Versão do QR Code – deve ser informado o valor “2”;
- Tipo do Ambiente – informar o ambiente que a NFCe foi emitida (1 – Produção ou 2 – Homologação);
- Identificador CSC – número do código de segurança do contribuinte no banco de dados da Sefaz, sem os zeros não significativos. Não confundir com o próprio CSC;
- Código Hash – código calculado para validar os dados passados.
O modelo a ser seguido tem esse formato:
Exemplo:
Para a geração do Código Hash devem ser seguidos os seguintes passos:
- Passo 1: Concatenar dos 4 parâmetros (Chave de Acesso, Versão do QR Code,
- Tipo do Ambiente e Identificador CSC) separados por “|” na ordem indicada;
- Passo 2: Adicionar ao final da string o CSC (disponibilizado pela SEFAZ da UF onde a empresa está localizada);
- Passo 3: Aplicar o algoritmo SHA-1 sobre o resultado e converter para hexadecimal, correspondendo a 40 bytes.
NFCe Offline
Já para as notas emitidas em contingência Offline, o QR Code deve conter mais dados sobre a NFCe, uma vez que ela pode não estar na base da Sefaz no momento da consulta. Mesmo tendo mais campos que o QR Code da NFCe Online, o QR Code 2.0 retirou alguns campos presentes na versão 1.0, como Identificação do consumidor, Data e hora de emissão, Valor total do ICMS.
Os campos necessários são os seguintes:
- URL da Sefaz – link de consulta da Sefaz Autorizadora. A lista com todos os estados é sempre atualizada e pode ser encontrada aqui;
- Chave de Acesso – identificador da nota;
- Versão do QR Code – deve ser informado o valor “2”;
- Tipo do Ambiente – informar o ambiente que a NFCe foi emitida (1 – Produção ou 2 – Homologação);
- Dia da data de emissão – informar o dia (dois dígitos) em que a nota foi emitida;
- Valor total – informar o valor total da NFCe. Como separador de decimal, deve-se usar o ponto e não a vírgula;
- Digest Value – campo do Digest Value presente na NFCe offline;
- Identificador CSC – número do código de segurança do contribuinte no banco de dados da Sefaz, sem os zeros não significativos. Não confundir com o próprio CSC;
- Código Hash – código calculado para validar os dados passados.
O modelo a ser seguido tem formato semelhante ao anterior, porém com mais campos:
Exemplo:
Para a geração do Código Hash devem ser seguidos os seguintes passos:
- Passo 1: Converter o valor do DigestValue da NFC-e (digVal) para HEXA;
- Passo 2: Concatenar os 7 parâmetros (Chave de Acesso, Versão do QR Code, Tipo do Ambiente, Dia da data de emissão, Valor total, Digest Value e Identificador CSC) separados por “|”, na ordem indicada;
- Passo 3: Adicionar ao final da string o CSC (disponibilizado pela SEFAZ da UF onde a empresa está localizada);
- Passo 4: Aplicar o algoritmo SHA-1 sobre o resultado e converter para hexadecimal, correspondendo a 40 bytes.
Emissor de NFCe é com a Oobj
Soluções modernas, que oferecem maior valor e integração total com seu sistema ERP são necessárias para gerenciar e centralizar toda a emissão de PDVs e lojas. O Oobj NFCe é um programa que além de oferecer esses recursos, está sempre em dia com a legislação e permite o gerenciamento de todos os seus documentos fiscais em tempo real.
Deixe um comentário