WHMCS Overview
WHMCS is a web hosting management and billing software that handles product provisioning, billing, promotions, and domain reselling. The module for Enhance is managed by the Enhance team. For bug reports, contact support@enhance.com. This module is still being developed and will have more functionality in future versions.
Installation
-
Unzip the Module
- Unzip the module archive into the
modules/servers/enhance
directory. Ensure the directory is namedenhance
.
- Unzip the module archive into the
-
Install Dependencies
- As the user under which WHMCS runs (do not run as root!), navigate to the
api
directory and execute:composer install
to install the required dependencies. - If composer is not globally installed, follow the instructions on the Composer website to install it. After installation, use:
php composer.phar install
.
- As the user under which WHMCS runs (do not run as root!), navigate to the
Upgrading
-
Remove Old Module
- To upgrade, remove the previous module version from the
modules/servers/enhance
directory.
- To upgrade, remove the previous module version from the
-
Install New Version
- Unzip the new version into the same directory.
-
Run Composer Install
- Navigate to the
api
directory and run:composer install
.
- Navigate to the
-
Subscription ID Update
- If upgrading from versions < 1.1.0, note that the
subscriptionId
custom field is now renamed toenhanceSubscriptionId
. You may want to update existing subscriptions.
- If upgrading from versions < 1.1.0, note that the
Configuration
-
Create Access Token
- In the Enhance Control Panel, create a SuperAdmin access token and take note of both the access token and orgId.
-
Add Server in WHMCS
- In WHMCS, go to Servers and click Add Server.
- Set the Name to anything you prefer.
- For the Hostname, use your control panel domain (without
http://
orhttps://
). - For Username, input your Enhance orgId.
- For Access Hash, input the access token you generated earlier.
-
Server Configuration
- Only your control panel server needs to be added in WHMCS; server placement within your Enhance cluster is configured within Enhance itself.
Multiple Subscriptions
- When the first subscription is created for a WHMCS client, a custom field enhOrgId is created under the client to store the organisation ID.
- If the customer purchases additional hosting packages, these will be created under the same organisation, allowing the customer to log in once for all subscriptions.
Website Creation on Subscription Creation
- The module attempts to create a website for the customer under their new subscription.
- If website creation fails, WHMCS will mark the provisioning as failed, but the organisation, login, and subscription will still be created successfully.