Skip to main content
payment.failed é emitido depois que um Payment falha. Handlers usam este evento para executar efeitos assíncronos fora do fluxo síncrono.

Detalhes do Evento

PropriedadeValor
Tipopayment.failed
OrigemAtualização de Payment
PublicaçãoApós commit do Payment
Quandostatus = PAYMENT_FAILED.

Handlers

HandlerResponsabilidadeDados usadosExecução
send-payment-failed-messageAvisa falha de pagamento.dataAssíncrona.

Payload

CampoTipoDescrição
dataPaymentEntidade Payment com falha

Regras dos handlers

  • Handlers não rodam na transação que publicou o Payment.
  • Falha em handler não desfaz o Payment.
  • Cada handler deve ser idempotente.
  • Novos handlers podem ser adicionados sem mudar o fluxo síncrono.

Exemplo

{
  "type": "payment.failed",
  "data": {
    "paymentId": "0197a816-281b-72e7-8f50-286fbfc5c08d",
    "orderId": "0197a813-0fb9-7d42-9c81-50c0f6d9ae5a",
    "organizationId": "0197a801-1690-7590-b3cf-19599b9be3e4",
    "companyId": "0197a801-6a42-79aa-9e56-d3c85148c0fa",
    "externalProvider": "billing_interface",
    "externalProviderId": "pay_4a817c90",
    "description": "Pedido OAB-20260703-0001",
    "method": "PIX",
    "channel": "ONLINE",
    "card": null,
    "pix": {
      "qrCode": "00020101021226860014br.gov.bcb.pix2564pix.example.com/charge/pay_4a817c90",
      "expiresAt": "2026-07-03T16:30:00.000Z"
    },
    "amount": 11400,
    "dueDate": "2026-07-03T16:30:00.000Z",
    "status": "PAYMENT_FAILED",
    "issuedAt": "2026-07-03T16:00:30.000Z",
    "paidAt": null,
    "overdueAt": null,
    "canceledBy": null,
    "canceledAt": null,
    "createdBy": "0197a805-0910-7eb2-bae7-90a13df2a9b2",
    "createdAt": "2026-07-03T16:00:30.000Z",
    "updatedBy": "0197a805-0910-7eb2-bae7-90a13df2a9b2",
    "updatedAt": "2026-07-03T16:02:00.000Z"
  }
}