# Plesk Key Administrator For WHMCS

# (opens new window) About Plesk Key Administrator For WHMCS (opens new window)

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

# Installation and Configuration

In this tutorial we will show you how to quickly install and configure Plesk Key Administrator For WHMCS. (opens new window)
We will guide you step by step through the whole installation process.

  1. Log in to our client area and download the module.
Plesk Key Administrator For WHMCS: client area module page, Downloads tab with the latest version Download button
  1. Extract the package and upload its content into the main WHMCS directory.
    The content of the package to upload should look like this.

    Plesk Key Administrator For WHMCS: package contents with the includes and modules folders for the main WHMCS directory
  2. 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'.

    Plesk Key Administrator For WHMCS: file manager listing with the licenseRENAME.php file being renamed to license.php
  3. 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'.

Plesk Key Administrator For WHMCS: license.php file open in an editor with the license key entered between quotation

# Product Configuration

Now we will show you how to configure a new product.

  1. Go to 'Setup' → 'Products/Services' → 'Servers' and press 'Add New Server'.
Plesk Key Administrator For WHMCS: WHMCS Servers page with the Add New Server button highlighted and no servers yet
  1. 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.

    Plesk Key Administrator For WHMCS: WHMCS Add Server form with name, hostname, PleskKeyAdministrator type and credentials
  2. 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'.

    Plesk Key Administrator For WHMCS: WHMCS Servers list with the new Plesk Key Administrator server and Create New Group
  3. Enter name, click on your previously created server, press 'Add' then press 'Save Changes'.

Plesk Key Administrator For WHMCS: WHMCS Create New Group form with a group name and the Plesk Key Administrator server
  1. 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.

    Plesk Key Administrator For WHMCS: WHMCS Products/Services page with no groups and the Create a New Group button
  2. Enter the product group name and press 'Save Changes'.

Plesk Key Administrator For WHMCS: WHMCS Create Group form with the Plesk Products group name entered and Save Changes
  1. 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'.

    Plesk Key Administrator For WHMCS: WHMCS Products/Services page with the Plesk Products group and Create a New Product
  2. Afterward, choose your product type and a product group from the dropdown menus, enter your product name and press 'Continue'.

Plesk Key Administrator For WHMCS: WHMCS Create a New Product form with product type, group, name and the Continue
  1. Now, go to 'Module Settings' section, and choose both 'PleskKeyAdministrator' and your previously created server group from the dropdown menu.
Plesk Key Administrator For WHMCS: product Module Settings tab with PleskKeyAdministrator module and Plesk Servers group
  1. Next, fill 'Client ID' textbox with your client ID on Plesk Key Administrator server.
Plesk Key Administrator For WHMCS: product Module Settings tab with the Client ID field highlighted after saving the
  1. 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.
    Plesk Key Administrator For WHMCS: product Module Settings tab with Client ID, Key Type dropdown and IP Binding
  2. 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 the 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.

    Plesk Key Administrator For WHMCS: product Custom Fields tab with the IP field, Text Box type and validation expression
  3. 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 (opens new window).

Plesk Key Administrator For WHMCS: product Upgrades tab with Plesk packages selected in the Packages Upgrades list

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.

Plesk Key Administrator For WHMCS: WHMCS admin client profile with the Plesk Key Administrator service and license

Client Area view:

Plesk Key Administrator For WHMCS: client area Manage Product page with License Details, IP address and Change IP button

# 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 (opens new window).
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.

    Plesk Key Administrator For WHMCS: Create New Addon form with Independent Product type, addon name and PleskKeyAdmin
  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.

    Plesk Key Administrator For WHMCS: addon Module Settings tab with the module name and server group dropdowns highlighted
  3. Provide your client ID and save the changes.

Plesk Key Administrator For WHMCS: addon Module Settings tab with the Client ID field highlighted and the Save Changes
  1. 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.
    Plesk Key Administrator For WHMCS: addon Module Settings tab with Key Type dropdown and the IP Binding options
  2. 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.

Plesk Key Administrator For WHMCS: addon Applicable Products tab with Plesk Key Administrator in the selected products

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 (opens new window).

# 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.

Plesk Key Administrator For WHMCS: WHMCS admin client profile with the Plesk Key Administrator service and license (2)

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

Plesk Key Administrator For WHMCS: WHMCS admin Edit Addon page with license details of a Business and Collaboration Pack

# 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.

Plesk Key Administrator For WHMCS: client area License Details with a typed IP address and the Change IP button

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.

Plesk Key Administrator For WHMCS: client area License Details with the IP dropdown, Custom IP and Change IP buttons

# 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.

Plesk Key Administrator For WHMCS: client area Addons page with license details and Change IP options for several addons

# 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.

Plesk Key Administrator For WHMCS: client area product page with the Upgrade/Downgrade link in the Actions menu
Plesk Key Administrator For WHMCS: client area Upgrade/Downgrade page with a package dropdown and the Choose Product

# 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 (opens new window)

  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 Administrator For WHMCS: admin product page with the Key Id custom field filled in for an imported license

    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.

    Plesk Key Administrator For WHMCS: product Custom Fields tab with the generated Key Id and Key Number text fields
  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' (opens new window) option.
    Here is the list of addons: link (opens new window).

  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 (opens new window) 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.