Using Packages in WHM
Any new reseller’s first move when integrating WHMCS is to ensure that the products they are provisioning have the correct resources and limitations for their cPanel packages.
This article will walk you through the steps of setting up packages in WHM so you can use WHMCS.
Creating a package in WHM
- Log in to your server’s WHM as the root user (be sure this is the connected server to WHMCS that you intend to sell shared hosting on)
- Navigate to Add a Package
- Select Package Name – This will be used to identify within WHMCS
- Create Resource Limitations
- Disk Quota (MB)
- Monthly Bandwidth (MB)
- Max FTP Accounts
- Max Email Accounts
- Max Email Lists
- Max Databases
- Max Sub Domains
- Max Parked Domains
- Max Addon Domains
- Maximum Hourly Email by Domain Relayed
- Maximum percentage of failed or deferred messaged a domain may send per hour
This is where you can specify if you want the package to have a dedicated IP, offer shell access (SSH), cPanel access (CGI), or Digest Authentication.
Typically you can leave the Settings as default, but if you need to make changes, this is where you can do it.
Once you create a package in WHM, you will need to create a product in WHMCS and tie the two together in order to resell cPanel accounts with automated provisioning.
1. Log in to your WHMCS as an Admin User
2. Navigate to Setup -> Products/Services -> Products/Services
3. As a new installation, you will first need to click “Create a New Group”
- Set your Product Group Name (for example, Shared Hosting)
- Set the Product Group Headline (this is customer facing, so something specific to the group of products)
- Set the Product Group Tagline
- Select your available Payment Gateways
- Select the Order Form Template, if you don’t want the System Default
- You have the option of making a product group hidden, the functionality of hidden products/groups will be covered in another article.
- Save Changes
4. Now select “Create a New Product”
- Select the product type, for this example we will be selecting “Hosting Account” as it will be for the shared product you created the package for
- Choose your newly created Product Group
- Set the Product Name and hit continue (note: the product name does NOT have to match the package name, but it can make tracking easier in the long run)
- Details Tab
- Enter the Product Description – Here you can enter the description that the customer will see, for example, if it is a shared hosting package with 5GB of disk, 100GB of bandwidth, etc. you can list the features of this product)
- Welcome Email – This will give you a drop down of pre-existing email templates, for more on customizing WHMCS email templates, please see that article.
- Require Domain – This means the client must have a domain for the package (You can offer domain registration for new clients, but this box just ensures that they enter a fully qualified domain name to proceed).
- Stock Control – Set this if you only want to sell X number of this product
- Apply Tax – If taxes apply, select this box
- Featured – This will show the product more prominently in certain order form templates.
- Hidden – See the benefits of hidden groups/products.
- Retired – Often used in editing old products).
- Pricing Tab –
- Payment Type – Is this a free product (trial), one time bill, or recurring billing.
- Allow Multiple Quantities – This allows the customer to order more than 1 of this package.
- Recurring Cycles Limit – 0 is unlimited which will be the case for most hosting, change this if you want to limit how many cycles they can keep the product.
- Auto Terminate/Fixed Term – 0 is disabled, this can be used to auto terminate accounts after a certain date, I’d suggest avoiding this as it could potentially delete/destroy user data, better to have a fixed limit and contact the customer prior to termination as it could potentially save a client.
- Termination Email – This would need to be configured only if you use the previous option.
- The next three options are around billing date modifications
- Prorata Billing: Select this if you want to have universal billing dates.
- Prorata Date: This would be the day of the month that all billing would exist for this product.
- Charge Next Month: This will be the “cutoff” date for when the following month will be included in the original invoice.
- Module Settings – This assumes you have a server already created, if you do not see the documentation on connecting your first server.
- Module Name: Select cPanel from the drop down
- Server Group: If you have a specific group for this product, select it here.
- WHM Package Name: Select the correct package name to match the product.
- Custom Fields
- These fields allow for you to collect additional information from your client, such as “How did you hear about us?” or “Are you interested in our newsletter?”
- You can add any number of additional custom fields and you can make them public facing, or internal.
- Some modules and addons will require a custom field to be set up and filled out to successfully run.
- Configurable Options
- This will remain blank unless you have something that will generate the configurable options. For example, the Liquid Web Plugin. (https://github.com/liquidweb/LiquidWeb-WHMCS-Plugin) can generate configurable options based around what is available via our API.
- Package Upgrades: This box will show other products within WHMCS and you can select which you would like the customer to be able to upgrade to/from. For example, if you have a Bronze Shared Plan at 5GB of disk space and you would like to offer an upgrade path to the Silver Shared Plan at 10GB of disk space, you’d select it here.
- Configurable Options: Selectable if you have configurable options generated and set up for the product list.
- Upgrade Email: You can set an email in Email Templates if you would like them to receive something during the process.
- Free Domain
- Free Domain: You can select if you would like it to only be free for registration/transfer (one time), or if you would like it to remain free as long as they maintain the product.
- Free Domain Payment Terms: You can select if you only want to offer free domain registrations for specific payment terms. For example, Annual payment terms for hosting are a fairly common requirement to receive the free domain in this case since the domain registration is annual.
- Custom Affiliate Payout:
- Default – Uses the default set up in the system.
- Percentage – Pays a percentage of their referral.
- Fixed Amount – you set the amount they would earn for each product
- No Commission – they can track referrals but no commission is paid, this is helpful for if you have a program with incentives for referrals aside from money.
- Affiliate Pay Amount: Enter the amount you would like the affiliate to get paid for referring this product.
- Subdomain Options: Allowing specific subdomains to be used if you want to specify.
- Associated Downloads: You can set download files that are only available to clients who have this specific product.
- Overages Billing: If you want to allow for a client to use more than the allocated amount and charge them for it you set it here. Just to clarify though, the package we set up in WHM previously will determine the true “hard limits” if you set up overage billing with soft limits, the client will still see the full “hard limit” in cPanel, there is no way to “hide” that.
- Custom Affiliate Payout:
- Direct Shopping Cart Link: This is a direct link you can provide customers (or code into your site) that will link directly to the “checkout” page with the product in the cart.
- Direct Shopping Cart Link Specifying Template: If you’re running a specific promotion in which you want to utilize a specific shopping cart template, you can use that here
- Direct Shopping Cart Link Including Domain: If you were to send a direct “quote link” and you want to pre-fill the domain for the client you’re sending it to, you can use this:
- Replace the “sld=whmcs” with “sld=clientdomain”
- Replace the “tld=.com” with “tld=clientstld”
- If the client is using .com, you can leave this the same. If they are using .net you would enter “tld=.net”
- Product Group Cart Link: This can link to the full group, if you had multiple products in the same group type.
- Hit Save Changes and your product setup is now complete! You can begin selling that shared product right away.
You can repeat this process by setting up a different package in WHM and then in the “Module Settings” section, you would select that package instead. Just be sure that you adjust the pricing and any options that you need for each product.
If you need to purchase a WHMCS or have further questions, please contact our support team via chat! Happy to help.