Use this webhook to keep your product in sync with card activity in near real time.
A single payment can evolve over time (authorization → cleared, or failed, plus possible reversals/refunds). Do not treat the first event you receive as final.
Refunds and reversals are emitted as their own transaction events.
Use these fields to build your transaction timeline:
data.status:
APPROVED: the transaction (or authorization) was approvedFAILED: the transaction (or authorization) failed (see data.declineReason when present)CLEARED: the transaction is finalized/settleddata.type:
AUTHORIZATION: an authorization attemptREVERSAL: a reversal/void of a previous authorizationREFUND: funds returned to the cardholdertransactionId)For authorization and reversal events, data.transactionId can be the same, but it is not guaranteed. Use it as a best-effort correlation key and build your timeline using the event’s own stable identifiers.