SwiftGoma.SwiftGoma

Search endpoints

Jump to any API endpoint by name, method, or path

Guide

MbiyoPay

MbiyoPay is the platform's buyer- and seller-facing mobile money provider, covering the DRC and Rwanda — separate from PawaPay, which is scoped narrowly to subscriptions and expenses internally. Every endpoint on this page requires an ADMIN or ACCOUNTANT role and lives under https://api.swiftgoma.com/api/v1/mbiyopay.

What actually runs through MbiyoPay

Buyer checkout (see POST /orders/checkout in the Orders guide), order refunds, and seller wallet withdrawals all settle through MbiyoPay under the hood. The endpoints on this page are the platform's own finance tooling around that — checking status and balances, and manually triggering a payout — not something a buyer or seller calls directly.

Same OTP-approval pattern as PawaPay

Payouts here go through the identical request-approval / confirm flow described in the Payments guide — one shared implementation backs both providers. If you've already integrated PawaPay payouts, MbiyoPay payouts work the same way.

Supported countries

CountryNetworksCurrencyAmount range
DRC (CD)vodacom, airtel, orange, africellUSD0.1 – 2,500
CDF40 – 5,000,000
Rwanda (RW)mtn, airtelRWF100 – 5,000,000

GET /countries returns this same information live from the connected account — worth checking before hardcoding limits, since they can change.

Payin

POST /payin requests a mobile money charge directly — like PawaPay deposits, this one call isn't OTP-gated, since it only ever brings money in. A duplicate submission with the same amount, currency, network, and phone number within a 5-minute window resolves to the same payin instead of charging twice, even without an explicit orderId.

Payout

StepEndpoint
1. Request approvalPOST /payout/request-approval
2. ConfirmPOST /payout/confirm
HistoryGET /payout/history

Production payouts require MbiyoPay-side KYC

Confirming a payout can fail with MBIYOPAY_KYC_REQUIRED if the platform's own MbiyoPay account hasn't completed KYC on their side yet — this is separate from, and unrelated to, SwiftGoma's seller KYC.

Checking status & balances

WhatEndpoint
Transaction status (payin or payout)GET /transactions/:transactionId
Wallet balancesGET /balances
Balances by networkGET /balances/networks

GET /transactions/:transactionId accepts either MbiyoPay's own transaction ID or the orderId you supplied when initiating the payin or payout. Network balances are useful for spotting when one specific carrier's float is running low before it causes payout failures.

Browse the MbiyoPay endpoints in the API Reference