Resellers Center For WHMCS
(→Billing Settings) |
(→About Resellers Center For WHMCS) |
||
(40 intermediate revisions by 2 users not shown) | |||
Line 8: | Line 8: | ||
{| | {| | ||
|style="padding: 10px 0px 10px 0px;"|'''Resellers Center For WHMCS''' empowers your resellers with tools to control end clients and their orders through single WHMCS!<br /> | |style="padding: 10px 0px 10px 0px;"|'''Resellers Center For WHMCS''' empowers your resellers with tools to control end clients and their orders through single WHMCS!<br /> | ||
− | Thanks to Resellers Center For WHMCS, your resellers will be allowed to collect dedicated customers and select | + | Thanks to Resellers Center For WHMCS, your resellers will be allowed to collect dedicated customers and select specific products, services, and domains for them. <br /> |
Moreover, the module enables end clients to perform convenient orders of services straight from your WHMCS. <br /> | Moreover, the module enables end clients to perform convenient orders of services straight from your WHMCS. <br /> | ||
− | What is more, they will be able to log in to their own WHMCS account with regard to | + | What is more, they will be able to log in to their own WHMCS account with regard to handling their services, formulating tickets and paying invoices. |
|} | |} | ||
<!-- fixed --> | <!-- fixed --> | ||
Line 100: | Line 100: | ||
{| | {| | ||
|style="padding: 0px 0px 0px 30px;"|✔ Allow Invoice Branding | |style="padding: 0px 0px 0px 30px;"|✔ Allow Invoice Branding | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 0px 30px;"|✔ Enable Reseller Invoice | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 0px 30px;"|✔ Enable Credit Memo Invoicing | ||
|} | |} | ||
{| | {| | ||
Line 135: | Line 141: | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px 30px;"|✔ Prevent Resellers From Viewing End | + | |style="padding: 0px 0px 0px 30px;"|✔ Prevent Resellers From Viewing End Client Details |
|} | |} | ||
{| | {| | ||
Line 190: | Line 196: | ||
{| | {| | ||
|style="padding: 0px 0px 0px 45px;"|✔ Invoices | |style="padding: 0px 0px 0px 45px;"|✔ Invoices | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 0px 45px;"|✔ Credit Memos | ||
|} | |} | ||
{| | {| | ||
Line 198: | Line 207: | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 0px 0px 0px 30px;"|✔ View Resellers Affiliations On WHMCS: |
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 0px 45px;"|✔ Client List | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 0px 45px;"|✔ Product, Product Addon And Domain List | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 0px 45px;"|✔ Specific Service And Domain View | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 10px 45px;"|✔ Administrator Email Messages | ||
|} | |} | ||
Line 212: | Line 233: | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px 45px;"|✔ Invoices | + | |style="padding: 0px 0px 0px 45px;"|✔ Billing: |
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 0px 60px;"|✔ Invoices | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 0px 60px;"|✔ Credit Memos | ||
|} | |} | ||
{| | {| | ||
Line 255: | Line 282: | ||
{| | {| | ||
|style="padding: 0px 0px 0px 45px;"|✔ Invoice Pay To Text | |style="padding: 0px 0px 0px 45px;"|✔ Invoice Pay To Text | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 0px 45px;"|✔ Invoice Footer Message | ||
|} | |} | ||
{| | {| | ||
Line 294: | Line 324: | ||
{| | {| | ||
|style="padding: 0px 0px 0px 45px;"|✔ Stripe | |style="padding: 0px 0px 0px 45px;"|✔ Stripe | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 0px 45px;"|✔ Stripe SEPA | ||
|} | |} | ||
{| | {| | ||
|style="padding: 0px 0px 0px 45px;"|✔ WePay | |style="padding: 0px 0px 0px 45px;"|✔ WePay | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 0px 30px;"|✔ Restrict Payment Gateway Availability To Specified Countries | ||
|} | |} | ||
{| | {| | ||
Line 350: | Line 386: | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px 30px;"|✔ Receive Email Notifications On End | + | |style="padding: 0px 0px 0px 30px;"|✔ Receive Email Notifications On End Client Orders |
|} | |} | ||
{| | {| | ||
Line 381: | Line 417: | ||
{| | {| | ||
|style="padding: 0px 0px 0px 45px;"|✔ Invoices | |style="padding: 0px 0px 0px 45px;"|✔ Invoices | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 0px 45px;"|✔ Credit Memos | ||
|} | |} | ||
{| | {| | ||
Line 424: | Line 463: | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px 30px;"|✔ Supports PHP 8. | + | |style="padding: 0px 0px 0px 30px;"|✔ Supports PHP 8.2 Back To PHP 8.1 |
|} | |} | ||
{| | {| | ||
Line 430: | Line 469: | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px 30px;"|✔ Supports WHMCS V8. | + | |style="padding: 0px 0px 0px 30px;"|✔ Supports WHMCS V8.12 Back To WHMCS V8.9 |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px 30px;"|✔ Requires ionCube Loader | + | |style="padding: 0px 0px 0px 30px;"|✔ Requires ionCube Loader V13 Or Later |
|} | |} | ||
{| | {| | ||
Line 456: | Line 495: | ||
{| | {| | ||
|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.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]. --> | + | In the most recent versions of the module, you will find only one package that supports PHP 7.4 and later.<br/>'''''Note''': You can check the current PHP version in your WHMCS. To do so, proceed to 'Utilities' → 'System' → 'PHP Info'.'' <!-- If you need a package for the previous versions of PHP, please [https://www.modulesgarden.com/support/ticket/general-support contact our support]. --> |
|} | |} | ||
{| | {| | ||
Line 462: | Line 501: | ||
|} | |} | ||
{| | {| | ||
− | + | |style="padding: 0px 0px 10px 15px;"|<!-- '' '''Important''': This situation does not affect [https://www.modulesgarden.com/products/whmcs/resellers-center#open-source-version '''the open source version'''] of this module which can be applied to any PHP from version 5.6 and later.''<br/>'' --> | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | |style="padding: 0px 0px 10px 15px;"|<!-- '' '''Important''': This situation does not affect [https://www.modulesgarden.com/products/whmcs/resellers-center#open-source-version '''the open source version'''] of this module which can be applied to any PHP from version 5.6 and later.''<br/>'' --> | + | |
|} | |} | ||
{| | {| | ||
Line 495: | Line 526: | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 15px 15px;"|'''6. The next step is setting up the '' 'storage' '' and '' 'config' '' folders as writable.'''<br /> | + | |style="padding: 0px 0px 15px 15px;"|'''6. The next step is setting up the '' 'storage' '' and '' 'config' '' folders as recursively writable.'''<br /> |
They are located in: '' 'your_whmcs/modules/addons/ResellersCenter/'.'' | They are located in: '' 'your_whmcs/modules/addons/ResellersCenter/'.'' | ||
|} | |} | ||
Line 576: | Line 607: | ||
{| | {| | ||
|style="padding: 10px 0px 30px 15px;"|Management of Resellers Center For WHMCS is very convenient. You can supervise everything from the addon.<br /> | |style="padding: 10px 0px 30px 15px;"|Management of Resellers Center For WHMCS is very convenient. You can supervise everything from the addon.<br /> | ||
− | What is more, the module extends possibilities of both your resellers and their customers.<br /> | + | What is more, the module extends the possibilities of both your resellers and their customers.<br /> |
Let us find out what our product can do! | Let us find out what our product can do! | ||
|} | |} | ||
Line 583: | Line 614: | ||
|style="padding: 10px 0px 15px 15px;"|In this section you can find more information about a global configuration.<br /> | |style="padding: 10px 0px 15px 15px;"|In this section you can find more information about a global configuration.<br /> | ||
Additionally, here you can also read about the details of migration. | Additionally, here you can also read about the details of migration. | ||
− | <!-- Additionally, here you can find a direct link to module documentation as well as migration tool. --> | + | <!-- Additionally, here you can find a direct link to module documentation as well as a migration tool. --> |
|} | |} | ||
===Global Configuration=== | ===Global Configuration=== | ||
{| | {| | ||
− | |style="padding: 0px 0px 15px 15px;"|In the '' 'Configuration' '' tab you can set up global settings of the module. You can define '' 'General', 'Billing' '' and '' 'Email Templates' '' settings.<br/> | + | |style="padding: 0px 0px 15px 15px;"|In the '' 'Configuration' '' tab you can set up the global settings of the module. You can define '' 'General', 'Billing' '' and '' 'Email Templates' '' settings.<br/> |
− | ''Please note that these settings are default for all resellers. Read this section through to find the details of configuration per each reseller.'' | + | ''Please note that these settings are the default for all resellers. Read this section through to find the details of configuration per each reseller.'' |
|} | |} | ||
====General Settings==== | ====General Settings==== | ||
{| | {| | ||
|style="padding: 0px 0px 15px 15px;"| | |style="padding: 0px 0px 15px 15px;"| | ||
− | *'''Store Branding''' - Allows resellers to set up a custom logo, company name and domain. | + | *'''Store Branding''' - Allows resellers to set up a custom logo, company name, and domain. |
*'''Allow Products''' - If enabled, resellers will be able to sell properly configured products in their own stores. | *'''Allow Products''' - If enabled, resellers will be able to sell properly configured products in their own stores. | ||
*'''Allow Domains''' - Gives resellers the possibility to sell domains in their own stores. | *'''Allow Domains''' - Gives resellers the possibility to sell domains in their own stores. | ||
Line 629: | Line 660: | ||
*'''Reseller Invoice''' | *'''Reseller Invoice''' | ||
**''When the 'Reseller Invoice' option is off'':<br/>When end clients place orders in the reseller store, the invoice will be created by WHMCS with the admin details (provided earlier in '' 'General Settings' '').<br/> Once the invoice is paid, the module calculates the profit in accordance with the product configuration in the reseller group.<br/> The calculated amount goes to '' 'Payouts' '' where the admin can transfer it via PayPal or credits to the reseller account.<br/>Find out more about calculation and pricing methods [[#Product_Pricing|here]].<br/> | **''When the 'Reseller Invoice' option is off'':<br/>When end clients place orders in the reseller store, the invoice will be created by WHMCS with the admin details (provided earlier in '' 'General Settings' '').<br/> Once the invoice is paid, the module calculates the profit in accordance with the product configuration in the reseller group.<br/> The calculated amount goes to '' 'Payouts' '' where the admin can transfer it via PayPal or credits to the reseller account.<br/>Find out more about calculation and pricing methods [[#Product_Pricing|here]].<br/> | ||
− | **''When the 'Reseller Invoice' option is on'':<br/>There are two invoices generated after placing an order in the reseller store. The first invoice is created by the reseller and sent to the client <br/> while the other one is generated by the admin and delivered to the reseller. The amount invoiced is taken directly from the admin charge for the product (reseller group configuration).<br/> In this case, calculation methods are not included and the reseller earns on price differences between invoices.<br/> Moreover, this option also permits resellers to use their own configuration data in payment gateways settings.<br/>Once they do it, end clients are able to make payments directly to the reseller account and the reseller settles debts with the administrator using prepaid WHMCS credits.<br/> '' '''Important:''' | + | **''When the 'Reseller Invoice' option is on'':<br/>There are two invoices generated after placing an order in the reseller store. The first invoice is created by the reseller and sent to the client <br/> while the other one is generated by the admin and delivered to the reseller. The amount invoiced is taken directly from the admin charge for the product (reseller group configuration).<br/> In this case, calculation methods are not included and the reseller earns on price differences between invoices.<br/> Moreover, this option also permits resellers to use their own configuration data in payment gateways settings.<br/>Once they do it, end clients are able to make payments directly to the reseller account and the reseller settles debts with the administrator using prepaid WHMCS credits.<br/> |
− | *'''Deferred Payments''' - If enabled, your resellers will be allowed to define limits for deferred payments for their clients | + | '' '''Important:''' Once the first invoice is generated, the option cannot be changed anymore.''<br/>'''''Note:''' 'Configurable Option Commissions' option is unavailable if the 'Reseller Invoice' option is on.'' |
+ | *'''Credit Memo''' - enables the credit memo system. This will restrict certain invoice options, and generate credit memos to make bookkeeping easier or comply with law restrictions. | ||
+ | *'''Deferred Payments''' - If enabled, your resellers will be allowed to define limits for deferred payments for their clients. | ||
*'''Gateways''' - Allows you to select gateways that resellers can enable in their own stores. This option is only available if '' 'Reseller Invoice' '' is disabled. | *'''Gateways''' - Allows you to select gateways that resellers can enable in their own stores. This option is only available if '' 'Reseller Invoice' '' is disabled. | ||
Line 674: | Line 707: | ||
There are also features related to the deferred payments and consolidated invoices specific settings: | There are also features related to the deferred payments and consolidated invoices specific settings: | ||
− | *'''Deferred Payments''' - Enable to allow resellers to restrict the placed by end clients | + | *'''Deferred Payments''' - Enable to allow resellers to restrict the orders placed by end clients to the total amount defined in the '' 'Deferred Payments Limit' '' setting ''(defined by the reseller per end client)''. <br/> Keep in mind that the end client will still be allowed to choose if he wants to make instant payments using: |
− | ** standard methods ''(gateways, credits, bank transfer, etc)'' or | + | ** standard methods ''(gateways, credits, bank transfer, etc.)'' or |
** postpone the payment ''("Deferred Payments" payment gateway)'' but only if the order amount is lower than the limit<br/> | ** postpone the payment ''("Deferred Payments" payment gateway)'' but only if the order amount is lower than the limit<br/> | ||
*'''Verify Reseller Limit''' - When activated, this feature enhances order validation by considering both the end-client's and the reseller's deferred payments limit. If the reseller's credit is insufficient, a notice will suggest contacting them. | *'''Verify Reseller Limit''' - When activated, this feature enhances order validation by considering both the end-client's and the reseller's deferred payments limit. If the reseller's credit is insufficient, a notice will suggest contacting them. | ||
Line 682: | Line 715: | ||
In case the consolidated invoices feature is turned on, the client cannot pay the order right after completing it. The consolidated invoices can be paid manually once generated. | In case the consolidated invoices feature is turned on, the client cannot pay the order right after completing it. The consolidated invoices can be paid manually once generated. | ||
− | *'''Deferred Payments Limit''' - Define the limit for deferred payments for the reseller. If "0" is entered, the feature will be disabled. The logic is the same as in described above option for end clients. <br/> ''("Reseller Invoice" option must be previously enabled)'' | + | *'''Deferred Payments Limit''' - Define the limit for deferred payments for the reseller. If "0" is entered, the feature will be disabled. The logic is the same as in the described above option for end clients. <br/> ''("Reseller Invoice" option must be previously enabled)'' |
*'''Consolidated Invoices''' - ''('Reseller Invoice' - enabled)'' All ordered items will be packed into one bundled invoice generated once a month, these include the invoices created for the resellers with purchased by them items ''(Reseller-Admin relation)''. <br/> When consolidated invoices are used, there is no possibility to make payments for ordered services with traditional payment methods right after completing the order. | *'''Consolidated Invoices''' - ''('Reseller Invoice' - enabled)'' All ordered items will be packed into one bundled invoice generated once a month, these include the invoices created for the resellers with purchased by them items ''(Reseller-Admin relation)''. <br/> When consolidated invoices are used, there is no possibility to make payments for ordered services with traditional payment methods right after completing the order. | ||
Line 713: | Line 746: | ||
*'''Send Default Emails''' - If enabled and the email template is disabled in the '' 'Emails Templates' '' tab, the standard WHMCS email is sent for it. Otherwise, the email is not sent at all. | *'''Send Default Emails''' - If enabled and the email template is disabled in the '' 'Emails Templates' '' tab, the standard WHMCS email is sent for it. Otherwise, the email is not sent at all. | ||
*'''Change Mail Settings''' - If enabled, the reseller will be allowed to manage the custom e-mail settings. | *'''Change Mail Settings''' - If enabled, the reseller will be allowed to manage the custom e-mail settings. | ||
− | *'''Change Date Format''' - If enabled, the reseller will be allowed to configure the date format, display on their clients pages, individually. | + | *'''Change Date Format''' - If enabled, the reseller will be allowed to configure the date format, and display on their clients pages, individually. |
*'''Hide Single Sign-on''' - Enable to hide the Single Sign-on featured from the reseller's store. | *'''Hide Single Sign-on''' - Enable to hide the Single Sign-on featured from the reseller's store. | ||
|} | |} | ||
Line 773: | Line 806: | ||
|style="padding: 0px 0px 15px 15px;"|It is possible to set pricing (1) for different billing cycles and currencies. | |style="padding: 0px 0px 15px 15px;"|It is possible to set pricing (1) for different billing cycles and currencies. | ||
You can define pricing using the below options: | You can define pricing using the below options: | ||
− | *'''Admin Price''' - price set for a product (it may be lower than what reseller sets when this difference will be the basis to calculate a profit) | + | *'''Admin Price''' - price set for a product (it may be lower than what the reseller sets when this difference will be the basis to calculate a profit) |
*'''Highest Price''' - maximum price which can be set for a product | *'''Highest Price''' - maximum price which can be set for a product | ||
*'''Lowest Price''' - minimum price which can be set for a product | *'''Lowest Price''' - minimum price which can be set for a product | ||
Line 842: | Line 875: | ||
{| | {| | ||
|style="padding: 10px 0px 15px 15px;"|The '' 'Resellers' '' tab displays all clients from your WHMCS system.<br /> | |style="padding: 10px 0px 15px 15px;"|The '' 'Resellers' '' tab displays all clients from your WHMCS system.<br /> | ||
− | You can use it to assign any client to a reseller's group, | + | You can use it to assign any client to a reseller's group, which will activate them as resellers.<br /> |
Click the button as shown below to create a new reseller. | Click the button as shown below to create a new reseller. | ||
|} | |} | ||
Line 864: | Line 897: | ||
{| | {| | ||
|style="padding: 0px 0px 20px 15px;"|Here you can obtain more details about your customers and their clients.<br/> | |style="padding: 0px 0px 20px 15px;"|Here you can obtain more details about your customers and their clients.<br/> | ||
− | Apart from clients, you can manage also invoices, transactions and services. | + | Apart from clients, you can manage also invoices, transactions, and services. |
|} | |} | ||
{| | {| | ||
Line 882: | Line 915: | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 0px 0px 15px 15px;"|In your WHMCS admin area, you may now quickly check if a client, product/service, domain or addon is assigned to a reseller, and to which one exactly (either a company name or first/last name is visible),<br/> without the need of opening the Resellers Center addon. |
|} | |} | ||
{| | {| | ||
Line 888: | Line 921: | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 0px 0px 20px 25px;"|[[File:R3_11_10.png]] |
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 30px 25px;"|[[File:R3_11_11.png]] | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 20px 15px;"|A reseller label is also displayed on the client, product/service, domain, or addon page. Refer to the [[#Tips|Tips]] section, '''Tip 9''' to learn how to customize the labels. | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 30px 25px;"|[[File:R3_11_12.png]] | ||
|} | |} | ||
<!-- | <!-- | ||
Line 895: | Line 937: | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 20px 15px;"|Click on '' 'Manage' '' to view more information about contact's products and domains. | + | |style="padding: 0px 0px 20px 15px;"|Click on '' 'Manage' '' to view more information about the contact's products and domains. |
|} | |} | ||
{| | {| | ||
Line 901: | Line 943: | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 15px 15px;"|As you can see, all products, services and domains assigned to the reseller account are visible here.<br /> | + | |style="padding: 0px 0px 15px 15px;"|As you can see, all products, services, and domains assigned to the reseller account are visible here.<br /> |
− | Items assigned to chosen resellers' | + | Items assigned to chosen resellers' contacts are highlighted in blue, items assigned to other contacts of the reseller are in gray, and products assigned to the reseller are in black.<br /> |
This is the place to manage items assigned to end-client. | This is the place to manage items assigned to end-client. | ||
|} | |} | ||
Line 941: | Line 983: | ||
|} | |} | ||
− | In the '' 'Payouts' '' section, apart from looking at the details it is also possible to perform the following actions: ''pay by PayPal (1)'' or ''WHMCS Credits (2)'' and ''mark the transaction as completed (3)''.<br/> | + | In the '' 'Payouts' '' section, apart from looking at the details, it is also possible to perform the following actions: ''pay by PayPal (1)'' or ''WHMCS Credits (2)'' and ''mark the transaction as completed (3)''.<br/> |
The '' 'Mass Payments' '' section enables you to make mass payouts to all selected resellers at once. You can choose from ''PayPal Payment (4), WHMCS Credits Payment (5)'' and set up proper<br/>PayPal ''Configuration'' by providing PayPal Application Key and Secret - both found within your PayPal account. | The '' 'Mass Payments' '' section enables you to make mass payouts to all selected resellers at once. You can choose from ''PayPal Payment (4), WHMCS Credits Payment (5)'' and set up proper<br/>PayPal ''Configuration'' by providing PayPal Application Key and Secret - both found within your PayPal account. | ||
|} | |} | ||
Line 998: | Line 1,040: | ||
{| | {| | ||
|style="padding: 0px 0px 15px 15px;"| | |style="padding: 0px 0px 15px 15px;"| | ||
− | Choose the resellers to whom the documentation will be visible, enter the name of the documentation and its content.<br/> | + | Choose the resellers to whom the documentation will be visible, and enter the name of the documentation and its content.<br/> |
You can use HTML tags as well as attach a PDF version of your documentation.<br/> | You can use HTML tags as well as attach a PDF version of your documentation.<br/> | ||
Once ready, click '' 'Save' '' to save your documentation. | Once ready, click '' 'Save' '' to save your documentation. | ||
Line 1,008: | Line 1,050: | ||
|style="padding: 0px 0px 15px 15px;"| | |style="padding: 0px 0px 15px 15px;"| | ||
From now on, our resellers will be encouraged to read the documentation from the welcome page, when they enter the '' 'Reseller Area' '' for the first time.<br/> | From now on, our resellers will be encouraged to read the documentation from the welcome page, when they enter the '' 'Reseller Area' '' for the first time.<br/> | ||
− | + | Resellers can hide the welcome page by pressing "Do not show again". Even then, the documentation is accessible from the menu: | |
|} | |} | ||
{| | {| | ||
Line 1,016: | Line 1,058: | ||
==Client Area - Reseller== | ==Client Area - Reseller== | ||
{| | {| | ||
− | |style="padding: 10px 0px 15px 15px;"|In the client area, your clients can add new | + | |style="padding: 10px 0px 15px 15px;"|In the client area, your clients can add new sub-clients and access the '' 'Reseller Area' ''.<br /> |
Access to the '' 'Reseller Area' '' is granted only to those clients, to whom reseller's groups are assigned in the Resellers Center For WHMCS module. | Access to the '' 'Reseller Area' '' is granted only to those clients, to whom reseller's groups are assigned in the Resellers Center For WHMCS module. | ||
|} | |} | ||
Line 1,032: | Line 1,074: | ||
{| | {| | ||
|style="padding: 0px 0px 15px 15px;"|Fill out contact details and tick '' 'Activate Sub-Account'. ''<br /> | |style="padding: 0px 0px 15px 15px;"|Fill out contact details and tick '' 'Activate Sub-Account'. ''<br /> | ||
− | Afterwards, fill in a password field for your contact, define account permission and email preferences. | + | Afterwards, fill in a password field for your contact, and define account permission and email preferences. |
|} | |} | ||
{| | {| | ||
Line 1,041: | Line 1,083: | ||
===Reseller Area=== | ===Reseller Area=== | ||
{| | {| | ||
− | |style="padding: 10px 0px 30px 15px;"|In the '' 'Reseller Area' '' you can manage clients, define | + | |style="padding: 10px 0px 30px 15px;"|In the '' 'Reseller Area' '' you can manage clients, define product prices, set up branding, customize email templates, and open tickets. |
|} | |} | ||
<!-- | <!-- | ||
====Balance==== | ====Balance==== | ||
{| | {| | ||
− | |style="padding: 10px 0px 15px 15px;"|Under this tab, you can view your balance, profit made, credit balance and redeem your profit into credit balance.<br /> | + | |style="padding: 10px 0px 15px 15px;"|Under this tab, you can view your balance, profit made, credit balance and redeem your profit into a credit balance.<br /> |
Besides that, it is the place to view the list of profits made by reselling to your contacts. | Besides that, it is the place to view the list of profits made by reselling to your contacts. | ||
|} | |} | ||
Line 1,113: | Line 1,155: | ||
=====General Configuration===== | =====General Configuration===== | ||
{| | {| | ||
− | |style="padding: 10px 0px 0px 15px;"|In the '' 'Configuration' '' tab you are allowed to define '' 'General Settings' '' such as your own company name, email signature, invoice and store logos used across client's client area, emails, invoices and date format.<br /> | + | |style="padding: 10px 0px 0px 15px;"|In the '' 'Configuration' '' tab you are allowed to define '' 'General Settings' '' such as your own company name, email signature, invoice footer, invoice and store logos used across client's client area, emails, invoices and date format.<br /> |
Please notice, that the available reseller configuration options may vary depending on the options you selected in the addon configuration and whether the '' 'Reseller Invoice' '' option was enabled for the reseller.<br/><br/> | Please notice, that the available reseller configuration options may vary depending on the options you selected in the addon configuration and whether the '' 'Reseller Invoice' '' option was enabled for the reseller.<br/><br/> | ||
Line 1,160: | Line 1,202: | ||
=====Payment Gateways===== | =====Payment Gateways===== | ||
{| | {| | ||
− | |style="padding: 10px 0px 15px 15px;"| | + | |style="padding: 10px 0px 15px 15px;"|This tab is only available if the '' 'Reseller Invoice' '' option in the admin area is set to '' 'Enabled' ''.<br/> |
− | In this section, the reseller can set up their own payment gateway ('PayPal', 'Stripe', 'Bank Transfer', '2Checkout, Authorize.Net Aim', 'Checkout.com', 'Payflow Pro', 'Billplz'and 'WePay' gateways are currently available).<br/> | + | In this section, the reseller can set up their own payment gateway ('PayPal', 'Stripe', 'Stripe SEPA', 'Bank Transfer', '2Checkout, Authorize.Net Aim', 'Checkout.com', 'Payflow Pro', 'Billplz'and 'WePay' gateways are currently available).<br/> |
Thanks to this, all payments made by end clients are transferred directly to the reseller's PayPal account or bank institution.<br/> | Thanks to this, all payments made by end clients are transferred directly to the reseller's PayPal account or bank institution.<br/> | ||
+ | '''''Note:''' While setting up the the webhook endpoint for the Stripe SEPA gateway token, make sure to include the following events: | ||
+ | charge.failed | ||
+ | charge.succeded | ||
+ | checkout.session.async_payment_failed | ||
+ | checkout.session.async_payment_failed | ||
+ | checkout.session.completed | ||
+ | charge.dispute.closed | ||
− | + | In the '' 'Country Limitation' '' field you can select countries users from which will have access to each gateway.<br/> Leave the field empty to allow the gateway for ever country. This restriction is based on WHMCS settings, not geolocation. <br/> | |
+ | |||
+ | The payment gateway named '' 'Deferred Payments' '' is dedicated to the module features "Consolidated Invoices" and "Deferred Payments" features. It is available only if at least one of them is enabled.<br/> | ||
The payments between the reseller and the administrator are settled through the reseller's previously supplied credit balance. | The payments between the reseller and the administrator are settled through the reseller's previously supplied credit balance. | ||
|} | |} | ||
Line 1,186: | Line 1,237: | ||
*'''Enable Consolidated Invoices''' - enable the option to create one bundled invoice once a month with all ordered by the end client items in your store | *'''Enable Consolidated Invoices''' - enable the option to create one bundled invoice once a month with all ordered by the end client items in your store | ||
*'''Consolidated Invoices Generation Day''' - choose the day of the month when the consolidated invoice will be generated.<br/> If you set it to, for example, 31, the invoice will be generated on the last day of the month ''(if that is shorter than 31 days).'' | *'''Consolidated Invoices Generation Day''' - choose the day of the month when the consolidated invoice will be generated.<br/> If you set it to, for example, 31, the invoice will be generated on the last day of the month ''(if that is shorter than 31 days).'' | ||
− | *'''Default | + | *'''Default Deferred Payments Limit''' - this value limits total deferred payments per customer, it will be applied by default in cases where the limit is not specified for a given customer manually. |
|} | |} | ||
{| | {| | ||
Line 1,201: | Line 1,252: | ||
*Invoices | *Invoices | ||
*Transactions | *Transactions | ||
+ | *Credit Memos | ||
|} | |} | ||
{| | {| | ||
Line 1,206: | Line 1,258: | ||
|} | |} | ||
− | ==== | + | ====Billing==== |
{| | {| | ||
|style="padding: 10px 0px 15px 15px;"|Here is the detailed list of end clients' all invoices together with their status. | |style="padding: 10px 0px 15px 15px;"|Here is the detailed list of end clients' all invoices together with their status. | ||
Line 1,240: | Line 1,292: | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 15px 15px;"|Apart from the general section with all | + | |style="padding: 0px 0px 15px 15px;"|Apart from the general section with all orders listed, you may view a list of ordered products, addons and domains separately. <br/> Use visible filters to search for specific orders only. |
|} | |} | ||
{| | {| | ||
Line 1,285: | Line 1,337: | ||
{| | {| | ||
|style="padding: 0px 0px 15px 25px;"|By toggling the '' 'Upgrades / Downgrades' '' section, you will have a few extra fields to configure.<br /> | |style="padding: 0px 0px 15px 25px;"|By toggling the '' 'Upgrades / Downgrades' '' section, you will have a few extra fields to configure.<br /> | ||
− | *'''Upgrade Type''' - Select a suitable type of | + | *'''Upgrade Type''' - Select a suitable type of upgrade the promotion applies to. |
*'''Discount Type''' - Choose a type of the upgrade promotion. | *'''Discount Type''' - Choose a type of the upgrade promotion. | ||
*'''Discount Value''' - Enter a rate of the discount. | *'''Discount Value''' - Enter a rate of the discount. | ||
*'''Upgrades Of Configurable Options''' - Provide an amount of the discount. | *'''Upgrades Of Configurable Options''' - Provide an amount of the discount. | ||
− | *'''Notes''' - Any notes will be visible | + | *'''Notes''' - Any notes will be visible to you and to administrators exclusively. |
|} | |} | ||
{| | {| | ||
Line 1,345: | Line 1,397: | ||
{| | {| | ||
|style="padding: 10px 0px 15px 15px;"|If you have not disabled tickets in your addon, your resellers will be able to reply and forward tickets created by their clients.<br /> | |style="padding: 10px 0px 15px 15px;"|If you have not disabled tickets in your addon, your resellers will be able to reply and forward tickets created by their clients.<br /> | ||
− | It is only available for tickets department set in the Resellers Center For WHMCS configuration. | + | It is only available for the tickets department set in the Resellers Center For WHMCS configuration. |
|} | |} | ||
{| | {| | ||
Line 1,428: | Line 1,480: | ||
====Separate Server==== | ====Separate Server==== | ||
{| | {| | ||
− | |style="padding: 10px 0px 30px 0px;"|A separate server - in this situation the branded domain is added to | + | |style="padding: 10px 0px 30px 0px;"|A separate server - in this situation, the branded domain is added to another DNS server. It might be added to, for example cloudflare, or it is added and used on another server, for example cPanel or DirectAdmin.<br/> |
Take a look at the exemplary situation. Let's say there are two domains: | Take a look at the exemplary situation. Let's say there are two domains: | ||
Line 1,443: | Line 1,495: | ||
<!-- | <!-- | ||
{| | {| | ||
− | |style="padding: 10px 0px 15px 0px;"|In this section you will find guides on how to create a ''CNAME'' record in popular control panels.<br /> | + | |style="padding: 10px 0px 15px 0px;"|In this section, you will find guides on how to create a ''CNAME'' record in popular control panels.<br /> |
For instance, if a reseller's branded domain is '' 'reseller.com' '' and the domain with your WHMCS is '' 'whmcs.domain.com' '', the ''CNAME'' needs to be '' 'www.reseller.com. CNAME whmcs.domain.com.'.''<br /> | For instance, if a reseller's branded domain is '' 'reseller.com' '' and the domain with your WHMCS is '' 'whmcs.domain.com' '', the ''CNAME'' needs to be '' 'www.reseller.com. CNAME whmcs.domain.com.'.''<br /> | ||
'' '''Note 1:''' As you can see above, each domain has to be closed with a full stop.''<br /> | '' '''Note 1:''' As you can see above, each domain has to be closed with a full stop.''<br /> | ||
Line 1,450: | Line 1,502: | ||
{| | {| | ||
|style="padding: 0px 0px 30px 0px;"|The domain used by each of brands '''must be parked''' on the main domain.<br/>In case when a domain cannot be parked or it is a subdomain, you must create the ''CNAME'' records that will redirect from the brand domain to the main domain.<br/> | |style="padding: 0px 0px 30px 0px;"|The domain used by each of brands '''must be parked''' on the main domain.<br/>In case when a domain cannot be parked or it is a subdomain, you must create the ''CNAME'' records that will redirect from the brand domain to the main domain.<br/> | ||
− | Only when you have parked your domains can you move to | + | Only when you have parked your domains can you move to set the ''CNAME'' records on your panels. See the tips below. |
|} | |} | ||
===cPanel=== | ===cPanel=== | ||
Line 1,509: | Line 1,561: | ||
==SSL Certificate== | ==SSL Certificate== | ||
{| | {| | ||
− | |style="padding: 10px 0px 30px 15px;"|If reseller branded domains or your WHMCS main domain use the SSL connection''', they should also support selected certificates.<br /> | + | |style="padding: 10px 0px 30px 15px;"|If reseller-branded domains or your WHMCS main domain use the SSL connection''', they should also support selected certificates.<br /> |
The supported types of certificates: | The supported types of certificates: | ||
*'''Dedicated SSL Certificate''' - handled separately for each domain. | *'''Dedicated SSL Certificate''' - handled separately for each domain. | ||
Line 1,535: | Line 1,587: | ||
|style="padding: 0px 0px 30px 15px;"|You can also consider enabling the '' '''[https://blog.cpanel.com/autossl/ AutoSSL]''' '' solution, which should automatically installs domain-validated SSL certificates. Go [https://documentation.cpanel.net/display/ALD/Manage+AutoSSL here] for more information.<br /> | |style="padding: 0px 0px 30px 15px;"|You can also consider enabling the '' '''[https://blog.cpanel.com/autossl/ AutoSSL]''' '' solution, which should automatically installs domain-validated SSL certificates. Go [https://documentation.cpanel.net/display/ALD/Manage+AutoSSL here] for more information.<br /> | ||
'' '''Note:''' AutoSSL function will rather not work for CNAME entries so you should use '''[https://documentation.cpanel.net/display/CKB/How+Your+Server+Handles+Domains+and+Virtual+Hosts virtual hosts (vhosts)]''' instead.'' | '' '''Note:''' AutoSSL function will rather not work for CNAME entries so you should use '''[https://documentation.cpanel.net/display/CKB/How+Your+Server+Handles+Domains+and+Virtual+Hosts virtual hosts (vhosts)]''' instead.'' | ||
+ | |} | ||
+ | |||
+ | =Use Cases= | ||
+ | {| | ||
+ | |style="padding: 10px 0px 30px 15px;"|'''This section features sample scenarios that illustrate common use cases and provide practical guidance on applying the module's functionalities.'''<br/> | ||
+ | Review these scenarios for real-world examples of how to use the module effectively. | ||
+ | |} | ||
+ | ==Introducing Credit Memos== | ||
+ | {| | ||
+ | |style="padding: 10px 0px 15px 15px;"|'''Resellers Center For WHMCS includes an optional credit memo billing system.'''<br/> This alternative invoice system can make bookkeeping easier, as it restricts invoice editing and introduces credit memos instead.<br/>This way of invoice management is required by law in some countries, but can also be useful for correcting billing errors, in product returns, or providing special discounts. | ||
+ | The '' 'Reseller Invoice' '' feature must be enabled for the reseller first.<br/> | ||
+ | '''''Note:''' The screens below show both features enabled in individual reseller's configuration, but can be enabled globally in 'Configuration' → 'Billing' as well. | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 20px 25px;"|[[File:RCUC_01.png]] | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 15px 15px;"|Now the '' 'Credit Memos' '' feature can be enabled.<br/> | ||
+ | '''''Note:''' If the toggle is still grayed out, try refreshing the page.'' | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 20px 25px;"|[[File:RCUC_10.png]] | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 20px 15px;"|As you can see the billing documents are now categorized into invoices and credit memos. | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 20px 25px;"|[[File:RCUC_11.png]] | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 15px 15px;"|After a new invoice is created and delivered to the client, but not yet paid, a button to create the credit memo will appear.<br/> | ||
+ | It is the only option that can be performed on a delivered invoice, as all data is set to read-only. | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 20px 25px;"|[[File:RCUC_12.png]] | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 20px 15px;"|The credit memo generated for the invoice is an exact copy of it but with a negative value. | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 20px 25px;"|[[File:RCUC_13.png]] | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 15px 15px;"|Both the invoice and the credit memo are cross-labeled with related documents. | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 20px 25px;"|[[File:RCUC_14.png]] | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 20px 15px;"|As soon as the credit memo is created, both documents are marked as '' 'Closed'.'' | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 30px 25px;"|[[File:RCUC_15.png]] | ||
+ | |} | ||
+ | |||
+ | ==Allocating Payment Gateways== | ||
+ | {| | ||
+ | |style="padding: 10px 0px 15px 15px;"|'''While using Resellers Center For WHMCS with the '' 'Reseller Invoice' '' function active, resellers can define which payment gateways are available for their clients based on the clients' country.'''<br/> See the instructions below to learn how it works. <br/> | ||
+ | First, make sure that you are using the '' '[[#Billing_Settings|Reseller Invoice]]' '' system, as this feature requires it to function.<br/> | ||
+ | '' '''Important:''' Once the first invoice is generated, the option cannot be changed anymore.'' | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 20px 25px;"|[[File:RCUC_01.png]] | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 20px 15px;"|In this example, the reseller has set up three payment gateways: Stripe, PayPal, and WePay.'' 'Country Limitation' '' is not set up for any of them. | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 20px 25px;"|[[File:RCUC_0.png]] | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 20px 15px;"|With no restrictions present, all gateways are visible to everyone. | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 20px 25px;"|[[File:RCUC_1.png]] | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 15px 15px;"|Now, the '' 'Country Limitation' '' for Stripe has been changed to include only Afghanistan.<br/> | ||
+ | This means clients from other countries will not be able to use Stripe. | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 20px 25px;"|[[File:RCUC_2.png]] | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 15px 15px;"|As you can see, this account is set to the Czech Republic.<br/> | ||
+ | Due to the restriction we have set, the Stripe gateway is not listed.<br/> | ||
+ | Other payment gateways are available because there are no restrictions placed on them, or the account matches the country selected. | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 20px 25px;"|[[File:RCUC_3.png]] | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 15px 15px;"|Next, we will log in as a client from the country we restricted Stripe to.<br/> | ||
+ | Since the feature is based on the country in the client's profile, and not geolocation, we will simply change the settings in the '' 'Reseller Area'.'' | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 20px 25px;"|[[File:RCUC_4.png]] | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 15px 15px;"|Once we reach checkout, Stripe is available again.<br/> | ||
+ | This is because the country of this client matches the restriction rules we set for the gateway earlier. | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 20px 25px;"|[[File:RCUC_5.png]] | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 15px 15px;"|'' 'Country Limitation' '' works for guests as well.<br/> | ||
+ | With Stripe still limited to Afghanistan, the client that selects any other country in the billing address will not be able to use it. | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 20px 25px;"|[[File:RCUC_6.png]] | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 15px 15px;"| However, clients from Afghanistan will be presented with the Stripe option. <br/> | ||
+ | Resellers can customize each gateway in this way, ensuring they meet their clients' needs and expectations. | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 30px 25px;"|[[File:RCUC_7.png]] | ||
|} | |} | ||
Line 1,541: | Line 1,711: | ||
|style="padding: 10px 0px 5px 15px;"|'''1. If your WHMCS is installed in a subdirectory, your resellers using CNAME record must provide their links with it.'''<br /> | |style="padding: 10px 0px 5px 15px;"|'''1. If your WHMCS is installed in a subdirectory, your resellers using CNAME record must provide their links with it.'''<br /> | ||
For example, '''reseller.com/main-whmcs-directory''' instead of '''reseller.com.'''.<br /> | For example, '''reseller.com/main-whmcs-directory''' instead of '''reseller.com.'''.<br /> | ||
− | You can change that behavior | + | You can change that behavior by adding the below code to ''.htaccess'' file: |
RewriteEngine on | RewriteEngine on | ||
RewriteCond %{HTTP_HOST} !^'''main-whmcs-domain.com'''$ [NC] | RewriteCond %{HTTP_HOST} !^'''main-whmcs-domain.com'''$ [NC] | ||
Line 1,582: | Line 1,752: | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 0px 0px 25px 25px;"|[[File:RC3_Tip_1.png]] |
|} | |} | ||
− | |||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 0px 0px 15px 15px;"|7. For Stripe SEPA payment gateway the functions '' 'Revert on Dispute Loss' '' and '' 'Failed Transaction Fee' '' can be used together to achieve different behaviors, here are to possible combinations: |
+ | * a) Revert on Dispute Loss enabled, Failed Transaction Fee enabled:<br/>The invoice to which the dispute relates returns to the Unpaid status, a negative transaction is added, and another invoice is created (reject invoice) with the amount specified in the settings. | ||
+ | * b) Revert on Dispute Loss enabled, Failed Transaction Fee disabled:<br/>The invoice concerned by the dispute returns to the Unpaid status, a negative transaction is added, but a penalty invoice is not created. | ||
+ | * c) Revert on Dispute Loss disabled, Failed Transaction Fee enabled:<br/>The invoice to which the dispute relates still has the Paid status, only a negative transaction is added to it, but a penalty invoice is created for it. | ||
+ | * d) Revert on Dispute Loss disabled, Failed Transaction Fee disabled:<br/>The only thing that happens is that a negative transaction is added to the invoice. | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 15px 15px;"|8. Customize the '''Reseller Area button''' design:<br/> | ||
+ | * Navigate to the configuration file: '' '/your_whmcs/modules/addons/ResellersCenter/config/customs' '' and open the '' 'resellerAreaButton.json' '' file.<br/> | ||
+ | *'''Edit Button Properties''' | ||
+ | ** '''Icon:''' Add an icon to your button, e.g.: <code>"icon" : "fa fa-suitcase"</code> | ||
+ | ** '''Label:''' Overwrite the language file text, e.g.: <code>"rawLabel": "your_custom_label"</code> | ||
+ | ** '''Destination:''' Change the destination URL, e.g.: <code>"uri": "index.php?m=ResellersCenter"</code> | ||
+ | ** '''Order:''' Move the button inside the menu, e.g.: <code>"order": "1"</code><br/> | ||
+ | *'''Class Properties''' | ||
+ | ** Modify the class properties (note that functionality is limited), e.g.: <code>"class": "bg-warning mg-class-place-holder"</code><br/> | ||
+ | *'''Language File Text:''' | ||
+ | ** To have the button text change with the language used, edit the ''$_LANG['addonCA']['resellerarea']'' variable in the language files located under '' '\your_whmcs\modules\addons\ResellersCenter\langs'.'' <br/> You can learn more about language files [https://www.docs.modulesgarden.com/General#How_To_Change_WHMCS_Module_Language| here]. | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 10px 15px;"|9. Customize the '''[[#Clients|Reseller Label]]''' design:<br/> | ||
+ | You can define custom styles for reseller labels by creating a dedicated CSS stylesheet. Follow these steps to apply your own styles: | ||
+ | * Create a CSS file named <code>reseller-label-style.css</code>. | ||
+ | * Upload it to the following directory: <code>/modules/addons/ResellersCenter/templates/admin/assets/css</code>. | ||
+ | * You can style different types of labels using the following CSS classes: | ||
+ | ** <code>reseller-label</code> – General class for all reseller labels. | ||
+ | ** <code>reseller-label-reseller-own</code> – Label in the Client Summary when the client is a reseller. | ||
+ | ** <code>reseller-label-resellers-client</code> – Label in the Client Summary when the client is a reseller’s client. | ||
+ | ** <code>reseller-label-table</code> – Labels displayed within tables. | ||
+ | ** <code>resellers-client-service</code> – Labels in the service and domain view of a reseller’s client. <br/ > '''''Important:''' Each class definition in the stylesheet must be prefixed with '''mg-wrapper'''.'' | ||
+ | * Below is an '''example ''reseller-label-style.css'' file''' with custom styles: | ||
+ | |||
+ | .mg-wrapper.reseller-label { | ||
+ | color: #4442a9; | ||
+ | background-color: #dedef2; | ||
+ | border-color: #ccd1eb; | ||
+ | } | ||
+ | |||
+ | .mg-wrapper.reseller-label.reseller-label-reseller-own { | ||
+ | color: #44a942; | ||
+ | background-color: #def2de; | ||
+ | border-color: #ccebd1; | ||
+ | } | ||
+ | |||
+ | .mg-wrapper.reseller-label.reseller-label-resellers-client { | ||
+ | color: #3279c9; | ||
+ | background-color: #def2ee; | ||
+ | border-color: #cce0eb; | ||
+ | } | ||
+ | |||
+ | .mg-wrapper.reseller-label.reseller-label-table { | ||
+ | color: #9232c9; | ||
+ | background-color: #e7def2; | ||
+ | border-color: #c6abe7; | ||
+ | } | ||
+ | |||
+ | .mg-wrapper.reseller-label.resellers-client-service { | ||
+ | color: #c0772c; | ||
+ | background-color: #d9b899; | ||
+ | border-color: #bb7f51; | ||
+ | } | ||
− | |||
− | |||
− | |||
− | |||
− | |||
|} | |} | ||
− | + | {| | |
+ | |style="padding: 0px 0px 30px 25px;"|[[File:R3_11_12.png]] | ||
+ | |} | ||
=Update Instructions= | =Update Instructions= | ||
Line 1,621: | Line 1,847: | ||
==External API Configuration== | ==External API Configuration== | ||
{| | {| | ||
− | |style="padding: 10px 0px 15px 15px;"| | + | |style="padding: 10px 0px 15px 15px;"|The '''Resellers Center For WHMCS''' module utilizes '''External API,''' follow the instructions below to learn how to configure and use the API correctly. <br/> To start the configuration process, go to '' 'Configuration → WHMCS API Connection Settings'.'' Next, click on the link as presented below. |
|} | |} | ||
{| | {| | ||
Line 1,633: | Line 1,859: | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 0px 0px 15px 15px;"|Enter your '' 'Role Name' '' and decide which API actions will be allowed. Do not forget to save the changes. <br/> |
The API requires a minimum set of permissions, which include: | The API requires a minimum set of permissions, which include: | ||
*Orders: ''AcceptOrder'' | *Orders: ''AcceptOrder'' | ||
Line 1,656: | Line 1,882: | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 20px 15px;"|You will find your new '' 'Identifier' '' as well as '' 'Secret' ''. Copy | + | |style="padding: 0px 0px 20px 15px;"|You will find your new '' 'Identifier' '' as well as '' 'Secret' ''. Copy and paste them to a safe place because you will not see them again. |
|} | |} | ||
{| | {| |
Latest revision as of 12:38, 17 February 2025
Are you going to upgrade your WHMCS to version 8.9? Be sure to review our tips in "Update Instructions" to prevent any potential issues!
We are sorry for the inconvenience caused.
Contents
|
[edit] About Resellers Center For WHMCS
Resellers Center For WHMCS empowers your resellers with tools to control end clients and their orders through single WHMCS! Thanks to Resellers Center For WHMCS, your resellers will be allowed to collect dedicated customers and select specific products, services, and domains for them. |
- Provider Features:
✔ Define Global Configuration And Reseller Permissions |
✔ Manage Assignment Of Clients And Services To Resellers |
✔ Create And Manage Pricing Groups |
✔ Assign Clients to Pricing Groups To Set Them As Resellers |
✔ Assign Products, Addons And Domains To Pricing Groups |
✔ Enable Consolidated Invoices Per Reseller Or Pricing Group |
✔ Define Pricing Range Per Products, Addons And Domains For Each Billing Cycle |
✔ Select Payouts Calculation Method Per Products, Addons, Domains And Configurable Options: |
✔ Fixed Rate |
✔ Difference |
✔ Percent Rate |
✔ Percent From Difference Between Admin And Reseller Price |
✔ Admin Percent With Fixed Rate |
✔ Admin Percent Plus Reseller Margin |
✔ Reseller Percent With Fixed Rate |
✔ Write Own Class To Calculate Reseller Profit |
✔ View Statistics On Resellers Sales, Income And End Clients |
✔ View Reseller Profits |
✔ Enable Reseller Own CNAME Domain Support |
✔ Select Available Store And Order Templates |
✔ Choose Email Templates Available For Branding |
✔ Choose Payment Gateways Available For End Clients |
✔ Choose Ticket Departments Available For End Clients |
✔ Choose Whether To Show Products Marked As "Hidden" To End Clients |
✔ Choose Whether To Allow Resellers To Delete End Clients |
✔ Determine Invoicing Method For Billing End Clients: |
✔ Provider As Issuer Of Invoices |
✔ Reseller As Issuer Of Invoices |
✔ Allow Invoice Branding |
✔ Enable Reseller Invoice |
✔ Enable Credit Memo Invoicing |
✔ Define Default Sequential Invoice Number Format |
✔ Remove Invoices With Zero Amounts |
✔ Allow Resellers To Receive Commissions From Configurable Options |
✔ Allow Resellers To Use Deferred Payments Within Defined Limits |
✔ Allow Resellers To Access And Define Their Own Promotions |
✔ Allow Resellers To Alter Their Email Templates CSS Styling, Header And Footer |
✔ Allow Resellers To Use Their Own SMTP Email Settings |
✔ Allow Resellers To Change Date Format |
✔ Allow Resellers To Suspend End Client Services |
✔ Allow Resellers To Use Global Search Functionality |
✔ Prevent Resellers From Logging In As Their End Clients |
✔ Prevent Resellers From Viewing End Client Details |
✔ Prevent Resellers From Placing Orders On Behalf Of End Clients |
✔ Choose Whether To Send Default WHMCS Email If Reseller Template Is Disabled |
✔ Make Payouts To PayPal Account Or Credit Balance |
✔ Enable Automatic PayPal Payout Transfers |
✔ Prepare Documentation For Each Reseller |
✔ Disable Access To Knowledgebase For End Clients Of Certain Reseller |
✔ Disable Access To Main Store For End Clients Of All Or Certain Resellers |
✔ Hide Services Ordered Through Reseller Store In Admin Store View |
✔ Hide Single Sign-on Buttons From Reseller Store |
✔ Redirect All Email Received By End Clients To Their Resellers |
✔ Set Up API Token And Connection Settings |
✔ Access Module Logs |
✔ Export Resellers Data To CSV File: |
✔ Customer Details |
✔ Products |
✔ Product Addons |
✔ Domains |
✔ Invoices |
✔ Credit Memos |
✔ Resellers And WHMCS Invoices |
✔ Resellers And WHMCS Transactions |
✔ View Resellers Affiliations On WHMCS: |
✔ Client List |
✔ Product, Product Addon And Domain List |
✔ Specific Service And Domain View |
✔ Administrator Email Messages |
- Resellers Features:
✔ View, Search And Manage: |
✔ End Clients |
✔ Orders |
✔ Billing: |
✔ Invoices |
✔ Credit Memos |
✔ Products |
✔ Addons |
✔ Domains |
✔ Tickets |
✔ Configure Reseller Brand: |
✔ Domain |
✔ Company Name |
✔ Store And Invoice Logo |
✔ Store And Order Template |
✔ Store Email Address |
✔ Terms Of Service URL |
✔ Sequential Invoice Number Format |
✔ Next Sequential Number |
✔ Invoice Pay To Text |
✔ Invoice Footer Message |
✔ Auto WHMCS Invoice Payment |
✔ Tickets Email Signature |
✔ Available Ticket Departments |
✔ Set Up Independent Payment Gateways Available For End Clients: |
✔ 2Checkout |
✔ Authorize.Net AIM |
✔ Bank Transfer |
✔ Billplz |
✔ Checkout.com |
✔ Deferred Payments |
✔ PayPal |
✔ Payflow Pro |
✔ Stripe |
✔ Stripe SEPA |
✔ WePay |
✔ Restrict Payment Gateway Availability To Specified Countries |
✔ Enable Consolidated Invoices Created On Specified Day Of Month |
✔ Define Default Credit Line Limit |
✔ Define Order Of Payment Gateways |
✔ Define Prices Of Products, Addons And Domains Within Defined Limits |
✔ Generate Direct URLs To Products And Product Groups |
✔ Define Individual Promotions For End Clients |
✔ Define Limits Of Deferred Payments For End Clients |
✔ Add And Manage End Clients |
✔ View And Manage End Clients Orders, Invoices, Products, Addons And Domains |
✔ Create Custom Invoice Drafts And Issue Them To End Clients |
✔ Place Orders For End Clients Manually |
✔ Manually Accept Order Of End Client Before Payment Receipt |
✔ Login As End Client |
✔ View Statistics On Sales, Income And End Clients |
✔ View Generated Profits |
✔ Access Documentation |
✔ Receive Payouts To PayPal Account Or Credit Balance |
✔ Receive Email Notifications On End Client Orders |
✔ Reply To Tickets Submitted By End Clients |
✔ View Email Templates And Use Editor To Modify Their Content |
✔ Modify Email Templates CSS Styling, Header And Footer |
✔ Access Store By CNAME Domain Or Default Store URL |
✔ Export End Clients Data To CSV File And Via API: |
✔ Customer Details |
✔ Products |
✔ Product Addons |
✔ Domains |
✔ Invoices |
✔ Credit Memos |
✔ Transactions |
- End Clients Features:
✔ Order Products, Addons And Domains |
✔ Use End Client Details For Registered Domains |
✔ View And Pay Invoices With Instant Or Deferred Payments |
✔ Pay Using Credit Card And Store Payment Data |
✔ Apply Credits To Invoices |
✔ Apply Resellers Promo Codes To Orders |
✔ View And Manage Products |
✔ Receive Branded Email Notifications |
✔ Submit Tickets To Reseller |
- General Info:
✔ Migration Tool |
✔ Fully Integrated With Lagom WHMCS Client Theme |
✔ Multi-Language Support |
✔ Supports PHP 8.2 Back To PHP 8.1 |
✔ Supports WHMCS Themes "Six" And "Twenty-One" |
✔ Supports WHMCS V8.12 Back To WHMCS V8.9 |
✔ Requires ionCube Loader V13 Or Later |
✔ Easy Module Upgrade To Open Source Version |
[edit] Installation
Installation of Resellers Center For WHMCS requires a few simple modifications of the template files. No worries, we will guide you step by step through the entire installation process. Important: If you are updating Resellers Center For WHMCS from the 3.8.0 version (or prior to 3.8.0) to the 3.9.0 version and later, you need to reconfigure your API settings. |
[edit] Installation
1. Log in to our client area and download the module. |
![]() |
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. |
![]() |
3. Extract the package and upload its content into the main WHMCS directory. The content of the package to upload should look like this. |
![]() |
4. When you install Resellers Center For WHMCS for the first time you have to rename the 'license_RENAME.php' file. The file is located in 'modules/addons/ResellersCenter/license_RENAME.php'. Rename it from 'license_RENAME.php' to 'license.php'. |
![]() |
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. |
![]() |
6. The next step is setting up the 'storage' and 'config' folders as recursively writable. They are located in: 'your_whmcs/modules/addons/ResellersCenter/'. |
![]() |
[edit] Activation of Addon
7. Now, you have to activate the module in your WHMCS system. Log in to your WHMCS admin area. Click 'System Settings' then choose 'Addon Modules'. |
![]() |
8. In the next step, you need to permit access to the module. To do so, select the admin roles which should have access to the module. Press 'Save Changes' when ready. |
![]() |
9. Afterward, go to 'Addons' → 'Resellers Center' → 'Integration Code' and follow the instructions.
Note: Please keep in mind that WHMCS versions prior to V8.4 are no longer officially supported by the module. |
![]() |
[edit] Activation of Payment Gateway
10. Now, proceed to 'Apps & Integrations' and find the 'Deferred Payments' gateway and activate it. Note that this payment gateway is required if you are going to use any of the following module features:
|
![]() |
11. You will be redirected to the payment gateways management page. Find 'Deferred Payments' on the list to configure it.
Select the 'Show on Order Form' option, add your custom display name, or leave the default one. Remember to save the changes when ready. |
![]() |
12. Congratulations, you have just successfully installed Resellers Center For WHMCS! You can now access your module from 'Addons' → 'Resellers Center '. |
[edit] Management and Configuration
Management of Resellers Center For WHMCS is very convenient. You can supervise everything from the addon. What is more, the module extends the possibilities of both your resellers and their customers. |
[edit] Settings
In this section you can find more information about a global configuration. Additionally, here you can also read about the details of migration. |
[edit] Global Configuration
In the 'Configuration' tab you can set up the global settings of the module. You can define 'General', 'Billing' and 'Email Templates' settings. Please note that these settings are the default for all resellers. Read this section through to find the details of configuration per each reseller. |
[edit] General Settings
|
![]() |
[edit] Billing Settings
Important: Once the first invoice is generated, the option cannot be changed anymore.
|
![]() |
[edit] Email Templates Settings
Here you can enable/disable numerous options that a reseller can customize later on. These templates are related to emails regarding issues like:
|
![]() |
[edit] Single Reseller Configuration
Global configuration settings, enumerated and explained above, can be also defined for particular resellers. You may alter them for a single reseller, the global settings will be overwritten by these ones. Go to the 'Resellers' tab and press the marked button to continue. |
![]() |
Here you will find the details related to the chosen reseller. In the 'Configuration' section you can select preferred 'General', 'Billing', 'Miscellaneous' and 'Email Template' settings. Under the first tab, you will find exactly the same options to configure as in the global settings. |
![]() |
The 'Billing Settings' section includes global and some additional configuration details per reseller:
There are also features related to the deferred payments and consolidated invoices specific settings:
Services ordered with the deferred payment option enabled will be immediately activated. To be allowed to place further orders with deferred payment, the end client has to first pay all the existing invoices.
|
![]() |
Under the 'Miscellaneous' tab you will find these options available per reseller:
|
![]() |
The last 'Email Templates' section contains the same list of email templates to enable/disable as the global configuration. |
![]() |
[edit] Addon Management
In this section you can find more details about the management possibilities. We will show you how to set up key options to ease the module's handling processes. |
[edit] Pricing Groups
In order to grant any of your clients resellers' rights, you need to configure a group first. To do so, proceed to the 'Pricing Groups' tab and click the button as shown below. |
![]() |
A popup window appears. Just fill in a group name and press 'Create'. At this point, you may also define the group setting related to the consolidated invoices feature. |
![]() |
As you can see, a new group is visible on the list. It does not have any product configured. To add a new product press the button as presented below. |
![]() |
Choose a new product from the 'Add Product To Group' dropdown menu and press 'Save'. |
![]() |
The product needs to be configured. Then, Resellers Center For WHMCS enables you to:
|
![]() |
[edit] Product Pricing
It is possible to set pricing (1) for different billing cycles and currencies.
You can define pricing using the below options:
To confirm settings, press 'Save' . |
![]() |
[edit] Calculation Method
Several methods for the calculation (2) are available. Choose the one you want to use from the dropdown menu.
To confirm settings press 'Save' next to the product you have configured. |
![]() |
The procedure is quite similar when it comes to adding addons and domains. Click the right button to add a new addon. |
![]() |
From the dropdown menu choose the one that will be added to the group. |
![]() |
Now, you can set 'Pricing' and 'Calculation Method' or delete this addon. |
![]() |
In order to add a new domain, click the right button, as shown below. You may also add all TLDs from WHMCS, just press the button marked with the blue arrow. |
![]() |
From the dropdown menu choose the one that will be added to the group (in case of adding TLDs one by one). |
![]() |
Now, you can set 'Pricing', 'Calculation Method', delete this domain and 'Show Details'. |
![]() |
[edit] Resellers
The 'Resellers' tab displays all clients from your WHMCS system. You can use it to assign any client to a reseller's group, which will activate them as resellers. |
![]() |
Assign a new reseller to the chosen group. |
![]() |
[edit] Clients
To see resellers' clients go to the 'Resellers' tab and click the button next to a selected reseller. |
![]() |
Here you can obtain more details about your customers and their clients. Apart from clients, you can manage also invoices, transactions, and services. |
![]() |
You can also assign a new client to this reseller. |
![]() |
Move to 'Services' to obtain more details about the clients' services and add any other products/addons/domains that are not yet assigned to this reseller's store. |
![]() |
In your WHMCS admin area, you may now quickly check if a client, product/service, domain or addon is assigned to a reseller, and to which one exactly (either a company name or first/last name is visible), without the need of opening the Resellers Center addon. |
![]() |
![]() |
![]() |
A reseller label is also displayed on the client, product/service, domain, or addon page. Refer to the Tips section, Tip 9 to learn how to customize the labels. |
![]() |
[edit] Payouts
![]() |
[edit] Statistics
The 'Statistics' tab allows you to see the amount of sales and income, and the number of clients assigned to resellers. |
![]() |
Information about sale is also visible in the 'Reseller' tab. |
![]() |
[edit] Logs
The 'Logs' tab allows you to see the details of the actions that have been already performed. In case you need more detailed logs related to the consolidated invoices generation process, please move to the Tips section tip number 5 for detailed instructions. |
![]() |
[edit] Deferred Payments Logs
A dedicated section is available to list actions related to deferred payments. Check the list of events: |
![]() |
[edit] Integration Code
In the 'Integration Code' tab you will find the instructions on how to allow your resellers to modify the client area and invoice logo. Note: Please keep in mind that WHMCS versions prior to V7.6 are no longer officially supported by the module. |
![]() |
[edit] Reseller Documentation
The 'Reseller Documentation' tab enables you to create and modify the documentation visible to specified resellers. The documentation provides guidelines to help resellers handle their panels with ease. |
![]() |
Choose the resellers to whom the documentation will be visible, and enter the name of the documentation and its content. |
![]() |
From now on, our resellers will be encouraged to read the documentation from the welcome page, when they enter the 'Reseller Area' for the first time. |
![]() |
[edit] Client Area - Reseller
In the client area, your clients can add new sub-clients and access the 'Reseller Area' . Access to the 'Reseller Area' is granted only to those clients, to whom reseller's groups are assigned in the Resellers Center For WHMCS module. |
![]() |
[edit] Reseller Area
In the 'Reseller Area' you can manage clients, define product prices, set up branding, customize email templates, and open tickets. |
[edit] Clients
Under this tab, you can see a list of reseller's clients and perform various actions. It is possible to log in as a client (1), make an order for a client (2), view client's details (3) and delete a client (4). |
![]() |
To add a new client, press the button as presented below. |
![]() |
Fill in all the necessary details in both 'General' and 'Address' sections. Remember to save changes. |
![]() |
At this point, you may also put a limit on allowed deferred payments for a client. Clients will be allowed to place orders with the maximum amount defined here. |
![]() |
When you enter the client's details view (3), you will find here not only his personal details but also information about orders, invoices, services, addons and domains. |
![]() |
[edit] Pricing Configuration
The 'Pricing Configuration' tab enables you to define prices for products, addons and domains you wish to offer to your clients. Remember, you can define prices only within limits shown as placeholders. |
![]() |
![]() |
[edit] Configuration
[edit] General Configuration
In the 'Configuration' tab you are allowed to define 'General Settings' such as your own company name, email signature, invoice footer, invoice and store logos used across client's client area, emails, invoices and date format. Please notice, that the available reseller configuration options may vary depending on the options you selected in the addon configuration and whether the 'Reseller Invoice' option was enabled for the reseller. Note: Once the configuration of your brand is complete, your reseller will still need to set up a CNAME DNS record if domain is used. |
|
![]() |
|
![]() |
|
![]() |
[edit] Email Templates
'Email Templates' is a place where you can view and edit email templates sent to your clients. Provided the option 'Allow Mail Wrappers Change' has been enabled for the reseller, empty fields to edit the CSS Styling, Header and Footer will appear. |
![]() |
Finally, edit the email template to suit your needs and press the 'Save Changes' button. Note: During this step you can easily add merge fields using dropdown menus visible on the following screen. |
![]() |
[edit] Payment Gateways
This tab is only available if the 'Reseller Invoice' option in the admin area is set to 'Enabled' . In this section, the reseller can set up their own payment gateway ('PayPal', 'Stripe', 'Stripe SEPA', 'Bank Transfer', '2Checkout, Authorize.Net Aim', 'Checkout.com', 'Payflow Pro', 'Billplz'and 'WePay' gateways are currently available). charge.failed charge.succeded checkout.session.async_payment_failed checkout.session.async_payment_failed checkout.session.completed charge.dispute.closed In the 'Country Limitation' field you can select countries users from which will have access to each gateway. The payment gateway named 'Deferred Payments' is dedicated to the module features "Consolidated Invoices" and "Deferred Payments" features. It is available only if at least one of them is enabled. |
![]() |
[edit] Email Settings
The Email Settings section allows the configuration of your own email mailbox. Enter the SMTP details to send messages. Remember to test the connection and send testing email messaged to ensure everything works correctly before saving the whole configuration. Important: Please bear in mind that "gmail" mail provided is not supported for reasons that are currently beyond our control. |
![]() |
[edit] Billing
Consolidated invoices settings:
|
![]() |
[edit] Data Export
Export data to CSV files and via API:
|
![]() |
[edit] Billing
Here is the detailed list of end clients' all invoices together with their status.
|
![]() |
Using the 'Action' button on invoices list resellers can also view and manage the invoice details, similarly to how it is done in the admin area. Press the marked button to download the invoice in a PDF format. |
![]() |
Add a custom invoice. This option is available only for branded invoices between the reseller and the client.
|
![]() |
[edit] Orders
This section allows you to view all of the orders with their chosen payment method and status. |
![]() |
Apart from the general section with all orders listed, you may view a list of ordered products, addons and domains separately. Use visible filters to search for specific orders only. |
![]() |
[edit] Promotions
In the 'Promotions' section resellers can generate fully customizable promo codes in order to apply a promotion for products, addons or domains of your choice. Note: You must first enable them in your 'Configuration' section of a specific reseller. |
![]() |
Click on the symbol, marked on the screen below to create one. |
![]() |
Now you should see all fields required to properly configure a promotion.
|
![]() |
By toggling the 'Upgrades / Downgrades' section, you will have a few extra fields to configure.
|
![]() |
[edit] Ordering
There are two ways to add a product to an end client account, we will show you both of them below. |
[edit] Assign Product by Reseller
Your resellers can place orders for their own customers as if the orders were for themselves. |
![]() |
Both your reseller and the end client will receive an order confirmation email. Afterward, when an end client logs in to the WHMCS client area, he/she will be able to view and manage previously ordered products. |
![]() |
[edit] Access Order From The Client Area
Your reseller's clients can view the order form with the list of products configured by their resellers. Therefore, your reseller's clients can place orders on their own, using order forms in the client area. |
![]() |
If 'Deferred Payments' is enabled for end clients, a dedicated payment gateway is available to select. If the client has not reached the imposed limit, the payment can be postponed in time. |
![]() |
[edit] Tickets Management
If you have not disabled tickets in your addon, your resellers will be able to reply and forward tickets created by their clients. It is only available for the tickets department set in the Resellers Center For WHMCS configuration. |
![]() |
On the screen below you can see a list of all the tickets created by a reseller's clients from the client area. |
![]() |
You can easily reply to them. |
![]() |
[edit] Client Area - End Client
An end client sees a branded client area. Since version 3.x of the module end clients are treated as regular WHMCS clients. |
![]() |
Start New Billing Period - end clients when upgrading their services are given the possibility to start a new billing cycle for the upgraded service. Keep in mind that the price for the upgrade is then recalculated adequately to the remaining, unused period of time. This option is available if the "Consolidated Invoices" feature is enabled in the Reseller Area. You may also force this feature to be always available for end-clients by replacing the "upgradesummary.tpl" template with a new one (available since version 3.13.0). Find the below listed files:
From now on, the "Start New Billing Period" feature will be always available regardless of the "Consolidated Invoices" feature status. Note: "Start New Billing Period" feature is not available in the admin store, resellers upgrading their services are not permitted to use it. |
![]() |
[edit] General Relations
Relations between Provider, Reseller and Client |
Payment system: In general, Reseller receives a product from the Provider and then provides it further to the End Client. |
Invoicing system:
|
[edit] Branded Domains & Aliases Configuration
In this section you will find guides on how to create branded domains and aliases in popular control panels. Please keep in mind that there are multiple combinations, that may occur. Take a closer look to find a perfect solution for your case. |
[edit] Apache2 / NGINX
If there is no cPanel/DirectAdmin/Plesk panel on your server, then all you need to do is modify the current configuration:
|
[edit] cPanel / DirectAdmin / Plesk Servers
[edit] Same Server + One Account/Subscription
This configuration of Same server + One Account/Subscription assumes that all domains are added within one account/subscription on a given server. In this case, simply add an additional domain so that it points to the same directory as the WHMCS main domain points to. If a given panel has 'Aliases' option in its offer, you can also use it. |
[edit] Same Server + Multiple Accounts/Subscriptions
Such scenario (Same Server + Multiple Accounts/Subscriptions) is not feasible. This is due to the way web panels work (separation of users), not the module limitations. |
[edit] Separate Server
A separate server - in this situation, the branded domain is added to another DNS server. It might be added to, for example cloudflare, or it is added and used on another server, for example cPanel or DirectAdmin. Take a look at the exemplary situation. Let's say there are two domains:
In order to process it correctly, follow the below steps:
|
[edit] SSL Certificate
If reseller-branded domains or your WHMCS main domain use the SSL connection, they should also support selected certificates. The supported types of certificates:
This is the way WHMCS works. It is not the limitation of our module which uses the 'WHMCS System URL' scheme. |
[edit] cPanel
Installing the SSL certificate for domains managed from cPanel consists of the following steps: |
1. Log in to your cPanel and press 'SSL/TSLS Manager' under the 'Security' section. |
2. Click on 'Manage SSL sites' under 'Install and Manage SSL for your site (HTTPS)'. |
3. (installing the certificate) Select the domain, paste certificate and the private key, and save settings. |
4. (using the already installed certificate) Select it from 'Browse Certificates' , and save settings. |
You can also consider enabling the AutoSSL solution, which should automatically installs domain-validated SSL certificates. Go here for more information. Note: AutoSSL function will rather not work for CNAME entries so you should use virtual hosts (vhosts) instead. |
[edit] Use Cases
This section features sample scenarios that illustrate common use cases and provide practical guidance on applying the module's functionalities. Review these scenarios for real-world examples of how to use the module effectively. |
[edit] Introducing Credit Memos
Resellers Center For WHMCS includes an optional credit memo billing system. This alternative invoice system can make bookkeeping easier, as it restricts invoice editing and introduces credit memos instead. This way of invoice management is required by law in some countries, but can also be useful for correcting billing errors, in product returns, or providing special discounts. The 'Reseller Invoice' feature must be enabled for the reseller first. |
![]() |
Now the 'Credit Memos' feature can be enabled. Note: If the toggle is still grayed out, try refreshing the page. |
![]() |
As you can see the billing documents are now categorized into invoices and credit memos. |
![]() |
After a new invoice is created and delivered to the client, but not yet paid, a button to create the credit memo will appear. It is the only option that can be performed on a delivered invoice, as all data is set to read-only. |
![]() |
The credit memo generated for the invoice is an exact copy of it but with a negative value. |
![]() |
Both the invoice and the credit memo are cross-labeled with related documents. |
![]() |
As soon as the credit memo is created, both documents are marked as 'Closed'. |
![]() |
[edit] Allocating Payment Gateways
While using Resellers Center For WHMCS with the 'Reseller Invoice' function active, resellers can define which payment gateways are available for their clients based on the clients' country. See the instructions below to learn how it works. First, make sure that you are using the 'Reseller Invoice' system, as this feature requires it to function. |
![]() |
In this example, the reseller has set up three payment gateways: Stripe, PayPal, and WePay. 'Country Limitation' is not set up for any of them. |
![]() |
With no restrictions present, all gateways are visible to everyone. |
![]() |
Now, the 'Country Limitation' for Stripe has been changed to include only Afghanistan. This means clients from other countries will not be able to use Stripe. |
![]() |
As you can see, this account is set to the Czech Republic. Due to the restriction we have set, the Stripe gateway is not listed. |
![]() |
Next, we will log in as a client from the country we restricted Stripe to. Since the feature is based on the country in the client's profile, and not geolocation, we will simply change the settings in the 'Reseller Area'. |
![]() |
Once we reach checkout, Stripe is available again. This is because the country of this client matches the restriction rules we set for the gateway earlier. |
![]() |
'Country Limitation' works for guests as well. With Stripe still limited to Afghanistan, the client that selects any other country in the billing address will not be able to use it. |
![]() |
However, clients from Afghanistan will be presented with the Stripe option. Resellers can customize each gateway in this way, ensuring they meet their clients' needs and expectations. |
![]() |
[edit] Tips
1. If your WHMCS is installed in a subdirectory, your resellers using CNAME record must provide their links with it. For example, reseller.com/main-whmcs-directory instead of reseller.com.. RewriteEngine on RewriteCond %{HTTP_HOST} !^main-whmcs-domain.com$ [NC] RewriteCond %{REQUEST_URI} !^/whmcs-directory/ RewriteRule ^(.*)$ /whmcs-directory/$1 [R=301,L] Result: If hostname is not main-whmcs-domain.com and path is not whmcs-directory', then redirect to resellers domain with /whmcs-directory. |
2. When it comes to our Resellers Center For WHMCS and Social Media Login For WHMCS modules, they are compatible and work faultlessly unless your reseller uses a branded domain. |
3. If you enable the 'Reseller Invoice' option and any invoice is created in the meantime, you will no longer be able to disable this option. |
4. If you would like to use Google reCAPTCHA for brand storefronts, you need to add the domain addresses of those brands to the reCAPTCHA configuration. To do so, please proceed here. |
![]() |
5. Consolidated invoices logging system - the module offers the possibility to extend the log entries related to consolidated invoices creation. If you need additional information to be logged after every cron execution and generating a consolidated invoice, please:
Note: Please bear in mind that this option is not suggested for the production environment as it might significantly slow down the process of generating consolidated invoices and increase the number of logs. |
![]() |
![]() |
6. Hiding gateways for resellers - you may permanently hide single payment gateways for all resellers regardless of their billing settings. To do so:
As a result, in the Reseller Area configuration, the reseller will not see these payment gateways, meaning there will be no way to enable them or modify their settings. |
![]() |
7. For Stripe SEPA payment gateway the functions 'Revert on Dispute Loss' and 'Failed Transaction Fee' can be used together to achieve different behaviors, here are to possible combinations:
|
8. Customize the Reseller Area button design:
|
9. Customize the Reseller Label design: You can define custom styles for reseller labels by creating a dedicated CSS stylesheet. Follow these steps to apply your own styles:
.mg-wrapper.reseller-label { color: #4442a9; background-color: #dedef2; border-color: #ccd1eb; } .mg-wrapper.reseller-label.reseller-label-reseller-own { color: #44a942; background-color: #def2de; border-color: #ccebd1; } .mg-wrapper.reseller-label.reseller-label-resellers-client { color: #3279c9; background-color: #def2ee; border-color: #cce0eb; } .mg-wrapper.reseller-label.reseller-label-table { color: #9232c9; background-color: #e7def2; border-color: #c6abe7; } .mg-wrapper.reseller-label.resellers-client-service { color: #c0772c; background-color: #d9b899; border-color: #bb7f51; } |
![]() |
[edit] Update Instructions
An essential manual through the process of updating the module is offered here. When you upgrade the module from a version older than 3.5.0 to 3.5.0 or newer, please remember to set writable permissions to the 'config' directory, as described in step 6. of the installation guide. |
Before upgrading your WHMCS to version 8.9.0, it is strongly recommended to execute the following command, for instance, via phpMyAdmin: ALTER TABLE `ResellersCenter_BrandedInvoices` DROP FOREIGN KEY ResellersCenter_BrandedInvoices_ibfk_1; |
[edit] Migration
Migration tool allows you to upgrade Resellers Center For WHMCS module to the latest version. Note: Version 3.x currently supports migration from version 2.5.x of the module and it will only transfer data on resellers, resellers' clients and resellers' groups. |
[edit] External API Configuration
The Resellers Center For WHMCS module utilizes External API, follow the instructions below to learn how to configure and use the API correctly. To start the configuration process, go to 'Configuration → WHMCS API Connection Settings'. Next, click on the link as presented below. |
![]() |
Once you are in the 'Manage API Credentials' section, go to 'API Roles' and press 'Create API Role' . |
![]() |
Enter your 'Role Name' and decide which API actions will be allowed. Do not forget to save the changes. The API requires a minimum set of permissions, which include:
|
![]() |
Next, navigate to the 'API Credentials' section and click the 'Generate New API Credential' button. Provide a description and choose the previously created API role. Finally, press the Generate button. |
![]() |
You will find your new 'Identifier' as well as 'Secret' . Copy and paste them to a safe place because you will not see them again. |
![]() |
Now, come back to the configuration section of the module. Provide your 'Identifier' and 'Secret' . You also need to complete 'Base Auth Login' and 'Base Auth Password' if your site uses them. |
![]() |
The final step is to navigate to 'General Settings' of your WHMCS admin area. Find the 'Security' section there and scroll down to the 'API IP Access Restriction' feature. Enter your IP address here to make sure that the configuration will work properly. |
![]() |
[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 Resellers Center For WHMCS module to unlock these benefits. Follow a comprehensive guide covering the transition process, the advantages it brings, and step-by-step instructions on what to do next after the order has been successfully finalized. |
[edit] Common Problems
1. When you have problems with connection, check whether your SELinux or firewall does not block ports. |
2. If you use HTTPS, remember to implement a redirect from HTTP to HTTPS on the reseller's domain. Otherwise, WHMCS will route visitors to the main WHMCS and not the reseller store. Keep in mind that when WHMCS creates the redirection, the domain is changed as well. |
3. We do not recommend using Resellers Center For WHMCS with:
Integration between these modules is hampered due to specific features of each one of them and their individual work flow.
|
4. Please remember that Resellers Center For WHMCS is guaranteed to work smoothly with 'Six', 'Twenty-One' And 'Lagom' templates. If you are using some custom template, please be mindful that the module may not combine well with it out of the box, which may result in unexpected errors. |
5. The Lagom Client Theme missing integration:
|
6. If you are using other language than English in the client area, note that some strings might be still in English, e.g. billing cycles or invoice status. Note that this issue is not related to our module, but to WHMCS itself and we have no influence on these occurrences. |
7. The available in the client area option "Add Funds", which allows adding extra cash reserve to the client balance (see: Client Area → Billing → Add Funds), is not supported by the Resellers Center module. It is highly advised for the administrators to turn this option off to avoid errors: Admin Area → Genera Settings → Credit → Enable/Disable. |