Skip to content

Coverage

Which channels exist, where, and how to know what your own account can charge.

Two different questions hide behind the word coverage. What the platform supports is this page, and the catalogue behind it answers the same for every key.

The catalogue, for one country
curl "https://api.wajub.com/channels?country=CM" \
  -H "Authorization: pk_test.xxxxxxxxxxxxxxxx…" \
  | jq '.items[] | { slug, name, charge, payout, live }'

That route is open to every key type, sandbox included, and each entry tells you more than a table can:

  • payout says whether money can go out that way.
  • charge says whether POST /payments/{id} can charge the channel, and collect whether it can be collected inline, without leaving your page.
  • live says whether a provider you can connect carries the channel, which is what makes it exist outside sandbox. A rail no provider carries yet reads false.
  • min_amount and max_amount, when the catalogue sets them, are the smallest and largest payment on that channel, in its major unit like every amount of the API.

currency is not the channel's currency: it reads XAF for every channel. API version 2026-10-12 removes it from the answer. Read the currency from the country, in the tables below.

What your account can charge today is another call, because it depends on which providers are connected to you and which channels your team has switched on.

What your account can charge
curl https://api.wajub.com/providers \
  -H "Authorization: pk.xxxxxxxxxxxxxxxx…" \
  | jq '.items[] | { slug, channels: [.channels[].slug] }'

Use a live key. Each active connection comes back with the channels it actually offers, the ones the hosted checkout shows. A test key returns an empty list: provider connections exist in live only, and a sandbox payment never goes through them, see Providers.

Coming soon

The catalogue is wider than what can be charged. A rail marked coming soon on this page is in it, and GET /channels returns it like any other, but no provider you can connect carries it yet, so no account can charge it in live. Today that is Egypt, Algeria, Morocco, Tunisia, Sierra Leone, the OPay and PalmPay wallets in Nigeria, and crypto.

Mobile Money

The channel identifier is always country.operator, lowercase, and it is what you put in the channel field when you want to skip the payment method chooser.

CountryChannelsCurrency
BeninBeninbj.mtn bj.moovXOF
Burkina FasoBurkina Fasobf.orange bf.moovXOF
CameroonCamerooncm.mtn cm.orange cm.euXAF
CongoCongocg.mtn cg.airtelXAF
Côte d'IvoireCôte d'Ivoireci.mtn ci.orange ci.moov ci.waveXOF
DR CongoDR Congocd.airtel cd.vodacom cd.orange cd.africellCDF
EgyptEgyptComing soon: eg.vodafoneEGP
GabonGabonga.airtel ga.moovXAF
GhanaGhanagh.mtn gh.vodafone gh.airteltigoGHS
GuineaGuineagn.mtn gn.orangeGNF
KenyaKenyake.mpesa ke.airtelKES
LiberiaLiberialr.mtnLRD
MalawiMalawimw.airtel mw.tnmMWK
MaliMaliml.orange ml.moovXOF
MozambiqueMozambiquemz.mpesaMZN
RwandaRwandarw.mtn rw.airtelRWF
SenegalSenegalsn.orange sn.wave sn.freeXOF
Sierra LeoneSierra LeoneComing soon: sl.orangeSLL
South AfricaSouth Africaza.capitecZAR
TanzaniaTanzaniatz.mpesa tz.tigo tz.airtel tz.halopesaTZS
TogoTogotg.tmoney tg.moovXOF
UgandaUgandaug.mtn ug.airtelUGX
ZambiaZambiazm.mtn zm.airtel zm.zamtelZMW

The marks on each row are the operators with a logo on file, not the full list. The channel column is the authoritative one: every operator in a country appears there, logo or not.

Cards

There is one card channel, and you never name a network. Wajub reads the brand from the number and returns it on the payment.

NetworkChannel to sendHow it is resolved
VisaVisacardFrom the card number
MastercardMastercardcardFrom the card number

American Express, Discover, Diners, JCB and Maestro are recognised the same way where the provider accepts them. They exist in the catalogue as card.amex, card.discover and so on, but they are never offered as a choice: they are the answer, not the question.

Wallets and Buy Now Pay Later

Global methods carry no country. Whether they appear at checkout depends on the provider behind them and on the payer's own device.

MethodChannelType
Apple PayApple Payapple_payWallet
Google PayGoogle Paygoogle_payWallet
PayPalPayPalpaypalWallet
KlarnaKlarnaklarnaBuy now, pay later
AfterpayAfterpayafterpayBuy now, pay later

Amazon Pay, Revolut Pay, MobilePay and GrabPay are in the catalogue as amazon_pay, revolut_pay, mobilepay and grabpay.

Other local methods

Bank transfers, USSD and local wallets, in the countries where they matter more than a card.

CountryChannelsCurrency
AlgeriaAlgeriaComing soon: dz.cib dz.edahabiaDZD
Côte d'IvoireCôte d'Ivoireci.djamoXOF
EgyptEgyptComing soon: eg.fawry eg.meeza eg.instapayEGP
MoroccoMoroccoComing soon: ma.cmiMAD
NigeriaNigeriang.bank ng.ussd. Coming soon: ng.opay ng.palmpayNGN
SenegalSenegalsn.djamoXOF
South AfricaSouth Africaza.eft za.qr. Payouts only: za.bankZAR
TunisiaTunisiaComing soon: tn.edinar tn.flouciTND

International methods

Outside Africa, the methods below are in the catalogue and can be charged through a provider you connect. They appear at checkout only when one of your connections carries them, in the payer's country and currency.

MethodChannelCarried by
SEPA Direct Debitsepa_debitStripe, Flutterwave
iDEALidealStripe
BancontactbancontactStripe
Przelewy24p24Stripe
EPS (Austria)at.epsStripe
TWINT (Switzerland)ch.twintStripe
Bacs Direct Debit (UK)gb.bacsStripe, Flutterwave
BECS Direct Debit (Australia)au.becsStripe
ACSS Debit (Canada)ca.acssStripe
US bank account (ACH)us.bank_accountStripe, Flutterwave
Affirm (US)us.affirmStripe
Cash App Pay (US)us.cashappStripe
Boleto (Brazil)br.boletoStripe
OXXO (Mexico)mx.oxxoStripe
Konbini (Japan)jp.konbiniStripe
Multibanco (Portugal)pt.multibancoStripe
FPX (Malaysia)my.fpxStripe
PayNow (Singapore)sg.paynowStripe
PromptPay (Thailand)th.promptpayStripe
AlipayalipayStripe
WeChat Paywechat_payStripe

Coming soon, in the catalogue with no provider that can charge them yet: se.swish in.upi in.rupay in.netbanking in.paytm kr.card kr.kakaopay kr.naverpay kr.samsungpay cash.app.

Crypto

Coming soon. The four assets below are in the catalogue, but no provider that carries them can be connected yet, so none of them can be charged in live today. Once they open, a crypto payment settles to your balance in your own currency, at the rate of the moment it succeeds.

AssetChannel
USD CoinUSD Coincrypto.usdc
TetherTethercrypto.usdt
BitcoinBitcoincrypto.btc
EthereumEthereumcrypto.eth

Currencies

A currency is not a country, and several of the ones above share one. XOF covers eight West African markets and XAF covers Central Africa, which is why a payment in Senegal and a payment in Mali settle into the same balance.

CurrencyUsed by
XAFCameroon, Congo, Gabon
XOFBenin, Burkina Faso, Côte d'Ivoire, Mali, Senegal, Togo
NGNNigeria
GHSGhana
KESKenya
TZSTanzania
UGXUganda
RWFRwanda
ZMWZambia
MWKMalawi
MZNMozambique
CDFDR Congo
GNFGuinea
LRDLiberia
SLLSierra Leone
EGPEgypt
ZARSouth Africa
MADMorocco
TNDTunisia
DZDAlgeria

XAF and XOF have no subunit

Their precision is zero, so 5000 means five thousand francs and there is nothing to convert. Every currency on the API uses its major unit, and GET /currencies returns the precision of each one alongside its symbol.

Wajub also settles in the usual reserve currencies and in a long tail of others, which the same endpoint lists in full. The table above is the set you will actually meet in these markets, once their rails are open: EGP, MAD, TND, DZD and SLL belong to markets that are still coming soon.

Payouts do not follow payments

A country appearing above means money can come in. Money going out is a separate capability, set per channel, and the catalogue carries it as payout.

Which channels accept a transfer
curl https://api.wajub.com/channels \
  -H "Authorization: sk.xxxxxxxxxxxxxxxx…" \
  | jq '[.items[] | select(.payout) | .slug]'

Do not assume the answer from this page. A channel that collects beautifully can be payout only through a different operator in the same country, and that is a provider decision rather than a platform one. za.bank is the reverse case: a South African bank account can be paid out to, and cannot be charged.

When a country is missing

The catalogue is wider than any one account's configuration, and it grows. If the country or the operator you need is not here, or is marked coming soon, write to coverage@wajub.com with the market and your expected volume: the answer is usually about which provider to connect, not about whether it is possible.

What did you think of this content?