Billing + RADIUS + network in one system
The ISP system that reconciles your bank transfers by itself
django-nms combines billing, e-invoicing, FreeRADIUS provisioning and network management in one panel. Built on Django as the successor to LMS. For operators with 200 to 20,000 subscribers.
- Upload your bank statement once. The vast majority of transfers post to customer accounts automatically.
- FreeRADIUS with MikroTik and Cisco ASR attributes, live PPPoE sessions, hard and soft blocking.
- Country-specific compliance built in: Poland (KSeF e-invoicing, JPK, SIIS). Other countries on request.
- 3 banks
- ready-made CSV statement parsers (more on request)
- 4 levels
- of transfer-to-customer matching
- 3 platforms
- MikroTik, Cisco ASR and Linux routers from one data model
- 60 s
- PPPoE session status refresh from edge routers
- 930+
- automated tests run in CI against PostgreSQL 17
- 6 languages
- website and sales documentation
Everything an ISP needs. No modules sold separately.
One panel for finance, customer service and the NOC. Contract, invoice and subscriber host live in one place.
-
Invoices per contract
Recurring VAT invoices generated for each contract. Corrective invoices, correction notes, cash receipts, numbering per selling entity.
-
E-invoicing
Native integration with Poland's national e-invoicing system KSeF (FA(3) schema): certificate or token auth, online and batch sending, offline mode, QR on PDF.
-
Bank reconciliation
CSV statement import with automatic posting to customer balances and a review screen for exceptions.
-
FreeRADIUS and routers
PPPoE and MAC auth, Mikrotik-Rate-Limit, Address-List, Cisco-Service-Info, config file export for Linux routers.
-
Live sessions and blocking
Who is online on which router. Hard block (no RADIUS entry) or soft block (speed cap).
-
Network map and IPAM
Hosts on OpenStreetMap, node tree, device inventory, IP pools with an address occupancy map.
-
Compliance reports
Tax and regulator reports from billing data. Poland: JPK_FA, JPK_V7, SIIS for UKE. Other countries on request.
-
Automation
Invoices, e-invoicing, PDF and e-mail in one run. Dunning e-mails, automatic contract renewal, SMS.
No more posting bank transfers by hand
Download the CSV statement from your bank and upload it to the panel. The system detects the format, repairs broken rows and matches every transfer to a customer in four steps: invoice number in the reference, customer identifier, sender name, and finally the history of previously matched senders.
The vast majority of transfers post automatically. The rest appear on one list under an "unmatched" filter for manual assignment. You do not need paid virtual bank accounts for every subscriber.
- Encoding and format-variant detection (including the 2025 format changes at the supported banks)
- Duplicate protection at file and balance level
- Fintech senders (Revolut, Wise) excluded from name matching
E-invoicing at ISP scale, without an extra module
Where e-invoicing is mandatory, an ISP means thousands of invoices a month. django-nms generates the XML, authenticates per selling entity with an XAdES certificate or a token, and sends invoices in batch sessions of 100. The official invoice number and document hash land on the invoice, and if the government platform fails the system switches to offline mode with a type II QR code.
After sending, the invoice is locked against editing. The e-invoice number also flows into the tax reports.
- Online per invoice or batch for the whole month
- Invoices for consumers without a tax ID skipped automatically
- Corrective invoices reference the original e-invoice number
Network under control: from tariff to RADIUS attribute
Set plan parameters (day/night speed, connection limit, priority) once on the service. django-nms generates FreeRADIUS entries with Mikrotik-Rate-Limit, Mikrotik-Address-List and Cisco-Service-Info for ASR 1001-X, and exports configuration files for DHCP, NAT and tc on Linux routers.
Every 60 seconds the system polls edge routers and shows who is online. Blocking for non-payment is one click: hard removes the RADIUS entry, soft leaves the customer a few hundred kb/s.
- Deployment over SSH through a jump host, with an audit record of every deployment
- Safety net: refuses to deploy an empty configuration or one that drops more than 10% of hosts
- IPAM with pool occupancy map and next-free-address lookup
“We work in django-nms every day. In the morning I upload the bank statement and the vast majority of transfers land on customer accounts on their own; I only check the exceptions. Invoices go to the e-invoicing system in one run, and when a technician changes a plan, the new parameters are in RADIUS without anyone logging into a router.”
Netowski is the first deployment and development partner of django-nms.
Works with what is already in your rack
No router replacement and no bank switch.
-
MI Available
MikroTik RouterOS
RADIUS attributes, PPP session and address-list read over SSH.
-
CI Available
Cisco ASR 1001-X (IOS-XE ISG, IOS-XR BNG)
Cisco-Service-Info for QoS, subscriber session read.
-
FR Available
FreeRADIUS
Generation and deployment of users files, PPPoE and MAC auth.
-
KS Available
KSeF (Poland)
National e-invoicing: FA(3), certificate or token, online, batch and offline.
-
BA Available
Bank CSV statements
Alior, mBank, Nest Bank today; other banks added on request.
-
AW Available
AWS SES and SMSAPI
E-mail and SMS notifications to subscribers.
-
MO Planned
Mollie
Online payment gateway. On the roadmap.
-
ZA Planned
Zabbix, Grafana, NetFlow
Monitoring and traffic graphs. On the roadmap.
Frequently asked questions
Will django-nms replace LMS?
Yes for billing, e-invoicing, RADIUS, IPAM and the network map. Importers move IP networks, hosts, tariffs and customer mapping. The customer portal and helpdesk are on the roadmap, so if you rely on the LMS Userpanel, let's talk timelines.
Can I host it myself?
Yes. The system runs in Docker (web, worker, Celery, PostgreSQL 17, Redis) and deploys with Ansible. We also offer EU-hosted instances.
How is it priced?
Per active subscriber per month, with no admin-seat fees. See the pricing page for a 1,000-subscriber example.
Are online payments available?
The Mollie gateway is on the roadmap. Today payments are posted from bank statements, cash receipts and regular transfers.
See the system on your own data
We will import your bank statement and walk through provisioning for your routers. 45 minutes, no obligation.