Skip to main content
The sandbox is not a flag on production. It’s a fully separate stack — its own API, database, and workers — running the same code against simulated fiat rails and real testnet blockchains. A sk_test_ key can’t reach production and a sk_live_ key can’t reach sandbox, so the wrong-environment class of accident can’t happen.

Funding a balance

Payouts debit a balance, and nothing pays into a sandbox account on its own. Create money:

Deterministic outcomes

Real rails fail in real ways — a wallet rejects, a bank times out, a customer never approves the prompt. Sandbox lets you trigger each one on purpose.

Payouts — the amount’s cents choose the outcome

So 150.00 completes, 150.07 goes pending and then fails — same code path your production integration will hit.

Collections — the amount’s cents choose the outcome

Validation — the account number’s suffix chooses the outcome

Simulated inflows

Money arriving has no natural trigger in sandbox, so there are endpoints for it:
  • POST /v1/simulations/virtual-account-deposit — a customer transferred into a virtual account (choose completed or failed).
  • POST /v1/simulations/checkout-deposit — a payer completed a bank-transfer checkout session.
  • Crypto deposits: send real testnet tokens to the address, or use the checkout page’s dev tools locally.
GET /v1/simulations returns this whole table as JSON, so your test suite can read the rules rather than hardcode them.

What sandbox won’t tell you

Sandbox proves your integration — envelopes, idempotency, webhook handling, state machines. It doesn’t prove a specific rail’s behaviour on a Tuesday afternoon in Lagos: real settlement times, real operator downtime, real limits. Treat the estimatedSettlement values in capabilities as the honest production guide.

Moving to production

You can create a sk_live_ key and use the production API from day one — change nothing but the key and base URL. The one thing gated is sending payouts with real money: production access is enabled per organization. Email api-support@chippercash.com with your organization name and use case.