Personal tools
Namespaces

Variants
Actions

Plesk Key Administrator For WHMCS

From ModulesGarden Wiki
Jump to: navigation, search

Contents

About Plesk Key Administrator For WHMCS

Plesk Key Administrator For WHMCS will allow you to provide your clients with various Plesk licenses through your WHMCS.

The module will automatically deliver and activate the licenses for your customers with the help of flexible, fully customizable products.

  • Admin Area Features:
✔ Create/Suspend/Unsuspend/Terminate License
✔ Upgrade/Downgrade License
✔ Change Package
✔ Change IP Address Assigned To License
✔ View License Details
✔ Choose Key Type Per Product And Product Addon
✔ Add Multiple Addon Features To Products
✔ Enable/Disable IP Binding To License
✔ Enable/Disable IP Binding Restriction
  • Client Area Features:
✔ Order License As Standalone Product Or Product Addon
✔ Order Additional Extension To Owned Product License
✔ Upgrade/Downgrade License
✔ View License Details
✔ Change IP Address Assigned To License
  • General Info:
✔ Supports Redirection From Plesk Extension Catalog To WHMCS Store
✔ Supports Key Administrator Partner API 3.0
✔ Supports Identifiers And License Key Structure Included In Key Administrator Partner API
✔ Integrated With Product Linker For WHMCS - Resell Licenses In Product Bundles
✔ Integrated With Products Reseller For WHMCS - End-To-End Solution For Products And Servers Reselling
✔ Integrated With Server Allocator For WHMCS - Automatic Assignment Of Most Suitable Servers To Products
✔ Multi-Language Support
✔ Supports PHP 8.12 Back To PHP 7.4
✔ Supports WHMCS Themes "Six" And "Twenty-One"
✔ Supports WHMCS V8.11 Back To WHMCS V8.8
✔ Requires ionCube Loader V13 Or Later
✔ Easy Module Upgrade To Open Source Version

Installation and Configuration

In this tutorial we will show you how to quickly install and configure Plesk Key Administrator For WHMCS.

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

1. Log in to our client area and download the module.
OKA1.png
2. In the downloaded file you might find one or two packages that support different PHP versions.

In the most recent versions of the module, you will find only one package that supports PHP 7.2 and later.

PHP72 74.png
Previous updates of the module may contain two packages dedicated to various PHP versions.

The first one that supports PHP 5.6 up to PHP 7.1, and the second one addressed to PHP 7.2 up to PHP 7.4.
Note: Keep in mind that PHP versions 5.6 up to 7.1 are no longer officially supported and their security issues are not fixed or released any more. Find more info here.

PHP56 74.png
Note: You can check the current PHP version in your WHMCS. To do so, proceed to 'Utilities' → 'System' → 'PHP Info'.
3. Extract the package and upload its content into the main WHMCS directory.

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

OKA2 2.png
4. When you install Plesk Key Administrator For WHMCS for the first time you have to rename 'license_RENAME.php' file.

File is located in 'modules/servers/pleskKeyAdministrator/license_RENAME.php'. Rename it from 'license_RENAME.php' to 'license.php'.

OKA3.png
5. In order to configure your license key, you have to edit a previously renamed 'license.php' file.

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

OKA4.png

Product Configuration

Now we will show you how to configure a new product.
6. Go to 'Setup' → 'Products/Services' → 'Servers' and press 'Add New Server'.
OKA5.png
7. Next, enter your server name and a hostname.

In the 'Hostanme' field please enter api.central.plesk.com to successfully connect with the server.

Note: The module uses connection to the API in version 3.0 so when you move from the older version of the module, it is advisable to refer to the API Upgrade section first.

Afterwards, fill in the username and the password fields with API access details to your Plesk Key Administrator server.
Choose 'PleskKeyAdministrator' from a dropdown menu and confirm through pressing 'Save Changes' button.

OKA6.png
8. After you configure your server correctly, you will see a following screen.

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

OKA7.png
9. Enter name, click on your previously created server, press 'Add' then press 'Save Changes'.
OKA8.png
10. In order to create and configure the product, move to 'Setup' 'Products/Services' 'Products/Services'.

If you do not have a product group, press 'Create a New Group'. If you do, simply go to step 12.

OKA9.png
11. Enter product group name and press 'Save Changes'.
OKA10.png
12. When you have a product group, you can create your product and assign it to Plesk Key Administrator. If you already have a product, go to step 14.

To create a product press 'Create a New Product'.

OKA11.png
13. Afterwards, choose your product type and a product group from the dropdown menus, enter your product name and press 'Continue'.
OKA12.png
14. Now, go to 'Module Settings' section, choose both 'PleskKeyAdministrator' and your previously created server group from the dropdown menu.
OKA13.png
15. Next, fill 'Client ID' textbox with your client ID on Plesk Key Administrator server.
OKA14.png
16. As soon as you fill out 'Client ID' field, a new 'Key Type' dropdown menu appears.

Choose a key type according to your needs:

  • [license] - a standalone license
  • [extension] - additional extension that is usually offered to an already existing license as a product addon.
    Still, some of the extensions might be also offered as standalone products. Be sure to select the right extension or configure it as a product addon.
  • Define whether you wish to disable IP binding. If you select this option, client will not be allowed to change the bound IP address.
    Keep in mind that some keys require the IP binding option to be disabled to allow creating a license.
  • If you enable the Restrict IP Biding option, it will not be possible to use a license key on IP addresses other than the bounded IP address.
    If disabled, a license key can be used on IP addresses other than the bounded IP address.

Afterwards press 'Save Changes' button.

OKA15.png
17. After modifying the module settings press 'Custom Fields' located on the right side of the 'Module Settings' button.

In the 'Field Name' enter 'IP', choose 'Text Box' from a field type dropdown menu, enter 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$/

The validation is necessary to prevent users from providing IP addresses in the wrong format.
The code is optional for IPv4 validation.
Mark 'Show on Order Form' and 'Required Field' checkboxes and press 'Save Changes' button.
Note1: The IP field will be required if the IP Binding option is enabled only.
Note2: There are two more custom fields generated automatically. Please refer to Tips section to check their configuration.

OKA16.png
18. Optionally, you may assign other packages that will be available for your clients to upgrade their license without the need to purchase a separate product.

Move to 'Upgrades' tab, and select the packages.
Note: Keep in mind that upgrading some of the licenses may cause some conflicts.
For more information regarding a license key modification, please refer to the Plesk official documentation article.

OKA16 1.png
That's it. You have just successfully installed and configured Plesk Key Administrator For WHMCS!

On the following screen you can see how a properly configured product should look like on the product details page in the admin area.

OKA18.png
Client Area view:
OKA17.png

Addon Configuration

This module can be also alternatively configured to become a 'Product Addon' that can be ordered 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 'Setup' → 'Products/Services' → 'Product Addons' → 'Add New'.

Select 'Independent Product', enter a name for the product and include 'PleskKeyAdministrator' in the 'Module' field.
Click on 'Continue' and move to the 'Module Settings' tab.

OKA17 1.png
2. Now, as your 'Module Name' choose 'PleskKeyAdministrator' and select your previously created server group from the 'Server Group' dropdown menu.

Save the changes, only then the module settings will appear.

OKA17 2.png
3. Provide your client ID and save the changes.
OKA17 3.png
4. Select the required key type from the list of available.

The dropdown list includes all types of keys, select according to your needs:

  • [license] - a standalone license
  • [extension] - additional extension to an already existing license

Disable IP Binding:

  • if selected - the IP address is not inserted in the license. The license will be created even though there is no IP address in the 'Dedicated IP' field, the licence will not be bound to any IP address.
  • if not selected - an IP address in the 'Dedicated IP' field in the product's details is required.
    If a VPS module connected with this product inserts an IP address in that field via cron, then the product addon must be activated after this action.
    Addon activation with an empty 'Dedicated IP' field in the product's details will result in an error: 'The IP you provided is empty, or has incorrect format' being displayed.

Keep in mind that some addon features may require this option to be disabled.
Restrict IP Biding

  • if selected - it will not be possible to use a license key on IP addresses other than the bounded IP address.
  • if not selected - a license key can be used on IP addresses other than the bounded IP address.
OKA17 4.png
5. Finally assign the addon to any product of your choice.
If the addon is configured as an additional feature, then select here a product with a license.
If the addon is configured as a standalone license, then select any of your products.

It will be available to purchase along with the selected products or services.

OKA17 5.png
You have just successfully configured a new Plesk Key Administrator For WHMCS addon.

Management

Our module allows you to provide all kinds of Plesk licenses through WHMCS.

These can be licenses for all types of Plesk Panel, Cloud server, Kaspersky Antivirus for Plesk and many, many more.
The diversity of the licenses types entails all kinds of features. Therefore, not every feature can be applied to any license type.
Full list of products for which licenses can be purchased through our module can be found here.

Admin Area

You can view all important details of Plesk Key Administrator products ordered by your clients in the admin area.

Additionally, our module allows you to manage your clients' licenses.

OKA18.png
View and manage the details of Plesk Key Administrator addon licenses ordered by your clients.
OKA17 6.png

Client Area

Product License Details

Our module allows your clients to view information about their licenses in WHMCS client area including its 'Key Number', 'Key Type' Creation' and 'Expiration Dates'.

Additionally, your clients can change their license IP address. To do so, simply type in the IP address manually when using the 'Custom IP' option.
Press the 'Change IP' button when ready.

OKA19.png
Otherwise, you may select the IP address from the dropdown list - use 'Select IP' button first. When ready, again press ' Change IP' button.

Note: The list of IP addresses is fetched from the 'Dedicated IP' field and 'Assigned IPs' in case of Dedicated/VPS Server.
Keep in mind that the option to change the IP address available only if IP Binding is enabled.

OKA19 0.png

Addon License Details

View the license details in addons section if you have ordered any with the product.
Change IP address if IP binding has been enabled for the addon.

The below screen shows an example of two addons active. The first license with IP binding disabled and the second addon has the option to change a bound IP address enabled.
Type in a new IP address or select one from the drop down list ( 'Select IP' button 'ON') and press Change IP button then.

OKA19 1.png

Upgrade/Downgrade License

Clients can easily upgrade their existing licenses to more suitable ones. Simply move to 'Upgrade/Downgrade' section and select a package from the available ones.
OKA21.png
OKA22.png

Importing Existing Instance

In this section, you can find short instructions on how to connect one of your clients to your already existing instance.
Take the following steps to make sure that the process will be carried out properly.

1. Firstly, manually create an order for your customer in WHMCS. Choose a client and in the summary, view click on the ' Add New Order' button. Next, select a 'Product/Service' and press 'Submit Order' .
What is important, do not perform the 'Create' action. The status has to remain as 'Pending' .
More info about placing orders can be found here
2. Proceed to the newly created product page in your admin area. Find the following empty field:

  • Key ID

The above-mentioned information has to be consistent with the data from your Plesk panel. Now, complete this field as presented below.
Important! Remember to make sure that the format of the provided data is compatible with the format supported by the module. You can preview it for another product of the module you have already created and enter it in a similar way.
If you completed the required data, now change the status from 'Pending' to 'Active' and 'Save Changes'.

Plesk Key import.png
Note: Keep in mind that only the "Key ID" field is obligatory, other custom fields "Key Number" and "Product Key" are not required to successfully import the license.
3. If the completed data is correct, after refreshing the page, you will see the attached instance from Plesk.
Important! Remember to manually add other missing parameters of the instance such as domains, credentials, IP Addresses, configurable options, etc. so they match the parameters of the attached instance from the Pelsk panel.

Tips

1. Apart from the 'IP' custom field that must be added manually to the product, there are two other custom fields that are generated automatically.

These are 'Key Id' and 'Key Number' fields of the text type. Underneath you can find a preview of these custom fields' correct setup.

OKA19 2.png
2. The module supports redirection from the 'Buy Now' button in the Extensions Catalog in Plesk directly into the WHMCS cart.

In order to allow such redirection you need to log into Plesk and then modify the panel.ini file. You will find this file at (depending on your OS):

  • Linux: /usr/local/psa/admin/conf/panel.ini
  • Windows: %plesk_dir%\admin\conf\panel.ini

At the very bottom of that file, add the below snippet with a proper link to your WHMCS site:

[extension]
buyUrl = "your_WHMCS"

for example:

 [extension]
 buyUrl = "https//shop.com"

Limitations:
Forwarding from Plesk is based on two keys: 'extensionId' and 'extensionProductId', whereas the second one is not always delivered.
In case only 'extensionId' is set, then more than one extension for that parameter may be found. In the situation when 'extentionID' is available only,
the module will look through the list of addons and pick the first addon which suits the product.

Please refer to the Plesk official documentation to learn more about 'Forwarding customers to your online store' option.
Here is the list of addons: link.

3. Custom Key Types can be added by editing the following file:
/your_whmcs/modules/servers/pleskKeyAdinistrator/config/custom-sku.json

Here is an example code for an entry:

{
 "PLSK-SOL-WP-AGE-M": "WordPress Agency", 
 "IFY-1-1M": "Imunify360 Standalone Single User"
}

Update Instructions

Essential guidance through the process of updating the module is offered here.

When you upgrade the module from version 1.3.1 or previous to 1.3.2 or later please also update your server's connection as described in the Product Configuration section.

API Upgrade

1. Since the release of the 1.0.5 version the old API is not supported. The steps below show how to update it:
1) Replace the old files with the new ones
2) Make sure that PleskKeyAdministrator server URL is: https://api.central.plesk.com/30/ (up to the 1.3.1 module version) or api.central.plesk.com (since the 1.3.2 module version)
3) Make sure that PleskKeyAdministrator server credential you are using are enabled for API 3.0 on Plesk server side
4) Make sure that Client ID in product configuration is the same as Internal ID field on Plesk side
Where to find Internal ID field on Plesk? According to documentation:

An ID of a license owner:
You can obtain the ID in Plesk Partner Central: go to the Accounts tab → click the customer's name → the Internal ID field.

Warning: these steps are required if in your WHMCS you have licenses created using old API (before Key Administrator 1.0.5)
If all the above actions are completed, please turn on Module Log in your WHMCS.

You need to run /yourwhmcs/modules/servers/pleskKeyAdministrator/apiUpdate.php script using the command line.
This can take a while depending on a number of licenses assigned to your account and the quality of the connection between your and Plesk API servers.
When the process is completed, a proper message will be displayed.

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 Plesk Key Administrator 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.

Common Problems

1. When you have problems with connection, check whether your SELinux or firewall does not block ports.
2. Make sure that your custom field name is 'IP'. In other case, the module will not work properly.
3. If after installation, you get an ionCube encoder problem (wrong version), please open a support ticket.

We will provide you with a different version of the module encrypted with the older version of ionCube.

4. When you have a license error, please make sure you are using a correct license file.

For Plesk Key Administrator For WHMCS 1.0.3 and later a new variable is used:

$plesk_key_administrator_licensekey=

Previous license content (1.0.2 and earlier):

$parallels_key_administrator_licensekey=

In case you still have problems with the license, please refer to the following article.

5. If you encounter an error: 'The IP you provided is empty, or has incorrect format' when activating your product addon, please make sure you have provided the IP address in the 'Dedicated IP' field in the product's details.
This field is required if the 'Disable IP Binding' option is not selected in the product addon settings. If the 'Dedicated IP' is filled out by cron, make sure you activate the addon after it is ready.

If the 'Disable IP Binding' option is selected, the 'Dedicated IP' is not required to activate the product addon successfully.

Navigation
WHMCS Modules
WHMCS Widgets
Translations
cPanel Modules
General
FAQ
Community
Plesk Key Administrator For WHMCS