Sandbox Base URL
Getting Started
You use the same Yativo account for both sandbox and production. Switch between environments by changing the base URL and the API key in your requests.- Sign up at app.yativo.com (if you haven’t already)
- Create a sandbox API key — in your sandbox dashboard, go to Developers → API Keys. Sandbox and production keys are separate.
- Call the sandbox base URL with your sandbox key:
Sandbox Behavior
Sandbox simulation endpoints
These paths exist only on sandbox (https://smtp.yativo.com/api/v1, https://test-api.yativo.com/api/v1). Production returns the same generic 404 Not found as an unknown route.
An IP whitelist is optional on sandbox. Production keys still need one — a production request with no whitelist is
401. See IP whitelisting.
How to Test
1
Use the sandbox base URL
Set
https://smtp.yativo.com/api/v1 as your base URL in all requests.2
Authenticate
Create a separate API key in your sandbox dashboard. Sandbox and production keys aren’t interchangeable.
3
Verify your sandbox account
Complete business verification in the sandbox dashboard. Most API calls return 403 until
kyc_status is approved and is_kyc_submitted is true. See Sandbox KYC.4
Create test customers
Use
POST /customer to create customers. That call does not approve the customer. Submit KYC or KYB on https://kyc-sandbox.yativo.com, the same way you do in production.5
Create virtual accounts
After the customer’s endorsement for the currency is
approved, call POST /business/virtual-account/create. See Track verification with endorsements.6
Top up a wallet
Credit test funds with
POST /wallet/sandbox/topup. See Top up wallet.7
Test payouts
Call
POST /wallet/payout or POST /payout/simple, then settle a specific record with POST /sandbox/transactions/{id}/succeed or /fail.8
Simulate the rest
Virtual account deposits, virtual cards, spend cards and sample webhooks all live under Sandbox simulation endpoints.
Example: Full Sandbox Test Flow
Node.js
Differences from Production
- Account and customer KYC are separate — Sandbox KYC covers both. Creating a customer does not set them to approved
- No real funds — credit a wallet with
POST /wallet/sandbox/topup. Payouts simulate the full transaction lifecycle - Some payment methods may be limited — not all live corridors are available in sandbox; contact your integration team if you need a specific one
- Webhooks fire normally — you’ll receive all webhook events in sandbox; make sure your test endpoint is reachable
Switching to Production
When you’re ready to go live:- Change your base URL from
https://smtp.yativo.com/api/v1tohttps://api.yativo.com/api/v1 - Ensure your business KYC is approved in the dashboard
- Customers complete KYC on
https://kyc.yativo.com(sandbox useshttps://kyc-sandbox.yativo.com), the same way they do in sandbox - Update your webhook URL to point to your production endpoint
Sandbox and production have separate API keys. Change both the base URL and the API key when you go live.

