Sandbox Confirm
Use the sandbox confirm endpoints to close a pending PayIn or PayOut without waiting for a real bank or cash-network webhook. TumiPay updates the transaction, then sends the same merchant webhook it would send in a live flow. Typical cases:- Approve a PayIn that is waiting for confirmation (
BREB,EFECTY,SPEI,QR, and others) - Approve, reject or expire a PayOut that is waiting for the bank
- Exercise your
ipn_urlwithout waiting for an external webhook
Availability
Base URL (staging):
https://api-empresas.staging.topup.com.co/production
Base URL (UAT): https://api-empresas.uat.topup.com.co/production.
Endpoints
POST Confirm PayIn
Close a pending PayIn and fire the merchant webhook.
POST Confirm PayOut
Close a pending PayOut and fire the merchant webhook.
422 TYPE_MISMATCH.
Request
Headers
string
required
Basic authentication:
Basic base64(username:password)string
required
Merchant token. The transaction must belong to this merchant.
string
required
application/jsonBody
The body is the same for PayIn and PayOut.string
required
Identifier of the transaction. Accepts the TumiPay ticket, your merchant reference, or an external reference (Bre-B key, cash payment reference, SPEI CLABE, payout tracking id, and similar). See Identifiers.
string
required
Enum name in uppercase, not the portal label. Examples:
SPEI, BREB, BANK_TRANSFER. Do not send "Transferencia SPEI".string
required
Target status:
APPROVED, REJECTED, or EXPIRED. Not every method supports every value — see Supported statuses.Response
Success (200)
Repeating the same final status is idempotent: if the transaction is already in the requested status, the API still returns 200 SUCCESS.
Errors
Identifiers
transaction_id must belong to the merchant authenticated with Authorization + Token-Top. Any of these usually work:
Prerequisites
Not supported by sandbox confirm:
- CARD — the result is fixed by the test card number.
- PSE — create the PayIn with bank Banka and complete the normal PSE flow. See Testing.
- NEQUI_PUSH — sandbox automatically simulates the push through the normal create flow (
payment_url). See Colombia PayIn — NEQUI_PUSH.
Supported statuses
PayIn
Unsupported combinations return
422 STATUS_NOT_SUPPORTED.
PayOut
Method notes
Colombia PayIn — BREB and BREB QR
Colombia PayIn — BREB and BREB QR
Use
payment_method: "BREB" or "BREB_QR". Confirm while the PayIn is pending. transaction_id can be the ticket, your reference, or the Bre-B key from payment_information (for example @TUMI... / @TUMIQR...).Supported statuses: APPROVED, REJECTED.Colombia PayIn — EFECTY
Colombia PayIn — EFECTY
Use
payment_method: "EFECTY". Confirm while the PayIn is pending. The cash payment reference from payment_information works as transaction_id.Only APPROVED is supported.Peru PayIn — QR
Peru PayIn — QR
Use
payment_method: "QR". Ticket, merchant reference, or external reference are all valid.Supported statuses: APPROVED, REJECTED, EXPIRED.Mexico PayIn — SPEI
Mexico PayIn — SPEI
Use
payment_method: "SPEI". Confirm while the PayIn is pending. Ticket, merchant reference, or the CLABE assigned to the transaction work as transaction_id.Only APPROVED is supported.Peru PayOut — BANK_TRANSFER
Peru PayOut — BANK_TRANSFER
Use
payment_method: "BANK_TRANSFER". The PayOut must already be waiting for the bank — not merely created.APPROVED completes the transfer. REJECTED and EXPIRED reject it (EXPIRED is treated as rejected) and restore sandbox balance.Create the PayOut with a bank from the sandbox catalog (BCP, Interbank, BBVA, Scotiabank, Yape, Plin, and similar). See Peru PayOut.Colombia PayOut — BANK_TRANSFER
Colombia PayOut — BANK_TRANSFER
Use
payment_method: "BANK_TRANSFER" with country: "CO". The PayOut must already be waiting for the bank.APPROVED completes the disbursement. REJECTED and EXPIRED reject it and restore sandbox balance.Mexico PayOut — SPEI
Mexico PayOut — SPEI
Use
payment_method: "SPEI" with account_type: "CLABE" and a valid test CLABE in both account_number and clabe_number.AHORRO, CORRIENTE, or an invented CLABE (for example 12345678…) usually reject the PayOut at creation, so sandbox confirm cannot run.Confirm only after the PayOut is waiting for the bank. See Mexico PayOut.Mexico SPEI PayOut — test CLABEs (examples)
The following are example CLABEs for sandbox testing — not an exhaustive list. Use the same value inaccount_number and clabe_number: