Skip to main content
Webhooks avisam o seu sistema assim que algo acontece na ZynPay — sem precisar ficar consultando a API. São criados pelo painel, com a sua sessão logada (não com uma chave de API).

Criar um endpoint

1

Acesse Integrações → Webhooks

No painel, abra Integrações e clique em Novo webhook.
2

Informe a URL

Deve ser uma URL HTTPS pública (não são aceitos IPs privados/localhost).
3

Escolha os eventos

Selecione um ou mais dos eventos abaixo (até 10).
4

Guarde o secret

O secret (zwhsec_...) usado para validar a assinatura é exibido uma única vez, na criação.

Eventos disponíveis

Formato do payload

Toda entrega é um POST com corpo JSON neste formato:

Validando a assinatura

Cada requisição chega com dois cabeçalhos: Verifique a assinatura antes de confiar no payload:
Calcule o HMAC sobre o corpo bruto da requisição (antes de fazer JSON.parse). Reserializar o JSON pode mudar a ordem/espaçamento dos bytes e invalidar a comparação.

Responda rápido

Seu endpoint deve responder com um status 2xx em até poucos segundos. Se a entrega falhar (timeout, erro, redirecionamento), a ZynPay tenta novamente com backoff exponencial; depois de esgotar as tentativas, o evento fica marcado como dead_letter e você pode reenviá-lo manualmente pelo painel — veja Ciclo de vida de uma cobrança para reenviar a notificação de um pagamento específico.
Trate o mesmo x-zinpay-event-id como possivelmente repetido — sua rota deve ser idempotente.