Skip to main content

Testing in sandbox

The sandbox is a full copy of IntaSend that moves no real money. Sign up there, copy your _test_ keys from Settings → API Keys, and use them exactly as you would live keys. See Getting started for how keys pick the environment.

When you're ready to go live, sign up on payment.intasend.com and swap in your _live_ keys. Nothing else in your integration changes.

Test cards​

Use any future expiry date and any 3-digit CVC.

Card number
4456 5300 0000 1096
4456 5300 0000 3134
4242 4242 4242 4242
5200 0000 0000 1096
5200 0000 0000 3092

M-Pesa​

For collections (STK Push), use your own Safaricom number. Sandbox requests go through the M-Pesa developer platform, which reverses test amounts within 48 hours.

For payouts, use the test accounts below.

Payout test accounts​

A sandbox payout to one of these accounts succeeds straight away without reaching any provider. It goes through the same states, wallet debits and webhooks as a live payout, and returns John Doe as the recipient name. Payouts to any other account aren't guaranteed to succeed in sandbox.

providerTest accountAlso required
MPESA-B2C254708374149 (0708374149 also works)
MPESA-B2B99999account_type, plus account_reference for a paybill
PESALINK001001001001bank_code: 1 (KCB)
INTASEND-XBOne per country, see belowcountry matching the number
INTASEND-XB-BANK1001001001country: UG, bank_code: STANBIC_BANK_UGANDA_TRANSFER

Cross-border (INTASEND-XB)​

Use the test account for the payout's country. Mobile money numbers are in international format without +. Nigeria pays out to a bank account, so its test account also needs bank_code 000013 (GTBank). A test account sent with a different country is treated as an ordinary account.

countryTest account
BF Burkina Faso22670000000
BJ Benin22960000000
CD DR Congo243810000000
CI Côte d'Ivoire2250100000000
CM Cameroon237670000000
GH Ghana233240000000
GN Guinea224620000000
KE Kenya254708374149
ML Mali22366000000
NG Nigeria0123456789 (bank account, bank_code 000013)
RW Rwanda250780000000
SN Senegal221770000000
TG Togo22890000000
TZ Tanzania255650000000
UG Uganda256700000000
ZM Zambia260960000000
{
"currency": "UGX",
"country": "UG",
"provider": "INTASEND-XB",
"requires_approval": "NO",
"transactions": [
{"name": "John Doe", "account": "256700000000", "amount": "5000", "narrative": "Sandbox test"}
]
}

Callbacks and webhooks​

Your redirect_url, callback_url and webhook endpoints must use HTTPS, in sandbox as well as live.