Skip to content

Move from WHMCS to ClientFence

The WHMCS import copies a whole WHMCS install into ClientFence. It only reads the WHMCS database: nothing changes in WHMCS, and nothing is emailed, charged or created on a server.

  • A fresh install. The import keeps WHMCS’s ids and invoice numbers, so it does not start on an install that already has data.
  • A database user that can read the WHMCS database from this server.
  • The Encryption key: $cc_encryption_hash in WHMCS’s configuration.php. Without it, two-factor sign-in does not come over.
  • The Attachments folder of WHMCS tickets, copied to this server if WHMCS runs elsewhere.
  • The same payment gateways set up here.
  1. Go to System → Settings → System and open the WHMCS import tab (Super Administrators only).
  2. Fill in the WHMCS database details and select Save and test.
  3. Select Make the plan: what WHMCS holds, what happens to it, and server checks to fix.
  4. Select Start the import and keep the page open. If it stops, fix the cause and select Go on with the import.

The WHMCS import tab with the WHMCS database form: host, port, database name, username, password, encryption key and attachments folder.

System Settings, WHMCS import tab. Select the image to enlarge it.

Clients and their logins, the catalogue, services and domains, invoices, payments and credit, tickets with attachments, the knowledge base, announcements, and email history. Open cancellation requests, inclusive tax, free domain renewal settings, and Hebrew client language preferences also carry over where present.

Not imported: hosting account passwords, product bundles and quotes. A login whose password cannot be checked here uses Forgot Password?. Add-on modules without a ClientFence counterpart go to an archive file next to the backups.

  1. Select Check against WHMCS and read the Warnings.
  2. Staff and hosting servers come over switched off. Switch them on when you move over.

Save and test the WHMCS connection in the admin area first. In the ClientFence directory, run the commands below as the site user. The memory setting applies only to these runs. Review the plan and fix blockers before running the next command. The apply step imports into the target database.

Terminal window
php -d memory_limit=512M console.php clientfence:whmcs-import plan
php -d memory_limit=512M console.php clientfence:whmcs-import apply
php -d memory_limit=512M console.php clientfence:whmcs-import verify

Review the verification report before enabling imported staff and servers.