When an African checkout converts badly, the first fix most teams reach for is another card processor. Better authorisation rates, a different acquirer, a slicker card form. It rarely moves the number, because the problem was never the card. It was that the card was the only thing on the page.
This is an argument for putting local methods first, and for keeping cards, in the right place.
The customer's wallet is on their phone
Across the markets Ultraner serves, the financial account an adult is most likely to use daily is a mobile money wallet. The World Bank's Global Findex has shown for years that in much of Sub-Saharan Africa, mobile money accounts carry a large share of account ownership, and in several East African countries they exceed bank accounts 1. The GSMA's reports put the region at the centre of global mobile money activity 2.
What that means at checkout is simple. A customer in Mwanza buying a TZS 35,000 course, or a customer in Kampala buying UGX 20,000 of airtime-adjacent software, has money on their phone and a PIN in their head. They may also have a debit card, issued by their bank, that has never been used online, may not be enabled for international transactions, and will ask for a one-time password sent to a number they changed last year.
Offer that customer a card form only and you have asked them to use their least familiar tool for your purchase.
Why the card path leaks
Card payments work, and on Ultraner they are processed through Stripe. But each step of the card path is a place where an African purchase can fall out:
- The card is not enabled for online use. Many local debit cards need the cardholder to switch on e-commerce or international payments first.
- The currency mismatch. A card issued in shillings paying a merchant priced in dollars gets converted, at a rate the customer does not see until their statement.
- Strong authentication. 3D Secure exists to stop fraud, and it adds a step 3. If the OTP goes to an old number, the payment stops there.
- Typing sixteen digits on a small phone screen, plus expiry and CVV, in a browser that may not autofill.
A mobile money payment has steps too, and they are steps the customer does every day: confirm a number, look at the phone, enter a PIN.
What "local method" actually means
It does not mean "mobile money" in the abstract. It means the specific wallet the customer uses in their country, by name and logo:
- In Kenya, M-Pesa (Safaricom) first.
- In Tanzania, the six that real people use: M-Pesa (Vodacom), Mixx by Yas, Airtel Money, Halopesa, TTCL T-Pesa and AzamPesa.
- In Uganda and Rwanda, MTN MoMo and Airtel Money.
- In Senegal, Wave, Orange Money and Free Money.
- In Ivory Coast, Orange Money, MTN MoMo and Wave.
A button that says "Mobile money" with no logos is a weaker version of the right thing. Customers trust the brand they know. Ultraner's mobile networks directory lists every brand by market, and each country page, such as Ivory Coast, shows exactly what a payer there sees.
Where cards still earn their place
We are not arguing to drop cards. On Ultraner's checkout a payer can use mobile money, a card processed through Stripe, or PayPal, on one page, and every one of those is worth keeping. Cards matter for:
The diaspora. A Senegalese family member in Lyon paying a school fee in Dakar, a Kenyan in London buying a gift for home. They have cards and PayPal, not a local wallet.
Corporate buyers. A company paying for software on a corporate card wants an automatic monthly charge. Card subscriptions renew without a prompt, which mobile money cannot do.
International customers of African businesses. A Tanzanian safari operator selling to German tourists should lead with card and PayPal for those buyers.
Higher-value purchases. Mobile money wallets have transaction and balance limits set by each network and regulator. For large one-off payments, a card or a bank transfer may be the only path that fits.
Ordering methods on one page
The practical answer is not "mobile money or card". It is ordering. A single checkout, with the order chosen by who is paying:
- Local phone number entered? Show that country's wallets first, with logos, the most used one pre-selected. Card and PayPal below.
- Foreign phone number, or none? Card and PayPal first. Wallets still available below for the customer who has one.
- Returning customer? Remember their last method and put it first.
Ultraner's hosted checkout does this kind of method selection for you. If you build your own, the universal charge endpoint takes the same request shape for all three methods, changing only method:
{ "method": "mobile_money", "amount": 35000, "phone": "255712345678", "provider": "Vodacom" }
{ "method": "card", "amount": 35000, "currency": "TZS", "description": "Course",
"return_url": "https://your.app/ok", "cancel_url": "https://your.app/cart" }Mobile money sends a prompt to the phone and returns no redirect. Card and PayPal return a redirectUrl to the processor's own hosted page, so you never handle a card number.
The test that settles the argument
If you are not convinced, do not take our word. Run it.
Take one market where you already have traffic. For two weeks, show local wallets first for local phone numbers, with logos and a clear "approve on your phone" waiting screen. Keep cards below. Measure the completed payment rate per checkout started, split by method, against the two weeks before.
Then look at the one metric that tells you most: for customers who started on a card and failed, how many came back and paid with a wallet when it was offered? That number is the revenue a card-only checkout was quietly turning away.
If you need a starting point, the Kenya guide walks through a wallet-first checkout step by step.




