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.
BILLING MIGRATION
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.
Upload a CSV from any old system, auto-map the columns, and preview valid, skipped and broken rows before anything is written.
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.
Names, phone numbers and emails are never mapped. Phone-like account IDs, usernames and references are rejected, and passwords are masked in the preview.
Import hotspot packages and PPPoE plans first, then subscribers. A subscriber must match an existing plan, so the migration keeps pricing and expiry coherent.
Existing package names, plan names, account IDs, usernames and payment references are skipped. If a file fails halfway, fix it and run it again.
Historical payments are recorded for reconciliation and reporting. They never grant access or extend an expiry; import each subscriber's real expiry separately.
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.
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.
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.
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.
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.
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.
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.
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.
Connect your MikroTik, set your prices and take your first M-Pesa payment. No commission, paid to your own till.