Simplify billing and payment collection for internet service providers.
Every month the same cycle: generate the invoices, chase the payments, work out who actually paid, then decide whose connection stays on. ScanPay runs that cycle on verified payments instead of spreadsheets.
- A. NjorogeHome Fibre 20 Mbps KES 3,500Billed 01 Aug · Active Verified
- Kilimani TradersBusiness 100 Mbps KES 18,000Billed 01 Aug · Active Pending
- M. WanjiruHome Fibre 10 Mbps KES 2,500Billed 03 Aug · Active Processing
- Riverside CafeBusiness 50 Mbps KES 9,000Billed 05 Aug · Suspended Failed
From invoice to a connection that stays on.
The step most billing setups skip is verification — and it is the one that decides whether an account should be reactivated.
The parts of an ISP billing operation.
Customer management
Subscribers, packages and account status held against one record per customer.
Invoicing
Generate the monthly bill for each subscriber on their billing date.
Payment collection
Collect through M-Pesa STK Push so the subscriber pays from the prompt on their phone.
Payment verification
Confirm the payment landed before anything downstream acts on it.
Account updates
Activation, suspension and reconnection driven by verified payments.
Reports & history
Transaction history and payment status per subscriber, with references you can trace.
The subscriber base at a glance.
| Customer | Account | Package | Amount due | Billing date | Payment | Account status |
|---|---|---|---|---|---|---|
| A. Njoroge | ISP-100482 | Home Fibre 20 Mbps | KES 3,500 | 01 Aug | Verified | Active |
| Kilimani Traders | ISP-100119 | Business 100 Mbps | KES 18,000 | 01 Aug | Pending | Active |
| M. Wanjiru | ISP-100733 | Home Fibre 10 Mbps | KES 2,500 | 03 Aug | Processing | Active |
| Riverside Cafe | ISP-100295 | Business 50 Mbps | KES 9,000 | 05 Aug | Failed | Suspended |
| Nyali Apartments | ISP-100640 | Bulk 200 Mbps | KES 42,000 | 05 Aug | Verified | Active |
// Reconnect on a verified payment, not a promise
scanpay.webhooks.on("billing.payment.verified", async (e) => {
const account = e.metadata.accountNo; // ISP-100295
await radius.reconnect(account);
await crm.logPayment(account, e.amount, e.reference);
});
Push billing events into the systems you already run.
If you already have a CRM or a provisioning system, ScanPay does not need to replace it. Billing and payment events can be delivered to it as they happen.
- Webhooks on invoice, payment and verification events
- Query subscriber payment status through the API
- The same transaction reference across billing and collection
Provisioning actions such as suspension and reconnection are carried out by your own network systems. ScanPay supplies the verified payment event that triggers them.
ISP billing FAQs.
Yes. ScanPay supports internet service providers with billing and payment collection workflows, covering invoice generation, payment collection, payment verification and account updates.
Yes. ISP billing uses the same ScanPay M-Pesa STK Push integration, so a subscriber receives a payment prompt on their phone with the amount already filled in.
The subscriber's account is updated on the verified payment rather than on an unconfirmed claim, so activation and reconnection follow confirmed money.
ScanPay exposes a REST API and webhooks, so billing events and payment confirmations can be pushed into the CRM or provisioning system you already run.
Transactions collected through the ScanPay M-Pesa integration carry a 1% transaction fee. Billing configuration pricing depends on your subscriber base — contact ScanPay for a quote.
Continue exploring
Related ScanPay services that connect to this one.
Automate your ISP billing.
Run the monthly cycle on verified payments, and let account changes follow confirmed money.