If you're running an ISP in Kenya, there's a strong chance your network infrastructure runs on MikroTik routers and your subscribers pay via M-Pesa. What many ISP owners don't realise is that these two systems can be connected in real time — so that when a subscriber pays on M-Pesa, their PPPoE or Hotspot access is provisioned or restored automatically, with zero manual intervention.
This guide explains exactly how that automation works, what to look for in MikroTik ISP management software, and how to set it up for your ISP.
Why MikroTik Dominates Kenyan ISP Infrastructure
MikroTik RouterOS is the de facto standard for ISP infrastructure across Kenya and East Africa. The reasons are straightforward:
- Cost — A MikroTik router costs a fraction of equivalent Cisco or Juniper hardware, making it accessible for small and growing ISPs
- Flexibility — RouterOS supports PPPoE, Hotspot, VLAN, QoS, RADIUS, and bandwidth shaping natively
- Reliability — MikroTik equipment is proven across thousands of ISP deployments across Kenya, Uganda, Tanzania, and Rwanda
- RouterOS API — MikroTik exposes a fully-featured remote API that external billing software can use to manage subscribers, bandwidth profiles, and sessions programmatically
That last point — the RouterOS API — is what makes complete billing automation possible. Any ISP billing software worth using must implement this API natively, not via a script running on the router itself.
The Manual Billing Problem Facing Kenyan ISPs
Without automation, the typical Kenyan ISP billing workflow looks like this:
- 1Subscriber pays via M-Pesa paybill or till number
- 2ISP operator downloads the M-Pesa statement at end of day (or checks WhatsApp)
- 3Operator cross-references payments against the subscriber list in Excel
- 4Operator logs into MikroTik Winbox and manually enables the subscriber's PPPoE account
- 5Operator sends a WhatsApp message to the subscriber confirming activation
- 6Repeat this 50–500 times every month
This process is slow, error-prone, and fundamentally unscalable. It creates two critical problems: subscribers who wait hours for internet restoration after paying, and an operations team spending most of their time on manual tasks instead of growing the business.
The scaling cliff
At 100 subscribers, manual billing is frustrating. At 300 subscribers, it's a full-time job. At 500+ subscribers, it's impossible to manage without dedicated billing staff — unless you automate.
How MikroTik + M-Pesa Automation Works End-to-End
A proper ISP billing software connects M-Pesa and MikroTik into a single real-time pipeline. Here's the complete flow:
- 1Payment is initiated — The subscriber receives an automated M-Pesa STK Push prompt on their phone (sent by the billing system 3 days before expiry) or initiates payment themselves from the customer self-service portal
- 2M-Pesa STK Push is triggered — The billing software sends a payment request to the subscriber's phone via Safaricom Daraja API. The subscriber enters their M-Pesa PIN to confirm
- 3Daraja API callback received — Within seconds of payment confirmation, Safaricom sends a transaction callback to the billing software with the transaction ID, amount, and MSISDN
- 4Subscription renewed — The billing software validates the payment amount, updates the subscriber's expiry date, marks the invoice paid, and generates a receipt
- 5MikroTik RouterOS API call — The billing software immediately calls the MikroTik API: if the subscriber was suspended, their PPPoE account is re-enabled with the correct bandwidth profile; if they're new, a fresh PPPoE account is created
- 6Confirmation SMS sent — An SMS is automatically dispatched to the subscriber confirming their internet access is active
The entire pipeline — from M-Pesa payment to internet activation — executes in under 10 seconds.
Key Features to Look For in MikroTik ISP Management Software
| Feature | What to Check |
|---|---|
| MikroTik API integration | Uses native RouterOS API on port 8728/8729 SSL — not a script on the router |
| PPPoE user management | Creates, modifies, suspends, and deletes PPPoE accounts automatically via API |
| Bandwidth profile sync | Pushes QoS speed profiles to MikroTik based on the subscriber's plan tier |
| Hotspot support | Manages Hotspot users and deploys a branded captive portal with M-Pesa |
| Multiple router support | Manages multiple MikroTik routers (different towers or zones) from one dashboard |
| M-Pesa STK Push | Native Daraja API integration — not a third-party plugin or manual paybill |
| Auto-suspend on expiry | Automatically suspends accounts on expiry and restores on payment |
| Retry logic | Retries failed M-Pesa STK Push after timeout with sensible backoff |
Setup Overview: Connecting MikroTik to Your ISP Billing System
Setting up MikroTik integration with a billing platform like Netily is a three-step process:
- 1Enable RouterOS API on your MikroTik router — Go to IP → Services and enable 'api' (port 8728) or 'api-ssl' (port 8729). Create a dedicated API user with read/write permissions. This is a one-time configuration per router.
- 2Add your router to the billing dashboard — Enter the router's IP address, API port, and API credentials. The billing software verifies the connection and pulls your existing PPPoE/Hotspot profiles.
- 3Map plans to bandwidth profiles — In the billing dashboard, map each subscription plan (e.g., 'Home 10Mbps') to the corresponding MikroTik PPPoE profile. The software uses these mappings when creating or modifying subscriber accounts.
After setup, every new subscriber you add in the billing dashboard automatically gets a MikroTik PPPoE account created. Every payment triggers activation. Every expiry triggers suspension. Your MikroTik routers essentially manage themselves.
Multiple towers and routers
If you have MikroTik routers at multiple towers, buildings, or zones, you can add all of them to your billing dashboard and assign each subscriber to the correct router. The billing software handles each router independently via the same API.
Real Results from ISPs Using MikroTik + M-Pesa Automation
ISPs that move from manual billing to automated MikroTik + M-Pesa billing consistently report:
- 80–90% reduction in billing support calls — Subscribers no longer need to call or WhatsApp to confirm payment and request account reactivation
- Payment confirmation in under 10 seconds versus 2–24 hours with manual M-Pesa statement reconciliation
- 20–35% reduction in subscriber churn — Automated payment reminders catch subscribers before they disconnect and move to a competitor
- Operations staff freed from billing tasks — They focus on network maintenance, sales, and customer quality instead of daily billing
- Zero missed or mis-attributed payments — Every M-Pesa transaction is captured and linked to the correct subscriber automatically
For a 200-subscriber ISP spending 2 hours/day on manual billing, automation typically saves 700+ staff hours per year — the equivalent of a part-time employee.
Ready to automate your ISP?
Try Netily Free for 14 Days
M-Pesa STK Push, MikroTik PPPoE provisioning, RADIUS, and customer portal — all set up in under 24 hours. No credit card required.
Written by
Peter Junior
ISP Software Specialist at Netily
Peter Junior specialises in ISP billing software, MikroTik automation, and M-Pesa integration for internet service providers in Kenya and East Africa. He writes about practical strategies for ISP owners to automate operations and grow their subscriber base.