The goal of a billing migration is boring: on Monday, clients pay the same invoices for the same services, and nobody notices except the finance team, who are pleased. Reaching boring takes a plan.
1. Install and connect, with the trial
Install Hostinvo on a server of its own (it must not share a database with WHMCS). The installer starts a free trial, so there is nothing to buy before you have seen your own data inside it. Connect the same cPanel/WHM or Plesk servers WHMCS uses; Hostinvo only reads them until you tell it otherwise.
2. Run the WHMCS import on a copy
Point the importer at a read-only copy of the WHMCS database or an export. It brings clients, products, services, invoices and payments, and maps WHMCS products to Hostinvo products as you choose. Run it, check the numbers (client count, open invoices, active services), fix the mappings, and run it again. The importer can be repeated without duplicates until you are happy.
3. Reconcile what matters
- Open invoices: totals and due dates must match exactly.
- Active services: each one linked to the right server, package and domain.
- Credit balances and pending renewals.
- Payment gateway settings: the same Stripe and PayPal accounts, so saved customers keep working.
4. Pick the cut-over moment
Choose a quiet day, after a billing run rather than before it. Freeze WHMCS (stop its cron, so no new invoices or suspensions), run the final import, then switch DNS for the client portal and update the links in your emails. Keep WHMCS readable for a month for reference; keep it from writing anything.
5. The first week
- Watch the first renewal invoices go out and get paid.
- Watch the first automatic suspension and unsuspension.
- Check that the first support tickets arrive with the right client attached.
- Tell clients where the new portal is, in both languages if you serve both.
The WHMCS migration guide in the documentation has the exact field mappings and commands. The contact page is there if you want a second pair of eyes on your plan.