Gateway API/api/v1/gateway

RukaPay Gateway API

RukaPay provides secure and scalable payment APIs for businesses to collect payments, process payouts, transfer money, pay bills, and purchase airtime across mobile money networks and banks.

Money transfer API — send to MNO (MTN/Airtel), banks, bill payments, and airtime via POST process-transfer.

Quick access

Gateway API

All payment flows use the Gateway API tag in RukaPay — one endpoint (POST process-transfer) with different transactionMode values for MNO, banks, bills, and airtime.

Transaction modes

transactionModeProductDescription
PARTNER_SEND_MNOMobile Money PayoutSend money to MTN or Airtel mobile money wallets.
PARTNER_COLLECT_MNOMobile Money CollectionCollect payment from customer MTN/Airtel. Credits partner wallet. callbackUrl required.
PARTNER_SEND_BANKBank TransferSend money to a Ugandan bank account.
PARTNER_PAY_BILL_PAYMENTBill PaymentPay utility and subscription bills (NWSC, UMEME, DSTV, etc.).
PARTNER_PAY_AIRTIMEAirtime PurchasePurchase airtime on MTN or Airtel.

Introduction

The RukaPay Gateway API lets partners collect payments, send payouts, pay bills, and purchase airtime through a single REST integration. Implementation lives in rdbs_core under src/gateway/, Swagger-tagged Gateway API.

Authenticate with x-api-key. All transfers go to:

https://api.rukapay.net/api/v1/gateway/process-transfer

Base path: /api/v1/gateway

curl -X POST https://api.rukapay.net/api/v1/gateway/process-transfer \
  -H "x-api-key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "transactionMode": "PARTNER_COLLECT_MNO",
  "amount": 50000,
  "currency": "UGX",
  "phoneNumber": "256700000000",
  "mnoProvider": "MTN",
  "narration": "Invoice payment #1001",
  "partnerReference": "PARTNER-REF-123456",
  "callbackUrl": "https://your-app.com/webhooks/rukapay"
}'

Next steps