About FyberPay
FyberPay is the billing, M-Pesa collection, and network automation platform built by and for Tier-2 Kenyan Internet Service Providers. We replace the spreadsheet-and-WhatsApp billing that most independent ISPs in Kenya still run on with one platform that handles payments, provisioning, and subscriber communication end-to-end.
Why we exist
Kenya has hundreds of licensed Internet Service Providers operating under the Communications Authority of Kenya: Network Facilities Providers (NFP) running their own fibre, Application Service Providers (ASP) reselling backhaul, and a long tail of WISPs and hotspot operators. Almost all of them face the same operational reality: M-Pesa payments arrive in unstructured SMS, subscribers expire silently in the middle of the night, MikroTik queues are managed by hand, and reconciliation happens in Excel.
FyberPay exists because that operational model does not scale past a few hundred subscribers. We built the platform we wanted to use ourselves: pay-as-you-go provisioning driven by live M-Pesa callbacks, RADIUS-backed network enforcement, and a subscriber portal that takes the burden of routine support off the operator.
What we do
Billing and revenue
M-Pesa STK Push and Bill Manager collection, automated reconciliation, idempotent invoice extension, credit-balance handling, walled-garden dunning, and per-plan Fair Usage Policy enforcement. Designed for the cash-flow realities of monthly prepaid internet in Kenya.
Network provisioning
PPPoE and hotspot provisioning over FreeRADIUS, direct MikroTik RouterOS integration, GenieACS for TR-069 (CPE config and reboots), and SmartOLT for L2 and OMCI on GPON OLTs. One subscriber action triggers the right network change end-to-end.
Subscriber experience
Branded subscriber portal with subdomain routing, self-service plan changes, top-ups, voucher redemption, WhatsApp and SMS notifications, captive hotspot portals, and an installable PWA with offline support and push notifications.
Operations intelligence
Transactional outbox for every domain event, BullMQ for background jobs, circuit breakers on every external integration (Daraja, AfricasTalking, GenieACS, RouterOS), and audit logs that survive subscriber lifecycle changes.
Who we serve
- Tier-2 fibre ISPs running PPPoE on MikroTik with FreeRADIUS, collecting via M-Pesa, serving residential and SME customers.
- Hotspot and WISP operators running captive portals, voucher sales, and time-based billing in apartment buildings, schools, and trading centres.
- GPON deployments using Huawei, ZTE, or VSOL OLTs with SmartOLT for L2 and OMCI provisioning, integrated with GenieACS for L3 and TR-069 management.
- CA-licensed NFP and ASP holders needing audit-grade revenue records, structured subscriber data, and reliable provisioning trails.
Operating experience
FyberPay is not a generic billing platform with a Kenya wrapper. It is built from the inside of the Kenyan ISP market. The engineers writing the code spend their days reading M-Pesa callback logs, debugging PPPoE accounting packets, and walking real OLTs in the field. The platform reflects what we have learned from running the same network and billing stack our customers do: cash collections settle at unpredictable hours, subscribers expect WhatsApp before email, and a MikroTik that has been up for six months is still going to surprise you at 2 AM.
Every domain event in the platform flows through a transactional outbox. When a subscriber pays via M-Pesa STK Push, the payment is recorded, the invoice is settled, the RADIUS reply attribute is updated, the MikroTik queue is reconciled, and the subscriber is notified by SMS and WhatsApp: all from one atomic write. If a side effect fails, the outbox retries it. If a side effect changes, we change the listener, not the business logic. This is the architecture that makes the platform survive the kinds of outages that took down our spreadsheet days.
Technical bench
The areas of the stack we work in daily, and which directly inform both the product and our published research.
Payments and reconciliation
- M-Pesa Daraja STK Push: end-to-end callback handling, idempotency, partial-pay attribution.
- M-Pesa Bill Manager: invoice push, settlement file ingest.
- Paystack: card payments for ISPs serving diaspora subscribers.
- Ledger: double-entry, credit-balance carry, overpayment-to-credit, underpayment surfacing.
Network and provisioning
- FreeRADIUS: PostgreSQL-backed, hot-reloaded, attribute groups per plan and FUP tier.
- MikroTik RouterOS: API and SSH provisioning, PPP profiles, queue management, SSTP tunnels.
- GenieACS: TR-069 ACS for CPE config, factory reset, firmware push, ONU device-ID binding.
- SmartOLT: OLT-side ONU provisioning, OMCI configuration, signal monitoring.
Communications
- AfricasTalking and modular SMS adapter pattern for per-ISP gateway credentials.
- WhatsApp Cloud API directline: per-tenant numbers, conversational subscriber support.
- Web Push with VAPID, SMTP and SendGrid fallback, transactional templates.
Platform engineering
- NestJS 10 backend, Next.js 15 frontend, PostgreSQL 16 with PostGIS, Redis for sessions and queues.
- Multi-tenancy via subdomain resolution with Redis caching.
- Argon2 password hashing, JWT plus opaque refresh tokens, lockout after five failed attempts.
- Raw SQL migrations as the source of truth; Prisma client for typed access.
Principles
Operators first
Every feature ships only after it has run against a real Kenyan ISP workload. We test on live MikroTik routers, real FreeRADIUS pools, and live GPON OLTs before we ship.
Side effects through the outbox
Every domain event (payment succeeded, plan activated, subscription expired) flows through a transactional outbox. Notifications, RADIUS provisioning, ledger entries, and M-Pesa reconciliation cannot silently disagree with the database.
Citations for every fact
Our published research cites primary sources: Kenya National Bureau of Statistics, Communications Authority of Kenya, county government publications, and operator-published material. Last-reviewed dates are visible on every guide. Reader corrections are reviewed against a primary source before being applied.
No AI-generated photos of real places
Photographs on our location guides are sourced from Wikimedia Commons under CC-BY-SA. We never generate images of real towns or operator facilities. Diagrams and architecture illustrations are drawn from first principles.
Editorial standards
Our published research on the Kenyan ISP market follows the same standards we apply to our own production systems: every fact is sourced, every date is visible, every claim can be challenged. The full editorial policy and team standards are documented on the FyberPay Research Team page.
- No AI-generated photographs of real places.
- No undated sources for time-sensitive statistics.
- No marketing copy in fact-bearing paragraphs.
- Every numeric claim is clickable to its primary source.
- Reader corrections are reviewed against a primary source before being applied.
Where to find our research
- ISP Markets across KenyaCounty-by-county market guides with operators, fibre and backhaul, county licensing, and addressable-market modelling.
- FyberPay blogGuides on billing automation, M-Pesa integration, FreeRADIUS, and ISP operations.
- Research TeamAreas of expertise, research practice, and contact for corrections.
Contact
- Sales and product: [email protected]
- Editorial and corrections: [email protected]
- Corrections to a specific guide: use the feedback form on the relevant page.
- TikTok: @fyberpaytechnologies
FyberPay is operated by FyberPay Technologies Limited, a private company registered in Kenya (Business Registration Service company number PVT-7V7SKPV).