How to Accept M-Pesa Payments for Your Business (2026 Complete Guide)
To accept M-Pesa payments, register for a Paybill number or Till number through Safaricom’s M-Pesa for Business portal. For online stores, use the Billtoolbox M-Pesa Plugin to add M-Pesa checkout to your WooCommerce or WordPress site in minutes — no coding required.
Disclosure: This page contains a link to the Billtoolbox M-Pesa plugin, which is our own product. We also include objective information about Safaricom’s official M-Pesa business registration process.
M-Pesa is the dominant mobile payment platform in East Africa, used by over 51 million active customers in Kenya alone. If you run a business — brick-and-mortar or online — not accepting M-Pesa means leaving a significant share of your market unable to pay you.
This guide covers every method available in 2026: from registering a Paybill number for physical businesses to integrating M-Pesa directly into your WooCommerce store using a plugin.
Paybill vs Till Number: Which Do You Need?
Before you register, you need to understand the two business payment options M-Pesa offers. They work differently and suit different types of businesses.
| Feature | Paybill Number | Till Number (Buy Goods) |
|---|---|---|
| Customer enters | Business No. + Account No. + Amount | Till No. + Amount only |
| Best for | Online stores, utilities, schools, subscriptions | Retail shops, restaurants, market stalls |
| Account reference | ✅ Yes — links payment to a specific order/customer | ❌ No reference — lump sum only |
| Funds go to | Paybill bank account | M-Pesa merchant wallet |
| API access | ✅ Yes (Daraja API) | ✅ Yes (Daraja API) |
| Setup requirement | Registered business + bank account | Registered business |
For online businesses and e-commerce stores, Paybill is the right choice — it lets you tie each payment to a specific order number, making reconciliation straightforward.
Step 1: Register for M-Pesa Business Payments
To get a Paybill or Till number, you register through Safaricom’s official M-Pesa for Business portal. Here is what you need:
Requirements (Kenya):
- Certificate of Incorporation or Business Registration Certificate
- KRA PIN Certificate (business PIN)
- Director’s ID or passport
- Business bank account details (for Paybill)
- Completed M-Pesa Business Application Form
Registration steps:
- Visit a Safaricom Shop or their online portal at m-pesaforbusiness.co.ke
- Submit your business documents (originals + copies)
- Fill in the application form specifying Paybill or Till Number
- Safaricom reviews and approves within 3–5 business days
- You receive your Paybill or Till number via SMS and email
There is a one-time registration fee (currently KES 1,000 for Paybill) and a monthly maintenance fee. Confirm current charges directly with Safaricom as these change periodically.
Step 2: Add M-Pesa to Your Online Store or Website
Once you have your Paybill number, the next step is integrating it into your website so customers can pay with a single tap — no manual number copying required.
There are three approaches, ranging from manual to fully automated:
| Method | Technical Skill | Automation | Best For |
|---|---|---|---|
| Billtoolbox M-Pesa Plugin | None (click install) | ✅ Full STK Push | WooCommerce stores |
| Daraja API (custom) | Developer required | ✅ Full control | Custom-built apps |
| Manual Paybill display | None | ❌ Manual confirmation | Simple static websites |
Option A: Billtoolbox M-Pesa Plugin for WooCommerce (Recommended)
The Billtoolbox M-Pesa Plugin adds a fully automated M-Pesa STK Push payment gateway to your WooCommerce store. When a customer checks out, a payment prompt is sent directly to their phone — they simply enter their M-Pesa PIN and the order is confirmed automatically.
What STK Push means for your customers: Instead of copying a Paybill number and typing it into their phone app, the payment popup appears on their screen automatically. One PIN entry completes the payment. Conversion rates are significantly higher than manual Paybill display.
Setup takes under 10 minutes:
- Install the Billtoolbox M-Pesa Plugin from your WordPress dashboard or billtoolbox.com
- Enter your Safaricom Daraja API credentials (Consumer Key + Consumer Secret)
- Enter your Paybill number and passkey
- Enable the gateway in WooCommerce → Settings → Payments
- Test with a sandbox transaction, then go live
Option B: Manual Paybill Display (No-Code)
If you don’t run a WooCommerce store, you can still accept M-Pesa by displaying your Paybill number clearly on your website, invoice, and order confirmation emails. Customers initiate the payment from their M-Pesa app manually and send you a screenshot as proof.
This works for service businesses, consultants, and freelancers but requires manual reconciliation on your end. It is not suitable for high-volume e-commerce.
Frequently Asked Questions
Do I need a registered business to accept M-Pesa payments?
Yes. Safaricom requires a registered business (sole trader, partnership, or limited company) with a valid KRA PIN to issue a Paybill or Till number. Individuals cannot register business payment accounts using personal M-Pesa.
How long does M-Pesa Paybill registration take?
Registration typically takes 3–5 business days after document submission. Incomplete applications extend this timeline. Visiting a Safaricom Shop in person rather than using the online portal is generally faster for first-time applicants.
Can I accept M-Pesa payments outside Kenya?
M-Pesa operates in Kenya, Tanzania, Uganda, Mozambique, Ghana, Ethiopia, Egypt, Lesotho, and the DRC. Business registration requirements vary by country. International transfers are available via M-Pesa Global partnerships with services like PayPal and Western Union.
What is the STK Push and why does it matter?
STK Push (SIM Toolkit Push) is an API feature that sends a payment prompt directly to the customer’s phone. Instead of the customer manually entering your Paybill number, they see a popup asking them to confirm the payment with their PIN. This dramatically increases checkout completion rates for online stores.
Final Thoughts
Accepting M-Pesa payments is no longer optional for businesses operating in East Africa — it’s a baseline requirement. The registration process through Safaricom takes less than a week, and integrating it into your online store takes under an hour with the right plugin.
For WooCommerce store owners, the Billtoolbox M-Pesa Plugin is the fastest path from zero to a live, automated M-Pesa checkout. For developers building custom integrations, the Safaricom Daraja API provides full control.
Add M-Pesa Checkout to Your WooCommerce Store
Automated STK Push. No coding required. Live in under 10 minutes.
Disclaimer: M-Pesa registration fees, requirements, and supported countries are subject to change. Verify current terms directly with Safaricom or your local M-Pesa operator. This guide reflects conditions as of April 2026.
