Personal tools
Namespaces

Variants
Actions

Products Reseller For WHMCS

From ModulesGarden Wiki
(Difference between revisions)
Jump to: navigation, search
(Proxmox VPS For WHMCS Integration)
(Upgrade Guide)
 
(58 intermediate revisions by 4 users not shown)
Line 39: Line 39:
 
{|
 
{|
 
|style="padding: 0px 0px 0px 45px;"|✔ View Reseller's Orders And Income
 
|style="padding: 0px 0px 0px 45px;"|✔ View Reseller's Orders And Income
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 45px;"|✔ Convert Clients To Resellers With Provisioning Module
 
|}
 
|}
 
{|
 
{|
Line 89: Line 92:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 0px 60px;"|✔ Proxmox VPS
+
|style="padding: 0px 0px 0px 60px;"|✔ Proxmox VE VPS
 
|}
 
|}
 
{|
 
{|
Line 99: Line 102:
 
{|
 
{|
 
|style="padding: 0px 0px 0px 60px;"|✔ cPanel
 
|style="padding: 0px 0px 0px 60px;"|✔ cPanel
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 60px;"|✔ DirectAdmin
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 60px;"|✔ Plesk Key Administrator
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 60px;"|✔ WHMCS Licensing Addon
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 60px;"|✔ Softaculous Virtualizor
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 60px;"|✔ SSL Certificates
 
|}
 
|}
 
{|
 
{|
Line 116: Line 134:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 0px 45px;"|✔ Define Default Group Settings
+
|style="padding: 0px 0px 0px 45px;"|✔ Define Default Group Settings:
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 60px;"|✔ Enable Low Credit Notifications After Defined Amount
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 60px;"|✔ Choose Payment Type
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 60px;"|✔ Block Unsuspend Action For Provided Reasons
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 45px;"|✔ Select Successful Actions To Be Skipped In Logs
 
|}
 
|}
 
{|
 
{|
Line 183: Line 213:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 0px 30px;"|✔ Manage Proxmox VPS Products Via Dedicated Integration:
+
|style="padding: 0px 0px 0px 30px;"|✔ Manage Proxmox VE VPS Products Via Dedicated Integration:
 
|}
 
|}
 
{|
 
{|
Line 189: Line 219:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 0px 45px;"|✔ Get VM Graphs
+
|style="padding: 0px 0px 0px 45px;"|✔ Start VM
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 0px 45px;"|✔ Start VM
+
|style="padding: 0px 0px 0px 45px;"|✔ Reboot VM
 
|}
 
|}
 
{|
 
{|
Line 198: Line 228:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 0px 45px;"|✔ Reboot VM
+
|style="padding: 0px 0px 0px 45px;"|✔ Reinstall VM Using:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 0px 30px;"|✔ Manage EasyDCIM Dedicated Servers Products Via Dedicated Integration:
+
|style="padding: 0px 0px 0px 60px;"|✔ OS Templates
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 0px 45px;"|✔ Get VM Details
+
|style="padding: 0px 0px 0px 60px;"|✔ ISO Images
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 45px;"|✔ Access VM Console:
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 60px;"|✔ noVNC
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 60px;"|✔ Xterm.js
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 60px;"|✔ Spice
 
|}
 
|}
 
{|
 
{|
Line 210: Line 252:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 0px 45px;"|✔ Boot VM
+
|style="padding: 0px 0px 0px 30px;"|✔ Manage EasyDCIM Dedicated Servers Products Via Dedicated Integration:
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 45px;"|✔ Get VM Details
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 45px;"|✔ Start VM
 
|}
 
|}
 
{|
 
{|
Line 216: Line 264:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 0px 45px;"|✔ Shutdown VM
+
|style="padding: 0px 0px 0px 45px;"|✔ Stop VM
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 45px;"|✔ Get VM Graphs
 
|}
 
|}
 
{|
 
{|
Line 229: Line 280:
 
{|
 
{|
 
|style="padding: 0px 0px 0px 30px;"|✔ Manage cPanel Products Via Dedicated Integration:
 
|style="padding: 0px 0px 0px 30px;"|✔ Manage cPanel Products Via Dedicated Integration:
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 45px;"|✔ Log In To Control Panel
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 30px;"|✔ Manage DirectAdmin Products Via Dedicated Integration:
 
|}
 
|}
 
{|
 
{|
Line 238: Line 295:
 
{|
 
{|
 
|style="padding: 0px 0px 0px 45px;"|✔ View License Details
 
|style="padding: 0px 0px 0px 45px;"|✔ View License Details
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 30px;"|✔ Manage WHMCS Licensing Addon Via Dedicated Integration:
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 45px;"|✔ View License Details
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 45px;"|✔ Reissue License
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 30px;"|✔ Manage Softaculous Virtualizor Products Via Dedicated Integration:
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 45px;"|✔ Get VPS Details
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 45px;"|✔ Start/Reboot/Stop/Power Off VPS
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 45px;"|✔ Access VNC Console
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 45px;"|✔ View Bandwidth Usage Graphs
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 45px;"|✔ Change Password
 
|}
 
|}
 
{|
 
{|
Line 255: Line 339:
 
{|
 
{|
 
|style="padding: 0px 0px 0px 30px;"|✔ Get Version
 
|style="padding: 0px 0px 0px 30px;"|✔ Get Version
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 30px;"|✔ Test Connection
 
|}
 
|}
 
{|
 
{|
Line 275: Line 362:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 0px 30px;"|✔ Start/Stop/Reboot Proxmox VM/EasyDCIM Server
+
|style="padding: 0px 0px 0px 30px;"|✔ Start/Stop/Reboot Server
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 0px 30px;"|✔ Get Proxmox VM/EasyDCIM Server/OpenStack Project Details
+
|style="padding: 0px 0px 0px 30px;"|✔ Get Server Details
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 0px 30px;"|✔ Get Proxmox VM/EasyDCIM Server Graphs
+
|style="padding: 0px 0px 0px 30px;"|✔ Get Server Graphs
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 30px;"|✔ Reinstall Server
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 30px;"|✔ Access noVNC/Xterm.js/Spice Console
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 30px;"|✔ Get Server Templates
 
|}
 
|}
 
{|
 
{|
Line 287: Line 383:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 10px 30px;"|✔ Get SSL Certificate Info
+
|style="padding: 0px 0px 0px 30px;"|✔ Get SSL Certificate Info
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 30px;"|✔ Post Submodule Custom Action
 +
|}
 +
{|
 +
|style="padding: 0px 0px 10px 30px;"|✔ Access One Click Login
 
|}
 
|}
  
Line 295: Line 397:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 0px 30px;"|✔ Integrated With WHMCS SSL Certificates - Reselling Certificates Through Modules Using Basic WHMCS API
+
|style="padding: 0px 0px 0px 30px;"|✔ Integrated With cPanel And [https://www.modulesgarden.com/products/whmcs/cpanel-extended cPanel Extended For WHMCS] - Complete Provisioning Automation And Remote Management Of Web Hosting Accounts
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 0px 30px;"|✔ Integrated With cPanel And <u>cPanel Extended For WHMCS</u> - Complete Provisioning Automation And Remote Management Of Web Hosting Accounts [https://www.modulesgarden.com/products/whmcs/cpanel-extended (read more)]
+
|style="padding: 0px 0px 0px 30px;"|✔ Integrated With DirectAdmin And [https://www.modulesgarden.com/products/whmcs/directadmin-extended DirectAdmin Extended For WHMCS] - Provision Accounts In Fully Automated Manner With Single Sign-On Option
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 0px 30px;"|✔ Integrated With <u>EasyDCIM Dedicated Servers For WHMCS</u> - Provision And Manage Dedicated Servers Of EasyDCIM Automatically [https://www.modulesgarden.com/products/whmcs/easydcim-dedicated-servers (read more)]
+
|style="padding: 0px 0px 0px 30px;"|✔ Integrated With [https://www.modulesgarden.com/products/whmcs/easydcim-dedicated-servers EasyDCIM Dedicated Servers For WHMCS] - Provision And Manage Dedicated Servers Of EasyDCIM Automatically
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 0px 30px;"|✔ Integrated With <u>GoDaddy SSL For WHMCS</u> - Complete SSL Certificates Provisioning For GoDaddy API Resellers [https://www.modulesgarden.com/products/whmcs/godaddy-ssl (read more)]
+
|style="padding: 0px 0px 0px 30px;"|✔ Integrated With [https://www.modulesgarden.com/products/whmcs/gogetssl GoGetSSL For WHMCS] - Provisioning And Remote Supervision Of Personalized SSL Certificates
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 0px 30px;"|✔ Integrated With <u>GoGetSSL For WHMCS</u> - Provisioning And Remote Supervision Of Personalized SSL Certificates [https://www.modulesgarden.com/products/whmcs/gogetssl (read more)]
+
|style="padding: 0px 0px 0px 30px;"|✔ Integrated With [https://www.modulesgarden.com/products/whmcs/openstack-projects OpenStack Projects For WHMCS] - Automated Provisioning And Supervision Of OpenStack Projects
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 0px 30px;"|✔ Integrated With <u>OpenStack Projects For WHMCS</u> - Automated Provisioning And Supervision Of OpenStack Projects [https://www.modulesgarden.com/products/whmcs/openstack-projects (read more)]
+
|style="padding: 0px 0px 0px 30px;"|✔ Integrated With [https://www.modulesgarden.com/products/whmcs/plesk-key-administrator Plesk Key Administrator For WHMCS] - Provision Various Kinds Of Plesk Licenses
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 0px 30px;"|✔ Integrated With <u>Plesk Key Administrator For WHMCS</u> - Provision Various Kinds Of Plesk Licenses [https://www.modulesgarden.com/products/whmcs/plesk-key-administrator (read more)]
+
|style="padding: 0px 0px 0px 30px;"|✔ Integrated With [https://www.modulesgarden.com/products/whmcs/proxmox-vps Proxmox VE VPS For WHMCS] - Fully Automated Provisioning And Management Of Virtual Servers
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 0px 30px;"|✔ Integrated With <u>Proxmox VPS For WHMCS</u> - Fully Automated Provisioning And Management Of Virtual Servers [https://www.modulesgarden.com/products/whmcs/proxmox-vps (read more)]
+
|style="padding: 0px 0px 0px 30px;"|✔ Integrated With Softaculous Virtualizor - Deploying And Managing VPS On Servers With Single Click
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 30px;"|✔ Integrated With WHMCS Licensing Addon - Reselling Licenses For Own Web Applications
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 30px;"|✔ Integrated With WHMCS SSL Certificates - Reselling Certificates Through Modules Using Basic WHMCS API
 
|}
 
|}
 
{|
 
{|
Line 322: Line 430:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 0px 30px;"|✔ Supports PHP 7.2 Up To PHP 7.4
+
|style="padding: 0px 0px 0px 30px;"|✔ Supports PHP 8.1 Back To PHP 7.4
 +
|}
 +
{|
 +
|style="padding: 0px 0px 0px 30px;"|✔ Supports WHMCS Themes "Six", "Twenty-One" And "Lagom WHMCS Client Theme"
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 0px 30px;"|✔ Supports WHMCS "Six" And "Twenty-One" Themes
+
|style="padding: 0px 0px 0px 30px;"|✔ Supports WHMCS V8.8 Back To WHMCS V8.6
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 0px 30px;"|✔ Supports WHMCS V8.0 And Later
+
|style="padding: 0px 0px 0px 30px;"|✔ Requires ionCube Loader V12 Or Later
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 30px 30px;"|✔ Easy Module Upgrade To [https://www.modulesgarden.com/products/whmcs/products-reseller#open-source-version Open Source Version]
+
|style="padding: 0px 0px 30px 30px;"|✔ Easy [https://www.docs.modulesgarden.com/How_To_Upgrade_WHMCS_Module Module Upgrade] To [https://www.modulesgarden.com/products/whmcs/products-reseller#open-source-version Open Source Version]
 
|}
 
|}
  
Line 346: Line 457:
 
{|
 
{|
 
|style="padding: 0px 0px 15px 15px;"|'''2. In the downloaded file you might find one or two packages that support different PHP versions.'''<br/>
 
|style="padding: 0px 0px 15px 15px;"|'''2. In the downloaded file you might find one or two packages that support different PHP versions.'''<br/>
In the most recent versions of the module, you will find only one package that supports PHP 7.2 and later.<br/> <!-- If you need a package for the previous versions of PHP, please [https://www.modulesgarden.com/support/ticket/general-support contact our support]. -->
+
In the most recent versions of the module, you will find only one package that supports PHP 7.4 and later.<br/> <!-- If you need a package for the previous versions of PHP, please [https://www.modulesgarden.com/support/ticket/general-support contact our support]. -->
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 25px;"|[[File:PHP72_74.png]]
+
|style="padding: 0px 0px 20px 25px;"|[[File:PHP74_81.png]]
 
|}
 
|}
 
{|
 
{|
Line 452: Line 563:
 
*'''Payment Type''' options:
 
*'''Payment Type''' options:
 
**'''After Create''' - resellers must have sufficient credits amount, but he is charged only after a product has been successfully created.
 
**'''After Create''' - resellers must have sufficient credits amount, but he is charged only after a product has been successfully created.
**'''After Order''' - resellers must settle the payment just after the order, the amount due is taken from his account instantly.<br />
+
**'''After Order''' - resellers must settle the payment just after the order, the amount due is taken from his account instantly.
  
 +
*'''Block Unsuspend Action for''' - enter phrases, one per line; if any phrase is used as a suspension reason, the related product will not be automatically unsuspended
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 25px;"|[[File:PR2_14.png]]
 +
|}
 +
 +
{|
 +
|style="padding: 0px 0px 15px 15px;"|'''Logs:'''<br />
 +
*'''Skip Successful Actions''' - select from available actions which you do not need to be logged on the '' 'Logs'' '' section.<br/> Note that only successful messages will be omitted, all unsuccessful action will be still logged.<br/>
 
Remember to submit the changes, once you have finished.
 
Remember to submit the changes, once you have finished.
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 30px 25px;"|[[File:PR2_14.png]]
+
|style="padding: 0px 0px 30px 25px;"|[[File:PR2_14_1.png]]
 
|}
 
|}
  
Line 564: Line 684:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 15px 15px;"| Depending on the product, there can be different actions enabled in the '' 'Settings' '' section.<br/> '''Note:''' ''The following options such as 'Start', 'Stop', 'Reboot', 'Details','Graphs'  are available only for '''Proxmox VPS products'''.''
+
|style="padding: 0px 0px 15px 15px;"| Depending on the product, there can be different actions enabled in the '' 'Settings' '' section.<br/> '''Note:''' ''The following options such as 'Start', 'Stop', 'Reboot', 'Details','Graphs'  are available only for '''Proxmox VE VPS products'''.''
 
|}
 
|}
 
{|
 
{|
Line 570: Line 690:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 15px 15px;"| The '' 'Settings' '' section for the SSL Certificates products (for example GoDaddy SSL or GoGetSSL) will look as presented here:
+
|style="padding: 0px 0px 15px 15px;"| The '' 'Settings' '' section for the SSL Certificates products (for example GoGetSSL) will look as presented here:
 
|}
 
|}
 
{|
 
{|
Line 582: Line 702:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 15px 15px;"| Then, set pricing for a particular item.<br/> '''Important:''' ''The default pricing is set to '-1' (minus one) which is treated as '''disabled'''.''<br/> To enable the preferred pricing method, simply provide a price of the product. <br/> '''Note 1:''' Please remember that '' ' First Payment' '' does not stand for '' ' Setup Fee' ''.<br/> '''Note 2:''' If you decide to set pricing for a particular period, keep in mind that you need to complete '''both fields'''- '' 'First Payment' '' as well as '' 'Recurring' '' <br/> in order for the pricing to be displayed in the Reseller Area.<br/> '''Note 3:''' If you wish to offer ''free'' products then provide the 0.00 price.<br/>  
+
|style="padding: 0px 0px 15px 15px;"| Then, set pricing for a particular item.<br/> '''Important:''' ''The default pricing is set to '-1' (minus one) which is treated as '''disabled'''.''<br/> To enable the preferred pricing method, simply provide a price of the product. <br/>  
 +
'''Note 1:''' Please remember that '' ' First Payment' '' does not stand for '' ' Setup Fee' ''.<br/>  
 +
'''Note 2:''' If you decide to set pricing for a particular period, keep in mind that you need to complete '''both fields''' - '' 'First Payment' '' as well as '' 'Recurring' '' <br/> in order for the pricing to be displayed in the Reseller Area.<br/>  
 +
'''Note 3:''' The module does not support '' 'Free' '' billing cycle. If you wish to offer a product for ''free'' please ensure that you configure the product price as a one-time charge, set to 0.00; One Time = 0.00.<br/> It is crucial that the reseller's product settings align with this configuration to prevent any issues for end-clients in relation to their purchased products. <br/>  
 
|}
 
|}
 
{|
 
{|
Line 596: Line 719:
 
===Configurable Options===
 
===Configurable Options===
 
{|
 
{|
|style="padding: 10px 0px 15px 15px;"|The last section allows to assign existing in your WHMCS configurable options groups.
+
|style="padding: 10px 0px 15px 15px;"|The last section allows for assigning groups to configurable options existing in your WHMCS.
 
Press '' 'Assign Group' '' to begin.
 
Press '' 'Assign Group' '' to begin.
 
|}
 
|}
Line 626: Line 749:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 15px;"|In order to delete configurable options groups simply press the bin icon or use the mas action bution to unassign numerous groups at once.  
+
|style="padding: 0px 0px 20px 15px;"|In order to delete configurable options groups simply press the bin icon or use the mass action button to unassign numerous groups at once.  
 
|}
 
|}
 
{|
 
{|
Line 700: Line 823:
 
{|
 
{|
 
|style="padding: 10px 0px 15px 15px;"|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.<br/>  
 
|style="padding: 10px 0px 15px 15px;"|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.<br/>  
In order to add a new response template press the '' 'Crate Template' '' button and then follow the below instructions.
+
In order to add a new response template press the '' 'Create Template' '' button and then follow the below instructions.
 
|}
 
|}
 
{|
 
{|
Line 777: Line 900:
 
{|
 
{|
 
|style="padding: 0px 0px 15px 15px;"|'' 'Calls' '' subtab contains information about actions supported by the API.<br/>
 
|style="padding: 0px 0px 15px 15px;"|'' 'Calls' '' subtab contains information about actions supported by the API.<br/>
'''Important!''' Please remember that the following API Calls: '' 'Start', 'Reboot', 'Stop', 'Details', 'Graphs' '' are currently available only for Proxmox VPS products <br/> while actions such as '' 'SSL Step One',  'SSL Step Two', 'SSL Step Three', 'Get Info' '' work only for SSL Certificates products.<br/>
+
'''Important!''' Please remember that the following API Calls: '' 'Start', 'Reboot', 'Stop', 'Details', 'Graphs' '' are currently available only for Proxmox VE VPS products <br/> while actions such as '' 'SSL Step One',  'SSL Step Two', 'SSL Step Three', 'Get Info' '' work only for SSL Certificates products.<br/>
  
 
'''''Note:''' The screen below does not capture all the supported functions.<br/> Full API functionality can be found on the module features list at the top of this documentation.''
 
'''''Note:''' The screen below does not capture all the supported functions.<br/> Full API functionality can be found on the module features list at the top of this documentation.''
Line 868: Line 991:
 
{|
 
{|
 
|style="padding: 0px 0px 15px 25px;"|Available '' 'Calls' '' list:<br/>
 
|style="padding: 0px 0px 15px 25px;"|Available '' 'Calls' '' list:<br/>
'''Important!''' Please remember that the following API Calls: '' 'Start', 'Reboot', 'Stop', 'Details', 'Graphs' '' are currently available only for Proxmox VPS products <br/> while actions such as 'SSL Step One',  '' 'SSL Step Two', 'SSL Step Three', 'Get Info' '' work only for SSL Certificates products.<br/>
+
'''Important!''' Please remember that the following API Calls: '' 'Start', 'Reboot', 'Stop', 'Details', 'Graphs' '' are currently available only for Proxmox VE VPS products <br/> while actions such as 'SSL Step One',  '' 'SSL Step Two', 'SSL Step Three', 'Get Info' '' work only for SSL Certificates products.<br/>
 
|}
 
|}
 
{|
 
{|
Line 881: Line 1,004:
  
 
==Integration Modules==
 
==Integration Modules==
===Module Installation===
+
{|
 +
|style="padding: 10px 0px 30px 15px;"|If you have product integration modules generated with Product Reseller in '''version 1.4.x''', there is '''NO NEED''' to prepare the packages again. <br/> Only new integrations (generated with v1.5.0 and later) require 'Server' and 'Server group'.
 +
|}
 +
===Integration Module Installation In Reseller's WHMCS===
 
{|
 
{|
 
|style="padding: 10px 0px 5px 15px;"|'''Below you can find instructions for installation of the integration module on the reseller's WHMCS.'''<br/>
 
|style="padding: 10px 0px 5px 15px;"|'''Below you can find instructions for installation of the integration module on the reseller's WHMCS.'''<br/>
Line 895: Line 1,021:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 15px;"|'''2. Now, go to '' 'System settings' '' → '' 'Products/Services' '' → '' 'Products/Services' '' and create a new group.'''
+
|style="padding: 10px 0px 15px 15px;"|'''2. Now, you will have to configure a new server.'''<br />
 +
To do so, move to '' 'System Settings' '' → '' 'Servers'.'' Once you are there, press '' 'Add New Server'. ''<br/>
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 25px;"|[[File:PR2_63_1.png]]
 +
|}
 +
{|
 +
|style="padding: 0px 0px 15px 15px;"|'''3. Next, fill in the fields according to the below described pattern:
 +
*''Name'' - server free name
 +
*''Hostname'' - provide any hostname
 +
*''Module'' - your integration module name
 +
*''Username'' - API email address
 +
*''Password'' - API Key
 +
*''Access Hash'' - Endpoint
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 25px;"|[[File:PR2_63_2.png]]
 +
|}
 +
{|
 +
|style="padding: 0px 0px 15px 15px;"|'''4. After you configure your server correctly, you will see the following screen.'''<br />
 +
At this point, you need to create a new group for your server. For that purpose, press '' 'Create New Group'. ''
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 25px;"|[[File:PR2_63_3.png]]
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 15px;"|'''5. Enter the name, click on your previously created server, press '' 'Add' '' and then '' 'Save Changes'. '''''
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 25px;"|[[File:63_4.png]]
 +
|}
 +
{|
 +
|style="padding: 0px 0px 15px 15px;"|'''6. The next step to follow is creating a product and its group.'''<br/>
 +
Forward to '' 'System settings' '' → '' 'Products/Services' '' → '' 'Products/Services' '' and create a new group.
 
|}
 
|}
 
{|
 
{|
Line 901: Line 1,060:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 15px 15px;"|'''3. Enter a product group name and press '' 'Save Changes' ''.
+
|style="padding: 0px 0px 20px 15px;"|'''7. Enter a product group name and press '' 'Save Changes' ''.
 
|}
 
|}
 
{|
 
{|
Line 907: Line 1,066:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 15px 15px;"|'''4. When you have a product group, you can assign your product to it.'''<br />
+
|style="padding: 0px 0px 15px 15px;"|'''8. When you have a product group, you can assign your product to it.'''<br />
 
To create a product, click on '' 'Create a New Product'.''
 
To create a product, click on '' 'Create a New Product'.''
 
|}
 
|}
Line 914: Line 1,073:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 15px 15px;"|'''5. Afterwards, choose a product type, then select the previously created product group from the dropdown menu and provide a product name. <br /> Finally, find the '' uploaded integration module'' in the dropdown menu. Do not forget to save changes.   
+
|style="padding: 0px 0px 15px 15px;"|'''9. Afterwards, choose a product type, then select the previously created product group from the dropdown menu and provide a product name.''' <br /> Finally, find the '' uploaded integration module'' in the dropdown menu. Do not forget to save changes.   
 
|}
 
|}
 
{|
 
{|
Line 920: Line 1,079:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 15px 15px;"|'''6. In the '' 'Details' '' tab of the product configuration, we highly recommend setting up your '' 'Welcome Email' '' template first. <br/>  
+
|style="padding: 0px 0px 15px 15px;"|'''10. In the '' 'Details' '' tab of the product configuration, we highly recommend setting up your '' 'Welcome Email' '' template first. <br/>  
 
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.<br/> Before you choose or create your own product's '' 'Welcome Email' '', please make sure which of the merge fields variables in the email template are currently supported by the product.<br/> You can find more information about setting up email templates and using merge fields variables [https://docs.whmcs.com/Email_Templates here].
 
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.<br/> Before you choose or create your own product's '' 'Welcome Email' '', please make sure which of the merge fields variables in the email template are currently supported by the product.<br/> You can find more information about setting up email templates and using merge fields variables [https://docs.whmcs.com/Email_Templates here].
 
|}
 
|}
Line 927: Line 1,086:
 
|}
 
|}
 
{|
 
{|
 
+
|style="padding: 0px 0px 20px 15px;"|'''11. Set up the pricing for your product.'''
|style="padding: 0px 0px 20px 15px;"|'''7. Set up the pricing for your product.'''
+
 
|}
 
|}
 
{|
 
{|
Line 934: Line 1,092:
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 15px;"|'''8. Finally, after saving previous changes, go to the '' 'Module Settings' '' and follow these steps:<br /> Provide API Username and API Key which were generated [[#API_Configuration|here]] and save changes.
+
|style="padding: 0px 0px 20px 15px;"|'''12. Finally, after saving previous changes, go to the '' 'Module Settings' '' and select the integration module server that you created in the below steps.  
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 25px;"|[[File:PR2_69.png]]
+
|style="padding: 0px 0px 20px 25px;"|[[File:PR2_68_1.png]]
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 15px;"|'''Now you have the possibility to choose the product from the dropdown menu. When selected, save changes again.  
+
|style="padding: 0px 0px 15px 15px;"|'''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).'''<br/>
 +
Note that if you select '''Auto''', original billing cycle from your WHMCS will be assigned to this product.  
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 25px;"|[[File:PR2_70.png]]
+
|style="padding: 0px 0px 20px 25px;"|[[File:PR2_68_2.png]]
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 20px 15px;"|'''At the end, new actions will show up. You can now decide which ones should be enabled. Simply, tick the preferred actions.<br /> Note:''' ''Please remember that these actions are available only for Proxmox VPS products.''
+
|style="padding: 0px 0px 15px 15px;"|'''14.Finally, '' 'Product Details' '' section will appear. Decide which actions of the available you wish to enable. Simply check the preferred options.'''<br />  
 +
Please remember that actions visible on the below screen are available only for Proxmox VE VPS products.<br/> Every other integration module has its own options, see the features list to check options of every integration.
 
|}
 
|}
 
{|
 
{|
Line 953: Line 1,113:
 
{|
 
{|
 
|style="padding: 0px 0px 15px 15px;"|'''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.'''<br/>
 
|style="padding: 0px 0px 15px 15px;"|'''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.'''<br/>
Remember to save the changes in the end. <br/> Please note that the below screen stands for EasyDCIM integration product module settings.
+
Remember to save the changes in the end. <br/> Please note that the below screen stands for Proxmox VE VPS integration product module settings.
 
|}
 
|}
 
{|
 
{|
Line 959: Line 1,119:
 
|}
 
|}
  
 
+
===Proxmox VE VPS For WHMCS Integration===
===Proxmox VPS For WHMCS Integration===
+
 
{|
 
{|
 
|style="padding: 10px 0px 15px 15px;"|After placing an order, the client area may appear differently depending on the purchased product.<br/> 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.
 
|style="padding: 10px 0px 15px 15px;"|After placing an order, the client area may appear differently depending on the purchased product.<br/> 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.
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 15px 15px;"|'''Dedicated integration with [https://www.docs.modulesgarden.com/Proxmox_VPS_For_WHMCS Proxmox VPS For WHMCS]'''
+
|style="padding: 0px 0px 15px 15px;"|'''Dedicated integration with [https://www.docs.modulesgarden.com/Proxmox_VPS_For_WHMCS Proxmox VE VPS For WHMCS] that allows smooth and remote management of the resold VPS servers.'''
The following picture presents a Proxmox 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:
+
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:
 
* Get VM Details
 
* Get VM Details
 
* Get VM Graphs
 
* Get VM Graphs
 
* Start VM
 
* Start VM
 
* Stop VM
 
* Stop VM
* Reboot VM<br/>
+
* Reboot VM
You may find details of Configurable Options assigned to this product in the next tab.<br/>
+
* Reinstall VM
 +
* Access noVNC, Xterm.js and Spice Console
 +
You may find details of the Configurable Options assigned to this product in the next tab.<br/>
  
'''Note:''' Please remember that the presented below options are dedicated to Proxmox VPS. <br/>
+
'''Note:''' Please remember that the options presented below are dedicated to Proxmox VE VPS products. <br/>
 
'''Important!''' For other modules, the side menu section with supported features will look like for products based on the '' 'Auto Release' '' module. For more info click [https://docs.whmcs.com/Auto_Release here].
 
'''Important!''' For other modules, the side menu section with supported features will look like for products based on the '' 'Auto Release' '' module. For more info click [https://docs.whmcs.com/Auto_Release here].
 
|}
 
|}
 
{|
 
{|
 
|style="padding: 0px 0px 30px 25px;"|[[File:PR2_72.png]]
 
|style="padding: 0px 0px 30px 25px;"|[[File:PR2_72.png]]
 +
|}
 +
 +
===EasyDCIM Dedicated Servers For WHMCS Integration - Servers Reselling===
 +
{|
 +
|style="padding: 10px 0px 15px 15px;"|Neat integration with [https://www.docs.modulesgarden.com/EasyDCIM_Dedicated_Servers_For_WHMCS EasyDCIM Dedicated Servers For WHMCS] allows quick and easy reselling of dedicated servers as well as their effortless billing.<br/> Please follow [https://www.docs.easydcim.com/whmcs-integration/servers-reselling/ the EasyDCIM official documentation] to learn everything you need to know about the scope of possibilities.<br/>
 +
For now, have a look below for the picture of the client area view in the case of the EasyDCIM Dedicated Servers product.<br/>
 +
 +
Supported actions:
 +
* Get VM Details
 +
* Get VM Graphs
 +
* Boot VM
 +
* Reboot VM
 +
* Shutdown VM
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 25px;"|[[File:PR2_72_3.png]]
 +
|}
 +
{|
 +
|style="padding: 0px 0px 15px 15px;"|Exemplary graph section view:
 +
|}
 +
{|
 +
|style="padding: 0px 0px 30px 25px;"|[[File:PR_ED_28_2.png]]
 
|}
 
|}
  
 
===SSL Products Integration===
 
===SSL Products Integration===
 
{|
 
{|
|style="padding: 10px 0px 15px 15px;"|Dedicated integration with [https://www.docs.modulesgarden.com/GoGetSSL_For_WHMCS GoGetSSL For WHMCS] and [https://www.modulesgarden.com/products/whmcs/godaddy-ssl GoDaddy SSL For WHMCS] allows complete provisioning and remote supervision over SSL certificates. <br/>
+
|style="padding: 10px 0px 15px 15px;"|Dedicated integration with [https://www.docs.modulesgarden.com/GoGetSSL_For_WHMCS GoGetSSL For WHMCS] allows complete provisioning and remote supervision over SSL certificates. <br/>
 
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: <br/>  
 
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: <br/>  
 
|}
 
|}
Line 1,004: Line 1,187:
 
|}
 
|}
  
===EasyDCIM Dedicated Servers For WHMCS Integration===
+
===Plesk Key Administrator For WHMCS Integration===
 
{|
 
{|
|style="padding: 10px 0px 15px 15px;"|Neat integration with [https://www.docs.modulesgarden.com/EasyDCIM_Dedicated_Servers_For_WHMCS EasyDCIM Dedicated Servers For WHMCS] allows quick and easy reselling of dedicated servers and their billing.<br/> Please follow to the EasyDCIM official documentation [https://www.docs.easydcim.com/whmcs-integration/servers-reselling/ article] to learn anything you need to know about the integration.<br/>
+
|style="padding: 10px 0px 15px 15px;"|Dedicated integration with [https://www.docs.modulesgarden.com/Plesk_Key_Administrator_For_WHMCS Plesk Key Administrator For WHMCS] allows provisioning of various kinds of Plesk licenses.<br/>
For now, have a look below for the picture of the client area view in the case of the EasyDCIM Dedicated Servers product.<br/>
+
The picture below presents what the client area looks like in the case of the Plesk Key Administrator product.<br/>
 +
|}
 +
{|
 +
|style="padding: 0px 0px 30px 25px;"|[[File:PR2_72_4.png]]
 +
|}
  
Supported actions:
+
===Virtualizor By Softaculous Module Integration===
* Get VM Details
+
{|
* Get VM Graphs
+
|style="padding: 10px 0px 15px 15px;"|Virtualizor is a powerful web based VPS Control Panel using which a user can deploy and manage VPS on servers with a single click.
* Boot VM
+
Dedicated integration between Products Reseller For WHMCS and the [https://www.virtualizor.com/docs/billing/whmcs-module/ Virtualizor WHMCS Module] allows provisioning of servers and access to VNC console and selected graphs.
* Reboot VM
+
*Start
* Shutdown VM
+
*Reboot
 +
*Stop
 +
*Power Off
 +
*Graphs
 +
*VNC Console
 +
*Request Cancellation
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 30px 25px;"|[[File:PR2_72_3.png]]
+
|style="padding: 0px 0px 20px 25px;"|[[File:PR2_72_5.png]]
 +
|}
 +
{|
 +
|style="padding: 0px 0px 30px 25px;"|[[File:PR2_72_6.png]]
 
|}
 
|}
  
===Plesk Key Administrator For WHMCS Integration===
+
===WHMCS Licensing Addon===
 
{|
 
{|
|style="padding: 10px 0px 15px 15px;"|Dedicated integration with [https://www.docs.modulesgarden.com/Plesk_Key_Administrator_For_WHMCS Plesk Key Administrator For WHMCS] allows provisioning of various kinds of Plesk licenses.<br/>
+
|style="padding: 10px 0px 15px 15px;"|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.  
The picture below presents what the client area looks like in the case of the Plesk Key Administrator product.<br/>
+
*Reissue License
 +
*Request Canellation
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 30px 25px;"|[[File:PR2_72_4.png]]
+
|style="padding: 0px 0px 30px 25px;"|[[File:PR2_72_7.png]]
 
|}
 
|}
 +
 +
==Products Reseller - Provisioning Product==
 +
{|
 +
|style="padding: 10px 0px 15px 15px;"|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. <br/>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.<br/>
 +
<br/>
 +
Follow the steps below to create and configure the Products Reseller product:<br/>
 +
 +
'''1. In order to create a new Products Reseller product, go to '' 'System Settings' → 'Products/Services'.'' '''<br/>
 +
Press '' 'Create New Group' '' to add a new one.
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 25px;"|[[File:DR2_65.png]]
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 15px;"|'''2. Fill in a product group name and press '' 'Save Changes'.'' '''
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 25px;"|[[File:PR2_81.png]]
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 15px;"|'''3. Next, add a new product in the previously created group.'''
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 25px;"|[[File:PR2_82.png]]
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 15px;"|'''4. Set the product type to '' 'Other','' name the product and assign it to the ''Products Reseller'' module.'''
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 25px;"|[[File:PR2_83.png]]
 +
|}
 +
{|
 +
|style="padding: 0px 0px 15px 15px;"|'''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' .'''<br/>
 +
Note that there is no server that shall be selected. Your product is ready to order!
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 25px;"|[[File:PR2_84.png]]
 +
|}
 +
{|
 +
|style="padding: 0px 0px 15px 15px;"|Allowed actions on the product:<br/>
 +
 +
*'''Create''' - once a client orders the product, go to Client's ''Products/Services'' and run the '' 'Create' '' action.<br/> When successful, the client appears on the list of resellers in your addon ''(see the screen below)''
 +
 +
*'''Suspend''' - after successful ''Suspend'' action in the Client's ''Products/Services'', the ' ''API Key Status'' ' of this reseller is switched off
 +
 +
*'''Unsuspend''' - run '' 'Unsuspend'' ' command to again switch on the reseller's '' 'API Key Status'' '
 +
 +
*'''Terminate''' - when the product is terminated, the Reseller's '' 'API Key Status' '' is again switched off
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 25px;"|[[File:PR2_85.png]]
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 15px;"|Addon view:
 +
|}
 +
{|
 +
|style="padding: 0px 0px 20px 25px;"|[[File:PR2_86.png]]
 +
|}
 +
{|
 +
|style="padding: 0px 0px 15px 15px;"|'''Once any of your clients orders this product, they will automatically become resellers.''' <br/>
 +
They will get access to '' 'Reseller Area', '' where from they can resell the products, that  belong to the pricing group, further.
 +
|}
 +
{|
 +
|style="padding: 0px 0px 30px 25px;"|[[File:PR2_87.png]]
 +
|}
 +
  
 
==Sample Workflow==
 
==Sample Workflow==
Line 1,063: Line 1,325:
 
In case the reseller does not have sufficient credits on his account to pay for the product creation, the process is stopped until the invoice is manually paid by the reseller.<br/>
 
In case the reseller does not have sufficient credits on his account to pay for the product creation, the process is stopped until the invoice is manually paid by the reseller.<br/>
 
The reseller's income is the difference between the price of the sold product to the End-Client and the price he paid to the provider.  
 
The reseller's income is the difference between the price of the sold product to the End-Client and the price he paid to the provider.  
 +
|}
 +
 +
==Upgrade Instructions==
 +
{|
 +
|style="padding: 10px 0px 30px 15px;"|Products Reseller For WHMCS allows to upgrade both the product and the configurable options.<br/> When the '' 'Change Package/Upgrade' '' action in the reseller's WHMCS is started, the same action is started in the main module environment.<br/> The request contains information on both the product and its configurable options (if there are any assigned). <br/>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===
 +
{|
 +
|style="padding: 10px 0px 30px 15px;"|'''Supported''' by the module product upgrade scenarios:
 +
*Product A ''(without any config options)'' → Product B ''(without any config options)'' - additional payment is required or adequate amount of money is returned, depending on the number of days remaining until the end of the billing cycle
 +
*Product A ''(with config options)'' → Product B ''(without any config options)'' - additional payment is required or adequate amount of money is returned, depending on the number of days remaining until the end of the billing cycle
 +
*Product A ''(without any config options)'' → Product B ''(with config options)'':
 +
**Case 1: products A and B have '''the same''' Configurable Options Group assigned - additional payment is required or adequate amount of money is returned, depending on the number of days remaining until the end of the billing cycle
 +
**Case 2: products A and B have '''different''' Configurable Options Groups assigned - '''this upgrade scenario is not supported'''
 +
*Changing billing cycle within one product (with or without configurable options) - additional payment is required or adequate amount of money is returned, depending on the number of days remaining until the end of the billing cycle
 +
|}
 +
 +
===Configurable Options Upgrade===
 +
{|
 +
|style="padding: 10px 0px 30px 15px;"|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).
 
|}
 
|}
  
 
=Tips=
 
=Tips=
 
{|
 
{|
|style="padding: 10px 0px 5px 15px;"|1. Products Reseller For WHMCS can be integrated with other ModulesGarden products to extend the range of available features, <br/> e.g. '''the integration with [https://www.docs.modulesgarden.com/Proxmox_VPS_For_WHMCS Proxmox VPS For WHMCS]''' provides such additional actions as: '' get VM details, get VM graphs, start VM, stop VM, reboot VM.'' <br/>
+
|style="padding: 10px 0px 10px 15px;"|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.
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 10px 15px;"|2. Make sure that you are not blocking access to the '' 'api' '' catalog by your '' '.htaccess' '' file.
+
|style="padding: 0px 0px 5px 15px;"|2. Products Reseller For WHMCS can be integrated with other ModulesGarden products to extend the range of available features, <br/> e.g. '''the integration with [https://www.docs.modulesgarden.com/Proxmox_VPS_For_WHMCS Proxmox VE VPS For WHMCS]''' provides such additional actions as: '' get VM details, get VM graphs, start VM, stop VM, reboot VM.'' <br/>
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 10px 15px;"|3. Products Reseller For WHMCS enables you to resell your products not only via WHMCS system.<br />
+
|style="padding: 0px 0px 10px 15px;"|3. Make sure that you are not blocking access to the '' 'api' '' catalog by your '' '.htaccess' '' file.
 +
|}
 +
{|
 +
|style="padding: 0px 0px 5px 15px;"|4. Products Reseller For WHMCS enables you to resell your products not only via WHMCS system.<br />
 
You are able to easily prepare integration module for any system (Blesta, HostBill, Clientexec, BoxBilling, and many more) using Products Reseller For WHMCS API.<br />
 
You are able to easily prepare integration module for any system (Blesta, HostBill, Clientexec, BoxBilling, and many more) using Products Reseller For WHMCS API.<br />
 
All you need is knowledge of for example PHP programming language and our module's [[#API Documentation|API]].
 
All you need is knowledge of for example PHP programming language and our module's [[#API Documentation|API]].
 
|}
 
|}
 
{|
 
{|
|style="padding: 0px 0px 30px 15px;"|4. If a client buys a product from the reseller and pays in a different currency than the reseller's default currency <br /> then the amount will be converted into the reseller's default currency basing on the '' 'Base Conv. Rate' '' (''your WHMCS  → Setup → Payments → Currencies''). <br>
+
|style="padding: 0px 0px 30px 15px;"|5. If a client buys a product from the reseller and pays in a different currency than the reseller's default currency <br /> then the amount will be converted into the reseller's default currency basing on the '' 'Base Conv. Rate' '' (''your WHMCS  → Setup → Payments → Currencies''). <br>
 +
|}
 +
 
 +
==How To Use Language Overrides==
 +
{|
 +
|style="padding: 10px 0px 15px 15px;"|'''Incorporating language customizations - the module readily accommodates language overrides, allowing you to tailor the language files to your preferences.'''<br/> 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.<br/>
 +
|}
 +
{|
 +
|style="padding: 0px 0px 15px 15px;"|Here's how to apply language overrides:
 +
* Navigate to the ''~/langs/'' directory located within the following ''yourWHMCS/modules/servers/moduleName/langs/'' path.
 +
* Within this directory, create a new file or duplicate the language file you intend to modify. For instance, if you wish to create an override for the English language, establish the following directory structure:
 +
  ''~/langs/overrides/english.php''.
 +
* Open the newly created override file to edit its contents.
 +
* At the beginning of the file, indicate the used code, for instance, you can use: '''<?php''' for PHP code.
 +
* Adapt the file content according to your requirements. You can either selectively modify specific variables or opt to revise the entire content of the language file.
 +
 
 +
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';
 +
|}
 +
{|
 +
|style="padding: 0px 0px 15px 15px;"|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.<br/>
 +
 
 +
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.<br/> Note that you do not need to paste all the original content of the lang file into the override file. Enter there only the lines that you wish to change, every other line will be fetched from the original module lang file.<br/> Consequently, the override lang file might include only one or just a few lines.
 
|}
 
|}
  
 
=Update Instructions=
 
=Update Instructions=
 
{|
 
{|
|style="padding: 10px 0px 30px 15px;"|Essential guidance through the process of updating the module is offered '''[https://www.docs.modulesgarden.com/How_To_Update_WHMCS_Module here]'''.<br/>
+
|style="padding: 10px 0px 30px 15px;"|An essential guidance through the process of updating the module is offered '''[https://www.docs.modulesgarden.com/How_To_Update_WHMCS_Module here]'''.<br/>
 +
Ensure successful completion of the module update by carefully following each step, thereby preventing data loss or any unforeseen issues.<br/> Additionally, you will find a current list of supplementary actions necessary for a smooth update process there.
 +
|}
 +
=Upgrade Guide=
 +
{|
 +
|style="padding: 10px 0px 30px 15px;"|Seeking a solution that offers greater flexibility, customization tailored to your precise needs, and unrestricted availability?<br/> 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.<br/>
 +
 
 +
Opt for the [https://www.modulesgarden.com/products/whmcs/products-reseller#open-source-version Open Source version] of your Products Reseller For WHMCS module to unlock these benefits.<br/> 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.<br/>  
  
Keep in mind there is a quick and easy option in our client area that will let you upgrade the license of your module to an open source version at any time - and at a lower price!<br/>
+
Follow a [https://www.docs.modulesgarden.com/How_To_Upgrade_WHMCS_Module 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.  
To take advantage of it, simply use the '''License Upgrade''' button located on the product's page and a discounted invoice will be generated automatically.<br/>
+
 
|}
 
|}
  

Latest revision as of 13:04, 19 April 2024

Contents

[edit] 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.
Moreover, your resellers grant all crucial information about placed orders along with API documentation. As for end clients, they are able to buy preferred products and perform basic actions on them later.

  • 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
✔ 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
✔ 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
✔ 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.1 Back To PHP 7.4
✔ Supports WHMCS Themes "Six", "Twenty-One" And "Lagom WHMCS Client Theme"
✔ Supports WHMCS V8.8 Back To WHMCS V8.6
✔ Requires ionCube Loader V12 Or Later
✔ Easy Module Upgrade To Open Source Version

[edit] 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.
PR2 1.png
2. In the downloaded file you might find one or two packages that support different PHP versions.

In the most recent versions of the module, you will find only one package that supports PHP 7.4 and later.

PHP74 81.png
3. Extract the package and upload its content into the main WHMCS directory.

The content of the package to upload should look like this.

PR2 2.png
4. 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'.

PR2 3.png
5. 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'.

PR2 4.png
6. In the next step, set up the 'storage' folder as recursively writable.

This folder is available at 'yourWHMCS/modules/addons/ProductsReseller/'.

PR2 5.png
7. 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.

PR2 6.png
8. 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'.

PR2 7.png
9. You have just successfully installed Products Reseller!

You can access your module at 'Addons' 'Products Reseller'.

PR2 8.png

[edit] Configuration and Management

Products Reseller For WHMCS allows your customers to resell products on their own WHMCS.

[edit] 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.
PR2 9.png
You may easily change the graph settings by changing the time scope and choosing products you are interested in.
PR2 10.png
Most profitable Resellers & Latest invoices summary:
PR2 11.png

[edit] 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.

PR2 12.png
We will describe these options below.

Global API related section:

  • API Status - enable/disable Products Reseller API.
  • IP Addresses Restriction - enable/disable restricting connection to Products Reseller API only for IP addresses specified in the 'Allowed IP Addresses' field.
  • API Requests Restriction - enable option to restrict the number of API requests.
PR2 13.png
Miscellaneous:
  • Low Credit Notification - a notification to your client will be sent when credit balance on client's account falls below entered value.
    You may view and edit the "Low Credit Notification" custom email template sent to clients at 'WHMCS' → 'Setup' → 'Email Templates'. This email message is sent with the main WHMCS cron job.
  • Low Credit Amount - amount of credits, when reached a notification will be sent.
  • Payment Type options:
    • After Create - resellers must have sufficient credits amount, but he is charged only after a product has been successfully created.
    • After Order - resellers must settle the payment just after the order, the amount due is taken from his account instantly.
  • Block Unsuspend Action for - enter phrases, one per line; if any phrase is used as a suspension reason, the related product will not be automatically unsuspended
PR2 14.png
Logs:
  • Skip Successful Actions - select from available actions which you do not need to be logged on the 'Logs section.
    Note that only successful messages will be omitted, all unsuccessful action will be still logged.

Remember to submit the changes, once you have finished.

PR2 14 1.png

[edit] Groups

Let's start by creating the first group for your resellers. Use either of the buttons marked on the screen below.
PR2 15.png
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.
PR2 16.png

[edit] 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.
  • API Status - enable/disable Products Reseller API for Resellers assigned to this very group only
  • IP Address Restriction - enable/disable restricting connection to Products Reseller API only for IP addresses specified in the 'Allowed IP Addresses' field.
  • API Requests Restriction - enable option to restrict the number of API requests.
  • Show API Documentation - toggle to allow resellers access to API documentation directly from their Reseller Area.
  • Low Credit Notification - turn on sending notifications to your client when credit balance on client's account falls below entered value.
    You may view and edit the "Low Credit Notification" custom email template sent to clients at 'WHMCS' → 'Setup' → 'Email Templates'. This email message is sent with the main WHMCS cron job.
  • Low Credit Amount - amount of credits, when reached a notification will be sent
  • Payment Type options:
    • After Create - resellers must have sufficient credits amount, but he is charged only after a product has been successfully created.
    • After Order - resellers must settle the payment just after the order, the amount due is taken from his account instantly.

Note: Please remember that upon unsuccessful product creation, the module does not take any credits from the Reseller Account.

Save the changes when ready.

PR2 17.png

[edit] API Permissions

Toggle options that resellers will be allowed to use via API.
PR2 18.png

[edit] 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.

PR2 19.png
To generate a new integration module you need to provide following data:
  • Enter your module unique name
  • Type in a short description of the module, it will be visible on the activation page of the registrar
  • Upload a file with documentation if you have prepared any - you may use any format.
    The provided documentation may be a form of guidebook for Resellers on how to install and configure the module.
    It is the responsibility of Providers to inform their Resellers about essential reselling tips and others.
PR2 20.png
Newly created Integration will appear on the list. You may:
  1. Edit its details (change name, description, or file) at any time
  2. Download the documentation
  3. Download the integration package
  4. Delete the integration
PR2 21.png
In order to delete numerous integration at once, use the mass action button.
PR2 22.png

[edit] 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.

PR2 23.png
Select products from the available and press 'Confirm'.
PR2 24.png
Assigned products will appear on the list where the following options are available:
  • Settings
  • Set Pricing
  • Unassign Product
PR2 25.png
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.
PR2 26.png
The 'Settings' section for the SSL Certificates products (for example GoGetSSL) will look as presented here:
PR2 26 1.png
The below options in 'Settings' section are available for EasyDCIM Dedicated Servers products:
PR2 26 2.png
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' .
Note 2: If you decide to set pricing for a particular period, keep in mind that you need to complete both fields - 'First Payment' as well as 'Recurring'
in order for the pricing to be displayed in the Reseller Area.
Note 3: The module does not support 'Free' billing cycle. If you wish to offer a product for free please ensure that you configure the product price as a one-time charge, set to 0.00; One Time = 0.00.
It is crucial that the reseller's product settings align with this configuration to prevent any issues for end-clients in relation to their purchased products.

PR2 27.png
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.
PR2 28.png

[edit] Configurable Options

The last section allows for assigning groups to configurable options existing in your WHMCS.

Press 'Assign Group' to begin.

PR2 28 1.png
Select from the available configurable options groups, they will be then assigned to this group of resellers.
PR2 28 2.png
Assigned configurable options groups will appear on the list, you may:
  • Update Pricing (1)
  • Unassign Configurable Options Group (2)
PR2 28 3.png
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.
Important 2: If you change the config option price to 0.00 such config option will be free of charge.

PR2 28 4.png
In order to delete configurable options groups simply press the bin icon or use the mass action button to unassign numerous groups at once.
PR2 28 5.png
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.
PR2 29.png
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.
PR2 30.png

[edit] Resellers

In this section you will find a list of your active Resellers. Press 'Add Reseller' to make one of your clients a reseller.
PR2 31.png
  • Select one of your previously created groups, to which the reseller should be assigned.
  • Then select one of your clients from the dropdown, start typing to see a list of clients
  • Generate an API Key for the Reseller, it will be necessary when configuring the integration module with the Reseller's platform
  • Prepare a list of allowed IP addresses, use comma or space to separate - note that this option must have been enabled previously in the module general settings here
  • API Status - toggle to allow reseller generate the API key in the Reseller Area
  • API Limits - toggle to be able to define precise limits
    • API Interval [Min] - enter a time interval in minutes in which a number of API requests provided below can be called
    • API Requests Limit - maximum number of API requests in the time interval
PR2 32.png

[edit] Reseller Details

[edit] 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.

PR2 33.png

[edit] 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.
PR2 34.png

[edit] 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.
PR2 35.png

[edit] 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.

PR2 36.png
Provide the pattern for search and replace in the system response depending on the type.
  • For Text type, simply provide a string like 'Error Response'.
  • For Regular Expression type, you need to provide a regular expression which will be replaced.
    For example, if you want to replace any dollar price in the response provide '\$\d+\.\d+', in this case it will replace strings like '$8.25'.
  • If you want to replace any response, simply type '.+' in here.
PR2 37.png
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.
PR2 38.png
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.
PR2 39.png
Finally,
  • choose 'Text' or 'Regular Expression' from Type dropdown menu.

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.

  • Registrar Action - must be chosen from dropdown menu as well to specify upon which action provided patterns will be searched for.

Remember, to finish successfully you need to press the 'Confirm' button.

PR2 40.png
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.
PR2 41.png

[edit] Module Logs

In 'Logs' section you may preview a list of API requests and responses, including errors with the most important details on them.
PR2 42.png
Use action buttons to delete all logs or just single entries.
PR2 43.png

[edit] Documentation

[edit] 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:

  • Endpoint - URL to which all the API requests are directed
  • Authorization - Username and token parameters to authenticate the client in the API request
  • Example - exemplary request to API to renew a product
PR2 44.png
'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
while actions such as 'SSL Step One', 'SSL Step Two', 'SSL Step Three', 'Get Info' work only for SSL Certificates products.

Note: The screen below does not capture all the supported functions.
Full API functionality can be found on the module features list at the top of this documentation.

PR2 45.png
The last section includes 'Models' details.
PR2 46.png

[edit] Module Documentation

'Module Documentation ' is a hyperlink. It leads to the 'Products Reseller For WHMCS' wiki article you are currently reading.
PR2 52.png

[edit] 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.

PR2 53.png

[edit] 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.
PR2 54.png

[edit] Pricing

The 'Pricing' section includes a list of the Reseller's products with the option to preview its pricing set up by the provider.
PR2 55.png
PR2 56.png
PR2 56 1.png

[edit] Settings

Under the 'Settings' section you will find any API details necessary to install and activate the integration module.
PR2 57.png
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.
PR2 58.png

[edit] Logs

Preview a list of logs on API requests and responses, including errors stored in the module.
PR2 59.png

[edit] 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:

  • Endpoint - URL to which all the API requests are directed
  • Authorization - Username and token parameters to authenticate the client in the API request
  • Example - exemplary request to API to renew a product
PR2 60.png
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
while actions such as 'SSL Step One', 'SSL Step Two', 'SSL Step Three', 'Get Info' work only for SSL Certificates products.

PR2 61.png
Available 'API Models' list:
PR2 62.png

[edit] 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'.

[edit] 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.
Important: The folder and module name as well as a description of the extracted integration module are customized by the provider and will be different than the one presented in the example below.

PR2 63.png
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'.

PR2 63 1.png
3. Next, fill in the fields according to the below described pattern:
  • Name - server free name
  • Hostname - provide any hostname
  • Module - your integration module name
  • Username - API email address
  • Password - API Key
  • Access Hash - Endpoint
PR2 63 2.png
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'.

PR2 63 3.png
5. Enter the name, click on your previously created server, press 'Add' and then 'Save Changes'.
63 4.png
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.

PR2 64.png
7. Enter a product group name and press 'Save Changes' .
PR2 65.png
8. When you have a product group, you can assign your product to it.

To create a product, click on 'Create a New Product'.

PR2 66.png
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.
PR2 67.png
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.
Before you choose or create your own product's 'Welcome Email' , please make sure which of the merge fields variables in the email template are currently supported by the product.
You can find more information about setting up email templates and using merge fields variables here.

PR2 67 1.png
11. Set up the pricing for your product.
PR2 68.png
12. Finally, after saving previous changes, go to the 'Module Settings' and select the integration module server that you created in the below steps.
PR2 68 1.png
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.

PR2 68 2.png
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.
Every other integration module has its own options, see the features list to check options of every integration.

PR2 71.png
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.
Please note that the below screen stands for Proxmox VE VPS integration product module settings.

PR2 71 1.png

[edit] 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:

  • Get VM Details
  • Get VM Graphs
  • Start VM
  • Stop VM
  • Reboot VM
  • Reinstall VM
  • Access noVNC, Xterm.js and Spice Console

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.
Important! For other modules, the side menu section with supported features will look like for products based on the 'Auto Release' module. For more info click here.

PR2 72.png

[edit] 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:

  • Get VM Details
  • Get VM Graphs
  • Boot VM
  • Reboot VM
  • Shutdown VM
PR2 72 3.png
Exemplary graph section view:
PR ED 28 2.png

[edit] 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:

PR2 72 1.png

[edit] 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:

  • Get Project Details
  • Log In To Control Panel
PR2 72 2.png

[edit] 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.

PR2 72 4.png

[edit] 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.

  • Start
  • Reboot
  • Stop
  • Power Off
  • Graphs
  • VNC Console
  • Request Cancellation
PR2 72 5.png
PR2 72 6.png

[edit] 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.
  • Reissue License
  • Request Canellation
PR2 72 7.png

[edit] 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.


Follow the steps below to create and configure the Products Reseller product:

1. In order to create a new Products Reseller product, go to 'System Settings' → 'Products/Services'.
Press 'Create New Group' to add a new one.

DR2 65.png
2. Fill in a product group name and press 'Save Changes'.
PR2 81.png
3. Next, add a new product in the previously created group.
PR2 82.png
4. Set the product type to 'Other', name the product and assign it to the Products Reseller module.
PR2 83.png
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!

PR2 84.png
Allowed actions on the product:
  • Create - once a client orders the product, go to Client's Products/Services and run the 'Create' action.
    When successful, the client appears on the list of resellers in your addon (see the screen below)
  • Suspend - after successful Suspend action in the Client's Products/Services, the ' API Key Status ' of this reseller is switched off
  • Unsuspend - run 'Unsuspend ' command to again switch on the reseller's 'API Key Status '
  • Terminate - when the product is terminated, the Reseller's 'API Key Status' is again switched off
PR2 85.png
Addon view:
PR2 86.png
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.

PR2 87.png


[edit] Sample Workflow

In this section we will present to you a sample workflow of the module.

In a basic workflow 3 users take part:
Provider – a person with Products Reseller For WHMCS installed on the WHMCS system.
Reseller - a provider's client who aims at reselling products offered to him by the provider.
The reseller must own a system with integration module generated for him by the provider with Products Reseller For WHMCS.
End Client – a person with a client account in the Reseller's WHMCS.

Provider's Part
Let us start from the beginning. Provider installs Products Reseller For WHMCS in the system.
He already has some products in the offer and wishes to allow the reseller to resell them.
Now, the provider configures Products Reseller For WHMCS, creates groups, configures them and assigns products, config options and defines their pricing for the reseller who is assigned to one of the groups.
Finally, selects which of the clients will become resellers, assigns them to previously created groups and generates access details.

Reseller Part
The Reseller has access to the Reseller Area once logged into the provider's client area.
There, he can download both the integration module and its documentation as well as generate and copy any API details required to activate the integration module in his own system.
Then, the reseller needs to set up products that the provider allows him to resell with the integration module delivered by the provider. Defines the pricing (prices must be higher than the ones the provider has set up to generate any income).
There is one step that separates the reseller from offering the product from his system.
The reseller must add funds to his credit balance in the provider system to be able to pay off the charges and settle the amounts owed to the provider for his resold products.
Provider creates an 'add funds invoice' for the Reseller, the Reseller pays the invoice and then again the Provider adds the same amount to Reseller's credit balance.
From now on, any product can be ordered.

End Client
End Client orders a product from his client area in the Reseller's system.
Once the payment is complete, details of the ordered product (i.e account credentials) are sent to the end-client mail address using the selected reseller's welcome email template.

Last Word About Payment
Now, that the End-Client has ordered and paid the reseller for the product, at the provider's system a new invoice for that product is created automatically (on behalf of the reseller).
Depending on the selected "Payment Type" configuration the invoice will be paid with credits and product attempted to be created or attempt to create the product and if successful, the invoice will be paid with credits.
In case the reseller does not have sufficient credits on his account to pay for the product creation, the process is stopped until the invoice is manually paid by the reseller.
The reseller's income is the difference between the price of the sold product to the End-Client and the price he paid to the provider.

[edit] 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.

[edit] Product Upgrade

Supported by the module product upgrade scenarios:
  • Product A (without any config options) → Product B (without any config options) - additional payment is required or adequate amount of money is returned, depending on the number of days remaining until the end of the billing cycle
  • Product A (with config options) → Product B (without any config options) - additional payment is required or adequate amount of money is returned, depending on the number of days remaining until the end of the billing cycle
  • Product A (without any config options) → Product B (with config options):
    • Case 1: products A and B have the same Configurable Options Group assigned - additional payment is required or adequate amount of money is returned, depending on the number of days remaining until the end of the billing cycle
    • Case 2: products A and B have different Configurable Options Groups assigned - this upgrade scenario is not supported
  • Changing billing cycle within one product (with or without configurable options) - additional payment is required or adequate amount of money is returned, depending on the number of days remaining until the end of the billing cycle

[edit] 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).

[edit] 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.
All you need is knowledge of for example PHP programming language and our module's 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).

[edit] 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:
  • Navigate to the ~/langs/ directory located within the following yourWHMCS/modules/servers/moduleName/langs/ path.
  • Within this directory, create a new file or duplicate the language file you intend to modify. For instance, if you wish to create an override for the English language, establish the following directory structure:
 ~/langs/overrides/english.php.
  • Open the newly created override file to edit its contents.
  • At the beginning of the file, indicate the used code, for instance, you can use: <?php for PHP code.
  • Adapt the file content according to your requirements. You can either selectively modify specific variables or opt to revise the entire content of the language file.

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.
Note that you do not need to paste all the original content of the lang file into the override file. Enter there only the lines that you wish to change, every other line will be fetched from the original module lang file.
Consequently, the override lang file might include only one or just a few lines.

[edit] 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.
Additionally, you will find a current list of supplementary actions necessary for a smooth update process there.

[edit] 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.
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.

[edit] 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:
  • the product that is offered to the reseller has the 'Recurring' pricing set properly.
  • the reseller has enough credits on his account to pay for the product
  • the 'Automatic Credit Use' option is enabled in WHMCS → General Settings → Credit.
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).

Navigation
WHMCS Modules
WHMCS Widgets
Translations
cPanel Modules
General
FAQ
Community
Products Reseller For WHMCS