Eventos Disponíveis
| Evento | Descrição |
|---|---|
charge.created | Enviado quando uma nova cobrança é criada |
charge.pending | Enviado quando uma cobrança está aguardando pagamento |
charge.paid | Enviado quando uma cobrança é paga com sucesso |
charge.refunded | Enviado após a conclusão de um estorno |
charge.updated | Canal legado de postback enviado ao postbackUrl da cobrança |
Status possíveis (status)
| Valor | Descrição |
|---|---|
pending | Aguardando pagamento |
paid | Pago com sucesso |
refused | Recusado pelo PSP |
failed | Falha no processamento |
refunded | Estornado |
in_analysis | Em análise antifraude |
authentication_required | Aguardando autenticação 3DS |
Envelope padrão (charge.created / pending / paid / refunded)
Os eventoscharge.created, charge.pending, charge.paid e charge.refunded usam o envelope padrão com campos em snake_case.
São entregues via fila (BullMQ) a todos os webhook endpoints configurados do merchant, e adicionalmente ao postback_url da cobrança quando presente.
Campos do objeto data (snake_case)
| Campo | Tipo | Descrição |
|---|---|---|
id | string | ID da cobrança |
status | string | Status atual (ver tabela acima) |
psp_ref_id | string | null | ID de referência do PSP |
amount | number | Valor bruto em centavos |
currency | string | Código ISO da moeda (ex: BRL) |
spread | number | Spread aplicado |
anticipation_fee_estimated | number | Taxa de antecipação estimada (cartão de crédito; 0 para outros meios) |
net | number | Valor líquido em centavos |
customer | object | null | Dados do cliente (ver abaixo) |
payment_method | object | Dados do meio de pagamento (ver abaixo) |
merchant_id | string | ID do merchant |
payment_details | object | null | Detalhes adicionais do pagamento |
shipping_address | object | null | Endereço de entrega (ver abaixo) |
tracking_info | object | null | Informações de rastreio (ver abaixo) |
metadata | object | null | Metadados definidos pelo merchant |
postback_url | string | null | URL de postback configurada na cobrança |
paid_at | string | null | Timestamp do pagamento (ISO 8601) |
is_test | boolean | null | true se cobrança de teste |
created_at | string | Timestamp de criação (ISO 8601) |
updated_at | string | Timestamp da última atualização (ISO 8601) |
deleted_at | string | null | Timestamp de exclusão, se aplicável |
Objeto customer
Objeto payment_method — cartão de crédito
Objeto payment_method — PIX / outros meios
Para cobranças PIX o objeto contém apenas { "type": "pix" }. Dados como QR Code e expiração não são incluídos no payload do webhook (estão disponíveis na resposta da API de criação).
Objeto shipping_address
Objeto tracking_info
trackingStatus pode ser awaiting_shipment, on_the_way ou delivered.
Payloads por evento
charge.created
Enviado imediatamente após a criação de uma nova cobrança.charge.pending
Enviado quando a cobrança está aguardando pagamento (ex: PIX gerado).charge.paid
Enviado quando o pagamento é confirmado com sucesso.charge.refunded
Enviado após a conclusão bem-sucedida de um estorno.charge.updated — canal legado de postback
Envelope do charge.updated (camelCase)
O envelope não contémid nem livemode. O objeto data é o charge completo convertido para camelCase:
isBlocked estará presente no payload quando a cobrança tiver sido bloqueada. Consulte a documentação de Bloqueio de Transação para entender o fluxo completo.