Técnico

Hash MD5 no TISS: o que é, por que ele invalida o lote e como corrigir

Equipe TISS Manager30 de maio de 20266 min de leitura
Hash MD5 no TISS: o que é, por que ele invalida o lote e como corrigir

Se você já recebeu uma rejeição com a mensagem "hash inválido" ou "integridade do arquivo comprometida", você esbarrou no hash MD5 do TISS. Ele é simples de entender — e mais simples ainda de corrigir, desde que você saiba o que está fazendo.

O que é o hash MD5

O MD5 é um algoritmo de "impressão digital" para arquivos: você joga o conteúdo inteiro dentro dele e recebe uma string fixa de 32 caracteres. Qualquer mudança no conteúdo — até um espaço extra — gera um hash totalmente diferente.

No TISS, o hash MD5 é calculado sobre o conteúdo do XML (excluindo o próprio epílogo) e gravado no final do arquivo, dentro da tag <hash>. A operadora recalcula no recebimento e compara — se não bater, o lote é rejeitado.

Por que ele invalida o lote inteiro

O hash existe para detectar adulteração. Se um operador alterar uma guia depois que o XML foi assinado, o hash mudaria, e a operadora saberia. Por isso a regra é binária: hash bate ou não bate — não existe "hash quase certo".

Causas comuns de hash inválido

Quase 100% das rejeições por hash caem em uma destas categorias:

  • Alguém abriu o XML no Bloco de Notas e salvou (inseriu BOM ou mudou encoding).
  • O hash foi calculado antes da última edição manual.
  • Encoding salvo como ANSI/ISO em vez de UTF-8 sem BOM.
  • Quebra de linha foi convertida (CRLF/LF) em um editor diferente.
  • O algoritmo usou outra parte do arquivo como entrada (bug de sistema antigo).

Como recalcular corretamente

Toda alteração no XML — mesmo um espaço extra — exige recalcular o hash. Nunca "acerte" o hash manualmente: use uma ferramenta. O validador TISS Manager recalcula automaticamente após qualquer mudança e valida o XML inteiro contra o XSD oficial da ANS.

Se preferir ver o passo a passo em vídeo, pesquise por "hash MD5 TISS como recalcular" no YouTube.

Prevenção: a regra de ouro

Não edite XML TISS no Bloco de Notas. Nunca. Se precisar consertar uma guia, faça no sistema de gestão e reexporte o lote inteiro — o sistema vai gerar o hash correto. Quando isso não for possível, use uma ferramenta dedicada como o TISS Manager para abrir, editar e reassinar o arquivo sem corromper.

Perguntas frequentes

MD5 não é considerado inseguro?

Para senhas, sim. Para integridade de arquivos em ambiente fechado (prestador ↔ operadora), continua funcional e é o padrão definido pela ANS.

Posso usar SHA-256 no lugar do MD5?

Não. O padrão TISS exige MD5. Trocar quebra a compatibilidade com a operadora.

O hash MD5 precisa estar em maiúsculas?

Algumas operadoras são tolerantes, outras exigem maiúsculas ou minúsculas. Quando em dúvida, siga o manual do prestador da operadora específica.

Conclusão

Hash MD5 inválido é um dos erros mais frequentes e mais bobos no TISS. Bastam duas regras: não edite XML manualmente e sempre recalcule o hash com ferramenta confiável. Combinado com validação pré-envio, elimina a categoria "rejeição por hash" do seu fluxo.

Continue lendo