> ## Documentation Index
> Fetch the complete documentation index at: https://docs.centipidbilling.com/llms.txt
> Use this file to discover all available pages before exploring further.

# MTN Mobile Money (MoMo)

> What MTN MoMo supports today, and why it cannot be configured through Settings → Payments.

# MTN Mobile Money (MoMo)

`MTN_MOMO` collects through MTN's MoMo Collections API: a payment request is
sent to the payer's MoMo number, the payer approves it on their handset, and the
request's status is polled until it settles.

The backend country catalog offers MTN MoMo in **Uganda, Ghana, Côte d'Ivoire,
Zambia, Benin, and Cameroon**.

<Warning>
  **This version has no credential form for MTN MoMo.** The gateway appears in
  the country catalog, but **Settings → Payments** renders no fields for it, so
  there is no supported way to enter or verify the credentials it needs.

  Do not select MTN MoMo for an account that is not already running on it.
  Choose [PawaPay](/billing/payment-gateways/pawapay) — which reaches MTN
  wallets in every one of those countries — or, in Ghana,
  [Hubtel](/billing/payment-gateways/hubtel).

  If an existing account is already configured on MTN MoMo, contact support
  before changing anything; the values below cannot be re-entered through the
  interface once they are cleared.
</Warning>

## What the integration needs

These are the values the backend requires. They are documented for support and
upgrade planning — not as an instruction to set them another way.

| Value            | Notes                                                            |
| ---------------- | ---------------------------------------------------------------- |
| Subscription key | From the MTN MoMo developer portal, for the Collections product. |
| API user         | The API user id created against that subscription.               |
| API key          | Secret, issued for that API user.                                |

Requests go to `https://momodeveloper.mtn.com` in production and to
`https://sandbox.momodeveloper.mtn.com` elsewhere.

## How a payment would complete

<Steps>
  <Step title="Request">
    Centipid Billing authenticates with the API user and key, then posts a
    request-to-pay against the payer's MoMo number with a unique reference id.
  </Step>

  <Step title="Authorization">
    The payer approves the request on their handset.
  </Step>

  <Step title="Confirmation">
    The reference id's status is queried back from MTN. A successful status
    records the payment and applies the package; a failed one is stored with the
    reason MTN returned.
  </Step>
</Steps>

## Troubleshooting

| Symptom                                                               | What it means                                                | What to do                                                                        |
| --------------------------------------------------------------------- | ------------------------------------------------------------ | --------------------------------------------------------------------------------- |
| MTN MoMo has no fields in Settings → Payments                         | Expected — there is no credential component in this version. | Use PawaPay or Hubtel, or contact support.                                        |
| *"MTN Mobile Money credentials are not configured for this account."* | The stored credentials are missing or incomplete.            | Contact support. They cannot be entered through the interface.                    |
| *"Unable to authenticate with MTN Mobile Money…"*                     | MTN rejected the stored credentials.                         | Contact support — a rotated subscription key or API key is the usual cause.       |
| *"Unable to reach MTN Mobile Money at the moment…"*                   | The request could not connect.                               | Check outbound connectivity from the application host, then retry.                |
| *"Payment is still pending."*                                         | MTN has not settled the request.                             | Re-check the status before advising a retry — a retry can charge the payer twice. |

For the gateways that are configurable today, see
[Payment gateways](/billing/payment-gateways/index), and for their fields, the
[credential reference](/billing/payment-gateways/credentials-reference).
