BILLmanager 5 Documentation

Service processing principles

General information

The billing system provides the easy-to-use platform allowing your customers to select and order new services. However, the billing system itself does not provide any services. When a client orders a new service, BILLmanager will send a service creation API request to a third-party control panel. This process is called service processing.

For example, a client wants to buy a domain name. He picks the .com, .net, .org, and etc. domain name zones in his/her personal account and fills out other required order information. BILLmanager uses this data to create an API request to e.g. Webnames, one of the domain registrars. WebNames gets the billing request, processes it and provides the required domain name. As soon as the domain has been registered, BILLmanager changes the service status and gets the required data from the domain name registrar. In the end, the billing system notifies the client that the service is ready.

Service processing methods

A processing module is an algorithm through which the billing system creates an API request to a third-party product. BILLmanager can be integrated with third-party solutions, and each of these integrations will require a separate processing module. All modules are available in BILLmanager by default. 

Note:
It is possible to use specific predefined processing modules for every type of product. E.g., for "Virtual server" you can use either ISPmanager or cPanel control panels. 

In the web interface, the processing module is equal to a service processing module. The handler contains all information for service processing: service type (e.g. virtual server, domain name, dedicated server), a processing module, third-party integration data, and custom settings (name, data center, responsible department).

The service handler identifies which module shall be used and for which account the order shall be created.

Note:
After you have disabled the processing module new services won't be created on that module. The existing services will be synchronized with a remote control panel even though the disabled processing module.

Tariff plan

The end-user doesn't know about the processing modules described above. The client only knows about a tariff plan which is the recourse provided for the specific price. For the admin, a tariff plan is a custom template of a service.

Let's separate the tariff plan settings into two parts: the service processing parameters and the set of resources provided. 

The service processing parameters are the data that we use when creating a processing module. E.g. the type of service, processing module, and information about integration with the third-party solution.

The set of resources provided is the list of resources that are to be provided. E.g. storage space, RAM, CPU, etc.

The processing module is responsible for service processing parameters, thence it’s necessary to set at least one processing module for each tariff plan.   

Account template

An account template defines the set of resources provided. It shall be set up in your third-party control panel. 

E.g. there is the section "Templates" in ISPmanager control panel for web hosting where you can create the account template. For instance, we have 2 templates with the following parameters:

    • StarterPack, the maximum number of databases — 5.
    • AdvancedPack, the maximum number of databases — 10.

In addition to the above, we have BILLmanager which is already integrated with ISPmanager and also has two tariffs:

    • Starter tariff. The account template is 'StarterPack'.
    • Extended tariff. The account template is 'AdvancedPack'.

As a result, a customer will be able to manage only 5 databases if he/she orders web hosting with the "Starter tariff". But if he/she orders the "Extended tariff", he/she will be able to manage 10 databases.

Not all services can be created from templates. it depends on the product type and your processing module. When a template is not used, BILLmanager passes the set of resources to the third-party solution which was determined by the processing module. The amount of each resource is determined on the tariff plan addon page.  

E.g. the "Virtual server" service using BILLmanager+VMmanager is created using the template. When we create a virtual machine, the billing system passes the template name of the machine to VMmanager with all additional parameters if they are determined in the tariff plan.

The same "Virtual server" service using BILLmanager+ vCloud Director doesn't use the template for virtual machine creating. When we create a virtual machine, the billing system passes the set of the required parameters to vCloud Director, e.g. storage space, RAM, CPU, etc. 

Automatic setup

After the client pays for a service, the service will obtain the "in progress" status. It means that the processing module starts service processing and this service will be created in the registrar control panel.

You can monitor your service preparation process in Tools → Current operations. If an error occurs, you can view the error log or restart the operation. The operation restarts automatically every 5 minutes.

If the operation fails a few times, it will be switched to manual processing and the corresponding task will be created. You can start the operation manually or set up the service yourself. After it, you can find the service setup task and assign it to yourself, provide the service details, and close the task. The service status will be changed to "Active" and the "Welcome email" will be sent to your client.

Layout

Manual setup

If you cannot find the desired processing module for your service, you can use the Manual setup option. In this case, there will be a new Task created for each operation.

The tasks are assigned to departments specified in the processing module configuration form. The department staff will assign a task to themselves, perform required operations, fill out the form, or close the task. The service will get the required status. Read more about tasks here