How to accept M-Pesa payments in Kenya (2026 guide for businesses)

To accept M-Pesa in Kenya, a business registers a Lipa Na M-Pesa Till or PayBill with Safaricom, or takes M-Pesa online through one API that settles the money to a bank in KES or crypto.
Boldrails is a licensed principal payments provider that lets Kenyan businesses accept M-Pesa this way, alongside other mobile-money rails, cards and crypto, from one integration.
Three questions decide whether M-Pesa works for a business: which product to sign up for, what it costs, and when the money reaches the bank. I answer all three here from the merchant's side, and every figure is sourced to Safaricom or the Central Bank of Kenya.
- A business accepts M-Pesa through Lipa Na M-Pesa (a Buy Goods Till, a PayBill, or Pochi la Biashara) or online through the M-Pesa API, not by becoming an M-Pesa agent. Agents handle cash in and out. That is a different business.
- The method you pick decides who pays the fee. A Buy Goods Till is usually free to your customer, while a PayBill can pass a charge to them. This is the single most consequential setup choice a Kenyan merchant makes, and no consumer guide spells it out.
- Kenya recorded about 84.6 million mobile-money subscriptions in the twelve months to February 2025 (Central Bank of Kenya).
- Lipa Na M-Pesa had 633,009 active merchants in FY2024, up 4.3% year on year (Safaricom results).
- Pochi la Biashara, the sole-trader till, grew 116.2% to 632,681 active tills in FY2024, yet the search results barely mention it.
- Mobile-money agent transactions ran at roughly 53% of Kenya's GDP in 2024 (Central Bank of Kenya).
- Boldrails accepts M-Pesa plus MTN MoMo, Airtel Money, cards and crypto on one API, settles in fiat or crypto, and runs mass payouts, with onboarding in 3 to 14 days, depending on your case.
What does "accepting M-Pesa" mean for a business?
This is the confusion I correct most often. An agent runs a cash-in and cash-out float business, while a shop taking payments uses a merchant product or a payment gateway.
M-Pesa is Kenya's default way to pay. Safaricom reports more than 40 million M-Pesa customers, and the Central Bank of Kenya puts mobile-money agent throughput at about 53% of national GDP in 2024. So for most Kenyan businesses the question is not whether to accept M-Pesa. It is which method fits.
A business has three merchant routes through Safaricom's Lipa Na M-Pesa, plus an online route through the M-Pesa API. I will take each in turn.
What is Lipa Na M-Pesa, the merchant side of M-Pesa?
There are four ways to take payment:
- Buy Goods (Till number): best for shops and retail counters. The customer pays into a Till, and they usually pay no extra fee.
- PayBill: best for invoices, rent, school fees and any payment that needs an account or reference number.
- Pochi la Biashara: best for sole traders and informal businesses, because it separates business money from personal M-Pesa.
- Online / API acceptance: best for websites and apps, where the customer is sent a payment prompt.
Lipa Na M-Pesa reached 633,009 active merchants in FY2024, so this is well-trodden ground. How to register, and which one to choose, comes next.
How do you register for M-Pesa payments (Till, PayBill, Pochi)?
Buy Goods Till number
- 1Choose Buy Goods if you take face-to-face retail payments.
- 2Apply through Safaricom or the M-PESA Business portal with your ID and business registration.
- 3Complete KYC verification.
- 4Activate the Till and run a small test payment before you go live.
PayBill
- 1Choose PayBill if you need customers to quote a reference or account number.
- 2Apply through Safaricom M-PESA Business with your company documents.
- 3Complete KYC and set your account-number logic.
- 4Activate and test.
Pochi la Biashara
A sole trader can register Pochi from the M-Pesa menu or app, with fewer documents. It keeps takings separate from personal funds. Pochi tills reached 632,681 in FY2024.
Online and in-app acceptance is a separate path handled through the M-Pesa API, covered further down. One caution: the portal changes, so confirm the exact steps and documents on Safaricom's current business pages before you apply.
Till vs PayBill vs Pochi: which should your business use?
The table below is the merchant decision the search results never lay out. It maps each method to who bears the fee, whether it supports a reference number, whether it works online, and where the money settles.
| Method | Best for | Who pays the fee | Reference number | Online support | Settles to |
|---|---|---|---|---|---|
| Buy Goods (Till) | Shops, retail counters | Customer usually pays nothing; merchant tariff applies | No | Manual only | M-Pesa business account, then linked bank |
| PayBill | Invoices, rent, fees | May include a customer fee | Yes | Yes, with API | M-Pesa business account, then linked bank |
| Pochi la Biashara | Sole traders, informal trade | Standard M-Pesa charges | No | No | Pochi balance |
Arranged from Safaricom product data. Confirm current tariffs on Safaricom's live pages.
The decision rule is simple. Need a reference number to reconcile who paid for what? Use a PayBill. Run a retail counter and want the customer to pay nothing extra? Use a Buy Goods Till. If you are a sole trader who only needs takings kept separate, Pochi la Biashara does the job. And if you sell online, you need the API path regardless of which of these you also run.
What does accepting M-Pesa cost, and when do you get paid?
Safaricom also sets per-transaction and daily limits on M-Pesa, so check the current caps on Safaricom's tariff and limits pages before you plan high-value flows. Those figures get revised from time to time.
| What | Buy Goods (Till) | PayBill |
|---|---|---|
| Who pays the fee | Merchant (customer usually free) | Can be passed to customer |
| Reference number | No | Yes |
| Typical use | Retail | Invoices and structured billing |
On settlement, M-Pesa collections land in your M-Pesa business account first, and you then settle to a linked bank account. Timing depends on how your account is set up. This is where a gateway earns its place. We acquire and settle directly, so instead of reconciling M-Pesa in one place and your bank in another, you get one reconciliation and settlement to your bank in KES, or in crypto if you prefer. Because Boldrails is a licensed principal provider, that settlement is ours to make, not a hand-off to a partner.
How do you accept M-Pesa online and in apps?
You can integrate Safaricom's Daraja API directly, and if you want the developer detail, our M-Pesa API integration guide walks through it. The alternative is to skip the per-rail plumbing. Boldrails provides M-Pesa collections and payouts through one API that also covers MTN MoMo, Airtel Money, Orange Money, cards and crypto, with mass payouts and settlement in fiat or crypto. You build once and reach every rail, rather than integrating Daraja, then a card processor, then each wallet separately.
Who should accept M-Pesa, and how does Boldrails help high-volume and high-risk merchants?
Boldrails is a licensed principal provider and holds the licences required in the markets we serve. We accept high-risk and high-volume merchants that other gateways turn away, run M-Pesa alongside other rails on one integration, and settle in fiat or crypto. Disbursing to staff, drivers or suppliers? Mass payouts run through the same account. Get approved with onboarding in 3 to 14 days, depending on your case, and if you sell across the region, our payment gateway puts M-Pesa and the rest on one contract.
M-Pesa direct vs a licensed gateway: which setup fits your business?
Other payment service providers, such as PayU, sit in between. The table shows the trade-off honestly.
| Capability | Direct M-Pesa | Boldrails | Other PSPs |
|---|---|---|---|
| Rails on one integration | M-Pesa only | M-Pesa, MTN, Airtel, cards, crypto | Some |
| Fiat or crypto settlement | Fiat only | Fiat or crypto | Usually fiat |
| High-risk merchants | Case by case | Accepted where licensed | Often declined |
| Mass payouts | Separate setup | Same account | Varies |
You can see which rails, countries and verticals we support if you want the full picture before choosing.
What this means
Accept M-Pesa and settle in KES or crypto, from one integration.