Skip to main content
POST
Simulate a sandbox transaction outcome
Sandbox only. Returns 403 in production.
Completes a pending sandbox transaction with the outcome you choose. Your balance and the TRANSACTION.UPDATED webhook behave exactly as they would in production. Use this whenever you want a deterministic outcome without waiting on the default sandbox settlement window (~5 minutes):
  • Pending on purpose. A payment method whose account number, phone number or card ends in 0003 stays PENDING until you call this endpoint.
  • Speed up any other pending sandbox transaction. Call it to finalize sooner than the ~5 minute default.
The transaction must still be PENDING, PROCESSING or UNKNOWN. A deposit waiting on OTP (CUSTOMER_ACTION_REQUIRED) must be authorized via Authorize Transaction first. See the Sandbox testing guide for the full test-value taxonomy.

Authorizations

x-api-key
string
header
required

Static business API key issued from the dashboard. A business can provision multiple API keys, each scoped to a configurable set of permissions (e.g. read transactions, create deposits, etc). Permissions are chosen per key at creation time in the dashboard and may be revoked by deleting the key. Requests made with a key that does not include the permission required by the target endpoint is rejected with a 401 Unauthorized response, the same response an unrecognised, malformed, revoked or disabled key returns. The API does not distinguish the two cases on the wire. Manage your keys and their permissions under Developer → API keys in the dashboard.

The permission each endpoint requires is below. Where several are listed, any one of them is enough. Keys created before permissions existed carry none and keep access to every endpoint.

Headers

x-api-version
string

API version in ISO 8601 format. The only supported version is 2026-05-18, which is also the default when the header is omitted. Any other value is rejected with a 400 Bad Request.

Path Parameters

transactionId
string
required

The unique identifier of the transaction

Body

application/json
outcome
enum<string>
required

The status to finalize the transaction to.

Available options:
success,
failed

Response

Accepted. The transaction as it stands before it is finalized.

data
object