Skip to main content

Overview

Use the sandbox deployment to validate your checkout integration without moving real funds. In sandbox, Bachs simulates payment outcomes while preserving the same integration flow you use in production. Use this guide to test:
  • bank_transfer
  • mobile_money
  • crypto

Authentication

Use a test API key:

How Sandbox Works

In the sandbox deployment:
1

Create checkout, quote, or payment

Use the same API flow as production.
2

Wait for simulated finalization

The outcome is finalized automatically, a second or two after you initiate payment.
Default behavior:
  • Finalization delay: a second or two
  • Default outcome: success
Poll the charge rather than waiting a fixed interval. It is usually finished by the time your next request lands, but the delay is not contractual.

Simulating Outcomes

For supported methods, you can request a specific simulated result using:
  • simulated_outcome
Allowed values:
  • success
  • failed
  • underpaid
If omitted, the default is success.

Example (Whitelabel)


Sandbox Instructions by Method

Bank Transfer

In sandbox, bank transfer instructions are simulated.

Mobile Money

In sandbox, mobile money instructions are simulated.

Crypto

In sandbox, crypto payment instructions are simulated. You should expect instruction-style response data for wallet/network-based payment flows.

Payment Method Availability in Sandbox

Some methods may be unavailable in the sandbox deployment.
  • Unsupported methods are hidden from method listing in sandbox.
  • If an unsupported method is sent directly, the request is rejected.

Best Practices

1

Test all outcomes before go-live

Validate success, failed, and underpaid.
2

Validate webhook handling

Confirm processing for each simulated outcome.
3

Keep sandbox and production keys separated

Never mix keys across deployments.