Reselling modules

This article is about the process of reselling ispmanager modules.

General scheme for reselling modules

For the convenience of customers, the process of purchasing commercial ispmanager modules by default is carried out through the client area.

However, there is an alternative - resale of modules. It is possible to independently accept payment for modules from end users and provide order placement directly in the ispmanager client area. This allows you to manage sales and customer service more flexibly and to adapt the process to your own needs and business strategy.


The process of reselling modules in ispmanager is based on a simple and efficient scheme.

  • Select and order a module. While in ispmanager, you can see the prices for the modules provided by the partner. Select the module you want and click Buy button;
  • Redirection to the partner's website/personal cabinet. After clicking the Buy button you will be automatically redirected to the partner's website or personal cabinet. Here you can continue placing an order and make payment for the selected module;
  • Ordering modules in ispmanager. You can order a user module in ispmanager. This can be done either automatically via the API or manually in the ispmanager client area;
  • Updating license and module Information. After an order is placed, ispmanager updates the user's license information and receives information about the purchased module. This ensures correct activation and use of the module on the client side.


To successfully implement a reseller program for ispmanager modules, the following steps should be followed.

1. Notify ispmanager staff of the URL of the billing system.

The first step is to contact the ispmanager staff and provide them with the URL of the accounting system where module prices will be requested and orders will be processed. This will establish the necessary communication and integration between the systems.

2. Implement the pricelist.export function.

You must implement the pricelist.export function in your system. This function will be responsible for returning the actual prices for modules offered for resale. This will allow you to see the actual prices in ispmanager.

3. Provide module orders.

You can choose between manual and automatic modes of ordering modules. In the manual mode, you need to accept orders from customers yourself and place them in your personal ispmanager cabinet. In automatic mode, you can implement integration via API so that orders are processed automatically, which will simplify the process and make it more efficient.


Module pricing determination

Ispmanager provides a convenient mechanism for determining module prices via requests to the billing system. 

Function call pricelist.export

Ispmanager initiates a request to the partner's billing system using the pricelist.export function. The request looks as follows.
In this request, ispmanager sends parameters indicating the need to get module prices (itemtype=addition) as well as a filter for available modules (onlyavailable=on).


The query is expected to be in XML format.

    <price currency="RUB">
      <period cost="950.0000" type="month" length="1">monthly</period>

To understand XML module information, it is important to understand the following key elements.

  • id - the identifier of the module tariff that corresponds to a specific module (see the table below for the correspondences);
  • additionintname - a service name for the module, which indicates the type or category it belongs to;
  • price - module price for the specified period. When purchasing and downloading, the price is always used with the parameters type="month" and length="1". This specifies the price per month;
  • intname - another service name for the module, which provides information about the type or category of the module;
  • name - module name.
  • Absence of prices in XML and the Buy button. If ispmanager does not detect prices for a particular module in the returned XML document, such modules will not be displayed on the dashboard. This means that it will not be possible to see the Buy button for modules for which no prices are specified;
  • Absence of unsupported modules. Ispmanager will not display modules on its page, even if they are specified in XML, if these modules are not supported by this panel. It is important to note that you cannot add any modules that are not compatible with the ispmanager control panel.



Indicators for module tariffs

Versionmodule ID  (pricelist)
DDoS-GUARD 23221
Client area URL

How to order and process modules

When a module is purchased by an end user, ispmanager automatically sends a request to the URL of the partner's billing system with the order data.

https://<Partner URL>/billmgr?module=<module service name>&license=<license ID>&ip=<License IP>&module_id=<module ID>

module - module service name; 

license - license ID in ispmanager;

IP - license IP address in ispmanager (optional);

module_id - the identifier of the ordered module.


This request can be processed either manually or automatically.

Manual module order 

Authorize in your ispmanager client area. Order a license module manually.

Automatic module order 

This section presents the procedure of automatic ordering and management of modules in ispmanager system using API. To automatically order and manage modules, use the ispmanager API. Below are instructions on how to do this.

Authorization in ispmanager Client area

The authorization in the Client area of ispmanager (via the URL) is carried out with the parameter authinfo, which takes the value: authinfo=user:passwd

The authinfo parameter should be included in every API request. This is to confirm authorization.
Get the list of tariff plans

To get the list of available plans, use the pricelist.export function with the following parameters.

  • itemtype - product type. May take the following values:

    • certificate - certificates;
    • addition - modules;
    • soft - licenses.


  • pricelist - tariff plan code (identifier), if you need to get information about a specific plan;
  • out - format in which the information is returned. Available options are:

    • xml - return of information in XML format;
    • json - return of information in JSON format.

Examples of function calls

1. Get the list of all available modules.<user:passwd>&func=pricelist.export&itemtype=addition&out=xml


2. Get information on a particular module (ID  00000).<user:password>&func=pricelist.export&itemtype=addition&pricelist=00000&out=xml 
Module order 

The addition.order.param function with the parameters described below is used to place an order.

  • Item - the ispmanager license number for which the module is being purchased;
  • period — License payment period. Possible values are:

    • period=1 — 1 month;
    • period=12 — 1 year.
  • pricelist - module ID;
  • autoprolong  - parameter responsible for automatic license renewal. Possible values are:

    • autoprolong=1 — 1 month autorenewal is charged when a license is ordered;
    • autoprolong=12 — annual automatic renewal;
    • autoprolong=null — no autorenewal.
  • skipbasket - debit and activate immediately, ignoring the shopping cart. Possible values are:

    • on — activate without going to the shopping cart;
    • off — with the transition to the shopping cart. The default value may not be specified in the request.


  • sok - simulates pressing the "OK" button when ordering and paying for the module from the personal account balance. Possible values:

    • ok — confirm debiting the personal account balance;

Example of a function call<user:password>&func=addition.order.param&item=<license ID>&period=1&pricelist=55377&autoprolong=1&skipbasket=on&sok=ok

In order to make changes to the license number to which the module is bound, ispmanager provides the addition.edit function with a set of parameters.

  • elid - module ID that is displayed in;
  • item - License number to which you want to bind the module;
  • sok - simulates pressing the "OK" button. Possible values:

    • ok — confirm changes.

Example of a function call<user:pass>&func=addition.edit&elid=<module ID>&item=<License ID>&sok=ok

Module data update in ispmanager

Automatic license data update

In order for ispmanager to receive information about the purchased module, the system automatically updates the license data once a day. This ensures that the information about the module is up to date.

Manual license data update

You can also update your license information immediately. This allows you to update the information yourself without waiting for daily automatic updates. To do this open Main menu → License management → Update license information.