Base de conhecimento

Rejeição 978: Hash do CSRT diverge do calculado - Como resolver?

3 minutos de leitura
Copiar

Quando for emitido uma NFe (modelo 55) ou NFCe (modelo 65) e o Hash do CSRT (campo: hashCSRT id – ZD09) calculado pelo sitema, for diferente do calculado pela Sefaz, será retornado a rejeição 978 – Hash do CSRT diverge do calculado.


Exceções e observações

Para essa Regra de Validação não há exceções. Para que o documento seja autorizado, o Hash calculado pela aplicação deve ser igual ao calculado pela Sefaz.


Regra de validação da Sefaz


Exemplo

Foi emitida uma NFe com o parâmetro “hashCSRT” calculado pelo sistema emissor diferente do cálculo pela Sefaz. Nessa situação a NFe foi rejeitada pelo motivo 464.

  • Exemplo no XML:
<!-- Informações do Responsável Técnico pela emissão do DF-e -->
<infRespTec>
    <CNPJ>09553244000176</CNPJ>
    <xContato>Hugo Eduardo Ramos dos Santos</xContato>
    <email>suporte@oobj.com.br</email>
    <fone>6230865750</fone>
    <!-- Identificador do CSRT utilizado para montar o hash do CSRT -->
    <idCSRT>G8063VRTNDMO886SFNK5LDUDEI24XJ22YIPO</idCSRT>
    <!-- O hashCSRT é o resultado da função hash (SHA-1 – Base64) do CSRT fornecido pelo fisco mais a Chave de Acesso da NFe. -->
    <hashCSRT>aWv6LeEM4X6u4+qBI2OYZ8grigw=</hashCSRT>
</infRespTec>

Como resolver

Deve-se verificar o cálculo do parâmetro “hashCSRT” pelo sistema emissor

Na NT 2018-005 há a seguinte informação sobre como é calculado o hashCSRT:

2.3 Geração do hashCSRT

Os passos para a geração do “hashCSRT” estão descritos a seguir:

  • Passo 1: Concatenar o CSRT com a chave de acesso da NFe/NFCe que está sendo emitida.
  • Passo 2: Aplicar o algoritmo SHA-1 sobre o resultado da concatenação do passo 1, resultando em um string de 20 bytes hexadecimais.
  • Passo 3: Converter o resultado do passo anterior para Base64, resultando em uma string de 28 caracteres
  • Passo 4: Montar o grupo de identificação da empresa desenvolvedora do software (tag: infRespTec), com a tag “idCSRT” o identificador do CSRT utilizado para a geração do hash e a tag “hashCSRT” o resultado do passo 3

Valide essas informações e após isso reenvie o documento.


Material de Apoio

Há um artigo em nosso blog com mais detalhes sobre os campos do responsável técnico, para acessá-lo, basta clicar no link abaixo:


Referências

Não encontrou o que procurava?