Jump to: navigation, search

Supported Features

Create Suspend Unsuspend Terminate
Yes Yes Yes Yes
Change Package Change Password Usage Updates Client Area Link
Yes Yes Yes Yes

The following ports should be open for outbound connections from your WHMCS server: 2086 & 2087

Adding a cPanel Server

Watch Video Tutorial


The following steps guide you through the process of setting up a server in WHMCS for cPanel Hosting Accounts.

  1. You need to begin by creating a Server for your cPanel products to be assigned to in WHMCS
  2. To do this navigate to Setup > Products/Services > Products/Services > Servers and click on Add New Server
    WHM Access Hash Setup
  3. Enter the server name, IP address, select the server type "cpanel" from the dropdown menu and enter the username and password for cPanel/WHM
  4. Alternatively you can use the username + access hash combination. This is the more secure option and can be obtained via Cluster/Remote Access > Setup Remote Access Key in WHM. NB. The "WHM" login button will not function.
  5. Ticking the SSL Mode checkbox is also recommended, but all other fields are optional
  6. Click Create Server to complete the process and add your new cPanel Server

Setting Up a cPanel Package

Watch Video Tutorial


cPanel Module Settings
Adding a Package in WHM

To setup 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 dropdown field and then for a shared hosting package:

  1. In most cases, you should create a package inside WHM itself (in Packages > Add a Package) and then just enter the Package Name into WHMCS exactly as it appears in WHM (leaving all the other fields blank)
  2. But there is also the option to define custom packages - you can do that by leaving the Package Name field blank and defining the individual limits into the fields the module settings page (You will need root access for this to work)
  3. Max Addon Domains is the last field that applies to shared hosting accounts in the list.
  4. And then finally as with all products you have the option of choosing the automatic setup option you want for new orders, be it immediately as soon as the order is placed, as soon as the initial payment has been received (recommended) or waiting until an admin manually reviews & accepts the pending orders

For a reseller package

Creating an ACL List
  1. Set the settings for the resellers own hosting account as above with one difference, the Product Type setting must be Reseller Account.
  2. The fields from "Limit Reseller by Number" onwards specify reseller settings so from there you can set the resellers limits by number or disk space, these are explained below.
  3. The Reseller ACL List is required and defines what features inside WHM the reseller is allowed to use. To setup an ACL list, WHM doesn't offer a way without setting up a reseller so inside WHM go to the Reseller Center and activate a domain as a reseller, then proceed to the Edit reseller privileges & nameservers page and enter a name to save the feature selections before saving.
  • Limit Reseller by Number - Specifies the maximum number of cPanel accounts the reseller can create or...
  • Limit Reseller by Usage - Alternately limit the disk space and bandwidth the reseller has to assign to their customers using the following two options
  • Reseller Disk Space - The disk space the reseller has to share amongst their accounts
  • Reseller Bandwidth - The bandwidth the reseller has to share amongst their accounts
  • Allow DS Overselling - Tick to allow resellers to assign more disk space to accounts than they actually have
  • Allow BW Overselling - Tick to allow resellers to assign more bandwidth to accounts than they actually have
  • Reseller ACL List - See below
  • Configure Nameservers - Tick this option to give the reseller their own nameservers based upon their domain name instead of using your nameservers. Ie.
ns1.resellerdomain.com, ns2.resellerdomain.com
instead of
ns1.yourcompany.com. ns2.yourcompany.com
  • Reseller Ownership - When ticked the reseller will own their own account. A package doesn't necessarily need to be setup, but you would need to define some limits for the client account created, perhaps 1MB disk and bandwidth so the client then changes their account to one of their own packages.

Other Options

  • Add Prefix to Package - Add the username_ prefix to the package name when the account is created on the server. This is useful when using multiple servers with the same package name, but different username.

Notes

Login to cPanel Link

The login to cPanel link displayed in the client area is based upon the server hostname if available, if not, the IP address will be used. The usage of http and https login links depends upon the state of the "Secure" checkbox in the server configuration eg. When ticked, the https link with port 2083 is used.

The login to control panel link displayed in the admin area is based upon the server hostname if available, if not, the IP address will be used. The usage of http and https login links depends upon the state of the "Secure" checkbox in the server configuration eg. When ticked, the https link with port 2087 is used. It uses the xfercpanel function, so when prompted, enter your WHM login details (not the client's cPanel details) and you will be logged into the client's account with reseller privileges.

Common Problems

You do not have permission to use Selected Package

If you receive this error when trying to create an account then 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.

Package Not Allowed or Exceeded Resource/Account Allocation

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 the WHM Package Name in the product configuration of WHMCS matches exactly what is setup in your WHM.

Resellers are not permitted to create subdomains of the server's main domain

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.

Unable to validate setting for language: english

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.

Sorry, that username is reserved

cPanel/WHM does not allow usernames to contain the phrase "test" amongst others, so when this error occurs, simply change the username under the client's products/services tab and run the Create Module Command again.

Sorry, a group for that username already exists

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 under 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 the Username, click Save Changes and finally click the "Create" Module Command button.

Login Failed

There are two possible causes for this error:

  1. The login details under Setup > Servers > Edit are incorrect. Please 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 the cPanel API. Please adjust the BFP settings in WHM.

No user name supplied: "username" is a required argument

This means the username under 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 ticked to avoid this in future.

Server Modules
cPanel/WHM - DirectAdmin - Plesk - Helm 3 - Helm 4 - Ensim - InterWorx - WebsitePanel
Lxadmin - Virtualmin Pro - XPanel - HyperVM - FluidVM - SolusVM - Cloudmin - WHMSonic
CentovaCast - SCPanel - MediaCP - GameCP - TCAdmin - Reseller Central - Auto Release

Registrar Modules
Enom - ResellerClub - Nominet - OpenSRS - ResellOne - OnlineNIC - PlanetDomain
TPP Wholesale - TPPInternet - RegisterFly - Stargate - Namecheap - NetEarthOne - Bizcn - InternetBS
12Register - Registercom - DotDNS - WebNIC - Dot.TK - HexoNet - Realtime Register
RRPProxy - ResellerCamp - TransIP - Heart Internet - IPMirror - NetRegistry - OVH
Email

Fraud Modules
MaxMind - VariLogiX FraudCall - Telesign

Gateway Modules
2CheckOut - ACHDirect - Amazon Simple Pay - AsiaPay - Authorize.net - Bank Transfer - BidPay
BluePay - Boleto - CamTech - CashU - CC Avenue - ChronoPay - Cyberbit
Direct Debit - EEECurrency - E-Gold - EMatters - E-Path - eProcessingNetwork - eWAY - eWAY Tokens
eWAY UK - F2B - FastHosts - Finansbank - Garantibank - Gate2Shop - GoCardless
Google CheckOut - IMSP - Inpay - InternetSecure - IP.Pay - Kuveytturk
LinkPoint - Mail In Payment - Merchant Partners - Merchant Warrior - Mollieideal - Moneris - Monerisvault
Moneybookers - My iDEAL - Navigate - Netbilling - Netregistrypay - Nochex - NTPNow
Offline Credit Card - OpenECHO - Optimal Payments - Pagamento - PagSeguro - Payflow Pro - Pay Junction
Paymate_AU_and_NZ - Payment Express - Paymex - Paypal - PayPal_Express_Checkout - PayPal Payments Pro
PayPoint.net (SecPay) - Payson - Payza - Planetauthorize - SagePay - ProtX_VSP_Form - PSIGate
Quantum_Gateway - Quantum_Vault - SagePay - SecPay - SecurePay - SecurePay_AU
StormPay - TrustCommerce - USA ePay - WorldPay - WorldPay_Invisible