Transaction Status Flows
Transaction status values are defined by the platform transaction model (TransactionStatus). They are uppercase strings (for example PROCESSING, not processing).
Status progression is driven primarily by the transaction action and the payment provider mapping, not by payment-method tender (ACH, CreditCard, Token, Paze, PayPal, Venmo). ACH and card payments use the same status vocabulary.
status is read-only. Clients never set it on create; the platform writes it as the transaction moves through create, gateway execution, and (when supported) settlement sync.
Platform entry statuses
These are set by the Transactions API when a transaction is created or scheduled.
| Status | Description | Typical next statuses |
|---|---|---|
| SCHEDULED | Created with a future when; waiting to run | PROCESSING, DELETED |
| PROCESSING | Created (or schedule fired); not yet fully executed at gateway | Action-specific in-progress / terminal statuses below |
| DELETED | Soft-deleted while still SCHEDULED | — |
transactions.create webhooks typically see PROCESSING (or SCHEDULED when scheduled). Later lifecycle values arrive on transactions.update.
Statuses by action
Terminal failure statuses can appear for most actions: DECLINED, ERROR, FAILED, NOT AUTHORIZED.
AUTHORIZE
| Status | Description | Typical next statuses |
|---|---|---|
| AUTHORIZING | Authorization in progress | AUTHORIZED, failure statuses |
| AUTHORIZED | Funds reserved; authorize completed | Child CAPTURE / VOID (new transactions) |
CAPTURE
Requires a parent AUTHORIZE that is AUTHORIZED.
| Status | Description | Typical next statuses |
|---|---|---|
| CAPTURED | Funds captured | SETTLING, SETTLED, FUNDED, REFUNDING |
| SETTLING | Capture is batched / queued for settlement | SETTLED, failure statuses |
| SETTLED | Settled by the payment gateway | FUNDED, REFUNDING, failure statuses |
| FUNDED | Funds reflected in the merchant bank account | REFUNDING |
CHARGE
CHARGE authorizes and captures in one API call. Path depends on provider mapping:
| Provider style | Typical success path |
|---|---|
| Separate AUTHORIZE + CAPTURE steps | AUTHORIZING → AUTHORIZED → CAPTURED → (SETTLING →) SETTLED → FUNDED |
| Single SALE / CHARGE mapping | CHARGED → (SETTLING →) SETTLED → FUNDED |
Both styles can also end in DECLINED, ERROR, FAILED, NOT AUTHORIZED, or PAYMENT-IN-PROGRESS.
PAYOUT
| Status | Description | Typical next statuses |
|---|---|---|
| PAYING | Payout in progress | PAIDOUT, failure statuses |
| PAIDOUT | Payout completed | — |
VOID
| Status | Description | Typical next statuses |
|---|---|---|
| VOIDING | Void in progress | VOIDED, failure statuses |
| VOIDED | Authorization voided | — |
REFUND
| Status | Description | Typical next statuses |
|---|---|---|
| REFUNDING | Refund in progress | REFUNDED, failure statuses |
| REFUNDED | Refund completed | — |
REVERSAL
REVERSAL chooses void vs refund based on the parent transaction state. Intermediate routing statuses VOID or REFUND may appear, then the VOID or REFUND flows above (VOIDING/VOIDED or REFUNDING/REFUNDED).
NONE (shell records)
NONE creates a shell transaction that does not hit a gateway. Status is derived from the requested action immediately (for example CHARGE/CAPTURE → FUNDED, AUTHORIZE → AUTHORIZED, PAYOUT → PAIDOUT, REFUND/REVERSAL → REFUNDED, VOID → VOIDED), with step set to DONE.
Failure and legacy statuses
| Status | Description |
|---|---|
| DECLINED | Gateway refused the transaction (invalid method, account state, etc.) |
| ERROR | Merchant misconfiguration or provider returned a non-successful response |
| FAILED | Internal infrastructure or communication failure |
| NOT AUTHORIZED | Rejected due to lack of authorization |
| PAYMENT-IN-PROGRESS | Legacy / in-progress value still present on some records |
| APPROVED | Deprecated. Temporarily emitted for compatibility on some success paths; prefer action-specific statuses (CAPTURED, CHARGED, PAIDOUT, etc.) |
Statuses not used for new processing
These remain in the shared type for compatibility but are not used for new gateway progression:
CHARGINGCAPTURING
See Transaction Status Corrections.
