Everyone

Migration FAQ

Common questions and answers about migrating from WHMCS to Opterius Commerce.

Last updated 1776211200

Can I run both WHMCS and Commerce at the same time?

Yes. Install Commerce on a staging subdomain (e.g., billing-new.example.com) and run it in parallel with WHMCS during testing and migration. Only flip your billing DNS once you have verified that Commerce is fully configured and working. WHMCS remains untouched throughout the process.

Do not accept new client signups on both platforms simultaneously. Keep new signups on WHMCS until the moment of cutover, then import the new accounts before switching.

Do client portal passwords transfer?

It depends on the import method.

Direct DB insert — WHMCS stores client passwords as bcrypt hashes, and Commerce uses the same algorithm. If you insert hashes directly into the clients.password column, clients can log in with their existing passwords without any action required.

CSV import — Include the password hash in the CSV's password column. Commerce stores it as-is.

Send reset emails — Alternatively, exclude password hashes entirely and send clients a "Set your password" email after import. This is the safest option if you have any doubt about hash integrity or want a clean security reset.

[!TIP] If you choose the password reset approach, send the emails in batches over a few days rather than all at once to avoid overwhelming your support inbox with "I got a weird email" questions.

What about WHMCS addons?

WHMCS addons are not compatible with Commerce. There is no plugin compatibility layer.

Before migrating, audit which WHMCS addons you use and check whether Commerce covers the same functionality natively:

Common WHMCS Addon Commerce Equivalent
Lagom Client Theme Commerce ships with its own portal theme
Announcement manager Admin → Content → Announcements
Domain price importer Admin → Settings → Registrars → Pricing sync
Stripe checkout Native Stripe integration

For addons with no equivalent, file a feature request or build a custom integration using the Commerce API.

Can I keep my invoice numbering?

Yes. Before going live, set the invoice number sequence in Commerce to continue from where WHMCS left off. If your last WHMCS invoice was INV-4821, set Commerce to start at 4822.

Configure this under Admin → Settings → Billing → Invoice Number Sequence, or via php artisan tinker (see Migrating Invoice History).

How long does migration take?

It depends heavily on data volume and how much manual product recreation is needed.

Data Size Typical Duration
Under 500 clients, simple product catalog 4–8 hours
500–5,000 clients 1–2 days (including testing)
5,000+ clients or complex products Several days; consider scripting transforms

The longest parts are typically: product recreation, configuring gateways, and testing email delivery — not the data import itself.

Is there an automated migration tool?

Commerce includes basic CSV import tools for clients, services, invoices, and domains. There is no one-click "migrate from WHMCS" wizard.

For complex migrations (large datasets, many custom fields, multiple currencies), you will likely need to write transform scripts to prepare your CSVs from WHMCS exports. The Commerce database schema is documented to assist with direct insert approaches.

What happens to open support tickets?

Tickets are not migrated. Resolve or close as many open tickets in WHMCS as possible before cutover. For any tickets that are still open at cutover, handle them manually — either close them in WHMCS and ask clients to re-open in Commerce, or continue handling them in WHMCS until resolved.

What if something goes wrong after I switch DNS?

Revert your DNS record for billing.example.com back to the WHMCS server IP. DNS TTL permitting, you can be back on WHMCS within minutes to hours. All WHMCS data is untouched. Keep WHMCS in a runnable state for at least 30 days after cutover as insurance.