Ambiente sandbox — apenas testes; não use para operações reais.
pixeway Entrar

Webhook de pagamentos

Quando configura uma URL HTTPS no painel (ou via API), o pixeway envia notificações em JSON para o seu servidor sempre que uma cobrança da conta é criada ou atualizada.

Ambiente sandbox: para testes com a instância pública de sandbox, utilize o host https://sandbox.pixeway.com (painel, API e webhooks seguem o mesmo domínio que em produção, isolados da produção).

Como é enviado

Cabeçalhos HTTP

Cabeçalho Descrição
X-Donapix-Event Igual ao campo event do JSON (payment.created ou payment.updated).
X-Donapix-Signature Presente quando existe segredo HMAC configurado. Formato: sha256= seguido do HMAC-SHA256 em hexadecimal minúsculo do corpo bruto (string JSON exatamente como enviada), usando o segredo da conta.

Eventos

Estrutura do JSON

O objeto raiz contém event (string) e payment (objeto com o estado atual da cobrança).

Campos em payment (nomes em snake_case): correlation_id, status, method, amount (centavos), br_code, comment, customer (objeto ou null), metadata (objeto ou null), customer_ip, expires_at, paid_at, refunded_at, created_at, updated_at (datas em ISO 8601 quando aplicável).

Valores típicos de status: pending, paid, expired, canceled, refunded. Valores de method incluem pix, credit_card, boleto.

Exemplo de payload

{
  "event": "payment.updated",
  "payment": {
    "correlation_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
    "status": "paid",
    "method": "pix",
    "amount": 1500,
    "br_code": "00020126580014br.gov.bcb.pix...",
    "comment": "Pedido #1234",
    "customer": {
      "name": "Maria Silva",
      "email": "maria@example.com",
      "phone": "5511999999999",
      "document": "12345678909"
    },
    "metadata": { "order_id": "1234" },
    "customer_ip": "203.0.113.10",
    "expires_at": "2026-04-19T18:00:00+00:00",
    "paid_at": "2026-04-19T17:05:22+00:00",
    "refunded_at": null,
    "created_at": "2026-04-19T16:00:00+00:00",
    "updated_at": "2026-04-19T17:05:30+00:00"
  }
}

Validar a assinatura (HMAC)

Leia o corpo da requisição como texto bruto (não re-serializar o JSON parseado). Calcule hash_hmac('sha256', $rawBody, $secret) em PHP ou equivalente na sua stack, prefixe com sha256= e compare em tempo constante com o valor de X-Donapix-Signature.

Configuração via API

Com token Bearer da API (permissão de webhooks de pagamentos):