Skip to content

Accept mobile money in Uganda

In Uganda, mobile money means MTN MoMo and Airtel Money. You can integrate each network's own API, or reach both through one Flutterwave account.

Your options

MTN MoMo Open API (Collections)

Reaches
MTN MoMo
Sign-up
Free sandbox at momodeveloper.mtn.com; production through MTN's partner onboarding
Best for
The largest share of Ugandan wallets, with no aggregator in between
Guides
Node.js · Laravel · Django · Payouts

Airtel Money Open API

Reaches
Airtel Money
Sign-up
Application on developers.airtel.africa; production after Airtel approves your business
Best for
Reaching Airtel customers directly, alongside MTN
Guides
Node.js · Laravel

Flutterwave (v3)

Reaches
MTN MoMo and Airtel Money, plus cards
Sign-up
Flutterwave account with KYC; test mode available straight away
Best for
One integration and one settlement for both networks
Guides
Node.js · Laravel · Django · Payouts

Currency: UGX. Fees are set per contract and aren't published, so ask each provider for a quote. Checked November 2026.

Which should you choose?

  • Need both networks quickly, or cards too? Start with Flutterwave: one integration, one approval.
  • High volume, or you want no aggregator? Integrate MTN MoMo and Airtel Money directly. It is two approvals and two integrations, but you deal with the networks yourself.
  • Unsure? Build against one interface and add providers behind it. The starter kits do exactly that.

For a side-by-side look at the payment flow, webhook security and payouts, see MTN MoMo API vs Flutterwave vs Paystack.

Not available here

  • Paystack: its mobile money is documented for Ghana, Kenya and Côte d'Ivoire only.
  • M-Pesa: Safaricom's M-Pesa is Kenyan; Ugandan customers pay with MTN MoMo or Airtel Money.

Which numbers are on which network

Mobile numbers in Uganda start with these prefixes, by wallet. Customers can move numbers between networks, so let them confirm.

WalletNumber starts with
Airtel Money070, 0730, 0731, 0732, 074, 075
MTN MoMo0724, 0737, 076, 077, 078, 079

From Google libphonenumber's carrier data (2026-10-28). Longest prefix wins. Convert any number with the Phone Number Formatter.

Free tools

Skip the plumbing

All three routes on this page are built into the starter kits: MTN MoMo, Airtel Money and Flutterwave. The starter kits (Laravel, Django, Next.js) are tested and ready to configure. Or have the integration built for you.

Frequently asked questions

Can I accept MTN MoMo and Airtel Money with one integration in Uganda?

Yes, through an aggregator such as Flutterwave, whose v3 API has a mobile_money_uganda charge for both MTN and Airtel. Going direct means integrating MTN's and Airtel's APIs separately.

What phone number format do Ugandan mobile money APIs use?

It depends on the API. MTN MoMo takes the country code without a plus (256772123456). Airtel Money takes the number without the country code or leading 0 (772123456). The Phone Number Formatter converts between them.

Which numbers are MTN and which are Airtel in Uganda?

In Google libphonenumber's carrier data, MTN numbers start 076, 077, 078 and 079 (except 0798 and 0799), and Airtel numbers start 070, 074 and 075. Numbers can move between networks, so let the customer confirm.

Other countries: Kenya · Ghana

Need this built for you?

I integrate MTN MoMo, M-Pesa and Airtel Money into Laravel / PHP, Python / Django, Node.js / Next.js apps: payments, callbacks, payouts and go-live, with tests.