WifiMoney

BILLING MIGRATION

Migrate from your old ISP billing system

Switching billing systems should not mean retyping hundreds of subscribers. Import packages, PPPoE plans, subscribers and payment history from a CSV export or directly from an old Postgres database, preview every row, and commit only the valid ones.

CSV import wizard

Upload a CSV from any old system, auto-map the columns, and preview valid, skipped and broken rows before anything is written.

Postgres exporter

If your old system runs on Postgres, use the included exporter to read only the columns you map and write a clean CSV. Your old database is never exposed to the cloud.

Privacy-first mapping

Names, phone numbers and emails are never mapped. Phone-like account IDs, usernames and references are rejected, and passwords are masked in the preview.

Plans before people

Import hotspot packages and PPPoE plans first, then subscribers. A subscriber must match an existing plan, so the migration keeps pricing and expiry coherent.

Duplicate-safe re-runs

Existing package names, plan names, account IDs, usernames and payment references are skipped. If a file fails halfway, fix it and run it again.

Payment history, not access

Historical payments are recorded for reconciliation and reporting. They never grant access or extend an expiry; import each subscriber's real expiry separately.

A controlled cutover

A migration is a data change, so WifiMoney treats it like one. The preview is the dry run: you see how many rows are ready, which duplicates will be skipped and which rows need fixing. Commit happens in a single transaction, so a database error rolls back the whole batch instead of leaving half a customer base behind.

  • Auto-mapping for common column names
  • Date format selection and Nairobi end-of-day handling
  • Duplicate and static-IP detection
  • One transactional commit and an audit record

What comes across

The importer covers the data that makes a switch practical: the packages you sell, the broadband plans you run, the subscribers and their expiry dates, and the payment history you need for reconciliation.

  • Hotspot packages: name, price, duration, speed, devices
  • PPPoE plans: speeds, price, cycle, grace, burst, FUP
  • Subscribers: account ID, username, plan, expiry, status, static IP
  • Payment history: account, amount, receipt, date, method

Passwords and privacy

PPPoE passwords must be plaintext to configure the router. You can import them or ask WifiMoney to generate new ones. Imported and generated passwords are returned once in a credentials CSV, and only the encrypted form is stored. Customer names and phone numbers are never imported.

  • Plaintext import or generated passwords
  • AES-GCM encryption at rest
  • One-time credentials download
  • No names or phone numbers in the new database

Questions operators ask

What formats can I import?

CSV is the universal path. If the old system is Postgres, the included exporter can inspect the schema, map columns and write the CSV from your machine. The dashboard import wizard then handles validation and commit.

Will my old data be sent to the cloud?

Only the mapped columns are uploaded to the import wizard. The Postgres exporter runs on your machine and selects only the columns you map. Names, phone numbers and emails are never mapped.

What happens if a file has errors?

The preview lists the rows that need fixing. Valid rows can still be imported, or you can fix the file and re-run it. Existing rows are skipped on the next run.

Can I import payment history?

Yes, as an optional final step. Each payment needs a unique reference and a matching PPPoE account. Imported history is written to the ledger for reconciliation but does not grant access or extend expiry.

Can I undo an import?

There is no bulk delete. The preview is the safety check, duplicates are skipped, and you should import into a test workspace first if you are unsure. Wrong plans or accounts can be edited or archived individually after import.

Ready to run billing from one dashboard?

Connect your MikroTik, set your prices and take your first M-Pesa payment. No commission, paid to your own till.