# MTN MoMo API or a WooCommerce Plugin: What It Takes to Accept MoMo

URL: https://fosiarw.com/mtn-momo-api-vs-woocommerce-plugin/
Updated: 2026-11-06
Site: FOSIA AGENCY

**In short:** the MTN MoMo API, offered on MTN’s MoMo Developer portal, lets a business request payments straight from MTN Mobile Money wallets. To use it on WooCommerce you must pass MTN’s go-live process in each country, then build and maintain the payment plugin yourself, and it only reaches MTN customers. A ready-made plugin connected to an aggregator, such as Fosia Pay with PawaPay, removes the coding and adds other networks, but you work through a third party instead of directly with MTN.

Developers and agencies ask us this often: “Why not plug the store straight into MTN?” It is a fair question. Going direct can make sense, and for some businesses it is the right call. This article walks through what the direct route really involves, so you can compare it honestly with installing a plugin.

## What the MTN MoMo API offers

MTN runs a [MoMo Developer portal](https://momodeveloper.mtn.com/) with two families of APIs. “Get Paid” lets businesses collect payments, with operations such as Request Payment, Payment Status, Refund and Account Balance. “Pay” lets businesses send money to consumers or other businesses. MTN Uganda’s Open API page uses the older product names: Collections for receiving payments for goods and services, Disbursements for paying a list of recipients, and Remittances for cross-border transfers. Signing up to the developer portal is free, and a sandbox lets you experiment before anything goes live.

## From sandbox to live: the real work

### In the sandbox

You create an account, subscribe to a product and generate your own API user and API key through the sandbox provisioning calls. Test transactions run in euros against test numbers.

### Going live

Production is different, and it is country by country. According to a configuration guide posted by the community manager of MTN’s MoMo Developer Community:

- the API user and API key come from a Partner Portal, and the Partner Portal address is country-specific;
- the base address, the target environment (for example “mtnuganda”) and the currency all change to the country’s values;
- a production account is created once KYC validation and verification are done.

MTN Rwanda’s go-live page describes the same path in three stages: thorough sandbox testing, a contract based on detailed business information (your type of entity, your product, the customer journey, where your servers are hosted), then MoMo sets up your live wallet accounts and shares production credentials. Plan for paperwork and waiting, not only code.

## What you still have to build for WooCommerce

An API key is not a checkout. To take MoMo in a WooCommerce store, your developer has to write and maintain:

1. **A payment gateway class** that creates the payment request when the customer places an order.
2. **A Checkout block integration.** WooCommerce’s docs explain that a payment method needs a client-side registration with `registerPaymentMethod` and a server-side class extending `AbstractPaymentMethodType`. New stores use the block checkout by default, so this is not optional.
3. **HPOS compatibility.** The plugin must read and write orders through WooCommerce’s order functions, not post meta, and declare its compatibility.
4. **Status handling.** Callbacks from MTN plus status checks for payments whose answer is late, so no order stays “pending” forever, and none is marked paid twice.
5. **Refunds, error messages and logs** that a shop manager can understand.
6. **Updates** every time WooCommerce, WordPress or the API changes.

None of this is impossible. It is simply a product to maintain, not a one-off task.

## One network, one country at a time

The direct route connects you to MTN only. In Rwanda or Uganda, customers on Airtel Money need another integration. In Cameroon, Orange Money customers need another one. And each new MTN country means a new go-live process with its own Partner Portal and currency.

## The plugin route: PawaPay with Fosia Pay

An aggregator such as PawaPay has already connected to many operators. Its [markets page](https://www.pawapay.io/markets) lists MTN in countries like Benin, Cameroon, Ghana, Côte d’Ivoire, Rwanda, Uganda and Zambia, next to Airtel, Orange, Moov, Wave, M-Pesa and others. You still open a merchant account and go through PawaPay’s own onboarding, and some operators are only available on its Enterprise plan.

[Fosia Pay](https://pay.fosiarw.com/), built by FOSIA in Kigali, is the WooCommerce side of that route. It already handles the list above: classic and block checkout, HPOS, orders marked as paid only after Fosia Pay verifies PawaPay’s signed confirmation (RFC 9421), network detection from the phone number (Pro) and price conversion to the local currency. FOSIA takes 0% commission: only PawaPay’s own processing fees apply.

## The two routes compared

| | Direct MTN MoMo API | Fosia Pay with PawaPay |
| --- | --- | --- |
| Your contract is with | MTN, in each country | PawaPay |
| Networks | MTN only | 43 networks in 21 countries, as enabled by PawaPay |
| WooCommerce code | Written and maintained by you | Install and configure |
| Block checkout and HPOS | Your job | Included, even in free Lite |
| Refunds and payouts | Your job | Pro plan, from the order screen |
| Best for | High MTN volume, in-house developers | Shops and agencies that want to sell this month |

## When going direct is the right call

Choose the MTN MoMo API if most of your customers are on MTN in one country, you have developers who will own the integration for years, and you want a direct relationship with the operator, for example to build MoMo into your own app as well as your website. Choose a plugin if you need several networks, have no in-house developer, or simply want the store selling while you focus on stock and delivery. Our earlier guide to [WooCommerce payment gateways for Africa](https://fosiarw.com/woocommerce-payment-gateways-africa-mobile-money/) lists the other plugin options too.

## Frequently asked questions

### Can I try the MTN MoMo API without a registered business?

You can sign up to the developer portal and use the sandbox for free. Going live needs MTN’s business checks in your country.

### Does Fosia Pay need my MTN API keys?

No. Fosia Pay uses your PawaPay API token. PawaPay handles the connection to MTN and the other operators enabled on your account.

### Can an agency reuse one direct integration for several clients?

On the direct route, that depends on MTN’s contract terms in your country, so ask MTN first. With Fosia Pay, the Agency plan covers up to 25 client sites from one PawaPay account with a multi-site callback router.

### What does a customer see on the plugin route?

The customer enters a phone number and confirms on the phone. With Lite they confirm on a secure PawaPay page; with Pro the prompt reaches the phone without leaving your store.

Want to start testing MoMo today? Download [Fosia Pay Lite](https://pay.fosiarw.com/), follow our [PawaPay setup guide](https://fosiarw.com/pawapay-woocommerce-setup-guide/) and see how it works for Rwanda in [MTN MoMo and Airtel Money on WooCommerce](https://fosiarw.com/accept-mtn-momo-airtel-money-woocommerce-rwanda/). Need a hand? [Book a free call](https://fosiarw.com/book-appointment/).
