MikroTik voucher billing, explained
If you're starting a hotspot business you'll hear four words constantly: hotspot, captive portal, voucher and RADIUS. Here's what each one actually does, how they fit together on a MikroTik router, and why the way you run them decides whether your WiFi makes money or leaks it.
#01The thirty-second version
A customer connects to your WiFi. Instead of the internet, they see your login page (the captive portal). They type a voucher code they bought from you or your agent — or buy one right there with mobile money. The router asks a billing server whether that code is valid and what it's entitled to (24 hours? 5 Mbps?). The server says yes, the router lets them online, and starts the clock. When the time is up, the session ends. That conversation between router and billing server is RADIUS.
Everything else — bundles, agents, dashboards, payments — is built on top of that loop.
#02The captive portal: your shopfront
MikroTik's hotspot feature intercepts every new device and redirects it to a login page served from the router. Stock, it's a grey form from 2009. Branded, it's the most valuable screen in your business: every customer sees it every day. A good billing platform replaces it with your name and colours, your bundle menu with prices, a "buy with mobile money" flow, and a "lost your code?" recovery — plus space for announcements and paid adverts once your traffic justifies it.
#03Vouchers: prepaid internet as a retail product
A voucher is just a username the customer redeems once. But the details make or break it:
- Each code carries its bundle — duration, speed limit, sometimes device count. The router enforces these per session, so one heavy downloader can't flatten the evening for everyone.
- Codes must be single-use and unforgeable. Generated in bulk by the billing system, printed as cards or sold digitally, dead after use.
- Type-friendly codes matter more than you think. Customers type codes on cracked screens in the dark. Good systems avoid look-alike characters (0/O, 1/I) and forgive stray spaces and wrong case — a surprising share of "invalid voucher" complaints are just typing.
- Attribution. When an agent sells a code, the sale should credit that agent automatically. That's what makes a commission network possible without paperwork.
#04RADIUS: the referee
RADIUS (Remote Authentication Dial-In User Service — nobody uses the long name) is the protocol your router uses to ask "is this code valid, and what does it get?" It does three jobs, known as AAA:
- Authentication — is this voucher real and unused?
- Authorization — what speed, duration and limits apply?
- Accounting — how long was the session, how much data moved? This is where honest sales reports come from.
The key question is where the RADIUS server lives. You have two options, and this choice shapes your whole operation.
#05Router-local scripts vs cloud RADIUS
Router-local (userman, hotspot user lists, or generator scripts that stuff users into the router): free and fine for one router — until it isn't. Codes live on that one box, so a second location means a second island with its own codes and its own reports. If the router is stolen, reset or bricked, your entire customer database goes with it. And there's no real dashboard — sales reporting means reading router tables.
Cloud RADIUS (what Shiftnet runs): codes and sessions live on a central server, and every router — one or fifty — authenticates against it. One dashboard for all sites, per-branch numbers, codes that survive any router failure, and sessions you can kick or extend remotely. The router becomes what it should be: a replaceable appliance. On Shiftnet the whole hookup is a single command pasted into the MikroTik terminal — hotspot, portal, RADIUS and telemetry configure themselves.
#06Pitfalls that eat beginners
- Shared passwords instead of vouchers. One password for everyone means zero revenue control — it's on the neighbourhood WhatsApp group by Friday.
- No per-bundle speed limits. Your best customer experience dies to one torrent. Limits must ride on the voucher, enforced by the router.
- Sessions that outlive the bundle. If expiry isn't enforced server-side, a "24-hour" code quietly becomes a 3-day code. Insist on hard expiry.
- Old RouterOS quirks. v6-era routers speak slightly different RADIUS than v7 — a billing platform that supports both saves you from mystery "server not responding" errors on older hardware.
- Billing tied to one physical router. See above: theft, lightning or a factory reset should never mean starting your business from zero.
#07Choosing a billing system: the checklist
- Central (cloud) RADIUS — codes survive any single router.
- One-command router onboarding, and the same for replacements.
- Branded captive portal with mobile-money purchase and lost-code recovery.
- Agent accounts with automatic sale attribution and commissions.
- Hard bundle enforcement: speed, duration, expiry.
- An auditable wallet — every sale, fee and withdrawal itemised.
- Works with both RouterOS v6 and v7.
- Pricing that scales with you — commission on sales beats a fixed fee when you're starting.
That's the machinery. If you want the business side — location, equipment budgets, bundle pricing and agents — read the companion guide: How to start a WiFi hotspot business in Uganda. And when you're ready to see it running, shiftnet.africa is free to start — in Uganda, Kenya, Tanzania, Ghana, DR Congo and Sudan.
See it running
Shiftnet is cloud RADIUS, a branded portal, mobile money and agents in one dashboard — onboarded with a single command.
shiftnet.africa