Webhooks
Eventos assinados e deduplicados são a sua fonte de verdade para vias assíncronas.
A Baraka Pay assina cada webhook e entrega-o com tentativas e backoff. Valide a assinatura, elimine duplicados por event id e torne o seu handler idempotente.
O sucesso, a falha, a pendência, o cancelamento e a expiração do pagamento são todos entregues como eventos. Nunca cumpra o pedido apenas com base num redirecionamento do navegador.
Eventos
Pagamentos recebidos: payment.succeeded, payment.failed, payment.pending, payment.cancelled, payment.expired — além de diagnósticos de entrega que pode reproduzir a partir do portal do Merchant.
Pagamentos enviados: payout.pending, payout.approved, payout.processing, payout.succeeded, payout.failed, payout.cancelled, payout.returned. Note que payout.returned pode chegar dias depois de lhe ter sido dito que foi bem-sucedido — ver Pagamentos enviados.
Depósitos em numerário: cash_deposit.confirmed, emitido assim que o dinheiro é reconhecido no extrato do próprio banco.
Cada um transporta o identificador do que mudou, e nada mais. Um webhook diz QUAL registo mudou; a API diz para o quê, e só a API é autoritativa.