Blog / Integração

Como validar webhook assinado em integração com o ERP e reprocessar

Veja como conferir a assinatura do webhook, descartar eventos duplicados e reprocessar o que se perdeu, sem criar pedido em dobro nem deixar o ERP desatualizado.

04 de nov de 2026 · 3 min de leitura · FBS Portais

Para validar um webhook assinado em integração com o ERP, recalcule a assinatura com o corpo bruto e o segredo, compare e só então processe. Duplicidade e perda se resolvem com identificador de evento e uma rotina de reprocessamento.

Como validar webhook assinado: a conferência da assinatura

A assinatura prova duas coisas: que o evento veio de quem você espera e que ninguém alterou o conteúdo no caminho. Sem essa conferência, qualquer um que descubra a URL pode mandar um "pedido faturado" falso.

  1. Corpo bruto. Use os bytes exatamente como chegaram. Se você reformatar o JSON antes de calcular, a assinatura nunca vai bater.
  2. Recálculo. Gere a assinatura com o segredo compartilhado e o algoritmo combinado com o emissor.
  3. Comparação segura. Use comparação em tempo constante, não a comparação comum de texto.
  4. Janela de tempo. Se o evento traz data de envio, rejeite os muito antigos para barrar reaproveitamento.
  5. Resposta clara. Assinatura inválida volta como erro e não entra em nenhuma fila.

Guarde o segredo fora do código e tenha um plano para trocá-lo sem derrubar a integração, por exemplo aceitando o segredo antigo e o novo por um período curto.

Duplicidade: o mesmo evento vai chegar mais de uma vez

Quem envia webhook reenvia quando não recebe resposta a tempo. Então a duplicidade é rotina, não exceção.

Grave o identificador de cada evento ao receber. Se ele já existe, responda sucesso e não faça nada. Imagine um evento de entrega confirmada que chega duas vezes: sem essa trava, o ERP registraria a baixa em dobro. O tema é irmão do que explicamos em integrar portal e ERP sem dor.

Responda rápido e processe depois. Receba, valide, grave na fila e devolva a resposta; o trabalho pesado no ERP roda em seguida.

Cabos de rede conectados a equipamentos em uma sala de servidores
A integração depende de um caminho que às vezes falha.

Reprocessar eventos perdidos

Eventos se perdem: o ERP ficou fora do ar, o emissor desistiu de reenviar, houve erro seu. Você precisa conseguir buscar de novo o que faltou.

  • Registro de tudo. Guarde cada evento recebido com situação: recebido, processado ou com falha.
  • Separação de erros. Falha técnica pode ser tentada de novo; falha de regra de negócio pede correção antes. Veja como separar os dois.
  • Reprocesso manual. Uma tela ou rotina para reenviar um evento específico, sem mexer no banco.
  • Conciliação. Periodicamente, compare o que o ERP tem com o que o emissor diz ter enviado e reprocesse a diferença.

Como o evento já tem identificador, reprocessar é seguro: se ele já foi aplicado, nada se repete.

Quando isso já vem pronto

No Routkey, o conector para o ERP, a API aberta e os webhooks assinados cobrem a ponta da entrega. Você ainda decide como seu ambiente recebe, valida e reprocessa.

Posso confiar só em um IP fixo em vez da assinatura?

Não. IP ajuda como camada extra, mas muda e pode ser falsificado em certos cenários. A assinatura valida o conteúdo e a origem.

Devo responder erro quando o evento for duplicado?

Não. Responda sucesso, para o emissor parar de reenviar, e ignore o processamento.

Para o próximo passo, pegue a integração que você tem hoje e confira três pontos: se a assinatura é validada sobre o corpo bruto, se o identificador do evento é gravado e se existe um jeito de reprocessar um evento sem ajuda de quem programou.

Quer ver isso funcionando no seu ERP?

Agende uma demonstração e conheça os portais e apps da FBS Portais.

Agende uma demonstração