Sandbox

Virtual numbers (test)

Test numbers by country to simulate all scenarios — success, failures, pending — without real money.

Sandbox mode. Use your kpay_test_... keys and the test numbers below. KPay routes your requests to its test environment — no real money is moved.

How it works

In sandbox (key <code>kpay_test_…</code>), KPay routes your requests to the <strong>KPay sandbox</strong>. These numbers <strong>only exist in sandbox</strong>: the number used determines the outcome of the transaction.

  • COMPLETED — the transaction succeeds.
  • FAILED — the transaction fails with a specific <code>failureCode</code> (e.g. <code>PAYER_NOT_FOUND</code>, <code>INSUFFICIENT_BALANCE</code>).
  • SUBMITTED — the transaction stays pending (useful for testing polling).

Deposit vs Payout

Numbers differ between <strong>payments</strong> (deposits) and <strong>withdrawals</strong> (payouts). Each country has its own list below. Select a country to display its numbers.

Numbers by country

Providers : MTN_MOMO_CMR, ORANGE_CMR

Payments (deposits)

Number (MSISDN)ResultfailureCode
237653456019FAILEDPAYER_LIMIT_REACHED
237653456029FAILEDPAYER_NOT_FOUND
237653456039FAILEDPAYMENT_NOT_APPROVED
237653456069FAILEDUNSPECIFIED_FAILURE
237653456129SUBMITTED
237653456789COMPLETED

Withdrawals (payouts)

Number (MSISDN)ResultfailureCode
237653456089FAILEDRECIPIENT_NOT_FOUND
237653456119FAILEDUNSPECIFIED_FAILURE
237653456129SUBMITTED
237653456789COMPLETED

Going to production

Once your integration is tested in sandbox, complete <strong>identity verification (KYC)</strong> from your dashboard ("Verification" menu) to unlock <code>kpay_live_…</code> keys and process real transactions. As long as KYC is not validated, production key generation is refused.

Related resources

Was this page helpful?