Payment methods & channels
The complete reference of Wajub payment methods — Mobile Money, cards, bank transfers, wallets, and crypto — with country matrix, currencies, channel identifiers, and limits.
Wajub groups five families of payment methods behind a single API. Each method is
identified by a channel in the format country.operator (e.g. cm.mtn). You don't have to hardcode
them: by default, the hosted page offers all available channels for the requested currency.
How to read a channel
cm.mtn = MTN Mobile Money in Cameroon. sn.wave = Wave in Senegal. The prefix is the ISO 3166-1
alpha-2 country code, the suffix the operator.
Mobile Money
The dominant payment method. The customer authorizes from their phone (USSD or operator app).
| Operator | Channels | Countries | Currency |
|---|---|---|---|
| MTN MoMo | cm.mtn, ci.mtn, bj.mtn, gh.mtn, ug.mtn, rw.mtn | CM, CI, BJ, GH, UG, RW | XAF, XOF, GHS, UGX, RWF |
| Orange Money | cm.orange, ci.orange, sn.orange, ml.orange, bf.orange | CM, CI, SN, ML, BF | XAF, XOF |
| Wave | sn.wave, ci.wave | SN, CI | XOF |
| Airtel Money | ke.airtel, ug.airtel, tz.airtel, rw.airtel | KE, UG, TZ, RW | KES, UGX, TZS, RWF |
| Moov Money | bj.moov, ci.moov, tg.moov | BJ, CI, TG | XOF |
| M-Pesa | ke.mpesa, tz.mpesa | KE, TZ | KES, TZS |
Bank cards
Visa and Mastercard, with 3-D Secure. Available on the hosted page in countries where the settlement currency allows it.
| Network | Channel | Notes |
|---|---|---|
| Visa | card.visa | 3-D Secure 2 mandatory. |
| Mastercard | card.mastercard | 3-D Secure 2 mandatory. |
Bank transfers
For high amounts, in B2B. The customer receives account details and the transaction transitions to
succeeded upon receipt of funds.
| Type | Channel | Countries |
|---|---|---|
| Domestic transfer | bank.transfer | CM, CI, SN, NG, GH |
Wallets
Apple Pay and Google Pay, via a Payment Request Button on the Wajub Components JS SDK
integration. The PaymentMethod is tokenized on-device — Wajub never sees the raw card or device
credentials.
| Wallet | wallet_type | Requires |
|---|---|---|
| Apple Pay | apple_pay | Safari, iOS |
| Google Pay | google_pay | Chrome, Android |
Wallets require the Components SDK
Apple Pay and Google Pay are not available on the hosted payment page (pay.wajub.com). They
require the embedded Components integration, which renders a Payment Request Button that triggers
the native wallet sheet. See Wajub Components → JS for the
integration guide.
Crypto
Pay in a supported cryptocurrency; the transaction settles once the on-chain payment confirms.
Channels follow the crypto.{asset} format (e.g. crypto.btc, crypto.eth). If no
wallet_address is supplied, the payer is shown a deposit address to send funds to.
| Asset | Channel |
|---|---|
| BTC | crypto.btc |
| ETH | crypto.eth |
Which assets are enabled
The exact list of crypto assets available on your account is exposed by GET /channels
and configured in the Dashboard — it depends on which crypto provider(s) your team has active.
Country × currency matrix
The currency determines the available channels. Here is the main coverage.
| Country | Code | Currency | Mobile Money | Cards |
|---|---|---|---|---|
| Cameroon | CM | XAF | MTN, Orange | ✅ |
| Côte d'Ivoire | CI | XOF | MTN, Orange, Wave, Moov | ✅ |
| Senegal | SN | XOF | Orange, Wave, Free | ✅ |
| Benin | BJ | XOF | MTN, Moov | ✅ |
| Mali | ML | XOF | Orange | ✅ |
| Burkina Faso | BF | XOF | Orange, Moov | ✅ |
| Togo | TG | XOF | Moov, T-Money | ✅ |
| Ghana | GH | GHS | MTN, Vodafone | ✅ |
| Nigeria | NG | NGN | — | ✅ |
| Kenya | KE | KES | M-Pesa, Airtel | ✅ |
| Uganda | UG | UGX | MTN, Airtel | ✅ |
| Rwanda | RW | RWF | MTN, Airtel | ✅ |
| Tanzania | TZ | TZS | M-Pesa, Airtel | ✅ |
Evolving coverage
New channels are added regularly. The exact list available on your account is exposed by
GET /channels and in the Dashboard. A new entry is a backward-compatible change
(versioning).
Default limits
Per-transaction limits depend on the operator and your KYC level. Indicative default values in sandbox and on a standard account:
| Method | Min | Max per transaction |
|---|---|---|
| Mobile Money | 100 XAF / XOF | 1,000,000 XAF / XOF |
| Cards | 100 | 5,000,000 |
| Bank transfer | 50,000 | no upper limit |
Your actual limits
Definitive caps are set by your verification level. Check them in Dashboard → Compliance, or contact support to raise a cap.
No per-payment channels restriction
There is currently no channels parameter on POST /payments to restrict which methods are
offered on a specific payment — the hosted page shows every channel available for the
team/currency. To use a single specific channel and skip the selection screen, pass channel
directly in the POST /payments request body (e.g. "channel": "cm.mtn"). See Create a
payment for the full parameter list.
Was this page helpful?