Multibrand 1.X For WHMCS
(35 intermediate revisions by 5 users not shown) | |||
Line 2: | Line 2: | ||
<meta name="description" content="ModulesGarden Wiki Contains All The Information You Need About The Multibrand For WHMCS Module."></meta> | <meta name="description" content="ModulesGarden Wiki Contains All The Information You Need About The Multibrand For WHMCS Module."></meta> | ||
− | =About [ | + | =About [https://www.modulesgarden.com/products/whmcs/multibrand Multibrand For WHMCS]= |
{| | {| | ||
|style="padding: 10px 0px 10px 0px;"|'''Multibrand For WHMCS''' will allow you to manage multiple brands on multiple websites while using just a single WHMCS installation. | |style="padding: 10px 0px 10px 0px;"|'''Multibrand For WHMCS''' will allow you to manage multiple brands on multiple websites while using just a single WHMCS installation. | ||
Line 99: | Line 99: | ||
{| | {| | ||
|style="padding: 0px 0px 0px 30px;"|✔ Receive Branded Emails And Invoices | |style="padding: 0px 0px 0px 30px;"|✔ Receive Branded Emails And Invoices | ||
− | |||
− | |||
− | |||
|} | |} | ||
{| | {| | ||
Line 151: | Line 148: | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 0px 30px;"|✔ | + | |style="padding: 0px 0px 0px 30px;"|✔ Supports PHP 5.4 Up To PHP 7 |
|} | |} | ||
{| | {| | ||
Line 157: | Line 154: | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 30px 30px;"|✔ Supports WHMCS | + | |style="padding: 0px 0px 30px 30px;"|✔ Supports WHMCS V6 and V7 |
|} | |} | ||
Line 167: | Line 164: | ||
==Installation== | ==Installation== | ||
{| | {| | ||
− | |style="padding: 10px 0px 20px 15px;"|'''1. Log in to your client area and download | + | |style="padding: 10px 0px 20px 15px;"|'''1. Log in to your client area and download the module.''' |
|} | |} | ||
{| | {| | ||
Line 173: | Line 170: | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 0px 0px 10px 15px;"|'''2. In the downloaded file you will find two packages that support different PHP versions.'''<br/>As presented on the screen below, the first one is dedicated to PHP 7, while the second one is aimed at PHP 5.4 up to PHP 5.6.<br/>It does not apply to open source versions.<br/> |
− | + | '' '''Note''': You can check current PHP version in your WHMCS. To do so proceed to ''' 'Utilities' → 'System' → 'PHP Info'.''' | |
|} | |} | ||
{| | {| | ||
Line 180: | Line 177: | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 15px 15px;"|'''3. When you install Multibrand for the first time you have to rename '' 'license_RENAME.php' '' file.'''<br /> | + | |style="padding: 0px 0px 15px 15px;"|'''3. Extract the downloaded file and choose the one with the right PHP version. Upload and extract the PHP file into the main WHMCS directory.'''<br /> |
+ | The content of PHP version files should look like this. | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 20px 25px;"|[[File:MB_2_2.png]] | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 15px 15px;"|'''4. When you install Multibrand For WHMCS for the first time you have to rename '' 'license_RENAME.php' '' file.'''<br /> | ||
File is located in '' 'modules/addons/MultibrandFunctionality/license_RENAME.php'.'' Rename it from '' 'license_RENAME.php' '' to '' 'license.php'.'' | File is located in '' 'modules/addons/MultibrandFunctionality/license_RENAME.php'.'' Rename it from '' 'license_RENAME.php' '' to '' 'license.php'.'' | ||
|} | |} | ||
Line 187: | Line 191: | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 15px 15px;"|''' | + | |style="padding: 0px 0px 15px 15px;"|'''5. In order to configure your license key, you have to edit a previously renamed '' 'license.php' '' file.'''<br /> |
Enter your license key between quotation marks as presented on the following screen. You can find your license key in your client area'' → 'My Products'.'' | Enter your license key between quotation marks as presented on the following screen. You can find your license key in your client area'' → 'My Products'.'' | ||
|} | |} | ||
Line 196: | Line 200: | ||
==Activating Addon Module== | ==Activating Addon Module== | ||
{| | {| | ||
− | |style="padding: 10px 0px 15px 15px;"|''' | + | |style="padding: 10px 0px 15px 15px;"|'''6. Now you have to activate the module in your WHMCS system.'''<br /> |
Log in to your WHMCS admin area. Go to '' 'Setup' '' → '' 'Addon Modules'. '' Afterwards, find '' 'Multibrand' '' and press '' 'Activate' '' button. | Log in to your WHMCS admin area. Go to '' 'Setup' '' → '' 'Addon Modules'. '' Afterwards, find '' 'Multibrand' '' and press '' 'Activate' '' button. | ||
|} | |} | ||
Line 203: | Line 207: | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 15px 15px;"|''' | + | |style="padding: 0px 0px 15px 15px;"|'''7. In the next step you need to permit access to this module.'''<br /> |
To do so click on '' 'Configure' '' button, tick '' 'Access Control' '' near required admin role groups and press '' 'Save Changes'.'' | To do so click on '' 'Configure' '' button, tick '' 'Access Control' '' near required admin role groups and press '' 'Save Changes'.'' | ||
|} | |} | ||
Line 211: | Line 215: | ||
==Additional Settings== | ==Additional Settings== | ||
{| | {| | ||
− | |style="padding: 10px 0px 15px 15px;"|''' | + | |style="padding: 10px 0px 15px 15px;"|'''8. Now, set up '' 'logos' '' folder as writable.'''<br /> |
− | Folder is located in '' ' | + | Folder is located in '' 'your_whmcs/modules/addons/MultibrandFunctionality/storage/'.'' |
|} | |} | ||
{| | {| | ||
Line 218: | Line 222: | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 15px 15px;"|''' | + | |style="padding: 0px 0px 15px 15px;"|'''9. The last step is replacing '' 'invoicepdf.tpl' '' file with '' 'invoicepdf_RENAME.tpl' '' for each of the templates used.'''<br /> |
− | + | '' 'invoicepdf_RENAME.tpl' '' is located in '' 'your_whmcs/templates/default/' ''.<br /> | |
+ | Simply, remove default '' 'invoicepdf.tpl' '' file from template folder and copy '' 'invoicepdf_RENAME.tpl' '' into the folder.<br /> | ||
+ | Afterwards, rename the file to '' 'invoicepdf.tpl' ''. | ||
|} | |} | ||
{| | {| | ||
Line 225: | Line 231: | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 15px 15px;"|''' | + | |style="padding: 0px 0px 15px 15px;"|'''10. You have just successfully installed Multibrand For WHMCS!'''<br /> |
You can access your module in '' 'Addons' '' → '' 'Multibrand'.'' | You can access your module in '' 'Addons' '' → '' 'Multibrand'.'' | ||
|} | |} | ||
Line 281: | Line 287: | ||
{| | {| | ||
|style="padding: 0px 0px 30px 15px;"|'''The last step is setting up DNS record, which will point from branded domain towards your main domain used by WHMCS.'''<br /> | |style="padding: 0px 0px 30px 15px;"|'''The last step is setting up DNS record, which will point from branded domain towards your main domain used by WHMCS.'''<br /> | ||
− | To learn more about setting up CNAME records, proceed to [[ | + | To learn more about setting up CNAME records, proceed to [[Multibrand_1.X_For_WHMCS#Domains_.26_CNAME_Records_Configuration|Domains & CNAME Records Configuration section]].<br /> |
Do not forget to publish the brand as soon as the CNAME record propagates worldwide. | Do not forget to publish the brand as soon as the CNAME record propagates worldwide. | ||
|} | |} | ||
Line 321: | Line 327: | ||
''Note 1: Remember, to use branded payment gateway you need to activate it first under '' 'Setup' → 'Payments' → 'Payment Gateways'.'' ''<br/> | ''Note 1: Remember, to use branded payment gateway you need to activate it first under '' 'Setup' → 'Payments' → 'Payment Gateways'.'' ''<br/> | ||
''Note 2: Owing to '' 'Payment Gateway' '' tab, you can use different details per brand.''<br/> | ''Note 2: Owing to '' 'Payment Gateway' '' tab, you can use different details per brand.''<br/> | ||
− | ''Note 3: | + | ''Note 3: 2Checkout payment gateway currently supports only single payments.'' |
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 0px 0px 20px 25px;"|[[File:MB_18.png]] |
+ | |} | ||
+ | {| | ||
+ | |style="padding: 10px 0px 30px 15px;"|''Info: please note that only '' 'PayPal' '' and '' '2Checkout' '' payment gateways can be currently multibranded.''<br/> | ||
+ | Still, you may use any other payment gateway that is active in your WHMCS system. Multibrand For WHMCS can work with any gateway <br/>that works within your WHMCS, the only limitation is that the other payment gateways use the same settings for all brands. | ||
|} | |} | ||
Line 420: | Line 430: | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 0px 0px 20px 25px;"|[[File:MB_26_1.png]] |
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 30px 15px;"| | ||
+ | * For '''all''' WHMCS templates: <br/> | ||
+ | '''1.''' Access the location of your template. For the '''Five''' template it is the '' ''' /yourWHMCS/templates/five/ ''' '' folder, while for the '''Six''' template, you need to go to the '' ''' /yourWHMCS/templates/six/ ''' '' location.<br /> | ||
+ | '''2.''' Make a copy of your '''invoicepdf.tpl''' and '''quotepdf.tpl''' files located in your template's folder. <br /> | ||
+ | '''3.''' Now, move to the '' 'yourWHMCS/templates/default' '' folder and rename '''invoicepdf_RENAME.tpl''' and '''quotepdf_RENAME.tpl''' to the original file names.<br /> | ||
+ | '''4.''' Lastly, replace these files in your template's folder. | ||
+ | <br/><br/> | ||
+ | |||
+ | * For the '''Five''' WHMCS template<br/> | ||
+ | '''1.''' Open the '''header.tpl''' file located in the '' ''' /yourWHMCS/templates/five/ ''' '' folder<br /> | ||
+ | '''2.''' Find and '''remove''' the following code (should be located in the line 7): | ||
+ | {if $systemurl}<base href="{$systemurl}" />{/if} | ||
+ | '''3.''' Next, find the following code: | ||
+ | <pre><div id="whmcsimglogo"><a href="index.php"><img src="templates/{$template}/img/whmcslogo.png" alt="{$companyname}" /></a></div></pre> | ||
+ | '''4.''' And replace it with: | ||
+ | <a href="{$WEB_ROOT}/index.php"><img src="{if $logo}{$logo}{else}{$WEB_ROOT}/templates/{$template}/img/logo.png{/if}" alt="{$companyname}" /></a> | ||
+ | <br/> | ||
+ | |||
+ | * For '''WHMCS V6''' and the '''Six''' template<br/> | ||
+ | '''1.''' Open the '''header.tpl''' file located in the '' ''' /yourWHMCS/templates/six/ ''' '' folder<br /> | ||
+ | '''2.''' Find the following code: | ||
+ | <a href="{$WEB_ROOT}/index.php"><img src="{$WEB_ROOT}/templates/{$template}/img/logo.png" alt="{$companyname}" /></a> | ||
+ | '''4.''' And replace it with: | ||
+ | <a href="{$WEB_ROOT}/index.php"><img src="{if $logo}{$logo}{else}{$WEB_ROOT}/templates/{$template}/img/logo.png{/if}" alt="{$companyname}" /></a> | ||
+ | <br/> | ||
+ | |||
+ | * For '''WHMCS V7''' and the '''Six''' template <br/> | ||
+ | '''1.''' Open the '''header.tpl''' file located in the '' ''' /yourWHMCS/templates/six/ ''' '' folder<br /> | ||
+ | '''2.''' Find the following block of code: | ||
+ | <pre> | ||
+ | {if $assetLogoPath} | ||
+ | <a href="{$WEB_ROOT}/index.php" class="logo"><img src="{$assetLogoPath}" alt="{$companyname}"></a> | ||
+ | {else} | ||
+ | <a href="{$WEB_ROOT}/index.php" class="logo logo-text">{$companyname}</a> | ||
+ | {/if} | ||
+ | </pre> | ||
+ | '''4.''' And replace it with: | ||
+ | <a href="{$WEB_ROOT}/index.php"><img src="{if $logo}{$logo}{else}{$WEB_ROOT}/templates/{$template}/img/logo.png{/if}" alt="{$companyname}" /></a> | ||
+ | <br /> | ||
+ | '''Note''' - Resellers Center For WHMCS v3.X module is no longer compatible with Multibrand For WHMCS v1.X module. | ||
|} | |} | ||
Line 435: | Line 487: | ||
{| | {| | ||
|style="padding: 10px 0px 15px 15px;"|Multibrand For WHMCS makes management of WHMCS easier through introducing '' 'Brand Details' '' column.<br /> | |style="padding: 10px 0px 15px 15px;"|Multibrand For WHMCS makes management of WHMCS easier through introducing '' 'Brand Details' '' column.<br /> | ||
− | '' 'Brand Details' '' column informs you about membership of clients, invoices, tickets, orders or services | + | '' 'Brand Details' '' column informs you about membership of clients, invoices, tickets, orders or services to certain brand.<br /> |
Let's see how it looks in a '' 'Client List'.'' | Let's see how it looks in a '' 'Client List'.'' | ||
|} | |} | ||
Line 449: | Line 501: | ||
|style="padding: 0px 0px 30px 25px;"|[[File:MB_28.png]] | |style="padding: 0px 0px 30px 25px;"|[[File:MB_28.png]] | ||
|} | |} | ||
+ | |||
==Invoices/Tickets/Quotes Creation From Admin Area== | ==Invoices/Tickets/Quotes Creation From Admin Area== | ||
{| | {| | ||
Line 573: | Line 626: | ||
*there are a few email types: general/product/domain/invoice | *there are a few email types: general/product/domain/invoice | ||
*there are a lot of default WHMCS templates in the system. These kinds of templates are "special" in a few ways. | *there are a lot of default WHMCS templates in the system. These kinds of templates are "special" in a few ways. | ||
− | *we have only one tool that allows us to adjust emails ([ | + | *we have only one tool that allows us to adjust emails ([https://developers.whmcs.com/hooks-reference/everything-else/ link]) |
<br /> | <br /> | ||
'''How does email branding mechanism look like?'''<br /> | '''How does email branding mechanism look like?'''<br /> | ||
Line 610: | Line 663: | ||
|} | |} | ||
− | == | + | ==Domains & CNAME Records Configuration== |
{| | {| | ||
− | |style="padding: 10px 0px | + | |style="padding: 10px 0px 10px 0px;"|In this section you will find guides on how to create CNAME record in popular control panels.<br /> |
For instance, if your branded domain is reseller.com and domain with your WHMCS is whmcs.domain.com, your CNAME will be '' 'www.reseller.com. CNAME whmcs.domain.com.'.''<br /> | For instance, if your branded domain is reseller.com and domain with your WHMCS is whmcs.domain.com, your CNAME will be '' 'www.reseller.com. CNAME whmcs.domain.com.'.''<br /> | ||
''Note 1: As you can see above, each domain has to be closed with a dot.''<br /> | ''Note 1: As you can see above, each domain has to be closed with a dot.''<br /> | ||
− | ''Note 2: To learn more about certificate requirements, visit [[ | + | ''Note 2: To learn more about certificate requirements, visit [[Multibrand_1.X_For_WHMCS#Common_Problems|Common Problems section]].'' |
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 30px 0px;"|Domain used by each of the brands MUST BE PARKED on the main domain.<br/>In case a domain cannot be parked or it is a subdomain, you must create CNAME records that will redirect from the brand domain to the main domain.<br/> | ||
+ | Only when you have parked your domains you can move to setting CNAME records on your panels. See the tips below. | ||
|} | |} | ||
===cPanel=== | ===cPanel=== | ||
Line 660: | Line 717: | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 0px 0px 10px 15px;"|4. Add a new record or edit an existing one. |
− | + | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px 10px 15px;"|5 | + | |style="padding: 0px 0px 10px 15px;"|5. Now, change the record type to '' 'CNAME' '' and fill in both '' 'Domain name' '' and '' 'Canonical name'.''<br /> |
− | + | ||
− | + | ||
− | + | ||
Finish by pressing '' 'Ok'.''<br /> | Finish by pressing '' 'Ok'.''<br /> | ||
''Note: The changes will take between 4 to 8 hours to update worldwide.'' | ''Note: The changes will take between 4 to 8 hours to update worldwide.'' | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 30px 15px;"|'''Remember to restart your server once it is configured.''' | ||
|} | |} | ||
Line 681: | Line 737: | ||
This is due the way in which WHMCS works. It is not the limitation of our module.<br /> | This is due the way in which WHMCS works. It is not the limitation of our module.<br /> | ||
Additionally, in order to fix connection support for secured connections, add the integration code shown below.<br /> | Additionally, in order to fix connection support for secured connections, add the integration code shown below.<br /> | ||
− | Edit '' 'configuration.php' '' located in the main WHMCS directory and place following code at the end of the file. | + | Edit '' 'configuration.php' '' located in the main WHMCS directory and place following code at the end of the file.<br/> |
+ | '''For WHMCS V6:''' | ||
require_once dirname(__FILE__).'/includes/MultiBrandSSLFixer.php'; | require_once dirname(__FILE__).'/includes/MultiBrandSSLFixer.php'; | ||
$SSLFixer = new MultiBrandSSLFixer(); | $SSLFixer = new MultiBrandSSLFixer(); | ||
Line 694: | Line 751: | ||
} | } | ||
} | } | ||
+ | |||
+ | '''For WHMCS V7:''' | ||
+ | require_once dirname(__FILE__).'/includes/MultiBrandSSLFixer.php'; | ||
+ | $SSLFixer = new MultiBrandSSLFixer(); | ||
+ | if($SSLFixer->shouldBeInSSL() || $SSLFixer->issetSystemSSLURL($db_host, $db_username, $db_password, $db_name)) | ||
+ | { | ||
+ | if(! $SSLFixer->isInSSL()) | ||
+ | { | ||
+ | $SSLFixer->forceRedirect(true); | ||
+ | } | ||
+ | } | ||
+ | else | ||
+ | { | ||
+ | if($SSLFixer->isInSSL()) | ||
+ | { | ||
+ | $SSLFixer->forceRedirect(false); | ||
+ | } | ||
+ | } | ||
|} | |} | ||
===cPanel=== | ===cPanel=== | ||
Line 727: | Line 802: | ||
In this section we will list the WHMCS modules which do not support multibranding or do not cooperate with Multibrand For WHMCS at all.<br /> | In this section we will list the WHMCS modules which do not support multibranding or do not cooperate with Multibrand For WHMCS at all.<br /> | ||
*'''SMS Center For WHMCS''' - SMS sent to customers cannot be branded. Default set of SMS templates is sent to clients from all brands.<br /> | *'''SMS Center For WHMCS''' - SMS sent to customers cannot be branded. Default set of SMS templates is sent to clients from all brands.<br /> | ||
− | *'''Resellers Center For WHMCS''' - | + | *'''Resellers Center For WHMCS''' - This module is not compatible with our Multibrand For WHMCS module. |
+ | |} | ||
+ | {| | ||
+ | |style="padding: 10px 0px 20px 15px;"|'''Cloudflare''' | ||
+ | Cloudflare is a service that will [http://support.cloudflare.com/hc/en-us/articles/203322654-Why-is-my-domain-resolving-to-the-wrong-IP-when-I-do-a-DNS-lookup-or-ping mask your server IP address]. <br /> | ||
+ | This is because they use their own DNS to resolve to one of their many reverse proxy servers and will cause incompatibility with Multibrand module. <br /> | ||
+ | You may disallow the CloudFlare network to assume NS authority and don't become the intermediary between a user and your server, but then your CloudFlare service may become useless.<br /> | ||
+ | |||
|} | |} | ||
Line 739: | Line 821: | ||
=Tips= | =Tips= | ||
{| | {| | ||
− | |style="padding: 10px 0px | + | |style="padding: 10px 0px 5px 15px;"|'''1. The logo image is usually hard coded into the WHMCS template files.'''<br /> |
In order to use logo file provided in the '' 'Multibrand For WHMCS' '' module, find proper line at the template file and replace it with '' '{$logo}' '' variable.<br /> | In order to use logo file provided in the '' 'Multibrand For WHMCS' '' module, find proper line at the template file and replace it with '' '{$logo}' '' variable.<br /> | ||
The line responsible for a displayed logo is placed at the '' 'header.tpl' '' file located in a currently used template. | The line responsible for a displayed logo is placed at the '' 'header.tpl' '' file located in a currently used template. | ||
|} | |} | ||
− | + | {| | |
+ | |style="padding: 0px 0px 10px 15px;"|2. If you want Captcha security option to be displayed in your client area for all branded domains, you need to configure each of those domains in your Google Account as well. | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 30px 25px;"|[[File:MB_41.png]] | ||
+ | |} | ||
=Common Problems= | =Common Problems= | ||
{| | {| | ||
Line 760: | Line 847: | ||
|} | |} | ||
{| | {| | ||
− | |style="padding: 0px 0px | + | |style="padding: 0px 0px 5px 15px;"|'''4. If your branded domain or WHMCS domain are using SSL connection''', both of them need to have the same certificate.<br /> |
If both of them are using the same domain, you will need a wildcard certificate.<br /> | If both of them are using the same domain, you will need a wildcard certificate.<br /> | ||
If they are using different domains, secure them with the SAN certificate.<br /> | If they are using different domains, secure them with the SAN certificate.<br /> | ||
This is due to the way WHMCS works. It is not the limitation of our module. | This is due to the way WHMCS works. It is not the limitation of our module. | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 5px 15px;"|'''5. Please remember that Multibrand For WHMCS works flawlessly with the officially supported and pointed in features list templates.<br/> | ||
+ | These are: ''Template 'Six' '' and '' 'Five'.''<br/> In case you are using some custom template, you must be aware that unexpected errors might occur and we cannot take the responsibility for solving them. | ||
+ | |} | ||
+ | {| | ||
+ | |style="padding: 0px 0px 30px 15px;"| | ||
+ | '''6. Multibrand For WHMCS module is not compatible with our Resellers Center For WHMCS.'''<br/> | ||
+ | There is no integration between these modules and we '''do not''' recommend using them together. | ||
|} | |} |
Latest revision as of 15:18, 20 September 2017
[edit] About Multibrand For WHMCS
Multibrand For WHMCS will allow you to manage multiple brands on multiple websites while using just a single WHMCS installation.
You will be able to customize your brand through modifying factors like client area template, logo or brand language, and preview the changes with just a single click. |
- Addon Features:
✔ User Friendly Management Of Multiple Brands |
✔ Easy Modification Of Existing Brands |
✔ Assign/Unassign Clients To Multiple Brands |
✔ Assign Products To Brands |
✔ Assign Product Bundles To Brands |
✔ Assign Ticket Departments To Brands |
✔ Configure Payment Gateways For Each Brand Separately: |
✔ PayPal - Single Payment And Subscription |
✔ 2CheckOut - Single Payment Only |
✔ Display Active Clients, Invoices, Orders, Tickets And Services Associated To Brands |
✔ Quick Preview Of Branded Client Area |
✔ Publish/Unpublish Brands On Click |
✔ Set Brand As Default - Automatic Assignment Of New Clients |
✔ View Brand Reports - List Of Clients, Invoices, Orders, Tickets And Services |
✔ View Dynamic Brands Comparison Reports - Various Graph Types |
✔ Generate Separate Email Templates For Each Brand |
✔ Verify Integration Of Templates Used By Brands |
- Admin Area Features:
✔ Order Branded Products |
✔ Create Branded Invoices |
✔ Create Branded Quotes |
✔ Open Branded Tickets |
✔ Create Branded Announcements |
✔ Add Branded Knowledgebase Articles |
✔ Add Branded Downloads |
✔ Log In As Client To Chosen Brand |
- Client Area Features:
✔ Displayed Client Area Template And Default Language Depend On Brand |
✔ Access To Products, Invoices, Downloads, Ticket Departments and Payment Gateways Assigned To Brand |
✔ View Articles And Announcements Assigned To Brand |
✔ Receive Branded Emails And Invoices |
✔ Branded Clients Can Only Log Into Brand They Are Assigned To |
✔ Multibranded Clients Can Log Into All Existing Brands With The Same Access Details |
- Brand Configuration:
✔ Default Brand For New Accounts |
✔ Brand Name |
✔ Company Name |
✔ Brand URL Address |
✔ Brand Logo |
✔ Brand Language |
✔ Brand Template |
✔ Brand Address |
✔ Brand Signature |
✔ Brand Email |
✔ Brand Graph Color |
✔ Brand Terms Of Service URL |
- General Info:
✔ Multi-Language Support |
✔ Supports PHP 5.4 Up To PHP 7 |
✔ Supports WHMCS Templates Five and Six |
✔ Supports WHMCS V6 and V7 |
[edit] Installation
This tutorial will show you how to successfully install and configure Multibrand For WHMCS. We will guide you step by step through the whole installation and configuration process. |
[edit] Installation
1. Log in to your client area and download the module. |
2. In the downloaded file you will find two packages that support different PHP versions. As presented on the screen below, the first one is dedicated to PHP 7, while the second one is aimed at PHP 5.4 up to PHP 5.6. It does not apply to open source versions. Note: You can check current PHP version in your WHMCS. To do so proceed to 'Utilities' → 'System' → 'PHP Info'. |
3. Extract the downloaded file and choose the one with the right PHP version. Upload and extract the PHP file into the main WHMCS directory. The content of PHP version files should look like this. |
4. When you install Multibrand For WHMCS for the first time you have to rename 'license_RENAME.php' file. File is located in 'modules/addons/MultibrandFunctionality/license_RENAME.php'. Rename it from 'license_RENAME.php' to 'license.php'. |
5. In order to configure your license key, you have to edit a 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 your client area → 'My Products'. |
[edit] Activating Addon Module
6. Now you have to activate the module in your WHMCS system. Log in to your WHMCS admin area. Go to 'Setup' → 'Addon Modules'. Afterwards, find 'Multibrand' and press 'Activate' button. |
7. In the next step you need to permit access to this module. To do so click on 'Configure' button, tick 'Access Control' near required admin role groups and press 'Save Changes'. |
[edit] Additional Settings
8. Now, set up 'logos' folder as writable. Folder is located in 'your_whmcs/modules/addons/MultibrandFunctionality/storage/'. |
9. The last step is replacing 'invoicepdf.tpl' file with 'invoicepdf_RENAME.tpl' for each of the templates used. 'invoicepdf_RENAME.tpl' is located in 'your_whmcs/templates/default/' . |
10. You have just successfully installed Multibrand For WHMCS! You can access your module in 'Addons' → 'Multibrand'. |
[edit] Configuration and Management
In this section we will show you how to properly set up and use Multibrand For WHMCS. |
[edit] Dashboard
Under 'Dashboard' you can find basic information about the module and current status of 'logos' folder. It is required to set up 'logos' folder as writable in order to upload logos of your brands. |
[edit] Brands
Under 'Brands' tab you can create and manage your brands using a single instance of WHMCS solution. |
[edit] New Brand
Let's start by creating a new brand. For that purpose go to 'Brands' tab and press 'Create New Brand' button. |
Now, fill out 'Brand Base URL', 'Brand Email', 'Brand Name', 'Company Name', 'Address', 'Terms of Service URL' and 'Signature' with desired values.
|
Afterwards, select desired brand language, template and brand color. Additionally, upload the logo which will be used in branded invoices, emails and client area. |
Now, proceed to 'Settings' → 'Integration Code' and check whether chosen template is integrated correctly with Multibrand. |
The last step is setting up DNS record, which will point from branded domain towards your main domain used by WHMCS. To learn more about setting up CNAME records, proceed to Domains & CNAME Records Configuration section. |
[edit] Management of Existing Brands
To manage your brand, press 'Manage' button next to it as shown on the following screen. |
[edit] General
General tab contains configuration of the brand. You can modify your brand at any time, simply alter wanted parameters and press 'Save Changes'. |
[edit] Products
This tab allows you to assign products and product bundles configured in your system to the brand. Note: Products/product bundles can be assigned to multiple brands at the same time. |
[edit] Ticket Department
Here you can choose ticket departments available from the brand. 'Important': Only one brand for each department is allowed. |
[edit] Payment Gateway
This tab allows you to configure payment gateway for the brand. To enable payment gateway, mark checkbox next to it, fill out required details and press 'Save Changes'. |
Info: please note that only 'PayPal' and '2Checkout' payment gateways can be currently multibranded. Still, you may use any other payment gateway that is active in your WHMCS system. Multibrand For WHMCS can work with any gateway |
[edit] Email Templates
Here you are able to generate email templates for the brand only. Check 'Create Brand Templates' and press 'Save Changes' to create them. |
[edit] Back To Brand Management
Alternatively, you can edit brand values visible in 'Brand Management' tab by pressing them. Choose/type in the desired value and confirm changes. |
Each brand can be disabled/enabled through pressing 'Published'/'Unpublished' (red) or set up as default through clicking on 'Default' (blue) button. Both of them are placed in 'Status' column as shown on the screen below. |
In order to view the details of a brand, press 'Toggle Details' button next to the brand. Here you can find basic information about the brand as well as quick access links to the brand reports. |
You can also view the client area of the brand through pressing 'Preview' button. The client area should appear in a popup window as shown on the following screen. |
[edit] Clients
Any client can be in one of the three states:
Additionally, if they own products from different brands, they will be fluidly redirected between brands when viewing them. |
You can search clients by client name, email and company. |
[edit] Brand Reports
In 'Brand Reports' tab you can easily view the reports concerning specific brands. You can view the reports of clients, invoices, orders, tickets and services bounded to the selected brand. |
In addition, you can select the quantity of records per page, search a specified record and sort records by selected column. |
You can also compare all your brands using tabs marked on the following screen. Here you can compare them by the amount of clients, orders, services, tickets, invoices, domains and income with various graph types. |
[edit] Settings
Under settings you can find migration tool, integration code and direct link to the article you are currently reading. |
[edit] Integration Code
This integration code is required for correct branding. |
1. Access the location of your template. For the Five template it is the /yourWHMCS/templates/five/ folder, while for the Six template, you need to go to the /yourWHMCS/templates/six/ location.
1. Open the header.tpl file located in the /yourWHMCS/templates/five/ folder {if $systemurl}<base href="{$systemurl}" />{/if} 3. Next, find the following code: <div id="whmcsimglogo"><a href="index.php"><img src="templates/{$template}/img/whmcslogo.png" alt="{$companyname}" /></a></div> 4. And replace it with: <a href="{$WEB_ROOT}/index.php"><img src="{if $logo}{$logo}{else}{$WEB_ROOT}/templates/{$template}/img/logo.png{/if}" alt="{$companyname}" /></a>
1. Open the header.tpl file located in the /yourWHMCS/templates/six/ folder <a href="{$WEB_ROOT}/index.php"><img src="{$WEB_ROOT}/templates/{$template}/img/logo.png" alt="{$companyname}" /></a> 4. And replace it with: <a href="{$WEB_ROOT}/index.php"><img src="{if $logo}{$logo}{else}{$WEB_ROOT}/templates/{$template}/img/logo.png{/if}" alt="{$companyname}" /></a>
1. Open the header.tpl file located in the /yourWHMCS/templates/six/ folder {if $assetLogoPath} <a href="{$WEB_ROOT}/index.php" class="logo"><img src="{$assetLogoPath}" alt="{$companyname}"></a> {else} <a href="{$WEB_ROOT}/index.php" class="logo logo-text">{$companyname}</a> {/if} 4. And replace it with: <a href="{$WEB_ROOT}/index.php"><img src="{if $logo}{$logo}{else}{$WEB_ROOT}/templates/{$template}/img/logo.png{/if}" alt="{$companyname}" /></a>
|
[edit] Migration Tool
Migration tool allows you to migrate data from Multibrand For WHMCS in version earlier than 1.6.0. Important: Migration disables branded payment gateways. You have to manually re-enable them. |
[edit] Membership In The Admin Area
Multibrand For WHMCS makes management of WHMCS easier through introducing 'Brand Details' column. 'Brand Details' column informs you about membership of clients, invoices, tickets, orders or services to certain brand. |
In 'Order List' it looks similar. Through pressing a brand name, you will be moved directly to a report page of that brand. |
[edit] Invoices/Tickets/Quotes Creation From Admin Area
Due to multibranded clients, they will get invoices/tickets/quotes from multiple brands. Therefore, you as an administrator have to be able to define from which brand create them. |
From 'Invoices' tab you can choose brand for a new invoice. |
While 'Quotes' tab enables you to choose brand for a new quote. |
[edit] Support Functionalities Branded
[edit] Announcements
Create branded announcements. To do so, simply while preparing a new announcement for your clients, choose a brand (from those you have previously added and assigned clients to) that the announcement will be viewed to. |
On the full list of announcements you can find details on which brand the announcement is assigned to. |
Clients will see only the announcements assigned to their brand in their client area. |
[edit] Downloads
Branded Downloads option works just alike Announcements described above. While adding a new file to download for your clients, simply assign it to a brand you want it to be available for. |
Note, that you can brand both the download or the category of the downloads itself! If you brand a category, then any of files in this category will be automatically visible only for clients of this brand. |
On the list of all categories you can see the just created and branded one next to the ones that already exist with the name of their assigned brands. |
Only branded downloads will be visible for clients of a certain brand. |
[edit] Knowledgebase
Using Multibrand For WHMCS you may also brand any article in your knowledgebas. |
You may always brand categories, not only the articles in themselves. |
On the list of all categories you can see which brand they are assigned to. |
Only branded knowledgebase articles will be visible for clients of a certain brand. |
[edit] Branded Client Area
Multibrand For WHMCS offers multiple client areas in one solution and lets you have your clients assigned to them. |
On the following screen you can see invoices generated for a brand. |
[edit] Branded Email Templates
Brand settings also apply to emails sent to clients. On the following screen you can see an example of an order email. |
More About Email Branding Let's consider how WHMCS has implemented email templates system:
So, as you set welcome email to your custom MyBrand Card Brief. Basing on this, we are unable to determine a proper brand. Whole idea of this is that we have email, but we do not know for which brand it should be branded. |
[edit] Domains & CNAME Records Configuration
In this section you will find guides on how to create CNAME record in popular control panels. For instance, if your branded domain is reseller.com and domain with your WHMCS is whmcs.domain.com, your CNAME will be 'www.reseller.com. CNAME whmcs.domain.com.'. |
Domain used by each of the brands MUST BE PARKED on the main domain. In case a domain cannot be parked or it is a subdomain, you must create CNAME records that will redirect from the brand domain to the main domain. Only when you have parked your domains you can move to setting CNAME records on your panels. See the tips below. |
[edit] cPanel
1. Log into your cPanel. |
2. Press 'Simple DNS Zone Editor' under 'Domains' section. |
3. Select the domain you wish to manage from the menu. Note: This step is required only if you own more than one domain. |
4. Fill in 'Name' and 'CNAME' record and press 'Add CNAME Record'. Note: To define record's TTL, you have to use 'Advanced DNS Zone Editor'. |
[edit] DirectAdmin
1. Log into your DirectAdmin. |
2. Click 'DNS Administration' . |
3. Afterwards, press select the desired domain. |
4. Fill in the full domain/subdomain into the CNAME record and press 'Add' next to it. Note: Do not forget to place a dot at the end. |
[edit] Plesk
1. Log into your Plesk panel. |
2. Press 'Domains' under 'Hosting Services' section. |
3. Find the domain to be edited, and click on the corresponding Control Panel link. Afterwards, proceed to 'Websites & Domains' tab and press 'DNS Settings' . |
4. Add a new record or edit an existing one. |
5. Now, change the record type to 'CNAME' and fill in both 'Domain name' and 'Canonical name'. Finish by pressing 'Ok'. |
Remember to restart your server once it is configured. |
[edit] SSL Certificate
In this section you will find all information related to SSL certificate in WHMCS using Multibrand. If your branded domains or WHMCS domain are using SSL connection, all of them need to have the same certificate.
This is due the way in which WHMCS works. It is not the limitation of our module. require_once dirname(__FILE__).'/includes/MultiBrandSSLFixer.php'; $SSLFixer = new MultiBrandSSLFixer(); if($SSLFixer->shouldBeInSSL()){ if(! $SSLFixer->isInSSL()){ $SSLFixer->forceRedirect(true); } }else{ if($SSLFixer->isInSSL()){ $SSLFixer->forceRedirect(false); } } For WHMCS V7: require_once dirname(__FILE__).'/includes/MultiBrandSSLFixer.php'; $SSLFixer = new MultiBrandSSLFixer(); if($SSLFixer->shouldBeInSSL() || $SSLFixer->issetSystemSSLURL($db_host, $db_username, $db_password, $db_name)) { if(! $SSLFixer->isInSSL()) { $SSLFixer->forceRedirect(true); } } else { if($SSLFixer->isInSSL()) { $SSLFixer->forceRedirect(false); } } |
[edit] cPanel
Installing SSL certificate for domains managed from cPanel consists of the following steps: |
1. Log into your cPanel and press 'SSL/TSLS Manager' under 'Security' section. |
2. Click on 'Manage SSL sites' under 'Install and Manage SSL for your site(HTTPS)'. |
3a. (installing the certificate) Select the domain, paste certificate and private key and save the settings. 3b. (using already installed certificate) Select it from 'Browse Certificates' and save the settings. |
[edit] Branding Limitations & Requirements
[edit] Limitations
WHMCS
In this section we will list the parts of WHMCS which cannot be branded or may be working in an odd way.
|
WHMCS Modules
In this section we will list the WHMCS modules which do not support multibranding or do not cooperate with Multibrand For WHMCS at all.
|
Cloudflare
Cloudflare is a service that will mask your server IP address.
|
[edit] Requirements
Below we will list elements that require special attention in order to work correctly.
|
[edit] Tips
1. The logo image is usually hard coded into the WHMCS template files. In order to use logo file provided in the 'Multibrand For WHMCS' module, find proper line at the template file and replace it with '{$logo}' variable. |
2. If you want Captcha security option to be displayed in your client area for all branded domains, you need to configure each of those domains in your Google Account as well. |
[edit] Common Problems
1. When you have problems with connection, check whether your SELinux or firewall does not block ports. |
2. Using 'Login as Client' functionality returns:
The page isn't redirecting properly Solution: This issue will be solved in the next version of module. |
3. If your CNAME record is not working, remember that first domain name in CNAME record should be branded domain. The second one is the domain on which you have your WHMCS. The redirection goes from the first domain to the second. |
4. If your branded domain or WHMCS domain are using SSL connection, both of them need to have the same certificate. If both of them are using the same domain, you will need a wildcard certificate. |
5. Please remember that Multibrand For WHMCS works flawlessly with the officially supported and pointed in features list templates. These are: Template 'Six' and 'Five'. |
6. Multibrand For WHMCS module is not compatible with our Resellers Center For WHMCS. |