Skip to main content
The Zentra sandbox environment allows you to test your integration without using real money or affecting production data.

Overview

The sandbox environment is a complete replica of the live environment, allowing you to:
  • Test all API endpoints
  • Simulate transactions
  • Test webhook events
  • Verify error handling
  • Load test your integration
Sandbox and live environments are completely separate. Data does not sync between them.
Examples here focus on reviewed transfer, webhook, and optional rail flows. Identity examples are reviewed but tenant-gated; customer and wallet examples should still be treated as compatibility or draft unless your environment explicitly exposes them.

Getting Started

1. Get Sandbox API Keys

  1. Go to the Developer Console
  2. Open API Keys
  3. Generate sandbox keys (prefixed with sk_sandbox_)

2. Configure Your Client

3. Make API Calls

All reviewed API endpoints work the same way in sandbox:

Sandbox vs Live

Test Data

Use these test values in sandbox:

Test BVNs

Test NIDs

Test Cards

Default CVV: 123
Default Expiry: Any future date (e.g., 12/26)
Default PIN: 1234

Test Bank Accounts

Test OTP

For 2FA and verification:

Simulating Scenarios

Successful Transfer

Failed Transfer

Insufficient Balance

Testing Webhooks

Local Development

Use ngrok to expose your local server:
Use the ngrok URL in your webhook settings:

Trigger Test Webhooks

Use your sandbox tenant and the developer tooling available for your environment to trigger or replay webhook events. Prefer replay-safe test tooling over undocumented direct trigger endpoints.

Sandbox Limitations

Keep these limitations in mind when testing in sandbox:
  • No Real Money: Transactions don’t involve real money
  • Simplified Processing: Transfers complete instantly (no banking delays)
  • Limited Banks: Only major banks are simulated
  • No Physical Cards: Can’t test physical card delivery
  • Rate Limits: Lower than production (100 req/min)

Best Practices

Test both success and failure cases to ensure your error handling works.
Always use test data provided above. Don’t use real customer information.
Ensure your webhook handlers work correctly before going live.
Test rate limiting, timeouts, and other edge cases.
Never mix sandbox and live API keys in your code.

Switching to Live

When you’re ready to go live:
  1. Test Everything: Ensure all features work in sandbox
  2. Get Live Keys: Generate production API keys
  3. Update Environment: Change environment to 'live'
  4. Update Webhooks: Point webhooks to production server
  5. Monitor: Watch for errors and issues

Monitoring Sandbox Usage

View your sandbox activity in the Dashboard:
  1. Go to Dashboard → Sandbox
  2. View API calls, transactions, and webhooks
  3. Check for errors and warnings

Resetting Sandbox Data

Need a fresh start?
  1. Go to Dashboard → Sandbox → Reset
  2. Click Reset All Data
  3. Confirm the action
This will delete sandbox test records, including any draft customer records, virtual accounts, and transactions. This cannot be undone.

Getting Help

Questions about sandbox testing?

Next Steps

Test Data

Complete test data reference

Going Live

Production checklist

Webhooks Guide

Test webhook handling

API Reference

API documentation