Webhooks — Visão Geral

Webhooks permitem que o Hubpay notifique sua aplicação em tempo real quando algo acontece — por exemplo, quando um Pix é pago.

Como funciona

  1. O PSP (Asaas, Mercado Pago) notifica o Hubpay sobre o evento.
  2. O Hubpay normaliza o evento para o formato unificado.
  3. O Hubpay chama o(s) endpoint(s) que você cadastrou.

Você sempre recebe o mesmo formato, independente do PSP.

Cadastrando um endpoint

Acesse Dashboard → Webhooks e clique em Novo Endpoint. Informe a URL da sua aplicação e selecione os eventos que quer receber.

Formato do payload

json
{
  "id": "evt_a1b2c3d4",
  "type": "charge.paid",
  "created_at": "2026-04-15T15:30:00.000Z",
  "data": {
    "id": "chg_xyz789",
    "object": "charge",
    "status": "paid",
    "amount": 5000,
    "currency": "BRL",
    "description": "Pedido #1234",
    "provider": "asaas",
    "pix": {
      "copy_paste": "00020126...",
      "qr_code_base64": null
    },
    "paid_at": "2026-04-15T15:30:00.000Z",
    "created_at": "2026-04-15T14:00:00.000Z"
  }
}

Headers enviados

HeaderDescrição
X-Hubpay-SignatureHMAC-SHA256 do body (v1=hex...). Use para validar autenticidade.
X-Hubpay-Event-TypeTipo do evento, ex: charge.paid
X-Hubpay-Event-IdID único do evento (idempotência)
X-Hubpay-Delivery-AttemptNúmero da tentativa atual (começa em 1)

Retry policy

Se seu endpoint não responder com 2xx (ou demorar mais de 10 segundos), o Hubpay retenta automaticamente:

TentativaDelay após falha
imediato
1 minuto
5 minutos
15 minutos
1 hora
6 horas
24 horas

Retorne 200 OK o mais rápido possível. Processe o evento de forma assíncrona se necessário.