Products Reseller For WHMCS
About Products Reseller For WHMCS
Products Reseller For WHMCS brings you automation and comfort into reselling your products, following income as well as managing the reseller groups. As a provider, you are able to handle all details of your reseller groups and set up pricing rates for each product in a particular group effortlessly. |
- Provider:
✔ View Resellers And Products Income Statistics |
✔ View Most Profitable Resellers And Latest Invoices |
✔ Create And Manage Resellers: |
✔ Assign To Dedicated Group |
✔ Assign Client's Account |
✔ Generate Access API Key |
✔ Restrict Access To Specific IP Addresses |
✔ Allow API Access |
✔ Define API Limits Interval And Requests |
✔ View Reseller's Orders And Income |
✔ Convert Clients To Resellers With Provisioning Module |
✔ Create And Manage Groups: |
✔ Allow API Access With Defined Permissions |
✔ Allow Access To API Documentation |
✔ Send Low Credit Notification |
✔ Enable Automatic Top-Ups |
✔ Define Payment Collection Type: |
✔ After Product Creation |
✔ After Order Placement |
✔ Create Products Provisioning Integration Modules For Resellers: |
✔ Define Name And Description |
✔ Attach Documentation |
✔ Assign Offered Products For Resellers |
✔ Define Pricing For Each Product Extension And Their Configurable Options: |
✔ For First And Recurring Payment |
✔ For Each Billing Cycle |
✔ For Each Currency |
✔ Enable Dedicated Integration For Products: |
✔ Proxmox VE VPS |
✔ EasyDCIM Dedicated Servers |
✔ OpenStack Projects |
✔ cPanel |
✔ DirectAdmin |
✔ Plesk Key Administrator |
✔ WHMCS Licensing Addon |
✔ Softaculous Virtualizor |
✔ SSL Certificates |
✔ Create Response Templates To Overwrite Products API Responses Displayed To End Clients |
✔ Configure Default Settings: |
✔ Toggle Global API Status |
✔ Toggle Global API IP Restriction |
✔ Toggle Global API Requests Restriction |
✔ Define Default Group Settings: |
✔ Enable Low Credit Notifications After Defined Amount |
✔ Choose Payment Type |
✔ Block Unsuspend Action For Provided Reasons |
✔ Select Successful Actions To Be Skipped In Logs |
✔ Select Available Payment Methods For Automatic Top-Ups |
✔ View API Request And Response Logs |
✔ View API Documentation |
- Resellers:
✔ Access Dedicated Reseller Area |
✔ View Products Orders |
✔ View Products And Their Configurable Options Pricing |
✔ Access Reseller Settings: |
✔ View Available Account Credits |
✔ Access API Details: |
✔ View Available Credentials |
✔ View/Generate API Key |
✔ View/Modify IP Addresses Restrictions |
✔ Select Top-Up Payment Method And Define Its Amount |
✔ Download Products Reseller Integration Module |
✔ Download Provider Documentation |
✔ View API Request And Response Logs |
✔ View API Documentation |
- End Clients:
✔ Manage General Products Using Module Commands: |
✔ Create/Suspend/Unsuspend/Terminate |
✔ Change Password |
✔ Upgrade |
✔ Renew |
✔ Manage Proxmox VE VPS Products Via Dedicated Integration: |
✔ Get VM Details |
✔ Start VM |
✔ Reboot VM |
✔ Stop VM |
✔ Reinstall VM Using: |
✔ OS Templates |
✔ ISO Images |
✔ Access VM Console: |
✔ noVNC |
✔ Xterm.js |
✔ Spice |
✔ Get VM Graphs |
✔ Manage EasyDCIM Dedicated Servers Products Via Dedicated Integration: |
✔ Get VM Details |
✔ Start VM |
✔ Reboot VM |
✔ Stop VM |
✔ Get VM Graphs |
✔ Manage OpenStack Projects Products Via Dedicated Integration: |
✔ Get Project Details |
✔ Log In To Control Panel |
✔ Manage cPanel Products Via Dedicated Integration: |
✔ Log In To Control Panel |
✔ Manage DirectAdmin Products Via Dedicated Integration: |
✔ Log In To Control Panel |
✔ Manage Plesk Key Administrator Licenses Via Dedicated Integration: |
✔ View License Details |
✔ Manage WHMCS Licensing Addon Via Dedicated Integration: |
✔ View License Details |
✔ Reissue License |
✔ Manage Softaculous Virtualizor Products Via Dedicated Integration: |
✔ Get VPS Details |
✔ Start/Reboot/Stop/Power Off VPS |
✔ Access VNC Console |
✔ View Bandwidth Usage Graphs |
✔ Change Password |
✔ Manage WHMCS SSL Certificates Products |
✔ Use Synchronized Configurable Options With Products |
✔ Use Synchronized Product Custom Fields With Products |
- API Functionality:
✔ Get Available Credits |
✔ Get Version |
✔ Test Connection |
✔ Get Products List |
✔ Get Custom Fields Values |
✔ Create/Suspend/Unsuspend/Terminate Product |
✔ Upgrade Product |
✔ Renew Product |
✔ Change Product Password |
✔ Start/Stop/Reboot Server |
✔ Get Server Details |
✔ Get Server Graphs |
✔ Reinstall Server |
✔ Access noVNC/Xterm.js/Spice Console |
✔ Get Server Templates |
✔ Proceed SSL Certificate Step One/Two/Three |
✔ Get SSL Certificate Info |
✔ Post Submodule Custom Action |
✔ Access One Click Login |
- General Info:
✔ Transactions Between Resellers And Provider Settled With Credits |
✔ Integrated With cPanel And cPanel Extended For WHMCS - Complete Provisioning Automation And Remote Management Of Web Hosting Accounts |
✔ Integrated With DirectAdmin And DirectAdmin Extended For WHMCS - Provision Accounts In Fully Automated Manner With Single Sign-On Option |
✔ Integrated With EasyDCIM Dedicated Servers For WHMCS - Provision And Manage Dedicated Servers Of EasyDCIM Automatically |
✔ Integrated With GoGetSSL For WHMCS - Provisioning And Remote Supervision Of Personalized SSL Certificates |
✔ Integrated With OpenStack Projects For WHMCS - Automated Provisioning And Supervision Of OpenStack Projects |
✔ Integrated With Plesk Key Administrator For WHMCS - Provision Various Kinds Of Plesk Licenses |
✔ Integrated With Proxmox VE VPS For WHMCS - Fully Automated Provisioning And Management Of Virtual Servers |
✔ Integrated With Softaculous Virtualizor - Deploying And Managing VPS On Servers With Single Click |
✔ Integrated With WHMCS Licensing Addon - Reselling Licenses For Own Web Applications |
✔ Integrated With WHMCS SSL Certificates - Reselling Certificates Through Modules Using Basic WHMCS API |
✔ Multi-Language Support |
✔ Supports PHP 8.2 Back To PHP 7.4 |
✔ Supports WHMCS Themes "Six", "Twenty-One" And "Lagom WHMCS Client Theme" |
✔ Supports WHMCS V8.11 Back To WHMCS V8.8 |
✔ Requires ionCube Loader V13 Or Later |
✔ Easy Module Upgrade To Open Source Version |
Installation
This tutorial will show you how to successfully install and configure Products Reseller For WHMCS. |
1. Log in to our client area and download the module. |
2. Extract the package and upload its content into the main WHMCS directory.
The content of the package to upload should look like this. |
3. When you install Products Reseller For WHMCS for the first time you have to rename 'license_RENAME.php' file. File is located in 'modules/addons/ProductsReseller/license_RENAME.php'. Rename it from 'license_RENAME.php' to 'license.php'. |
4. In order to configure your license key, you have to edit the 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'. |
5. In the next step, set up the 'storage' folder as recursively writable. This folder is available at 'yourWHMCS/modules/addons/ProductsReseller/'. |
6. Now you have to activate the module in your WHMCS system. Log in to your WHMCS admin area. Go to 'WHMCS Admin Area' → 'System Settings' → 'Addon Modules' . Afterwards, find 'Products Reseller' and press the 'Activate' button. |
7. In the next step you need to permit access to this module. To do so click on the 'Configure' button, tick 'Full Administrator' and press 'Save Changes'. |
8. You have just successfully installed Products Reseller! You can access your module at 'Addons' → 'Products Reseller'. |
Configuration and Management
Products Reseller For WHMCS allows your customers to resell products on their own WHMCS. |
Dashboard
The 'Dashboard' page presents some useful graphs and summaries on income generated from reselling products. The 'Income' section presents your income which is converted into USD basing on 'Base Conv. Rate' in Setup → Payments → Currencies. |
You may easily change the graph settings by changing the time scope and choosing products you are interested in. |
Most profitable Resellers & Latest invoices summary: |
General Settings
'Settings' tab allows you to access general settings of your Products Reseller API. Here you may set up general options but still, you will be able to change them per single group. If you skip group settings, this configuration will be taken into account. |
We will describe these options below. Global API related section:
|
Miscellaneous:
|
Logs:
|
Automatic Top-Ups:
Remember to submit the changes, once you have finished. |
Groups
Let's start by creating the first group for your resellers. Use either of the buttons marked on the screen below. |
Then, simply type in a unique name of your group. Create as many groups as you will need and set up different configuration to adjust them and then assign resellers to adequate groups. |
Configuration Per Group
You can set up configuration for resellers who are assigned to this very group only. These settings will overwrite the general settings defined in the previous step.
Note: Please remember that upon unsuccessful product creation, the module does not take any credits from the Reseller Account. Save the changes when ready. |
API Permissions
Toggle options that resellers will be allowed to use via API. |
Integrations
In this section you can create and manage integration modules which resellers will need to upload and activate to be able to resell products you offer them. Press 'Add Integration' to begin. |
To generate a new integration module you need to provide following data:
|
Newly created Integration will appear on the list. You may:
|
In order to delete numerous integration at once, use the mass action button. |
Products
Here you can create a list of products along with their custom pricing details that resellers assigned to this group will be allowed to offer to their clients. Press the 'Assign Product' button to begin. |
Select products from the available and press 'Confirm'. |
Assigned products will appear on the list where the following options are available:
|
Depending on the product, there can be different actions enabled in the 'Settings' section. Note: The following options such as 'Start', 'Stop', 'Reboot', 'Details','Graphs' are available only for Proxmox VE VPS products. |
The 'Settings' section for the SSL Certificates products (for example GoGetSSL) will look as presented here: |
The below options in 'Settings' section are available for EasyDCIM Dedicated Servers products: |
Then, set pricing for a particular item. Important: The default pricing is set to '-1' (minus one) which is treated as disabled. To enable the preferred pricing method, simply provide a price of the product. Note 1: Please remember that ' First Payment' does not stand for ' Setup Fee' . |
Moreover, there is the possibility to set pricing for a few selected products. Simply, use the mass action button to do it with one click. In the same way, you may also unassign the preferred products. |
Configurable Options
The last section allows for assigning groups to configurable options existing in your WHMCS.
Press 'Assign Group' to begin. |
Select from the available configurable options groups, they will be then assigned to this group of resellers. |
Assigned configurable options groups will appear on the list, you may:
|
Change pricing for available configurable options. By default, configurable option prices defined in WHMCS are used until you change them in the addon. Once the config option price is updated here, its price visible in the Reseller Area is changed as well. Important: It is not possible to disable the config option from sale by entering '-1' in contrast to products. |
In order to delete configurable options groups simply press the bin icon or use the mass action button to unassign numerous groups at once. |
Now, your group configuration is ready. If you have more groups, simply repeat these steps for each of them. Remember that you are always able to edit the single group name or delete if no longer needed. Just click on adequate buttons to do so. |
Keep in mind that you may never delete a group if there are any resellers assigned to the group. Before deleting it, you must choose an alternative group to which the resellers will be reassigned. |
Resellers
In this section you will find a list of your active Resellers. Press 'Add Reseller' to make one of your clients a reseller. |
|
Reseller Details
API Configuration
Here you may easily alter the settings that you have defined when creating the reseller. Apart from them, you may preview the API Email Address and API Key required to activate and configure the integration module. |
Orders
This section includes a list of all bought products which are offered by this reseller. Take a look at any crucial details on the orders. |
Income
The 'Income' tab contains a current list of invoices that generate any income for the reseller. Press the invoice ID and you will be redirected to the invoice summary. |
Response Templates
In the 'Response Templates' section you may add and edit new templates with text messages/information that are sent to clients instead of defined here system responses. In order to add a new response template press the 'Create Template' button and then follow the below instructions. |
Provide the pattern for search and replace in the system response depending on the type.
|
In the second step Replace With you need to enter a text message that will be sent to a client when the above entered pattern is found. The two messages will be replaced with one another. |
Define Priority. The higher number you enter, the higher priority will be assigned. Important! All active patterns within the same group found with different priorities are performed starting from the higher to lower priority. |
Finally,
It will specify if provided text in the first field should be treated as a text or a regular expression while searching for a pattern.
Remember, to finish successfully you need to press the 'Confirm' button. |
Now you can see a newly configured response is visible on the list. You may edit the added response or remove it any time you need. To do so, just simply click on the appropriate action button. |
Module Logs
In 'Logs' section you may preview a list of API requests and responses, including errors with the most important details on them. |
Use action buttons to delete all logs or just single entries. |
Documentation
API Documentation
Under the 'Documentation' tab you will find two subsection. The first one is dedicated to API. This API documentation has been prepared to allow you to write your own integration modules for platforms other than WHMCS. The 'Information' subtab contains:
|
'Calls' subtab contains information about actions supported by the API. Important! Please remember that the following API Calls: 'Start', 'Reboot', 'Stop', 'Details', 'Graphs' are currently available only for Proxmox VE VPS products Note: The screen below does not capture all the supported functions. |
The last section includes 'Models' details. |
Module Documentation
'Module Documentation ' is a hyperlink. It leads to the 'Products Reseller For WHMCS' wiki article you are currently reading. |
Reseller Area
Resellers can manage API connection credentials directly from the provider WHMCS client area as well as see any details on its products offer. Go to 'Services' → 'Reseller Area' to access them. |
Orders
As you can see, the 'Orders' section includes a detailed list of orders placed by end-clients on the Reseller's system. Moreover, you can not only check the ordered products but also any payment details and date. |
Pricing
The 'Pricing' section includes a list of the Reseller's products with the option to preview its pricing set up by the provider. |
Settings
Under the 'Settings' section you will find any API details necessary to install and activate the integration module along with:
|
Underneath the API details you will find a list of generated integrations. Depending on the provider, you may download the packages, download the additional fields and documentation per Integration. |
Logs
Preview a list of logs on API requests and responses, including errors stored in the module. |
API Documentation
Access API documentation details with basic information and API Calls and Models. This API documentation has been prepared to allow you to write your own integration modules for platforms other than WHMCS. 'Information' tab contains:
|
Available 'Calls' list: Important! Please remember that the following API Calls: 'Start', 'Reboot', 'Stop', 'Details', 'Graphs' are currently available only for Proxmox VE VPS products |
Available 'API Models' list: |
Integration Modules
If you have product integration modules generated with Product Reseller in version 1.4.x, there is NO NEED to prepare the packages again. Only new integrations (generated with v1.5.0 and later) require 'Server' and 'Server group'. |
Integration Module Installation In Reseller's WHMCS
Below you can find instructions for installation of the integration module on the reseller's WHMCS. Please refer to section Integrations to learn how to generate an integration module for your resellers. |
1. Extract and upload the integration module into the reseller's main WHMCS directory. Once you have uploaded the integration module, you should find a new folder with this module in 'resellerWHMCS/modules/servers/' directory as presented below. |
2. Now, you will have to configure a new server. To do so, move to 'System Settings' → 'Servers'. Once you are there, press 'Add New Server'. |
3. Next, fill in the fields according to the below described pattern:
|
4. After you configure your server correctly, you will see the following screen. At this point, you need to create a new group for your server. For that purpose, press 'Create New Group'. |
5. Enter the name, click on your previously created server, press 'Add' and then 'Save Changes'. |
6. The next step to follow is creating a product and its group. Forward to 'System settings' → 'Products/Services' → 'Products/Services' and create a new group. |
7. Enter a product group name and press 'Save Changes' . |
8. When you have a product group, you can assign your product to it. To create a product, click on 'Create a New Product'. |
9. Afterwards, choose a product type, then select the previously created product group from the dropdown menu and provide a product name. Finally, find the uploaded integration module in the dropdown menu. Do not forget to save changes. |
10. In the 'Details' tab of the product configuration, we highly recommend setting up your 'Welcome Email' template first. Welcome emails are sent to the end-client once the product creation is completed and contain important details such as account/service credentials, server information, assigned IP addresses etc. |
11. Set up the pricing for your product. |
12. Finally, after saving previous changes, go to the 'Module Settings' and select the integration module server that you created in the below steps. |
13. Now, in the 'Base Configuration' you may select the ' Reseller Product' and a 'Billing Cycle' for that product from available (if you have created some in the previous steps). Note that if you select Auto, original billing cycle from your WHMCS will be assigned to this product. |
14.Finally, 'Product Details' section will appear. Decide which actions of the available you wish to enable. Simply check the preferred options. Please remember that actions visible on the below screen are available only for Proxmox VE VPS products. |
If there are any configurable options or custom fields available, you may now generate them, press the button and then select options you wish to offer. Remember to save the changes in the end. |
Proxmox VE VPS For WHMCS Integration
After placing an order, the client area may appear differently depending on the purchased product. Below you can browse the examples of what the client area will look like upon the integration of Products Reseller For WHMCS with other ModulesGarden modules. |
Dedicated integration with Proxmox VE VPS For WHMCS that allows smooth and remote management of the resold VPS servers.
The following picture presents a Proxmox VE VPS product. As you can see, the enabled options appear in the side menu with additional information about the product at the bottom of the page:
You may find details of the Configurable Options assigned to this product in the next tab. Note: Please remember that the options presented below are dedicated to Proxmox VE VPS products. |
EasyDCIM Dedicated Servers For WHMCS Integration - Servers Reselling
Neat integration with EasyDCIM Dedicated Servers For WHMCS allows quick and easy reselling of dedicated servers as well as their effortless billing. Please follow the EasyDCIM official documentation to learn everything you need to know about the scope of possibilities. For now, have a look below for the picture of the client area view in the case of the EasyDCIM Dedicated Servers product. Supported actions:
|
Exemplary graph section view: |
SSL Products Integration
Dedicated integration with GoGetSSL For WHMCS allows complete provisioning and remote supervision over SSL certificates. If the resold product is an SSL certificate, here that of GoGetSSL, you are allowed to manage the product in the client area as shown below: |
OpenStack Projects For WHMCS Integration
Integration between Products Reseller For WHMCS and OpenStack Projects For WHMCS permits automated provisioning and supervision of OpenStack projects' When OpenStack Projects product is resold, the client area will look as below. Supported actions:
|
Plesk Key Administrator For WHMCS Integration
Dedicated integration with Plesk Key Administrator For WHMCS allows provisioning of various kinds of Plesk licenses. The picture below presents what the client area looks like in the case of the Plesk Key Administrator product. |
Virtualizor By Softaculous Module Integration
Virtualizor is a powerful web based VPS Control Panel using which a user can deploy and manage VPS on servers with a single click.
Dedicated integration between Products Reseller For WHMCS and the Virtualizor WHMCS Module allows provisioning of servers and access to VNC console and selected graphs.
|
WHMCS Licensing Addon
The WHMCS licensing addon module allows you to license your own web applications for selling to end users and restrict their use according to your licensing agreements.
|
Products Reseller - Provisioning Product
Products Reseller For WHMCS module may also be configured as a provisioning module. You will have to create a new product that will be offered to purchase for resellers. This simple trick will allow you to skip the manual configuration of all resellers. The process will be automatized once the reseller orders such product.
1. In order to create a new Products Reseller product, go to 'System Settings' → 'Products/Services'. |
2. Fill in a product group name and press 'Save Changes'. |
3. Next, add a new product in the previously created group. |
4. Set the product type to 'Other', name the product and assign it to the Products Reseller module. |
5. Now, go to the 'Module Settings' section and choose one of the previously created in the addon groups of resellers from dropdown menu. Press 'Save Changes' . Note that there is no server that shall be selected. Your product is ready to order! |
Allowed actions on the product:
|
Addon view: |
Once any of your clients orders this product, they will automatically become resellers. They will get access to 'Reseller Area', where from they can resell the products, that belong to the pricing group, further. |
Sample Workflow
In this section we will present to you a sample workflow of the module. In a basic workflow 3 users take part: |
Upgrade Instructions
Products Reseller For WHMCS allows to upgrade both the product and the configurable options. When the 'Change Package/Upgrade' action in the reseller's WHMCS is started, the same action is started in the main module environment. The request contains information on both the product and its configurable options (if there are any assigned). If it turns out that there are some differences between the requested config options and the currently assigned to the service, then only Configurable Options will be upgraded. Otherwise, Product Upgrade will be performed. |
Product Upgrade
Supported by the module product upgrade scenarios:
|
Configurable Options Upgrade
When you change the price of a single configurable option, e.g. from Y to Z, the price is simply calculated for option Y (within the service billing cycle defined in WHMCS with Products Reseller module). |
Importing Existing Product Into Reseller Store
It is possible to manually add an existing product to the reseller's store. Follow the steps below to do so. 1. In the provider's WHMCS:
|
2. In the reseller's WHMCS:
|
3. In the provider's WHMCS Database:
When ready, change the service status to 'Active'. |
4. Completion:
That's it! The service has been successfully imported and can now be managed by the end user in the reseller's client area. |
Tips
1. When you update your Products Reseller module to a newly released version (full number update), it is required to updated the integration module as well. |
2. Products Reseller For WHMCS can be integrated with other ModulesGarden products to extend the range of available features, e.g. the integration with Proxmox VE VPS For WHMCS provides such additional actions as: get VM details, get VM graphs, start VM, stop VM, reboot VM. |
3. Make sure that you are not blocking access to the 'api' catalog by your '.htaccess' file. |
4. Products Reseller For WHMCS enables you to resell your products not only via WHMCS system. You are able to easily prepare integration module for any system (Blesta, HostBill, Clientexec, BoxBilling, and many more) using Products Reseller For WHMCS API. |
5. If a client buys a product from the reseller and pays in a different currency than the reseller's default currency then the amount will be converted into the reseller's default currency basing on the 'Base Conv. Rate' (your WHMCS → Setup → Payments → Currencies). |
How To Use Language Overrides
Incorporating language customizations - the module readily accommodates language overrides, allowing you to tailor the language files to your preferences. The language file english.php remains unencoded and can be modified to suit your needs. However, it's recommended to avoid altering the core file itself, and instead, leverage the capability of using overrides. |
Here's how to apply language overrides:
~/langs/overrides/english.php.
For example: Original yourWHMCS/modules/servers/moduleName/langs/english.php: $_LANG['Search'] = 'Search'; Override yourWHMCS/modules/servers/moduleName/langs/overrides/english.php: $_LANG['Search'] = 'Look for'; |
By following these steps, you can seamlessly implement language customizations without altering the core language file, ensuring your changes will not be lost after every module update. Remember that some of the modules have more than one language file, located under /addons and /servers paths. You may create the override files for both of them. |
Update Instructions
An essential guidance through the process of updating the module is offered here. Ensure successful completion of the module update by carefully following each step, thereby preventing data loss or any unforeseen issues. |
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 Products Reseller For WHMCS module to unlock these benefits. 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. If the reseller encounters the 'Order Accept Encountered Problems. Invoice for the hosting has not been paid' error while the create action, then the provider should make sure that:
|
3. If you use the nginx server and get 404 errors, please make sure you have set a proper declaration in your '/etc/nginx/conf.d/' configuration file.
This can be e.g.: location /client/modules/addons/ProductsReseller/api/ { try_files $uri $uri /client/modules/addons/ProductsReseller/api/index.php; } but may differ depending on your configuration (e.g. the '/portal/' path may be used instead of the '/client/' one). |