Docs / Migration
Migrating from WHMCS
The built-in migration tool imports supported business records from a private MySQL copy of WHMCS. Modules and custom data require compatibility review and, in many cases, adaptation.
Before you start
- Install KBilling first — see the installation guide.
- Take a fresh backup of your WHMCS database. The importer only reads, but backups are free insurance.
- Pick a quiet time for the final switch. A weekend evening works well for most hosts.
1. Connect to WHMCS
Restore a copy of the WHMCS database to a separate private staging database. In KBilling, open System Settings → WHMCS Migrator and connect with a SELECT-only source account. Never restore a WHMCS dump over the KBilling database.
2. Pick what to import
Everything is checked by default — clients, products, services, invoices, quotes, and tickets with replies. You can untick anything you don't want, for example old cancelled services.
Client passwords cannot be transferred (WHMCS stores them in a non-reversible hash). Clients use the "forgot password" link on first login, or you can email them a reset link in bulk from the import summary screen.
3. Reconnect server modules
Your WHMCS server groups are imported, but you should re-enter API keys under System Settings → Servers as a precaution. Products keep their module settings, so provisioning picks up where it left off.
4. Switch payment gateways
Enable the same gateways in KBilling (Stripe, PayPal, Bank Transfer) and paste your existing keys — a Stripe or PayPal account can stay connected to both systems during the transition. Just don't run the same subscription in both places at once.
5. Go live
- Put WHMCS in maintenance mode.
- Run the import one last time to catch anything new.
- Point your billing domain at KBilling.
- Turn off the WHMCS cron (
whmcs/crons/cron.php) so the two systems never double-bill. - Enable the KBilling cron (see the installation guide).
Keep the old WHMCS database around, read-only, for a few months. You probably won't need it, but it's cheap to keep.
Migration questions
- Will my custom WHMCS modules work?
- Do not assume drop-in compatibility. Open-source PHP modules can often be adapted after review. IonCube modules cannot be safely inspected, and modules using WHMCS runtime services such as Capsule or
localAPI()require changes. - Does my WHMCS theme carry over?
- No. Client-area templates are different, but the KBilling client area is ready out of the box and white-label branded.
- Can I import from a different billing system?
- The built-in tool covers WHMCS. For anything else, export clients and services to CSV and import via Utilities → Import.
Not using WHMCS?
Start with configuration →