WHMCS Integration
One module sells both dedicated servers and KVM VPSes: each WHMCS product chooses which with its Product Type. Tested with WHMCS 9.0 on PHP 8.3.
Install
- Download the module: virtlixcp.zip.
- Extract it and upload the
virtlixcpfolder to/<WHMCS_PATH>/modules/servers/virtlixcp/. - In VirtlixCP, go to System, Integrations and add an integration for WHMCS.
- Give the integration these permissions:
- Clients (View and Edit)
- Installs (View and Edit)
- Servers In Use (View and Edit)
- Servers In Inventory (View and Edit)
- IP Entities (View)
- IP Groups (View)
- Create an API key for the integration and copy it.
- In WHMCS, go to System Settings, Servers and add a server:
- Name: VirtlixCP
- Hostname: your VirtlixCP API hostname, the one starting with
api. - Module: VirtlixCP
- Access Hash: the integration's API key
The module's actions show in VirtlixCP under System, Logs, and in WHMCS under Utilities, Logs, Module Log when module logging is on.
Update
Download the zip again and upload the virtlixcp folder over the old one. Your products, services and settings stay; nothing else is needed. The changelog lists what changed. Some features need a recent VirtlixCP version; the guides say which.
Products
Create a product of type Dedicated/VPS Server with the module VirtlixCP, then choose its Product Type in Module Settings:
- KVM VPS creates a virtual server. See WHMCS Module for VPS for its settings, configurable options (sizes, OS, location, plans, control panels) and the SSH key field.
- Dedicated Server assigns a bare metal server from your inventory, as below.
Dedicated server products
Name the product after its CPU (for example E3-1270v6 or Dual E5-2620v4), and in Module Settings fill in:
- CPU Billing ID: the CPU's billing ID on VirtlixCP
- API User: any WHMCS admin with API access
- PXE, IPMI and Switch Access: what the client may do on their server after it is provisioned
- Termination Action: what happens when a server is terminated for billing reasons. VIP clients always get a ticket instead
- Pre-OS Install: we recommend
format-quick, which clears the old partition table before an OS reload
WHMCS's Change Password is for KVM VPS products. On a dedicated server it does nothing and says so: the server's password is set when its OS is installed.
Configurable options
Configurable options link to VirtlixCP by billing ID: put the billing ID before the text the client sees, separated by |. Names must match exactly.
| Configurable option | Example value | Notes |
|---|---|---|
| Memory | 8GB|8GB RAM |
|
| Datacenter Location | LOC-LA1,LOC-LA2|Los Angeles |
Must match an IP group on VirtlixCP. Comma-separated billing IDs allowed |
| Network Port Speed | speed-1000|Gigabit Uplink |
|
| IPv4 Addresses | IP-29|/29 Block (5 Usable IP Addresses) |
|
| Add On 1, Add On 2, ... | HW-RAID|Hardware RAID Controller |
Use ADD-RAID1 and ADD-RAID0 for automatic software RAID |
| Drive Bay 1, Drive Bay 2, ... | 1TB-HDD|1 TB Hard Drive |
Use None for empty bays |
| Operating System | os-centos6|CentOS 6 |
Must match an OS reload profile's billing ID on VirtlixCP |
| Bandwidth | 20000GB|20 TB Bandwidth or |Unmetered Bandwidth |
Optional. Use the same unit as your WHMCS overage setting (GB by default) |
Preset values: the Memory Billing ID, Addon Billing IDs and Disk Billing IDs module settings preset those parts of the server, for fully or partly pre-configured products. A matching configurable option overrides them. They take comma-separated values, for example add-1,add-2|Addon1, Addon2.