Gateway Environments & Sandbox Simulation
Rook routes API traffic through two enterprise gateway hosts: the Demo/Sandbox Gateway for development testing and simulation, and the Production Gateway for pre-production institution validation (UAT) and live payments.
Gateway Base URLs & Key Scope
| Environment / App Type | Gateway Base URL | Key Prefix | Description & Rules |
|---|---|---|---|
| Sandbox (Test) | https://api.sandbox.rookpayments.com/v1 | rk_test_... | Simulated rails, automated test mocks. Rejects live and UAT keys. Supports /v1/simulate/** endpoints. Unlimited apps per program. |
| UAT (Pre-Production) | https://api.rookpayments.com/v1 | rk_uat_... | Issued on production gateway when uat_enabled is set for a program. Pre-production institution validation. One active app per program. Rejects simulation routes. |
| Live (Production) | https://api.rookpayments.com/v1 | rk_live_... | Live Federal Reserve FedNow, Visa/Mastercard, NACHA rails (99.99% SLA). One active app per organization. Rejects simulation routes. |
Important Gateway Routing Notes:
- There is no standalone
api.uat.rookpayments.comhost; UAT requests are directed tohttps://api.rookpayments.comwith anrk_uat_...key. - The Demo gateway (
api.sandbox.rookpayments.com) rejects live and UAT keys. - All
/v1/simulate/**simulation endpoints reject live and UAT keys, and are only accessible in sandbox.
Sandbox Simulation Operations
Simulation operations are served exclusively on the sandbox host (https://api.sandbox.rookpayments.com) with a rk_test_ key. Sandbox objects never affect production balances, physical cards, or real bank accounts.
Simulating the Complete Issuing & Spend Flow
Test an end-to-end integration lifecycle:
Wallet Entity → Enrollment Review → Application Approval → Wallet → Card → Simulate Authorize → Settle
1. Check System Connectivity
curl https://api.sandbox.rookpayments.com/v1/status \
-H "Authorization: Bearer rk_test_..."2. Simulate Real-Time Authorization
Trigger an inbound authorization without physical point-of-sale hardware:
curl -X POST "https://api.sandbox.rookpayments.com/v1/simulate/cards/crd_8f162a7b/authorizations" \
-H "Authorization: Bearer rk_test_..." \
-H "X-Program-ID: 7c9e6679-7425-40de-944b-e07fc1f90ae7" \
-H "Content-Type: application/json" \
-d '{
"amount": 4500,
"currency": "USD",
"merchant_name": "ACME Cloud Services",
"mcc": "5734"
}'3. Simulate ACH File Processing
Advance pending ACH debits or credits immediately to SETTLED:
curl -X POST "https://api.sandbox.rookpayments.com/v1/simulate/transfers/tx_4a910e/process" \
-H "Authorization: Bearer rk_test_..." \
-H "X-Program-ID: 7c9e6679-7425-40de-944b-e07fc1f90ae7"