loading...
loading...

How to Process Local Payouts to Kenya (KES) via Mobile Money Using Stablecoins

Mobile money payouts to Kenya in KES funded by USDC: 35.82 million one-month active M-PESA users, KSh 38.29 trillion in FY2025, and payouts that settle in under 30 minutes

Your gig rider in Nairobi wants shillings on their phone, not a bank branch visit. Your wire cannot land on a mobile money wallet, and cash pickup eats another day.

Mobile money payouts to Kenya with stablecoin settlement fix that. You fund in USDC or USD, lock a quote, and your recipient gets Kenyan shillings (KES) in their mobile money wallet.

Wallets are how most people move money here. Safaricom reported 35.82 million one-month active M-PESA customers in FY2025, moving about KSh 38.29 trillion across 37.15 billion transactions.

This guide covers why MoMo payouts from abroad stall, how the stablecoin-funded flow works, and which wallet details you need. It then walks through your first Kenya mobile money payout by dashboard and by API.

Why Paying Mobile Money Wallets in Kenya Is Harder Than It Should Be

Domestic M-PESA transfers inside Kenya are quick. The problem starts when the money has to cross a border first.

Small cross-border transfers are expensive. Sending small amounts abroad costs an average of 6.36% of the amount sent, according to the World Bank. On a US$10,000 monthly gig payout run, that average would cost you US$636 every month. We break down more of these costs in the hidden costs of international payments.

Traditional wires do not target mobile money. A SWIFT payment expects a bank account. Forcing a wallet recipient through a bank first adds cash-out fees and another trip.

Network mismatches reject payouts. Paying an M-PESA wallet with Airtel Money details, or typing one wrong digit in the MSISDN, returns the money and starts a support thread.

FX opacity frustrates recipients. When a dollar remittance converts at an opaque retail rate, the shilling amount on the phone does not match what you promised.

Mobile Money Payouts to Kenya with a Stablecoin Layer: How It Works

Yativo is payment infrastructure, not a bank. We use stablecoins as the settlement layer between your balance and Kenya. A licensed local payout partner then credits the mobile money wallet on the ground.

  1. You fund your Yativo float balance with a fiat or stablecoin deposit, such as USDC.
  2. Yativo converts the payout value to USDC and settles it on-chain.
  3. A licensed local payout partner in Kenya receives the stablecoin settlement.
  4. The partner converts USDC to KES and credits the recipient’s mobile money wallet.
  5. Your recipient sees shillings in their normal M-PESA, Airtel Money or T-Kash balance.

Your recipient does not need a crypto wallet. They never see or touch stablecoins. On their side, the payment looks like any domestic wallet credit.

Kenya also took in about US$5.037 billion in diaspora remittances in 2025, so local delivery rails are built for volume. For more on the settlement layer, read how to receive international payments in stablecoins.

Supported Payout Rails for Kenya

Yativo’s featured method for this guide is Mobile Money (KE), gateway ID 1323. Our Kenya list also includes Local Payout KES for mixed bank and wallet batches, plus SWIFT for dollars.

Mobile Money (KE)

This rail pays Kenyan mobile money wallets directly. The recipient needs a registered wallet on a supported network, not a bank account.

Required details: the fields returned by the Mobile Money (KE) form, gateway ID 1323. Expect the holder’s name, MSISDN and network.

Settlement time: payouts via Mobile Money (KE) settle in under 30 minutes.

Best for: gig workers, field agents, micro-merchants and any batch where every recipient is on a mobile money wallet.

Local Payout KES (bank and mobile money)

Local Payout KES, gateway ID 868, can pay bank accounts as well as wallets. We cover it in our {SIBLINK}. Use it when a single batch mixes banks and wallets.

USD alternatives

Mobile Money (KE) delivers shillings only. If your recipient wants dollars, use SWIFT, gateway ID 631. Availability depends on your account, so check the live list before you build.

Recipient Details to Collect Before Your First Kenya Mobile Money Payout

The Mobile Money (KE) form in your dashboard, or the authenticated GET /beneficiary/form/show/1323 call, is the authoritative field list. Our public documentation does not publish this form yet. Collect the details below during onboarding.

  • Legal name: full name as registered on the mobile money wallet.
  • MSISDN: the phone number linked to the wallet, in the format the form expects.
  • Network: M-PESA, Airtel Money, T-Kash or another network the form lists.
  • ID number: national ID or passport if the form asks for it.

Ask for a screenshot of the wallet profile from the telco app during onboarding. It removes most typing errors before the first payout.

How to Send a Kenya Mobile Money Payout via Yativo

Option 1: Dashboard (for manual payouts)

  1. Fund your Yativo float balance with either a fiat or a stablecoin deposit.
  2. Go to Transfer in your Yativo dashboard.
  3. Select the float wallet you are paying with, for example USD, EUR, MXN or whichever balance you funded.
  4. Choose the customer you are paying on behalf of. This step is necessary for fintechs that run payouts on behalf of their customers.
  5. Choose Kenya as the destination country and the Mobile Money (KE) payout method.
  6. Enter the recipient details the payout form asks for, such as the holder’s name, mobile money number and network.
  7. Enter the amount in USD or KES.
  8. Review the quote: exchange rate, fees, delivery time and the exact KES amount your recipient receives.
  9. Confirm with your PIN and 2FA.
  10. Track the payout in real time and download the receipt for your records.

Option 2: API (for automated and bulk payouts)

Every endpoint below is in the Yativo API documentation. Production calls go to https://api.yativo.com/api/v1, and the sandbox runs at https://smtp.yativo.com/api/v1.

Authenticate every request with the X-Api-Key and X-Api-Secret headers. Each key only works from the server IPs listed on it. These API keys replaced bearer tokens, and login tokens stop working from servers on October 15, 2026, as covered in our October update. Every POST request also needs a unique Idempotency-Key header.

Step 1. Generate a USDC funding address on Solana to top up your USD balance:

POST https://api.yativo.com/api/v1/crypto/create-wallet
X-Api-Key: $YATIVO_API_KEY
X-Api-Secret: $YATIVO_API_SECRET
Idempotency-Key: 8a2b3c4d-5e6f-4a7b-9c0d-1e2f3a4b5c82
Content-Type: application/json

{
  "currency": "USDC_SOL"
}

Step 2. List the payout methods available for Kenya (country code KE for this rail):

curl "https://api.yativo.com/api/v1/payment-methods/payout?country=KE" \
  -H "X-Api-Key: $YATIVO_API_KEY" \
  -H "X-Api-Secret: $YATIVO_API_SECRET" \
  -H "Accept: application/json"

Mobile Money (KE) is active and carries gateway ID 1323. Always read the ID from the live response instead of hardcoding it.

Step 3. Fetch the required fields for that gateway:

GET https://api.yativo.com/api/v1/beneficiary/form/show/1323
X-Api-Key: $YATIVO_API_KEY
X-Api-Secret: $YATIVO_API_SECRET

The response lists every required field and the accepted values for each one. Build your payment_data object from it. For field details, see API documentation.

Step 4. Create the beneficiary. Replace the placeholder with the fields the form returned:

POST https://api.yativo.com/api/v1/beneficiaries/payment-methods/
X-Api-Key: $YATIVO_API_KEY
X-Api-Secret: $YATIVO_API_SECRET
Idempotency-Key: 3b4c5d6e-7f8a-4b9c-0d1e-2f3a4b5c6d82
Content-Type: application/json

{
  "gateway_id": 1323,
  "nickname": "Amina Wanjiku",
  "currency": "KES",
  "customer_id": "e8caa491-57b6-4c39-9e3a-d2c97e47fbf0",
  "payment_data": {
    "{field_from_form}": "{value}"
  }
}

Step 5. Optionally, lock your rate. Quotes hold for 5 minutes:

POST https://api.yativo.com/api/v1/exchange-rate
X-Api-Key: $YATIVO_API_KEY
X-Api-Secret: $YATIVO_API_SECRET
Idempotency-Key: 0d9c8b7a-6f5e-4d3c-9b2a-1f0e9d8c7b82
Content-Type: application/json

{
  "from_currency": "USD",
  "to_currency": "KES",
  "method_id": 1323,
  "method_type": "payout",
  "amount": 500
}

Step 6. Initiate the payout from your USD balance:

POST https://api.yativo.com/api/v1/wallet/payout
X-Api-Key: $YATIVO_API_KEY
X-Api-Secret: $YATIVO_API_SECRET
Idempotency-Key: 5e6f7a8b-9c0d-4e1f-0a2b-3c4d5e6f7a82
Content-Type: application/json

{
  "payment_method_id": 5282,
  "amount": 500,
  "currency": "USD",
  "purpose": "supplier_payment"
}

Use the id from the beneficiary response as payment_method_id. Leave out quote_id if you did not lock a rate. For bulk runs, repeat the call per beneficiary, as described on our payouts page.

Which Kenya Payout Option Should You Use?

 Mobile Money (KE)Local Payout KESUSD via SWIFT
Settlement speedUnder 30 minutesUnder 30 minutesDepends on correspondent banks
Required detailsName, MSISDN, network (see API documentation)Name, ID, bank or MM fields (see API documentation)See API documentation
Best forWallet-only batchesMixed bank and wallet payoutsRecipients who want USD
AvailabilityActiveActiveActive
Currency receivedKESKESUSD

Best Practices for Kenya Mobile Money Payouts

Confirm the network with the phone number. Number portability means an MSISDN alone is not enough. Ask which network holds the wallet.

Match the registered name. The legal name on the wallet should match the ID you collect. Mismatches trigger returns.

Stay inside live limits. Gateway 1323 lists a catalog maximum of 150,000 KES. Your quote and form show the live ceiling for your tier.

Lock the rate on large batches. Quotes hold for 5 minutes. Lock one before a payroll or gig payout run so every recipient sees the amount you promised.

Reuse one Africa playbook. The same stablecoin settlement flow works across other African corridors. See our overview of Africa on-ramps across 20 countries and how to receive international payments in stablecoins.

Frequently Asked Questions

Does my recipient in Kenya need a crypto wallet?

No. Your recipient gets Kenyan shillings in their normal mobile money wallet. They never interact with stablecoins, and the credit looks like any other M-PESA or Airtel Money deposit.

Is it legal and compliant to pay Kenyan recipients this way?

Yes, when the payout runs through regulated infrastructure. Yativo is registered with FinCEN as a Money Services Business, registration number 31000270723339. A licensed local payout partner credits the wallet, so your recipient sees a normal local payment. Your own tax and reporting duties still apply, so confirm them with your compliance advisor.

How long does a mobile money payout to Kenya take?

Payouts via Yativo settle in under 30 minutes. Mobile money credits themselves are typically near-instant once the licensed local payout partner posts the transfer to the network.

Which networks can receive the payout?

Kenya’s main wallets include M-PESA, Airtel Money and T-Kash. The payout form lists the networks enabled for your account, so confirm the recipient’s network during onboarding.

What if my recipient prefers a bank account instead?

Use Local Payout KES, gateway ID 868, which can pay bank accounts as well as wallets. We cover that mixed rail in our guide to Kenya bank transfer and mobile money payouts.

Are there amount limits on mobile money payouts?

Gateway 1323 lists a maximum withdrawal of 150,000 KES in our method catalog. Live limits can differ by network and by your account tier, so always read the quote and the form before you confirm.

Start Paying Out to Kenya Mobile Money Wallets

M-PESA alone moved about KSh 38.29 trillion in FY2025 with 35.82 million active users. Yativo lets you fund in USDC or USD and deliver KES to Kenyan mobile money wallets through a licensed local payout partner. Your recipients get a domestic wallet credit in under 30 minutes, and you get one API for every payout. Book a demo to set up your first Kenya mobile money payout, or contact sales if you already know your corridor volume.

Sources