Personal tools
Namespaces

Variants
Actions

CPanel Manage2 For WHMCS

From ModulesGarden Wiki
(Difference between revisions)
Jump to: navigation, search
(About cPanel Manage2 For WHMCS)
(Update Instructions)
 
(196 intermediate revisions by 9 users not shown)
Line 1: Line 1:
 +
{{DISPLAYTITLE:cPanel Manage2 For WHMCS}}
 
<meta name="keywords" content="cpanel manage2 for whmcs, cpanel manage2 guide, cpanel partner noc, modulesgarden cpanel manage2, cpanel manage2 wiki, cpanel manage2 tutorial, cpanel manage2 tips, cpanel module wiki, cpanel manage2 common problems, about cpanel manage2, cpanel manage2 documentation, cpanel manage2 faq, cpanel manage2 help, cpanel manage2 configuration, cpanel manage2 management, cpanel manage2 installation"></meta>
 
<meta name="keywords" content="cpanel manage2 for whmcs, cpanel manage2 guide, cpanel partner noc, modulesgarden cpanel manage2, cpanel manage2 wiki, cpanel manage2 tutorial, cpanel manage2 tips, cpanel module wiki, cpanel manage2 common problems, about cpanel manage2, cpanel manage2 documentation, cpanel manage2 faq, cpanel manage2 help, cpanel manage2 configuration, cpanel manage2 management, cpanel manage2 installation"></meta>
 
<meta name="description" content="ModulesGarden Wiki Contains All The Information You Need About The cPanel Manage2 For WHMCS Module."></meta>
 
<meta name="description" content="ModulesGarden Wiki Contains All The Information You Need About The cPanel Manage2 For WHMCS Module."></meta>
  
=About cPanel Manage2 For WHMCS=
+
=About [https://www.modulesgarden.com/products/whmcs/cpanel-manage2 cPanel Manage2 For WHMCS]=
=Test=
+
 
{|
 
{|
|style="padding: 10px 0px 10px 0px;"|'''ModulesGarden cPanel Manage2 For WHMCS is an addon module which was created to handle the cPanel Licenses provisioning for the WHMCS system.'''<br />
+
|style="padding: 10px 0px 10px 0px;"|'''cPanel Manage2 For WHMCS''' is a module created to introduce and automate the provisioning of cPanel licenses in your WHMCS.<br />
It will help you to automatically provide licenses to your customers. Module is easy to setup, compatible with older WHMCS versions and provides complex functionality for your clients.
+
The module will enable your clients to view detailed information about their licenses in your WHMCS client area as well as assign IP addresses to their licenses.<br/><br/>
 +
Check out also our [https://www.modulesgarden.com/products/cpanel/inactive-account-manager '''Inactive Account Manager For cPanel'''] module and '''reduce your running cPanel costs!'''
 
|}
 
|}
*'''cPanel Manage2 Functionality:'''
+
<!--a comment maybe? -->
 +
*'''Admin Area Features:'''
 
{|
 
{|
|style="padding: 10px 0px 0px 30px;"|✔ Buy License (Create)
+
|style="padding: 10px 0px 0px 30px;"|✔ Create/Suspend/Unsuspend/Terminate License
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 0px 30px;"|✔ Terminate License
+
|style="padding: 0px 0px 0px 30px;"|✔ Change License Package
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 0px 30px;"|✔ Suspend/Unsuspend License
+
|style="padding: 0px 0px 0px 30px;"|✔ Change IP Address Assigned To License
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 0px 30px;"|✔ Change IP Address
+
|style="padding: 0px 0px 0px 30px;"|✔ View License Details
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 10px 30px;"|✔ Get License Details
+
|style="padding: 0px 0px 0px 30px;"|✔ Toggle Automatic License Assignment To Specified IP Address
 
|}
 
|}
*'''Requirements:'''
 
 
{|
 
{|
|style="padding: 10px 0px 0px 30px;"|✔ ionCube Loaders
+
|style="padding: 0px 0px 0px 30px;"|✔ Define Package, Group And Expiration Reason
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 0px 30px;"|✔ WHMCS V4.4 or Later
+
|style="padding: 0px 0px 0px 30px;"|✔ Choose Billing Type:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 30px 30px;"|✔ You have to be cPanel Partner NOC
+
|style="padding: 0px 0px 0px 45px;"|✔ Default - Bill Client Only For License Regardless Of Accounts Number
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 45px;"|✔ Flexible - Bill Client For Exact Number Of Accounts Assigned To License
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 45px;"|✔ Tiered - Bill Client For Closest Number Of Accounts Assigned To License
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 30px;"|✔ Define Day Of Month To Synchronize Accounts Number For Billing
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 30px;"|✔ Adjust Number Of Accounts To Start Billing
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 30px;"|✔ Allow Creating Multiple Licenses For Single IP Address
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 30px;"|✔ Disable Client IP Address Change Option
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 30px;"|✔ Sell Licenses As Products Or Product Addons
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 30px;"|✔ View Active And Expired Licenses In Dedicated Addon Module
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 30px;"|✔ Enable Pricing Adjustment For Licenses With Extended Lifecycle Support (ELS)
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 30px;"|✔ Define Fee Factor For ELS Price Margin
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 30px;"|✔ Customize Module Language Files With "Translations" Tool
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 30px;"|✔ View And Manage Logs
 +
|}
 +
{|
 +
|style="padding: 0px 0px 10px 30px;"|✔ Run API Connection Test
 +
|}
 +
 
 +
*'''Client Area Features:'''
 +
{|
 +
|style="padding: 10px 0px 0px 30px;"|✔ Order License
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 30px;"|✔ View License Details
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 30px;"|✔ View Number Of Accounts Assigned To License
 +
|}
 +
{|
 +
|style="padding: 0px 0px 10px 30px;"|✔ Change IP Address Assigned To License
 +
|}
 +
 
 +
*'''Configurable Options:'''
 +
{|
 +
|style="padding: 10px 0px 10px 30px;"|✔ Billing For The Number Of Accounts
 +
|}
 +
 
 +
*'''General Info:'''
 +
{|
 +
|style="padding: 10px 0px 0px 30px;"|✔ Multi-Language Support With Custom Translations Tool
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 30px;"|✔ Integrated With [https://www.modulesgarden.com/products/whmcs/product_linker Product Linker For WHMCS] - Resell Licenses In Product Bundles
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 30px;"|✔ Integrated With [https://www.modulesgarden.com/products/whmcs/server-allocator Server Allocator For WHMCS] - Automatic Assignment Of Most Suitable Servers To Products
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 30px;"|✔ Supports PHP 8.2 Back To PHP 8.1
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 30px;"|✔ Supports WHMCS Product Addons
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 30px;"|✔ Supports WHMCS Themes "Six", "Twenty-One" And "Lagom WHMCS Client Theme"
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 30px;"|✔ Supports WHMCS V8.11 Back To WHMCS V8.8
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 30px;"|✔ Requires ionCube Loader V13 Or Later
 +
|}
 +
{|
 +
|style="padding: 0px 0px 30px 30px;"|✔ Easy [https://www.docs.modulesgarden.com/How_To_Upgrade_WHMCS_Module Module Upgrade] To [https://www.modulesgarden.com/products/whmcs/cpanel-manage2#open-source-version Open Source Version]
 
|}
 
|}
  
 
=Installation and Configuration=
 
=Installation and Configuration=
 
{|
 
{|
|style="padding: 10px 0px 0px 0px;"|'''In this tutorial we will show you how to quickly install and configure cPanel Manage2 For WHMCS.'''<br />
+
|style="padding: 10px 0px 30px 15px;"|'''In this tutorial we will show you how to quickly install and configure [https://www.modulesgarden.com/products/whmcs/cpanel-manage2 cPanel Manage2 For WHMCS.]'''<br />
 
We will guide you step by step through the whole installation process.
 
We will guide you step by step through the whole installation process.
 
|}
 
|}
 +
==Installation==
 
{|
 
{|
|style="padding: 20px 0px 20px 15px;"|'''1. Log in to your client area and download cPanel Manage2.'''
+
|style="padding: 10px 0px 20px 15px;"|'''1. Log in to our client area and download the module.'''
 
|}
 
|}
 
{|
 
{|
 
|style="padding: 0px 0px 20px 25px;"|[[File:CM1.png]]
 
|style="padding: 0px 0px 20px 25px;"|[[File:CM1.png]]
 
|}
 
|}
 +
<!--
 
{|
 
{|
|style="padding: 0px 0px 0px 15px;"|'''2. Upload and extract the module into the main WHMCS directory.'''
+
|style="padding: 0px 0px 20px 15px;"|'''2. In the downloaded file you will find a package with specified PHP versions, that is PHP 7.4 and later.'''
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 15px;"|Files in your WHMCS directory should look like this.
+
|style="padding: 0px 0px 20px 25px;"|[[File:PHP74_81.png]]
 
|}
 
|}
 +
-->
 
{|
 
{|
|style="padding: 0px 0px 20px 25px;"|[[File:CM2.png]]
+
|style="padding: 0px 0px 15px 15px;"|'''2. Extract the package and upload its content into the main WHMCS directory. <br/>
 +
The content of the package to upload should look like this.  
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 0px 15px;"|'''3. When you install cPanel Manage2 for the first time you have to rename '' 'license_RENAME.php' '' file.'''
+
|style="padding: 0px 0px 20px 25px;"|[[File:CM_2.png]]
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 15px;"|File is located at '' 'modules/servers/cpanelManagetwo/license_RENAME.php' ''. Rename it from '' 'license_RENAME.php' '' to '' 'license.php' ''.
+
|style="padding: 0px 0px 15px 15px;"|'''3. When you install cPanel Manage2 For WHMCS for the first time, you have to rename the '' 'license_RENAME.php' '' file.'''<br />
 +
The file is located in '' 'modules/servers/CpanelManage2/license_RENAME.php'. '' Rename it from '' 'license_RENAME.php' '' to '' 'license.php'. ''
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 25px;"|[[File:CM3.png]]
+
|style="padding: 0px 0px 20px 25px;"|[[File:CM_3.png]]
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 0px 15px;"|'''4. In order to configure your license key you have to edit a previously renamed '' 'license.php' '' file.'''
+
|style="padding: 0px 0px 15px 15px;"|'''4. In order to configure your license key, you have to edit the previously renamed '' 'license.php' '' file.'''<br />
 +
Enter your license key in between the quotation marks as presented on the screen below. You can find your license key in our client area → '' 'My Products'. ''
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 15px;"|Enter your licence key between quotation marks as presented on the following screen. You can find your license key at your client area → '' 'My Products' ''.
+
|style="padding: 0px 0px 20px 25px;"|[[File:CM_4.png]]
 
|}
 
|}
 +
 +
==Activation of Addon==
 
{|
 
{|
|style="padding: 0px 0px 20px 25px;"|[[File:CM4.png]]
+
|style="padding: 10px 0px 15px 15px;"|'''5. Now you have to activate the module in your WHMCS system.'''<br />
 +
Log in to your WHMCS admin area. Find '' 'System Settings' '' and open the '' 'Addon Modules'. ''<br/>
 +
Afterwards, find '' 'cPanel Extended Center' '' and press the '' 'Activate' '' button.
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 0px 15px;"|'''5. Good job! You have just successfully installed cPanel Manage2 For WHMCS! Now we will show you how to configure a new product.
+
|style="padding: 0px 0px 20px 25px;"|[[File:CM4_1_1.png]]
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 15px;"|To do so log in into your WHMCS. Now press '' 'Setup' '' → '' 'Products/Services' '' '' 'Servers' '' (or '' 'Setup' '' → '' 'Servers' '' in WHMCS v4.x). Afterwards press '' 'Add New Server' ''.
+
|style="padding: 0px 0px 15px 15px;"|'''6. In the next step, you need to permit access to this module.'''<br />
 +
To do so, click on the '' 'Configure' '' button, tick the desired admin roles and press '' 'Save Changes'. ''<br />
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 25px;"|[[File:CP8.png]]
+
|style="padding: 0px 0px 20px 25px;"|[[File:CM4_1_2.png]]
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 15px;"|'''6. Next enter your server name in '' 'Name' '' field, cPanel NOC area details: cPanel Manage2 API username in '' 'Username' '' field and your API password in '' 'Password' '' field.<br />
+
|style="padding: 0px 0px 30px 15px;"|'''7. Optionally, add a cron job as shown below (once-a-day interval is recommended).'''
Choose '' 'CpanelManagetwo' '' from a dropdown menu and press '' 'Save Changes' ''.'''<br />
+
php -q /your_whmcs/modules/servers/CpanelManage2/cron/cron.php add-margin-price
Here you can also provide other server details like nameservers or maximum number of accounts.
+
This cron will automatically update the price for Extended Lifecycle Support licenses.<br/>
 +
You will find a more detailed explanation along with a cron command personalized for your server in the addon's '' 'Settings' '' tab.<br/>
 +
The '' 'Fee Factor Multiplier' '' can also be set there.
 
|}
 
|}
 +
 +
==Configuration of Server==
 
{|
 
{|
|style="padding: 0px 0px 20px 25px;"|[[File:CM5.png]]
+
|style="padding: 10px 0px 15px 15px;"|'''8. Good job! You have just successfully installed cPanel Manage2 For WHMCS! Now, we will show you how to configure a new product.'''<br />
 +
To do so, log in to your WHMCS. Now, press '' 'System Settings' '' → '' 'Products/Services' '' → '' 'Servers'. ''<br />
 +
Afterward, press '' 'Add New Server'. ''
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 0px 15px;"|'''7. After you configure your server correctly, you will see a following screen.'''
+
|style="padding: 0px 0px 20px 25px;"|[[File:CM_4_1.png]]
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 15px;"|Now you need to create a new group for your server. For that purpose press '' 'Create New Group' ''.
+
|style="padding: 0px 0px 15px 15px;"|'''9. Next, enter your server '' 'Name' '' and  '' 'Hostname' '' or '' 'IP Address'.'' '''<br/> Choose '' 'cPanel Manage2' '' from the '' 'Type' '' dropdown menu, enter your '' 'Access Key ID' '' and '' 'Secret Access Key','' finally test the connection, and, if successful, press '' 'Save Changes'. ''<br/>
 +
 
 +
Alternatively, for Key-bsed authentication, you may '''enter your API token''' in the '' 'Access Hash' '' field ''('Key ID' and 'Access Key' fields may be then left empty)''. <br/>On information how to genereate the API token, please read the [[#Tips|Tips, point 3]] section of this documentation article.''
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 25px;"|[[File:CP10.png]]
+
|style="padding: 0px 0px 20px 25px;"|[[File:CM5.png]]
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 15px;"|'''8. Enter name, click on your previously created server, press '' 'Add' '' then press '' 'Save Changes' ''.'''
+
|style="padding: 0px 0px 15px 15px;"|'''10. If you configure your server correctly, you will see the following screen.'''<br />
 +
Now you need to create a new group for your server. For that purpose press '' 'Create New Group'. ''
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 25px;"|[[File:CP11.png]]
+
|style="padding: 0px 0px 20px 25px;"|[[File:CM5.6.png]]
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 0px 15px;"|'''9. In order to create and configure product click on '' 'Setup' '' '' 'Products/Services' '' → '' 'Products/Services' ''.'''
+
|style="padding: 0px 0px 20px 15px;"|'''11. Enter your group name, click on your previously created server, press '' 'Add' '' and then '' 'Save Changes'. '''''
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 15px;"|If you don't have a product group, click on '' 'Create a New Group' ''. If you do, simply go to step 11.
+
|style="padding: 0px 0px 30px 25px;"|[[File:CM_7.png]]
 
|}
 
|}
 +
 +
==Configuration of Product==
 
{|
 
{|
|style="padding: 0px 0px 20px 25px;"|[[File:CP12.png]]
+
|style="padding: 10px 0px 15px 15px;"|'''12. In order to create and configure a product, go to '' 'System Settings' '' → '' 'Products/Services' '' → '' 'Products/Services' ''.'''<br />
 +
Click on '' 'Create a New Group'. '' Otherwise, simply move on to step 11.
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 15px;"|'''10. Enter product group name and press '' 'Create Group' ''.'''
+
|style="padding: 0px 0px 20px 25px;"|[[File:CM_8.png]]
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 25px;"|[[File:CP13.png]]
+
|style="padding: 0px 0px 20px 15px;"|'''13. Enter your product group name and press '' 'Create Group'. '''''
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 0px 15px;"|'''11. When you have a product group, you can create your product and assign it with cPanel Manage2. If you already have a product, go to step 13.'''
+
|style="padding: 0px 0px 20px 25px;"|[[File:CM_9.png]]
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 15px;"|To create a product click on '' 'Create a New Product' ''.
+
|style="padding: 0px 0px 15px 15px;"|'''14. Once you have a product group, create a new product. If you already have a product, go to step 13.'''<br />
 +
To create a product click on '' 'Create a New Product' ''.
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 25px;"|[[File:CP14.png]]
+
|style="padding: 0px 0px 20px 25px;"|[[File:CM_10.png]]
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 15px;"|'''12. Afterwards choose your product type and product group from a dropdown menus, enter your product name and press '' 'Continue' ''.'''
+
|style="padding: 0px 0px 20px 15px;"|'''15. Afterward, choose your product type, product group and module from the dropdown menus, enter your product name and press '' 'Continue'. '''''
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 25px;"|[[File:CP15.png]]
+
|style="padding: 0px 0px 20px 25px;"|[[File:CM_11.png]]
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 15px;"|'''13. Now go to '' 'Module Settings' '' section, choose both '' 'CpanelManagetwo' '' and your previously created server group from a dropdown menus.'''<br />
+
|style="padding: 0px 0px 15px 15px;"|'''16. Now, go to the '' 'Module Settings' '' section, and choose your previously created server group from the dropdown menu.'''<br />
Next tick '' 'Force License' '', enter your Package ID and Group ID, then press '' 'Save Changes' ''.
+
* ''' Force License '''- allows you to force the addition of the license to the specified IP address
 +
* '''Disable Client IP Address Change''' - this option dictates whether users are able to change the IP address of their license independently.
 +
* '''Allow Multiple IP Licenses''' - if enabled, IP addresses can be assigned to multiple licenses.
 +
* ''' Group ''' - specifies the group to which the new license will belong. In previous versions of the module, you had to provide its ID.
 +
* ''' Package ''' - specifies the package that the new license will use. In previous versions of the module, you had to provide its ID.
 +
* ''' Expiration Reason ''' -  a parameter required for distributors.
 +
* ''' Billing Type ''' - specifies how clients can be billed for the number of accounts assigned to a single license.
 +
** ''' Default ''' - clients will be billed only for the purchased license, regardless of the number of accounts assigned to it. <br/>E.g. If a client bought a license and created 5 accounts that use this license, the charge amount will not change.
 +
** ''' Flexible ''' - Clients will be additionally billed for the exact number of accounts assigned to the license. <br/> E.g. If a client uses 5 accounts, but your configurable options bill clients for 1, 3, 7, or 10 accounts, then the client will be billed for 7 accounts, as that is the closest higher number to the already used 5 accounts.
 +
** ''' Tiered ''' - clients will be billed for the closest tier number of accounts assigned to the license. <br/> E.g. if a client uses '' '5 accounts' '', but you set up your configurable options to bill your clients only for '' '1', '3', '7' '' or '' '10' '' accounts, then your client will be billed for ''7 accounts'', because that is the closest highest number to the already used '' '5 accounts' ''.
 +
* ''' Billing Threshold Update Day ''' -  if you chose the '' 'Flexible' '' or '' 'Tiered' '' billing type, enter the day of the month when you want to synchronize the configurable options in WHMCS with the number of accounts assigned to the license. <br/>This synchronization will occur on the specified day during the execution of the main WHMCS cron.
 +
* ''' Billing Threshold''' - enter the number of license accounts after which you will start billing your clients. Leave this field empty if you want accounts billing to work as normal.<br/> E.g. If you set this to 100, and your client has 101 accounts, they will be charged for only 1 new account, while the first 100 will be ignored. If there are 105 license accounts, the client will be billed as if they had only 5 accounts, and so on.<br/> This number also affects the value set for a configurable option. It can be particularly useful when using the 'quantity' type, where you provide pricing based on a specified range.<br/> For example, if you want to charge clients for 101 to 110 new accounts, you can set quantity pricing as if it were from 1 to 10 for each new account.
 +
 
 +
'' '''Note:''' To use 'Billing Type' and other related options you will have to create an additional ''' 'accounts' ''' configurable option, which you can read about in '''point 16''' of this setup guide.''
 +
 
 +
Save Changes when you are ready.  
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 25px;"|[[File:CM6.png]]
+
|style="padding: 0px 0px 20px 25px;"|[[File:CM_12_2.png]]
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 15px;"|'''14. After modifying module settings press '' 'Custom Fields' '' which is on the right of the '' 'Module Settings' '' button.<br />
+
|style="padding: 0px 0px 15px 15px;"|'''17. Once the module settings are ready, move to '' 'Custom Fields'. '''''<br />
In the '' 'Field Name' '' enter IP, choose '' 'Text Box' '' from a field type dropdown menu, enter description and set up validation as:<br />
+
In '' 'Field Name' '' enter '' 'IP', '' choose '' 'Text Box' '' from the field type dropdown menu, enter a description, and set up validation as:<br />
  /\b(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)<br/ >\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\b/
+
  /\b(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\b/
 
|}
 
|}
 
{|
 
{|
Line 151: Line 278:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 25px;"|'''That's it. You have just successfully installed and configured cPanel Manage 2 For WHMCS!'''<br />  
+
|style="padding: 0px 0px 15px 15px;"|'''18. Finally, if you want to use the '' 'Billing Type'' ' option, you will have to create a new configurable option. '''''<br />
On the following screen you can see how the addon will look like for your customers.
+
First, go to '' 'System Settings' → 'Products/Services' → 'Configurable Options' '' and '' 'Create a New Group' '' with any custom name. <br/>
 +
Next, press the '' 'Add New Configurable Option' '' button.
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 30px 25px;"|[[File:CM8.png]]
+
|style="padding: 0px 0px 20px 25px;"|[[File:CM_13.png]]
 +
|}
 +
{|
 +
|style="padding: 0px 0px 15px 15px;"|A new window will open. Now, you have to create a new configurable option with the '''accounts''' variable name.<br />
 +
It is important to use that exact name, but you can put any friendly name you want next to it.<br/>
 +
Now, provide the number of accounts assigned to the license and the pricing you want to bill your clients. <br/>
 +
You may use the '' '''Dropdown''' '' or '' '''Quantity''' '' configurable option type.<br/> Save changes when ready.<br/>
 +
 
 +
'' '''Important: ''' Remember that using the 'Adjust Accounts Number' product setting will affect the values of configurable options set during synchronization with the number of accounts assigned to the license.<br/>
 +
 
 +
Please also refer to [https://docs.whmcs.com/Addons_and_Configurable_Options#Configurable_Options this article] to find more information about using configurable options in WHMCS.
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 25px;"|[[File:CM_14.png]]
 +
|}
 +
{|
 +
|style="padding: 0px 0px 15px 15px;"|After the creation of a new configurable option is done, remember to assign it to your cPanel Manage2 license product.<br/>
 +
You may also hide this billing option from your clients. Do not forget to save the changes.
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 25px;"|[[File:CM_15.png]]
 +
|}
 +
{|
 +
|style="padding: 0px 0px 15px 15px;"|'''That's it. You have just successfully installed and configured cPanel Manage2 For WHMCS!'''<br />
 +
This is how a correctly configured product looks in the client area.
 +
|}
 +
{|
 +
|style="padding: 0px 0px 30px 25px;"|[[File:CM_15_0_2.png]]
 +
|}
 +
 
 +
==Configuration of Product Addon==
 +
{|
 +
|style="padding: 10px 0px 15px 0px;"|'''This module can be also alternatively configured as to become a 'Product Addon' that can be bought additionally next to a given product.'''<br />
 +
More information concerning 'Product Addons' in WHMCS can be found [https://docs.whmcs.com/Product_Addons here].
 +
In order to configure your addon follow the steps explained below.
 +
|}
 +
{|
 +
|style="padding: 0px 0px 15px 15px;"|'''1. Proceed to '' 'System Settings' '' → '' 'Products/Services' '' → '' 'Product Addons' '' → '' 'Add New' '' . '''''<br />
 +
Enter a name and desired description. Then move to the '' 'Module Settings' '' tab.
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 25px;"|[[File:CM_16.png]]
 +
|}
 +
{|
 +
|style="padding: 0px 0px 15px 15px;"|'''2. Now, as your '' 'Module Name' ''choose your new addon and select your previously created server group from the '' 'Server Group' '' dropdown menu. '''<br />
 +
Then configure the addon in a similar way as the product.<br/>
 +
 
 +
'' '''Important:''' For now billing options for an additional number of accounts for licenses are only available for products, not for product addons!''
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 25px;"|[[File:CM _17_2.png]]
 +
|}
 +
{|
 +
|style="padding: 0px 0px 15px 15px;"|'''3. In the next step of configuration, move to '' 'Custom Fields'. '' '''<br />
 +
In '' 'Field Name' '' enter '' 'IP' '', choose '' 'Text Box' '' from the '' 'Field Type' '' dropdown menu, enter a description and set up the following validation:<br />
 +
 
 +
<nowiki>/\b(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\b/</nowiki>
 +
The validation is necessary to prevent users from providing IP addresses in the wrong format. <br/>
 +
'''Important!''' It is a single line command, do not split it into two lines.<br />
 +
Mark the '' 'Show on Order Form' '' checkbox and press the '' 'Save Changes' '' button.
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 25px;"|[[File:CM _18.png]]
 +
|}
 +
{|
 +
|style="padding: 0px 0px 15px 15px;"|'''You have just successfully configured a new cPanel Manage2 For WHMCS addon. It can be assigned to other products of your choice.''' <br/>
 +
That is how an assigned and active cPanel Manage2 addon product might look in the client area.
 +
|}
 +
{|
 +
|style="padding: 0px 0px 30px 25px;"|[[File:CM_21_2.png]]
 +
|}
 +
 
 +
=Management=
 +
{|
 +
|style="padding: 10px 0px 15px 15px;"|From the admin area you can manage your clients' cPanel Manage2 products as well as view license details.<br/>Additionally, you can also change the license's IP address.
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 25px;"|[[File:CM_19_2.png]]
 +
|}
 +
{|
 +
|style="padding: 0px 0px 15px 15px;"|If you move to the client area page, you will see the same data on the license.
 +
The license IP address can be changed here as well.
 +
|}
 +
{|
 +
|style="padding: 0px 0px 30px 25px;"|[[File:CM_20_2.png]]
 +
|}
 +
==Active Licenses==
 +
{|
 +
|style="padding: 10px 0px 15px 15px;"|You can access the addon module under '' 'Addons' '' → '' 'cPanel Manage2'.''<br/>
 +
The '' 'Active Licenses' '' tab lists all of your active licenses along with their:
 +
* ID
 +
* Assigned IP Address
 +
* Package
 +
* Extended Lifecycle Support Status
 +
* Service
 +
* License Status
 +
* License Start Date
 +
You may find even more details by clicking on the '' 'Show Details' '' button.
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 25px;"|[[File:CM_20_3.png]]
 +
|}
 +
{|
 +
|style="padding: 0px 0px 15px 15px;"|The additional details, not included in the previous tab are:
 +
* Version
 +
* Hostname
 +
* Operating System
 +
* Operating System Version
 +
* Distribution
 +
* Environment Type
 +
* Package ID
 +
* Accounts Number
 +
|}
 +
{|
 +
|style="padding: 0px 0px 30px 25px;"|[[File:CM_20_4.png]]
 +
|}
 +
 
 +
==Expired Licenses==
 +
{|
 +
|style="padding: 10px 0px 15px 15px;"|The '' 'Expired Licenses' '' tab features the same information as its '' 'Active' '' counterpart, except for the licenses that are already expired:
 +
* ID
 +
* Assigned IP Address
 +
* Package
 +
* Extended Lifecycle Support Status
 +
* Service
 +
* License Status
 +
* License Start Date
 +
You may find even more details by clicking on the '' 'Show Details' '' button.
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 25px;"|[[File:CM_20_5.png]]
 +
|}
 +
{|
 +
|style="padding: 0px 0px 15px 15px;"|The additional details, not included in the previous tab are:
 +
* Version
 +
* Hostname
 +
* Operating System
 +
* Operating System Version
 +
* Distribution
 +
* Environment Type
 +
* Package ID
 +
* Accounts Number
 +
|}
 +
{|
 +
|style="padding: 0px 0px 30px 25px;"|[[File:CM_20_6.png]]
 +
|}
 +
 
 +
==Settings==
 +
{|
 +
|style="padding: 10px 0px 15px 15px;"|The '' 'Settings' '' tab allows you to configure how the "Extended Lifecycle Support" (ELS) fee is applied by cPanel to some licenses.<br/>
 +
The Extended Lifecycle Support is a cPanel program that extends support for some operating systems for an additional fee.<br/> This section includes a major adjustment for the additional multiplier applied to the ELS fee.<br/>
 +
 
 +
It also features a cron command that will automatically update the prices of licenses by the ELS fee and the multiplayer.<br/>
 +
We recommend running the cron task once-a-day. <br/>
 +
  php -q /your_whmcs/modules/servers/CpanelManage2/cron/cron.php add-margin-price   
 +
*'''Fee Factor for Price Margin''' - Enabling this option will cause the ELS fee to be multiplied by the '' 'Fee Factor Multiplayer' '' from the perspective of the client.<br/> If left disabled, the ELS fee will be applied as is.
 +
*'''Fee Factor Multiplier''' - The ELS fee can be adjusted for the client by entering a numeric value here, see the explanation below for more details.
 +
**Default Multiplier (1.00): If set to 1.00, the ELS fee remains unchanged. This means the fee added to the license is exactly as specified by cPanel.
 +
**Increase Multiplier (> 1.00): Setting the multiplier above 1.00 increases the ELS fee. For example, setting it to 2.00 doubles the fee, turning a 0.2 ELS fee into 0.4.
 +
**Decrease Multiplier (< 1.00): Setting the multiplier below 1.00 decreases the ELS fee. For example, setting it to 0.50 halves the fee, reducing a 0.2 ELS fee to 0.1.
 +
**Zero Multiplier (0): Setting the multiplier to 0 eliminates the additional ELS fee, meaning the customer will not be charged any extra for the ELS.<br/>However, this can result in losses as you will still incur the ELS cost from cPanel.<br/><br/>
 +
'''Example Calculations:'''
 +
*License price: $10
 +
*ELS fee: 0.2 (20%)
 +
{| class="wikitable" style="margin-left: 10px; margin-right: auto; text-align:center;" "padding: 0px 0px 0px 50px;"
 +
! Multiplier !! Calculation !! Final License Cost on Invoice
 +
|-
 +
| 0.00 || $10.00 + ($10 * 0.2 * 0.00) = $10.00 + $0.00 || $10.00
 +
|-
 +
| 0.50 || $10.00 + ($10 * 0.2 * 0.50) = $10.00 + $1.00 || $11.00
 +
|-
 +
| 1.00 || $10.00 + ($10 * 0.2 * 1.00) = $10.00 + $2.00 || $12.00
 +
|-
 +
| 1.50 || $10.00 + ($10 * 0.2 * 1.50) = $10.00 + $3.00 || $13.00
 +
|-
 +
| 2.00 || $10.00 + ($10 * 0.2 * 2.00) = $10.00 + $4.00 || $14.00
 +
|}
 +
'''''Note:''' The above examples do not include any additional taxes.''
 +
|}
 +
{|
 +
|style="padding: 0px 0px 30px 25px;"|[[File:CM_22.png]]
 +
|}
 +
 
 +
==[https://www.docs.modulesgarden.com/Translations_Tool Translations]==
 +
{|
 +
|style="padding: 10px 0px 15px 15px;"|Customizing language files is now extremely easy with the '' "Translations" '' tool that is now available directly in the addon.<br.> Its user-friendly design makes managing various language file tweaks a smooth and efficient process. <br/>
 +
Prepare translations for the original English files with this handy built-in tool. For specific instructions on how to use this tool please refer to its dedicated article, you will find it [https://www.docs.modulesgarden.com/Translations_Tool here].
 +
|}
 +
{|
 +
|style="padding: 0px 0px 30px 25px;"|[[File:CM_T.png]]
 +
|}
 +
 
 +
==Logs==
 +
{|
 +
|style="padding: 10px 0px 20px 15px;"|The '' 'Logs' '' page stores the history of actions performed by the module.<br/>
 +
Use the action buttons to see details or delete each log entry. Multiple logs can be deleted at once by utilizing the mass selection function.
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 25px;"|[[File:CM_23.png]]
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 15px;"|Furthermore, the logs feature additional actions. Changing the logs' settings, exporting the logs to a '' '.csv' '' file, and a way to delete specific log types.
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 25px;"|[[File:CM_24.png]]
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 15px;"|In the settings you can specify which log types should be recorded, and whether they should be deleted automatically after a specific time.
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 25px;"|[[File:CM_25.png]]
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 15px;"|While exporting you will pick a time frame and the log types to export.
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 25px;"|[[File:CM_26.png]]
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 15px;"|Here you can decide which log types to delete, you can also specify how old the logs have to be to qualify for deletion. Leave the first field empty to delete all logs.
 +
|}
 +
{|
 +
|style="padding: 0px 0px 30px 25px;"|[[File:CM_27.png]]
 
|}
 
|}
  
 
=Tips=
 
=Tips=
 
{|
 
{|
|style="padding: 10px 0px 0px 15px;"|1. You have to unlock your WHMCS System IP in the cPanel Manage2 to access the API.'''
+
|style="padding: 10px 0px 10px 15px;"|'''1. You have to unlock your WHMCS System IP in the cPanel Manage2 to access the API.'''
 
|}
 
|}
 
{|
 
{|
|style="padding: 10px 0px 0px 15px;"|2. Group ID — The ID of the group to which the new license will belong.  
+
|style="padding: 0px 0px 5px 15px;"|2. If you already have licenses in cPanel Manage2 and you would like to import them to WHMCS, you can match them with your products. <br/>
 +
 
 +
All you have to do is add/order a new WHMCS product to your customer without processing the '' 'Create' '' module command. <br/> Then, find the added product in the '' 'Product/Services' '' tab of your customer profile and look for the custom IP field which you created in ''point 15.'' of this manual. <br/> Next, enter the IP of the license you want to link, change the product status to '' 'active' '' and save settings.
 +
 
 +
'' '''Note:''' Be aware that the product's module settings in your WHMCS (point 14. of this manual) should correspond to the specifications of the linked license.
 
|}
 
|}
 
{|
 
{|
|style="padding: 10px 0px 0px 15px;"|3. Package ID - The ID of the package that the new license will use.  
+
|style="padding: 0px 0px 15px 15px;"|3. The module supports two server connection setup options, these are:
 +
'''Basic Authentication''' method: with Manage2 username and password usage.<br/>
 +
'''[https://docs.cpanel.net/manage2/knowledge-base/manage2-authentication-methods/ Key-based Authentication]''' method where '''API token''' is used to set up connection with the server.<br/> Read below on how to generate the API token:<br/>
 +
* '''Add a Pickup Passphrase''' in Manage2 panel with the following privileges: <br/> ''"Add a new license", "Expire a License", "Extend One Time License Updates", "List Active licenses", "Manage Authkeys", "Modify/Transfer a license", "Reactivate a license", "Search for a license".'' <br/> Make sure your newly added '''passphrase is active''', this will be used in the next steps.
 +
* On the server where WHMCS is installed, execute the following CURL command to generate a key ''(it must be associated to an IP address):'' <br/>  <pre>curl -G "https://manage2.cpanel.net/XMLregisterAuth.cgi" --data-urlencode "output=json" --data-urlencode "[email protected]" --data-urlencode "pickup=your_passphrase" --data-urlencode "service=Your Service Name"</pre>  Include the following parameters in the command:
 +
** '''[email protected]''' - your actual email address<br/>
 +
** '''pickup=your_passphrase''' -  the passphrase you added in the panel<br/>
 +
** '''service=Your Service Name''' -  the appropriate company name entered in ''Edit User → Account Settings → Company'' <br/>
 +
 
 +
* After executing the command, you will receive a response containing the key, for example: ''"key":"aU1s2TKicGJtkabfjsiKHO2T"''
 +
* Copy the key from the response and paste it into the '''Access Hash'' field in your WHMCS system.
 
|}
 
|}
 
{|
 
{|
|style="padding: 10px 0px 30px 15px;"|4. Force License -  Specifies whether the creation of the new account should be forced.  
+
|style="padding: 0px 0px 30px 25px;"|[[File:CM_28.png]]
 +
|}
 +
 
 +
=Update Instructions=
 +
{|
 +
|style="padding: 10px 0px 5px 15px;"|An essential guidance through the process of updating the module is offered '''[https://www.docs.modulesgarden.com/How_To_Update_WHMCS_Module here]'''.<br/>
 +
Ensure successful completion of the module update by carefully following each step, thereby preventing data loss or any unforeseen issues.<br/> Additionally, you will find a current list of supplementary actions necessary for a smooth update process there.
 +
|}
 +
{|
 +
|style="padding: 0px 0px 30px 15px;"|1. Data '''migration to version 2.0.0 is handled automatically''' on module addon activation. <br/>
 +
 
 +
* '''Download the latest version of the module''' from our [https://www.modulesgarden.com/client-area/products client area].
 +
* '''Remove the old module's files''' from the WHMCS root directory.
 +
* '''Note:''' The module folder name has been changed from '''cpanelManagetwo''' to '''CpanelManage2'''. Ensure that the old folder 'cpanelManagetwo' is deleted completely.
 +
* '''Upload and extract the new files''' into your WHMCS root directory.<br/>
 +
* '''Optional:''' If you wish to manually initiate the migration, you can do so by using the following cron command:
 +
php -q /your_whmcs/modules/servers/CpanelManage2/cron/cron.php migrate-configuration
 +
|}
 +
 
 +
=Upgrade Guide=
 +
{|
 +
|style="padding: 10px 0px 30px 15px;"|Seeking a solution that offers greater flexibility, customization tailored to your precise needs, and unrestricted availability?<br/> There is an option that not only proves to be cost-effective in the long run but also includes prioritized support services, making it a truly valuable investment.<br/>
 +
 
 +
Opt for the [https://www.modulesgarden.com/products/whmcs/cpanel-manage2#open-source-version Open Source version] of your cPanel Manage2 For WHMCS module to unlock these benefits.<br/> Simply click on either the '''Get Source Code''' or '''Upgrade To Lifetime''' button found on the product's page in our client area to complete the one-step upgrade process, with a '''dedicated discount''' already applied.<br/>
 +
 
 +
Follow a [https://www.docs.modulesgarden.com/How_To_Upgrade_WHMCS_Module comprehensive guide] covering the transition process, the advantages it brings, and step-by-step instructions on what to do next after the order has been successfully finalized.  
 
|}
 
|}
  
 
=Common Problems=
 
=Common Problems=
 
{|
 
{|
|style="padding: 10px 0px 0px 15px;"|1. If after install, you will get an ionCube encoder problem (wrong version), please open a support ticket.<br />
+
|style="padding: 10px 0px 10px 15px;"|'''1. If you have problems with connection, check whether your SELinux or firewall does not block ports.'''
We will provide you with different version of the module encrypted with the older version of ionCube.
+
 
|}
 
|}
 
{|
 
{|
|style="padding: 5px 0px 30px 15px;"|2. When you have problems with connection, check whether your SELinux or firewall is not blocking ports.
+
|style="padding: 0px 0px 30px 15px;"|2. Make sure that your custom field is named '' 'IP'. '' In any other case, the module will not work properly.
 
|}
 
|}

Latest revision as of 10:51, 19 August 2024

Contents

[edit] About cPanel Manage2 For WHMCS

cPanel Manage2 For WHMCS is a module created to introduce and automate the provisioning of cPanel licenses in your WHMCS.

The module will enable your clients to view detailed information about their licenses in your WHMCS client area as well as assign IP addresses to their licenses.

Check out also our Inactive Account Manager For cPanel module and reduce your running cPanel costs!

  • Admin Area Features:
✔ Create/Suspend/Unsuspend/Terminate License
✔ Change License Package
✔ Change IP Address Assigned To License
✔ View License Details
✔ Toggle Automatic License Assignment To Specified IP Address
✔ Define Package, Group And Expiration Reason
✔ Choose Billing Type:
✔ Default - Bill Client Only For License Regardless Of Accounts Number
✔ Flexible - Bill Client For Exact Number Of Accounts Assigned To License
✔ Tiered - Bill Client For Closest Number Of Accounts Assigned To License
✔ Define Day Of Month To Synchronize Accounts Number For Billing
✔ Adjust Number Of Accounts To Start Billing
✔ Allow Creating Multiple Licenses For Single IP Address
✔ Disable Client IP Address Change Option
✔ Sell Licenses As Products Or Product Addons
✔ View Active And Expired Licenses In Dedicated Addon Module
✔ Enable Pricing Adjustment For Licenses With Extended Lifecycle Support (ELS)
✔ Define Fee Factor For ELS Price Margin
✔ Customize Module Language Files With "Translations" Tool
✔ View And Manage Logs
✔ Run API Connection Test
  • Client Area Features:
✔ Order License
✔ View License Details
✔ View Number Of Accounts Assigned To License
✔ Change IP Address Assigned To License
  • Configurable Options:
✔ Billing For The Number Of Accounts
  • General Info:
✔ Multi-Language Support With Custom Translations Tool
✔ Integrated With Product Linker For WHMCS - Resell Licenses In Product Bundles
✔ Integrated With Server Allocator For WHMCS - Automatic Assignment Of Most Suitable Servers To Products
✔ Supports PHP 8.2 Back To PHP 8.1
✔ Supports WHMCS Product Addons
✔ Supports WHMCS Themes "Six", "Twenty-One" And "Lagom WHMCS Client Theme"
✔ Supports WHMCS V8.11 Back To WHMCS V8.8
✔ Requires ionCube Loader V13 Or Later
✔ Easy Module Upgrade To Open Source Version

[edit] Installation and Configuration

In this tutorial we will show you how to quickly install and configure cPanel Manage2 For WHMCS.

We will guide you step by step through the whole installation process.

[edit] Installation

1. Log in to our client area and download the module.
CM1.png
2. Extract the package and upload its content into the main WHMCS directory.

The content of the package to upload should look like this.

CM 2.png
3. When you install cPanel Manage2 For WHMCS for the first time, you have to rename the 'license_RENAME.php' file.

The file is located in 'modules/servers/CpanelManage2/license_RENAME.php'. Rename it from 'license_RENAME.php' to 'license.php'.

CM 3.png
4. In order to configure your license key, you have to edit the previously renamed 'license.php' file.

Enter your license key in between the quotation marks as presented on the screen below. You can find your license key in our client area → 'My Products'.

CM 4.png

[edit] Activation of Addon

5. Now you have to activate the module in your WHMCS system.

Log in to your WHMCS admin area. Find 'System Settings' and open the 'Addon Modules'.
Afterwards, find 'cPanel Extended Center' and press the 'Activate' button.

CM4 1 1.png
6. In the next step, you need to permit access to this module.

To do so, click on the 'Configure' button, tick the desired admin roles and press 'Save Changes'.

CM4 1 2.png
7. Optionally, add a cron job as shown below (once-a-day interval is recommended).
php -q /your_whmcs/modules/servers/CpanelManage2/cron/cron.php add-margin-price

This cron will automatically update the price for Extended Lifecycle Support licenses.
You will find a more detailed explanation along with a cron command personalized for your server in the addon's 'Settings' tab.
The 'Fee Factor Multiplier' can also be set there.

[edit] Configuration of Server

8. Good job! You have just successfully installed cPanel Manage2 For WHMCS! Now, we will show you how to configure a new product.

To do so, log in to your WHMCS. Now, press 'System Settings' 'Products/Services' 'Servers'.
Afterward, press 'Add New Server'.

CM 4 1.png
9. Next, enter your server 'Name' and 'Hostname' or 'IP Address'.
Choose 'cPanel Manage2' from the 'Type' dropdown menu, enter your 'Access Key ID' and 'Secret Access Key', finally test the connection, and, if successful, press 'Save Changes'.

Alternatively, for Key-bsed authentication, you may enter your API token in the 'Access Hash' field ('Key ID' and 'Access Key' fields may be then left empty).
On information how to genereate the API token, please read the Tips, point 3 section of this documentation article.

CM5.png
10. If you configure your server correctly, you will see the following screen.

Now you need to create a new group for your server. For that purpose press 'Create New Group'.

CM5.6.png
11. Enter your group name, click on your previously created server, press 'Add' and then 'Save Changes'.
CM 7.png

[edit] Configuration of Product

12. In order to create and configure a product, go to 'System Settings' 'Products/Services' 'Products/Services' .

Click on 'Create a New Group'. Otherwise, simply move on to step 11.

CM 8.png
13. Enter your product group name and press 'Create Group'.
CM 9.png
14. Once you have a product group, create a new product. If you already have a product, go to step 13.

To create a product click on 'Create a New Product' .

CM 10.png
15. Afterward, choose your product type, product group and module from the dropdown menus, enter your product name and press 'Continue'.
CM 11.png
16. Now, go to the 'Module Settings' section, and choose your previously created server group from the dropdown menu.
  • Force License - allows you to force the addition of the license to the specified IP address
  • Disable Client IP Address Change - this option dictates whether users are able to change the IP address of their license independently.
  • Allow Multiple IP Licenses - if enabled, IP addresses can be assigned to multiple licenses.
  • Group - specifies the group to which the new license will belong. In previous versions of the module, you had to provide its ID.
  • Package - specifies the package that the new license will use. In previous versions of the module, you had to provide its ID.
  • Expiration Reason - a parameter required for distributors.
  • Billing Type - specifies how clients can be billed for the number of accounts assigned to a single license.
    • Default - clients will be billed only for the purchased license, regardless of the number of accounts assigned to it.
      E.g. If a client bought a license and created 5 accounts that use this license, the charge amount will not change.
    • Flexible - Clients will be additionally billed for the exact number of accounts assigned to the license.
      E.g. If a client uses 5 accounts, but your configurable options bill clients for 1, 3, 7, or 10 accounts, then the client will be billed for 7 accounts, as that is the closest higher number to the already used 5 accounts.
    • Tiered - clients will be billed for the closest tier number of accounts assigned to the license.
      E.g. if a client uses '5 accounts' , but you set up your configurable options to bill your clients only for '1', '3', '7' or '10' accounts, then your client will be billed for 7 accounts, because that is the closest highest number to the already used '5 accounts' .
  • Billing Threshold Update Day - if you chose the 'Flexible' or 'Tiered' billing type, enter the day of the month when you want to synchronize the configurable options in WHMCS with the number of accounts assigned to the license.
    This synchronization will occur on the specified day during the execution of the main WHMCS cron.
  • Billing Threshold - enter the number of license accounts after which you will start billing your clients. Leave this field empty if you want accounts billing to work as normal.
    E.g. If you set this to 100, and your client has 101 accounts, they will be charged for only 1 new account, while the first 100 will be ignored. If there are 105 license accounts, the client will be billed as if they had only 5 accounts, and so on.
    This number also affects the value set for a configurable option. It can be particularly useful when using the 'quantity' type, where you provide pricing based on a specified range.
    For example, if you want to charge clients for 101 to 110 new accounts, you can set quantity pricing as if it were from 1 to 10 for each new account.

Note: To use 'Billing Type' and other related options you will have to create an additional 'accounts' configurable option, which you can read about in point 16 of this setup guide.

Save Changes when you are ready.

CM 12 2.png
17. Once the module settings are ready, move to 'Custom Fields'.

In 'Field Name' enter 'IP', choose 'Text Box' from the field type dropdown menu, enter a description, and set up validation as:

/\b(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\b/
CM7.png
18. Finally, if you want to use the 'Billing Type ' option, you will have to create a new configurable option.

First, go to 'System Settings' → 'Products/Services' → 'Configurable Options' and 'Create a New Group' with any custom name.
Next, press the 'Add New Configurable Option' button.

CM 13.png
A new window will open. Now, you have to create a new configurable option with the accounts variable name.

It is important to use that exact name, but you can put any friendly name you want next to it.
Now, provide the number of accounts assigned to the license and the pricing you want to bill your clients.
You may use the Dropdown or Quantity configurable option type.
Save changes when ready.

Important: Remember that using the 'Adjust Accounts Number' product setting will affect the values of configurable options set during synchronization with the number of accounts assigned to the license.

Please also refer to this article to find more information about using configurable options in WHMCS.

CM 14.png
After the creation of a new configurable option is done, remember to assign it to your cPanel Manage2 license product.

You may also hide this billing option from your clients. Do not forget to save the changes.

CM 15.png
That's it. You have just successfully installed and configured cPanel Manage2 For WHMCS!

This is how a correctly configured product looks in the client area.

CM 15 0 2.png

[edit] Configuration of Product Addon

This module can be also alternatively configured as to become a 'Product Addon' that can be bought additionally next to a given product.

More information concerning 'Product Addons' in WHMCS can be found here. In order to configure your addon follow the steps explained below.

1. Proceed to 'System Settings' 'Products/Services' 'Product Addons' 'Add New' .

Enter a name and desired description. Then move to the 'Module Settings' tab.

CM 16.png
2. Now, as your 'Module Name' choose your new addon and select your previously created server group from the 'Server Group' dropdown menu.

Then configure the addon in a similar way as the product.

Important: For now billing options for an additional number of accounts for licenses are only available for products, not for product addons!

CM 17 2.png
3. In the next step of configuration, move to 'Custom Fields'.

In 'Field Name' enter 'IP' , choose 'Text Box' from the 'Field Type' dropdown menu, enter a description and set up the following validation:

/\b(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\b/

The validation is necessary to prevent users from providing IP addresses in the wrong format.
Important! It is a single line command, do not split it into two lines.
Mark the 'Show on Order Form' checkbox and press the 'Save Changes' button.

CM 18.png
You have just successfully configured a new cPanel Manage2 For WHMCS addon. It can be assigned to other products of your choice.

That is how an assigned and active cPanel Manage2 addon product might look in the client area.

CM 21 2.png

[edit] Management

From the admin area you can manage your clients' cPanel Manage2 products as well as view license details.
Additionally, you can also change the license's IP address.
CM 19 2.png
If you move to the client area page, you will see the same data on the license.

The license IP address can be changed here as well.

CM 20 2.png

[edit] Active Licenses

You can access the addon module under 'Addons' 'cPanel Manage2'.

The 'Active Licenses' tab lists all of your active licenses along with their:

  • ID
  • Assigned IP Address
  • Package
  • Extended Lifecycle Support Status
  • Service
  • License Status
  • License Start Date

You may find even more details by clicking on the 'Show Details' button.

CM 20 3.png
The additional details, not included in the previous tab are:
  • Version
  • Hostname
  • Operating System
  • Operating System Version
  • Distribution
  • Environment Type
  • Package ID
  • Accounts Number
CM 20 4.png

[edit] Expired Licenses

The 'Expired Licenses' tab features the same information as its 'Active' counterpart, except for the licenses that are already expired:
  • ID
  • Assigned IP Address
  • Package
  • Extended Lifecycle Support Status
  • Service
  • License Status
  • License Start Date

You may find even more details by clicking on the 'Show Details' button.

CM 20 5.png
The additional details, not included in the previous tab are:
  • Version
  • Hostname
  • Operating System
  • Operating System Version
  • Distribution
  • Environment Type
  • Package ID
  • Accounts Number
CM 20 6.png

[edit] Settings

The 'Settings' tab allows you to configure how the "Extended Lifecycle Support" (ELS) fee is applied by cPanel to some licenses.

The Extended Lifecycle Support is a cPanel program that extends support for some operating systems for an additional fee.
This section includes a major adjustment for the additional multiplier applied to the ELS fee.

It also features a cron command that will automatically update the prices of licenses by the ELS fee and the multiplayer.
We recommend running the cron task once-a-day.

 php -q /your_whmcs/modules/servers/CpanelManage2/cron/cron.php add-margin-price    
  • Fee Factor for Price Margin - Enabling this option will cause the ELS fee to be multiplied by the 'Fee Factor Multiplayer' from the perspective of the client.
    If left disabled, the ELS fee will be applied as is.
  • Fee Factor Multiplier - The ELS fee can be adjusted for the client by entering a numeric value here, see the explanation below for more details.
    • Default Multiplier (1.00): If set to 1.00, the ELS fee remains unchanged. This means the fee added to the license is exactly as specified by cPanel.
    • Increase Multiplier (> 1.00): Setting the multiplier above 1.00 increases the ELS fee. For example, setting it to 2.00 doubles the fee, turning a 0.2 ELS fee into 0.4.
    • Decrease Multiplier (< 1.00): Setting the multiplier below 1.00 decreases the ELS fee. For example, setting it to 0.50 halves the fee, reducing a 0.2 ELS fee to 0.1.
    • Zero Multiplier (0): Setting the multiplier to 0 eliminates the additional ELS fee, meaning the customer will not be charged any extra for the ELS.
      However, this can result in losses as you will still incur the ELS cost from cPanel.

Example Calculations:

  • License price: $10
  • ELS fee: 0.2 (20%)
Multiplier Calculation Final License Cost on Invoice
0.00 $10.00 + ($10 * 0.2 * 0.00) = $10.00 + $0.00 $10.00
0.50 $10.00 + ($10 * 0.2 * 0.50) = $10.00 + $1.00 $11.00
1.00 $10.00 + ($10 * 0.2 * 1.00) = $10.00 + $2.00 $12.00
1.50 $10.00 + ($10 * 0.2 * 1.50) = $10.00 + $3.00 $13.00
2.00 $10.00 + ($10 * 0.2 * 2.00) = $10.00 + $4.00 $14.00

Note: The above examples do not include any additional taxes.

CM 22.png

[edit] Translations

Customizing language files is now extremely easy with the "Translations" tool that is now available directly in the addon.
Its user-friendly design makes managing various language file tweaks a smooth and efficient process.

Prepare translations for the original English files with this handy built-in tool. For specific instructions on how to use this tool please refer to its dedicated article, you will find it here.

CM T.png

[edit] Logs

The 'Logs' page stores the history of actions performed by the module.

Use the action buttons to see details or delete each log entry. Multiple logs can be deleted at once by utilizing the mass selection function.

CM 23.png
Furthermore, the logs feature additional actions. Changing the logs' settings, exporting the logs to a '.csv' file, and a way to delete specific log types.
CM 24.png
In the settings you can specify which log types should be recorded, and whether they should be deleted automatically after a specific time.
CM 25.png
While exporting you will pick a time frame and the log types to export.
CM 26.png
Here you can decide which log types to delete, you can also specify how old the logs have to be to qualify for deletion. Leave the first field empty to delete all logs.
CM 27.png

[edit] Tips

1. You have to unlock your WHMCS System IP in the cPanel Manage2 to access the API.
2. If you already have licenses in cPanel Manage2 and you would like to import them to WHMCS, you can match them with your products.

All you have to do is add/order a new WHMCS product to your customer without processing the 'Create' module command.
Then, find the added product in the 'Product/Services' tab of your customer profile and look for the custom IP field which you created in point 15. of this manual.
Next, enter the IP of the license you want to link, change the product status to 'active' and save settings.

Note: Be aware that the product's module settings in your WHMCS (point 14. of this manual) should correspond to the specifications of the linked license.

3. The module supports two server connection setup options, these are:

Basic Authentication method: with Manage2 username and password usage.
Key-based Authentication method where API token is used to set up connection with the server.
Read below on how to generate the API token:

  • Add a Pickup Passphrase in Manage2 panel with the following privileges:
    "Add a new license", "Expire a License", "Extend One Time License Updates", "List Active licenses", "Manage Authkeys", "Modify/Transfer a license", "Reactivate a license", "Search for a license".
    Make sure your newly added passphrase is active, this will be used in the next steps.
  • On the server where WHMCS is installed, execute the following CURL command to generate a key (it must be associated to an IP address):
    curl -G "https://manage2.cpanel.net/XMLregisterAuth.cgi" --data-urlencode "output=json" --data-urlencode "[email protected]" --data-urlencode "pickup=your_passphrase" --data-urlencode "service=Your Service Name"
    Include the following parameters in the command:
    • [email protected] - your actual email address
    • pickup=your_passphrase - the passphrase you added in the panel
    • service=Your Service Name - the appropriate company name entered in Edit User → Account Settings → Company
  • After executing the command, you will receive a response containing the key, for example: "key":"aU1s2TKicGJtkabfjsiKHO2T"
  • Copy the key from the response and paste it into the 'Access Hash field in your WHMCS system.
CM 28.png

[edit] Update Instructions

An essential guidance through the process of updating the module is offered here.

Ensure successful completion of the module update by carefully following each step, thereby preventing data loss or any unforeseen issues.
Additionally, you will find a current list of supplementary actions necessary for a smooth update process there.

1. Data migration to version 2.0.0 is handled automatically on module addon activation.
  • Download the latest version of the module from our client area.
  • Remove the old module's files from the WHMCS root directory.
  • Note: The module folder name has been changed from cpanelManagetwo to CpanelManage2. Ensure that the old folder 'cpanelManagetwo' is deleted completely.
  • Upload and extract the new files into your WHMCS root directory.
  • Optional: If you wish to manually initiate the migration, you can do so by using the following cron command:
php -q /your_whmcs/modules/servers/CpanelManage2/cron/cron.php migrate-configuration

[edit] Upgrade Guide

Seeking a solution that offers greater flexibility, customization tailored to your precise needs, and unrestricted availability?
There is an option that not only proves to be cost-effective in the long run but also includes prioritized support services, making it a truly valuable investment.

Opt for the Open Source version of your cPanel Manage2 For WHMCS module to unlock these benefits.
Simply click on either the Get Source Code or Upgrade To Lifetime button found on the product's page in our client area to complete the one-step upgrade process, with a dedicated discount already applied.

Follow a comprehensive guide covering the transition process, the advantages it brings, and step-by-step instructions on what to do next after the order has been successfully finalized.

[edit] Common Problems

1. If you have problems with connection, check whether your SELinux or firewall does not block ports.
2. Make sure that your custom field is named 'IP'. In any other case, the module will not work properly.
Navigation
WHMCS Modules
WHMCS Widgets
Translations
cPanel Modules
General
FAQ
Community
CPanel Manage2 For WHMCS