Why Products Cannot Be Auto-Migrated
WHMCS and Commerce have structurally different product models. WHMCS ties pricing, module configuration, and configurable options tightly together in a way that cannot be mapped 1:1 automatically. Products must be recreated manually.
In practice this is not as much work as it sounds — most hosting companies have fewer than 50 distinct products, and the recreation process is straightforward.
Recommended Approach
Work in this order:
- Create product groups (equivalent to WHMCS product groups)
- Create products within each group
- Set up the pricing matrix for each billing cycle
- Create configurable options where needed
- Link products to provisioning modules (Opterius Panel or other)
Creating Product Groups
Go to Admin → Products → Groups → Add Group.
Map your WHMCS product groups directly. Use the same names if clients will see them in the portal — consistency avoids confusion during the transition.
Creating Products
Go to Admin → Products → Add Product.
| WHMCS Field | Commerce Equivalent |
|---|---|
| Product Group | Product Group |
| Product Name | Product Name |
| Product Type | Product Type (see below) |
| Module | Provisioning Module |
| Welcome Email | Product Welcome Email Template |
| Description | Description |
| Stock Control | Stock / Quantity Limit |
Mapping Product Types
| WHMCS Product Type | Commerce Product Type |
|---|---|
| Shared Hosting | hosting |
| Reseller Hosting | hosting |
| VPS | hosting |
| Dedicated Server | hosting |
| Other | generic |
| Addon | Configurable Option or separate product |
Billing Cycle Mapping
| WHMCS Billing Cycle | Commerce Billing Cycle |
|---|---|
| Monthly | monthly |
| Quarterly | quarterly |
| Semi-Annually | semi_annually |
| Annually | annually |
| Biennially | biennially |
| Triennially | triennially |
For each product, enter prices for the billing cycles you want to offer. Leave cycles unpublished if you don't want them shown to clients.
Configurable Options
WHMCS configurable option groups map to Commerce's configurable options on a product. Review each WHMCS group that was attached to products you're migrating:
- Go to Admin → Products → Configurable Options → Add Group.
- Define the option type (dropdown, radio, checkbox, quantity).
- Add each option value and its price modifier.
- Attach the option group to the relevant products.
[!TIP] If a WHMCS addon product was always purchased together with a specific product, consider converting it to a configurable option on that product. This simplifies the checkout flow.
Module Configuration
After creating products, configure the provisioning module for each hosting product:
- Go to Admin → Products → edit product → Provisioning tab.
- Select the module (e.g., Opterius Panel).
- Fill in the module-specific fields (server group, plan name, disk quota, etc.).
[!IMPORTANT] Module and config option mappings require manual review. There is no automated way to transfer module parameters from WHMCS. Compare your WHMCS module settings side-by-side when configuring each product.