Link Search Menu Expand Document

ISPAPI Pricing Importer

DEPRECATION NOTICE: As of our Integration of the TLD & Pricing Sync Feature available since WHMCS 7.10, this project will no longer be maintained. Download the new version of our Registrar Module here to benefit of that new Feature.

This Repository covers the WHMCS Pricing Importer Add-on of HEXONET. It provides the following features in WHMCS:

Supported Features

  • Load TLDs with prices through three possible ways
    • HEXONET costs
    • HEXONET Price Classes
    • Custom CSV file
  • Update existing extensions
  • Flexible performance of step-wise pricing imports
  • Support for different currencies
  • Bulk price update by using a factor or a fixed amount
  • Edition of prices individually
  • Supported fields:
    • TLD
    • Register/Transfer/Renew pricing
    • DNS Management
    • Email Forwarding
    • ID Protection
    • EPP Code
    • Currency

… and MORE!


  • WHMCS version 7.0 or higher
  • Latest ISPAPI Registrar Module. This module can be downloaded here. Our Importer Module does not support the WHMCS built-in HEXONET provider module!
  • HEXONET Live or Test Account must be configured in the ISPAPI Registrar Module. Account creation is always free:

For the latest WHMCS minimum system requirements, please refer to the WHMCS System Requirements Documentation, here.

Installation / Upgrade

Download the ZIP archive including the latest release version here.

Extract all files from the zip archive to your WHMCS installation root directory ($YOUR_WHMCS_ROOT), while keeping the folder structure intact.

Deactivate and activate the module after upgrading to the new version in your WHMCS.


When upgrading: Please make sure to back-up your existing CNIC bundle to prevent any data losses.

  1. Backup folders to a safe path
    • modules/registrars/ispapi
    • modules/registrars/cnic
    • modules/addons/cnicdns
    • modules/addons/cnicdomainimport
    • modules/addons/cnicmigration
    • modules/addons/cnicssl_addon
    • modules/addons/cnicdomainsearch
    • modules/servers/cnicssl
    • modules/widgets/ispapi*.php // just delete these ones if present
    • modules/widgets/hexonet_summary.php // just delete this one if present
    • modules/addons/ispapidomaincheck (old domain search)
    • resources/cnic

    And then delete these folders from your WHMCS instance.

  2. Extract the zip archive into the root folder of your WHMCS instance. (Upgrade completed! :tada:)

IMPORTANT Ensure to read the Release Notes carefully before Upgrading! Our Release numbers follow semantic versioning and thus we follow the version syntax: MAJOR.MINOR.PATCH. Please ensure to backup your current version’s folder to have a fallback possibility you can use, just in case there’s something wrong with our new version.

Semantic Versioning

You can always upgrade without worries if the PATCH or MINOR version have just changed. If the MAJOR version has changed, check the release notes to avoid unexpected issues as a new MAJOR version comes always with breaking changes or at least with a new module behavior.

Follow the installations steps below and consider the provided release notes for the MAJOR version upgrade. In detail: if you’re upgrading from 1.x.y to 4.x.y, ensure to check ALL Major Version Release Notes up to the version you’re upgrading too. In this example, check the release notes for 2.0.0, 3.0.0 and 4.0.0.

If you’re upgrading regularly and keeping all our modules / addons / widgets updated, you run in less upgrade effort than doing multiple major version number steps. You can add/subscribe yourself to release notifications in our github repositories to get informed about new releases.

Setting max_input_vars

The pricing importer module sends a huge POST payload including a lot of field names. This will exceed the default value of max_input_vars. Therefore, make sure the value of the variable max_input_vars is higher in your php.ini file. We recommend at least 4000 as a value. So, having an entry in php.ini like max_input_vars = 4000 should help. Dependent, on the PHP release you are running, it might also be necessary to set the following lines in addition:

suhosin.get.max_vars = 4000 = 4000
suhosin.request.max_vars = 4000

Alternatively, you can create a .htaccess file in the pricing importer module folder, with the appropriate settings contents, e.g.:

php_value max_input_vars 4000
php_value suhosin.get.max_vars 4000
php_value 4000
php_value suhosin.request.max_vars 4000

NOTE: For the .htaccess approach, you need to allow overriding in the Apache2 site configuration e.g.

<Directory /var/www/whmcs/>
   # ... further configs ...
   AllowOverride All

… and do not forget about restarting Apache2.

In case max_input_vars is set too low, we will display an error message. Nothing will be imported.


Addon activation

  • For users with WHMCS version 8.0+, Navigate to WHMCS Admin Area > System Settings > Addon Modules

  • For users with WHMCS version 7.3+, In the WHMCS Admin area, go to Setup > Addon Modules


Activate the ISPAPI Pricing Importer Addon, fill your admin username and give the module “Full Administrator” Access Control right.

You are now ready to quickly update your pricing list.


How can I update my prices?

Note: To create your own price class, navigate on Control Panel > Bottom left ““Reseller Controls” > “Reseller Settings” > “Price Plan”. Now click on the bottom at top right “New Plan”.

In order to load and update your prices, simply follow the next steps:

Step 1 – Load prices

  • Load your own HEXONET costs or a HEXONET price class or upload a CSV file
    • If you choose to upload a CSV file, you can download a sample CSV file.
    • Edit the generated CSV file by adding new TLDs with your new prices.


In the above screenshot, a price class is selected to load TLDs and prices of it.

Step 2 – Update prices

The following screenshot shows loaded TLDs and prices from a price class.


  • You can now select TLDs that you wish to upload


Step 3 – Import Prices


  • In this step, actual costs and selling costs of each TLDs are dispalyed.
  • You can update the prices in bulk by using a factor or a fixed amount.
    • Or you can edit sale prices individually.
  • Additionally, you can select currency with which you would like to sell each TLD.
  • Furthermore, you can select domain addons.
  • If you wish to change your selection of TLDs, the module allows you to go back to previous steps and make a new selection.



  • Finally, import the updated pricing list. You’re now done.


Process Flow Diagram

Process Flow Diagram