Skip to main content
GET /mobile-money/countries returns the countries open to your account, their operators, and for each operator and currency: the live status, the minimum and maximum amount, the decimals and your all-in price. That is everything you need to build a payment screen.

Codes

  • Countries use ISO 3166-1 alpha-3 codes (CMR, CIV, COD), currencies ISO 4217 (XAF, XOF, KES).
  • Each operator has a stable code: brand and country, for example MTN_CMR or ORANGE_CIV. Store this code, not the name.

Read the status before you show an operator

Use available. Hide an operator from your payment screen when collection.available is false, and offer the others of the country. A closed operator is often back within minutes or hours. Payouts and refunds are not open yet: their status is shown for information, and refunds have no price yet (fee: null).

Amounts and decimals

  • min_amount and max_amount apply to what the customer pays, per transaction.
  • decimals is the number of decimals accepted by this operator. 0 means whole amounts only (5000, not 5000.50).
Decimals depend on the operator, not only on the currency. In Uganda, MTN_UGA accepts 2 decimals and AIRTEL_UGA none, both in UGX. Round to the decimals of the operator your customer picked.

Countries enabled for your account

Every country is enabled by default. A country disabled for your account disappears from the list, and asking for it returns 422 COUNTRY_NOT_SUPPORTED. Contact support if you need it.

Best practices

Operator data is refreshed every 10 minutes on our side. Cache it on your server instead of calling the API on every page view.
Operators change them, sometimes without notice. Read them from the API.
Call POST /mobile-money/predict-operator, or leave operator empty when you request a payment: we guess it from the number.
See the full list in Supported countries.