Skip to main content
Transaction events fire when a transaction is created and whenever its status changes.

transaction_created

Sent as soon as the transaction record exists, before any money has moved.

transaction_updated

Sent on every status change, and whenever the transaction needs the customer to do something.
Full shape

Terminal outcomes

Step required

These arrive with status: "pending" — the transaction is paused waiting on the customer, not failed.
How to act on each value is covered in charges overview.

Refund updates

Refunds use the standard transaction_updated event with type: "refund". Here transactionId is the refund transaction, and originalTransactionId is the deposit being reversed.
Refund successful
Match refunds back to the original order through originalTransactionId, not transactionId — the latter is a new transaction in its own right.

Status values

Only successful means funds moved. A pending event carrying a stepRequired value is a request for customer action, not an outcome — keep waiting for a terminal status.

Testing your handler

Use Simulate Webhook in the sandbox to fire any of these shapes at your endpoint on demand, without needing to drive a real transaction into the matching state.