Pular para o conteúdo
Docs

Eventos e formato

Todos os pagamentos, em qualquer moeda, chegam no mesmo webhook de Recebimento, no mesmo formato.

EventoQuandoTipo de webhook
transaction.approvedPagamento aprovadoRecebimento
transaction.pendingCobrança criada, aguardando pagamentoRecebimento
transaction.failedPagamento com falhaRecebimento
transaction.rejectedPagamento recusadoRecebimento
transaction.cancelledCobrança canceladaRecebimento
transaction.expiredCobrança vencidaRecebimento
payment.refundedEstorno concluídoReembolso
withdrawal.completedSaque concluídoSaques
withdrawal.failedSaque não concluídoSaques

Cabeçalhos

  • X-Webhook-Event: o evento.
  • X-Webhook-Id: o mesmo id em todas as tentativas e reenvios; use para não processar duas vezes.
  • X-Webhook-Signature: sha256= + HMAC-SHA256 do corpo (verificar).
  • X-Webhook-Timestamp: horário do envio.

Corpo

transaction.payment_method traz o método (pix, credit_card, boleto, spei, oxxo…) e transaction.currency a moeda.

transaction.approved
{
  "event_type": "transaction.approved",
  "transaction": {
    "id": "zw_1760000000000_ab12cd34",
    "external_id": "pedido-0001",
    "status": "paid",
    "payment_method": "pix",
    "currency": "BRL",
    "amount": "99.90",
    "amount_cents": 9990,
    "net_amount": "97.90",
    "net_amount_cents": 9790,
    "fee": {
      "total_amount": "2.00",
      "total_amount_cents": 200,
      "percentage": 2
    },
    "paid_at": "2026-10-12T15:02:10.000Z"
  },
  "customer": {
    "name": "Maria Souza",
    "email": "[email protected]"
  },
  "items": [
    {
      "title": "Plano Pro",
      "unit_price": "99.90",
      "unit_price_cents": 9990,
      "quantity": 1,
      "total_amount_cents": 9990
    }
  ],
  "webhook": {
    "event": "transaction.approved",
    "timestamp": "2026-10-12T15:02:11.000Z",
    "version": "2.0"
  }
}