Rejeição 297: Assinatura difere do calculado
A assinatura digital não confere com o conteúdo do XML.
Mensagem oficial da SEFAZ
297 — Rejeição: Assinatura difere do calculado
Onde olhar no XML: Signature
Por que acontece
- O XML foi alterado depois de assinado — às vezes só reformatado, com espaços, quebras de linha ou recuo.
- O arquivo foi convertido para outra codificação que não UTF-8.
- A assinatura foi calculada sobre um elemento diferente do infNFe.
Um caso típico
Um integrador abre o XML já assinado para incluir uma observação nas informações complementares e salva. A assinatura foi calculada sobre o texto antigo; a SEFAZ recalcula sobre o novo e os valores não batem: 297.
Como resolver
- Assine por último: nenhuma alteração, nem de formatação, depois da assinatura.
- Gere o XML sem espaços e quebras de linha entre as tags, em UTF-8.
- Se o problema começou depois de trocar o certificado, confira se o novo está instalado corretamente no emissor.
Como evitar que volte a acontecer
- Qualquer alteração na nota acontece antes da assinatura, nunca depois.
- Não passe o XML assinado por ferramentas que reorganizam ou reindentam o arquivo.
Em que etapa a SEFAZ barra a nota
A validação acontece em camadas, e esta é uma das primeiras. Antes de olhar valores ou cadastro, a SEFAZ confere se o arquivo está montado como o leiaute manda: tags na ordem certa, formatos de data e número, assinatura digital íntegra e chave de acesso coerente com os campos.
Por isso o erro desta etapa quase nunca é do usuário que digitou a nota, e sim do sistema que gerou o XML. Se aparece em todas as notas, é configuração ou versão do emissor; se aparece em uma só, algum dado daquela nota (um texto, um valor) saiu num formato que o sistema não tratou.
Rejeição não consome o número
Quando a SEFAZ rejeita, a nota não é registrada: o número continua disponível e a mesma nota pode ser reenviada depois de corrigida. O cuidado é não reenviar sem corrigir — com mais de 30 rejeições iguais, o serviço de autorização passa a responder com a rejeição 656 por cerca de uma hora para tudo o que o emissor mandar.
Códigos parecidos
Perguntas frequentes
- O que significa a rejeição 297?
- A assinatura digital não confere com o conteúdo do XML.
- Depois de corrigir, posso enviar a nota de novo com o mesmo número?
- Sim. Na rejeição a nota não chega a existir para a SEFAZ, então o número continua livre. Só não reenvie sem corrigir: muitas rejeições iguais seguidas bloqueiam o emissor por cerca de uma hora.
Fonte da mensagem: MOC 7.0 (NF-e e NFC-e), Anexo I, item 4.4.2 - Tabela de Códigos de Rejeição. A causa e a solução foram escritas a partir da regra de validação do mesmo manual. Regras mudam por nota técnica: em caso de dúvida, confirme com o fornecedor do seu emissor ou com o contador.
Veja também: todos os códigos de rejeição · validador de XML da NF-e