Uganda at a Glance

DetailValue
Country Code256
CurrencyUGX (Ugandan Shillings)
OperatorsMTN MoMo, Airtel Money

Phone Number Format

Format: 256{7-9 digit subscriber number}
Example: 256700123456  (MTN)
         256752123456  (Airtel)

Local to international:
  0700 123 456  →  256700123456

Test Configuration

# Test collection (always succeeds)
curl -X POST https://api.rohopay.com/api/v1/collect \
  -H "Authorization: Bearer test_YOUR_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{
    "phone": "256700000000",
    "amount": 10000,
    "currency": "UGX",
    "description": "Test payment"
  }'

Operators

MTN Mobile Money (MoMo)

  • USSD: *165#
  • Prefixes: 0701–0709, 0780–0789
  • Support: MTN Uganda — 0800 186 186

Airtel Money

  • USSD: *185#
  • Prefixes: 0740–0749, 0750–0759
  • Support: Airtel Uganda — 0800 600 600

Common UGX Amounts

UGXAPI Value
1,0001000
5,0005000
10,00010000
50,00050000
100,000100000
1,000,0001000000

Minimum / Maximum

OperationMinimumMaximum
CollectionUGX 500UGX 5,000,000
DisbursementUGX 500UGX 5,000,000
Wallet withdrawalUGX 5,000UGX 10,000,000

Transaction Speeds

OperatorTypical Time
MTN MoMo10–30 seconds
Airtel Money15–60 seconds

Integration Example (Uganda)

// Uganda-specific payment helper
async function collectUgandaPayment(localPhone: string, amountUGX: number) {
  // Normalize phone: 0700... → 256700...
  const phone = localPhone.startsWith("0")
    ? "256" + localPhone.slice(1)
    : localPhone;

  if (!/^256[0-9]{9}$/.test(phone)) {
    throw new Error("Invalid Uganda phone number");
  }

  return fetch("https://api.rohopay.com/api/v1/collect", {
    method: "POST",
    headers: {
      "Authorization": `Bearer ${process.env.ROHOPAY_API_KEY}`,
      "Content-Type": "application/json",
      "Idempotency-Key": crypto.randomUUID(),
    },
    body: JSON.stringify({
      phone,
      amount: amountUGX,
      currency: "UGX",
      callback_url: "https://your-app.com/webhooks/rohopay",
    }),
  }).then(r => r.json());
}

Tips for Uganda

USSD networks can be slow between 12pm–2pm and 6pm–9pm EAT (East Africa Time, UTC+3). Plan for slightly longer polling timeouts during these windows.
MTN Uganda performs maintenance on Sunday mornings (typically 1am–4am EAT). Schedule batch disbursements before or after this window.
If your preferred provider is unavailable, RohoPay automatically fails over to the secondary provider. Both cover Uganda.