Here you may see a list of described hosting package menus for quick access:
1. Details menu
2. Pricing menu
3. Module settings menu
4. Custom settings menu
5. Configurable options menu
6. Upgrades menu
7. Free Domain menu
8. Other menu
9. Links menu
Setting up a cPanel package
Once WHMCS is installed via the Softaculous script installer or manually, access Admin Dashboard. You will get to the admin backend where you are able to manage settings and configuration for your services.
Follow the instructions below if you wish to add a hosting account:
1. From the Admin Summary page navigate to Setup (1) > Products/Services > Products/Services (2):
2. Click Create a New Group and enter a name for it – products will be organized in the order form based on their group. Click Save Changes once finished:
3. Next, click Create a New Product:
4. Choose the type of product this is (your new group is selected already) and enter the name for the product, then click Continue:
5. You will now see the product configuration page. From here you can configure all aspects of this product. This guide covers the basics to get you started.
This is the first tab you see, it contains general information about a product including its name and product group:
Product Type: select a Hosting account
Product Group: group your product will be added to
Product Name: name for your product
Product Description: detailed information displayed on the order form relating to this product
Welcome Email: email template to send when the product is activated. You can create custom email templates to use with different products, see Email Templates for more info.
Require Domain: to show the domain registration options on ordering. Should always be enabled for hosting and disabled for any other products that do not require a domain name.
Stock Control: can be used if you have a specific quantity of an item available (for example, servers) or a limited special offer product – checkmark to enable and enter a quantity remaining, WHMCS will stop orders when it reaches zero. When a stock-controlled item is cancelled (either by a cancellation request or clicking Cancel Order on an order), the stock level will automatically increase. However, if a staff member manually changes the product to the cancelled or terminated status, it will not re-add stock to the product.
Sort Order: can be set to a number to override the default product ordering of alphabetical names. A product with the order of 0 will appear in the list first, 1 will be beneath that, 2 beneath that etc.
Apply Tax: check if tax rules should be applied to this product. For more information, refer to Tax/VAT Rules.
Hidden: check this option not to show the product on the order form – can still be ordered using the direct order links.
Retire: when checked, the product is hidden from admin area lists, such as the Products/Services dropdown in the client’s Products/Services tab.
This second tab is where the prices and length of the product are specified:
Payment Types: consists of Free, One Time & Recurring options.
When the One Time or Recurring payment types are selected, the pricing grid will appear for entry of the product price. Enable each billing cycle by checking the corresponding Enable checkbox:
Allow Multiple Quantities: When enabled, this option allows clients to choose the quantity of the product they wish to order; this option will be available on the checkout page. The product must require no additional configuration such as product custom fields or configurable options.
Recurring Cycles Limit: For Recurring payment types, the default value 0 will invoice indefinitely until cancelled. However, by entering a value in this field you can limit the number of times this product will invoice the client. For example, entering 5 on a monthly product would cause no invoice to be generated in the 6th month after ordering.
Auto Terminate/Fixed Term: You can set up products to automatically terminate after a set number of days from the date of signup. This can be used to offer free trial products for a certain period of time, or time-limited products that should only recur for a certain number of cycles before stopping:
Termination Email: When the above feature is enabled, choose an email to be sent to the client when the product is terminated.
Prorata Billing: This allows you to bill products on a specific day of the month and charge a prorated amount at the initial time of order. If enabled, all clients will be charged on one exact day each month. When disabled, the product will use the default anniversary billing system (e.g., Jun 15 – Jul 15).
NOTE: Prorata billing is not compatible with the free domain logic or having domain renewal invoices generated further in advance than other products.
Prorated Date: If you set this to 1, then all clients would be charged on the 1st of each month.
Charge Next Month: After this day of the month has been reached, a client will also be charged for the next month in their initial payment when signing up for a monthly billing cycle. If you had prorata date set to 1, and a client signed up on the 30th of the month, they’d only be charged a tiny amount without this setting. So it is pro-rated amount + next month in advance.
NOTE: If you wish to pro-rate a product but not use the ‘charge next month’ feature, set Prorata Date to a normal value and Charge Next Month to 32.
With our hosting servers we suggest using cPanel. To choose it, select cPanel in the Module Name section drop-down.
This tab specifies which server type the product will use and how WHMCS will behave when this product is ordered:
From the Module Name drop-down menu select the type of server you’re using. The options you will see depend upon the module chosen, and more information specific to each module can be found in the Provisioning Modules section.
If a product has no specific module to be linked to, then you can set it to Autorelease in order to have the activation simulated and therefore, the welcome email will be sent automatically.
There are 4 automation settings to choose from for product activation and they are:
From this tab you can create custom fields for this product, allowing you to collect additional information from your clients on the order form required for supplying the product:
Field types consist of text boxes, drop-down selections, yes/no check boxes, memo text boxes and password fields (text entered here with appear as asterisks ****).
Fields can be set as admin only for private data, required/optional on the order form, displayed on the order form or only in the client area or displayed on the invoices (such as VAT numbers). See Custom Fields for more info.
Use this tab to select which configurable options are associated with the product, they can be displayed on the order form or in the client area:
Configurable Options allow you to give your clients options which alter the price of the product. Refer to Addons & Configurable Options for more info.
The sixth tab allows you to specify whether the client can upgrade or downgrade from this product to another:
Upgrades/downgrades can be fully automated by WHMCS with many of the modules. All you need to do on this tab is select the products that the product can be upgraded or downgraded to.
Use Ctrl+Click to select multiple products.
There is also a checkbox for enabling the upgrades of configurable options if there are any on the product. From the Upgrade Email dropdown menu you can select an email template to be sent when a client upgrades to this product. A new Product email template will first need to be created under Setup > Email Templates.
See Automated Upgrades and Downgrades article for more info on how upgrades/downgrades are calculated and processed.
Use this tab to configure the offer of a free domain with this product is desired:
WHMCS lets you offer free domains with your packages when purchased with certain payment terms. For example, you might want to offer a free domain when a package is purchased annually as an incentive. Refer to Offering Free Domain Registration article for more details on how to configure it.
The penultimate tab contains miscellaneous settings such as product affiliate rates, product downloads and overage billing:
Custom Affiliate Payout: These settings allow you to specify a custom payout rate for this specific product if using the built-in affiliate system, this setting overrides the system default commission rate, it can even be disabled.
Affiliate Pay Amount: Based on your setting above to either percentage or fixed amount, this is the percentage or amount paid for a purchase of this product.
One Time Payout: check this if you want to pay only a one-off commission.
Subdomain Options: enter a domain in the format ‘.yourdomain.com’ if you want to offer a free subdomain option for the domain at the signup. You can offer more than one by entering a comma-separated list, e.g., ‘.yourdomain.com,.yourdomain.net’.
Product Downloads: lets you offer files to be automatically released to the customer when the product is activated. See Product Downloads Distribution for more information.
Overage Billing: allows you to bill for the product based on disk and bandwidth usage for the month. Refer to Disk Space and Bandwidth Overage Billing for more information.
The final tab contains some ready-made URLs to add to a webpage linking to this product:
Each URL will add the product to the shopping cart and jump straight to the configuration step. There are many more possible variations, refer to Linking to WHMCS.
To set up a cPanel package, go to Setup > Products/Services > Products/Services. From there, you can create the product and configure the general settings and pricing info as normal. When it comes to the Module Settings tab, select cpanel in the module drop-down field and then for a shared hosting package:
If you receive this error when trying to create an account, you need to correct the Packages Name setting. To do this, go to Setup > Products/Services > Edit > Module Settings on the package where you are receiving the error. Where it asks for the WHM Package Name, you must enter this exactly as it appears in WHM, which should be in the format username_packagename.
This error most likely means you only have reseller access to your server and are trying to create an account without a valid package name. You need to make sure that WHM Package Name in the product configuration of WHMCS matches exactly what is set up in your WHM.
This means no domain has been selected and is missing. Ensure the product has a domain name entered. You may need to enable Require Domain in Setup > Product/Services > Edit.
cPanel/WHM have made a number of changes to their API in the latest versions that are not backwards compatible. Therefore, it is no longer possible to use an old version of WHMCS with the latest version of cPanel. You will need to upgrade your WHMCS install to version 4.2.1 or above.
cPanel/WHM does not allow usernames to contain the phrase ‘test’ among others, so when this error occurs, simply change the username under the client’s products/services tab and run the Create Module command again.
An account with this username already exists on the server. This error can occur on shared servers even when you do not have an account with this username in your reseller account. Another reseller on the same server may be using it already.
To resolve, navigate to the client’s Products/Services tab, change Username, click Save Changes and finally click the Create Module command button.
There are two possible causes for this error:
1. The login details under Setup > Servers > Edit are incorrect. Ensure you are using either the username + access hash combination or the username + password combination and that the login details are correct.
2. The Brute Force Protection settings are preventing WHMCS from creating/suspending/terminating accounts via cPanel API. Adjust BFP settings in WHM.
This means the username in the client’s Products/Services tab is empty.
You should enter a username, save changes and try module creation again. Also, ensure Setup > Products/Services > Products/Services > Edit > Require Domains is checked to avoid this in future.
Seeing this error when attempting to provision a hosting account is caused by a server balancing misconfiguration, that is, no server is selected upon which the account should be created.
Need any help? Contact our HelpDesk