QR Code da NFC-e: o que ele contém, como é validado e por que às vezes não abre
Publicado em · Atualizado em · Por Equipe PegaXML
Resumo
O QR Code do DANFE NFC-e guarda uma URL de consulta da Sefaz com um parâmetro que reúne a chave de acesso, a versão do QR Code, o ambiente, o identificador do CSC e um hash de autenticação. Na emissão em contingência entram também o dia da emissão, o valor total e um resumo da assinatura. Quem lê o código abre a consulta da nota no portal do estado. Se a nota foi emitida em contingência e ainda não foi transmitida, a consulta pode não encontrar nada por algum tempo.
O que o QR Code faz
O QR Code impresso no DANFE NFC-e é um atalho para a consulta da nota no portal da Sefaz do estado emitente. O consumidor aponta a câmera, abre o link e confere se o que está no cupom foi mesmo registrado pelo fisco: emitente, itens, valores e situação.
O Ajuste SINIEF 19/2016 exige que o DANFE NFC-e tenha um código bidimensional com mecanismo de autenticação digital que garanta a identificação do emitente e a autoria (cláusula 10ª). A forma de cumprir isso está nas especificações técnicas publicadas no Portal Nacional da NF-e.
A estrutura do conteúdo
O conteúdo do QR Code é uma URL. Ela tem duas partes:
- O endereço de consulta da Sefaz do estado, publicado pela própria UF.
- Um parâmetro com vários campos separados por barra vertical ( | ).
Pela especificação da versão 2 do QR Code, os campos variam conforme a forma de emissão.
Emissão normal (on-line)
| Campo | O que é |
|---|---|
| Chave de acesso | Os 44 dígitos que identificam a nota. Veja chave de acesso |
| Versão do QR Code | O número da versão da especificação usada |
| Ambiente | Produção ou homologação |
| Identificador do CSC | Qual CSC foi usado no cálculo |
| Hash | Resumo criptográfico calculado com os campos acima e o CSC |
Emissão em contingência (off-line)
Quando a nota é gerada sem conexão, a Sefaz ainda não tem o XML para comparar. Por isso o QR Code carrega mais informação:
| Campo | O que é |
|---|---|
| Chave de acesso | Os 44 dígitos da nota |
| Versão do QR Code | A versão da especificação |
| Ambiente | Produção ou homologação |
| Dia da emissão | O dia em que a nota foi gerada |
| Valor total | O valor total da NFC-e |
| Resumo da assinatura | Um extrato da assinatura digital do XML |
| Identificador do CSC | Qual CSC foi usado |
| Hash | Resumo criptográfico com os campos e o CSC |
A ordem exata dos campos, o formato de cada um e o algoritmo do hash estão na nota técnica do QR Code e no manual da NFC-e. Há versões diferentes da especificação, e a UF pode adotar validações opcionais. Para programar ou depurar, use o documento vigente do Portal da NF-e, e não exemplos copiados de terceiros.
Onde o QR Code fica no XML
O conteúdo do QR Code não fica solto. Ele vai no grupo de informações suplementares da NFC-e, separado do grupo principal de informações da nota, ao lado da URL de consulta pela chave de acesso, que é o endereço que aparece impresso no DANFE para quem preferir digitar a chave. A estrutura geral do arquivo está em estrutura do XML da NF-e, que vale também para o modelo 65.
Como a Sefaz valida
Na autorização, a Sefaz confere se:
- a URL é a do estado e do ambiente certos;
- a chave do QR Code é a mesma da nota;
- o identificador do CSC está cadastrado para aquele contribuinte;
- o hash recalculado com o CSC que ela conhece é igual ao informado.
Se alguma conferência falhar, a nota é rejeitada e o DANFE não deveria ser entregue. As validações ligadas ao CSC podem ser opcionais por UF, segundo a própria especificação. O funcionamento do CSC está em CSC da NFC-e.
O que o consumidor vê ao ler o código
Ao abrir o link, o portal da Sefaz mostra a NFC-e com os dados públicos: emitente, itens, valores, forma de pagamento e situação (autorizada ou cancelada). A consulta completa, com todos os campos, é de acesso restrito e vinculada a quem participou da operação ou se identificou (cláusula 17ª, §§ 3º e 4º).
O prazo mínimo de consulta é de 180 dias. Depois disso, a Sefaz pode trocar a consulta completa por informações parciais, que ficam disponíveis pelo prazo decadencial (cláusula 17ª, §§ 1º e 2º). Por isso o QR Code não substitui a guarda do XML, nem para o emitente nem para quem precisa comprovar a compra. Veja guarda do XML por 5 anos.
Por que às vezes o QR Code não abre a nota
| O que aparece | Causa provável | O que fazer |
|---|---|---|
| "Nota não encontrada" logo após a compra | Emissão em contingência ainda não transmitida | Aguardar a transmissão; o emitente tem até o 1º dia útil seguinte |
| "Nota não encontrada" dias depois | A nota em contingência foi rejeitada na transmissão e não foi regularizada | O emitente deve corrigir e transmitir; o consumidor pode pedir a segunda via |
| Página de outro estado ou erro de endereço | URL de consulta configurada errada no emissor | Corrigir a URL na configuração, conforme a UF |
| Aviso de ambiente de homologação | Nota de teste entregue por engano | A nota de homologação não tem valor fiscal; emitir em produção |
| Nota aparece como cancelada | Cancelamento feito dentro do prazo | Conferir com o emitente se houve nova nota para a mesma compra |
| Código não lê | Impressão borrada, bobina ruim ou QR Code pequeno | Ajustar a impressora; usar a chave de acesso impressa |
QR Code e contingência
Na contingência por geração prévia, a NFC-e é impressa antes de chegar à Sefaz. O DANFE sai com a indicação de emissão em contingência, e a nota deve ser transmitida imediatamente após o fim do problema, no máximo até o primeiro dia útil seguinte (Ajuste SINIEF 19/2016, cláusula 11ª). Até lá, o QR Code está correto, mas a consulta não encontra a nota. O tema completo está em contingência da NFC-e.
Exemplo fictício
Um cliente compra num mercado às 20h. A internet da loja está fora e o caixa emite em contingência. Em casa, o cliente lê o QR Code e não encontra a nota. Na manhã seguinte, com a conexão restabelecida, o sistema do mercado transmite os cupons pendentes. O cliente lê o mesmo QR Code de novo e a nota aparece autorizada, com os mesmos itens e valores do papel. Nada mudou no código: mudou a situação da nota na Sefaz.
Pontos de atenção para quem emite
- Imprima com qualidade. O DANFE NFC-e tem largura mínima de 56 mm, e um QR Code muito pequeno ou borrado não é lido.
- Teste cada caixa. Depois de trocar o CSC ou o emissor, emita uma nota e leia o QR Code com um celular.
- Não reaproveite exemplos. URLs de consulta mudam por estado e por ambiente.
- Transmita a contingência cedo. O prazo legal é um limite, não uma meta.
Perguntas frequentes
O QR Code da NFC-e mostra meu CPF?
Não. O conteúdo traz a chave de acesso, o ambiente, o identificador do CSC e o hash, e na contingência também a data, o valor e um resumo da assinatura. Os dados do consumidor ficam no XML, e a consulta completa é de acesso restrito.
Por que o QR Code abre uma página dizendo que a nota não existe?
As causas mais comuns são nota emitida em contingência ainda não transmitida, nota rejeitada depois da impressão ou QR Code de ambiente de homologação. Confira a situação pela chave de acesso no emissor.
Posso consultar a NFC-e sem o QR Code?
Sim. O DANFE NFC-e traz a chave de acesso e o endereço de consulta. Basta digitar a chave no portal da Sefaz do estado emitente.
Por quanto tempo o QR Code funciona?
A consulta completa fica disponível por no mínimo 180 dias. Depois, a Sefaz pode mostrar só informações parciais, pelo prazo decadencial (Ajuste SINIEF 19/2016, cláusula 17ª).