Use Multiple Domains and Multi-Brand with One WHMCS
As we explain in our guide to WHMCS SEO, WHMCS is not good at Search Engine Optimization. Among the many problems, the multi-language system is based on PHP sessions. Search engines don't use sessions therefore your WHMCS is indexed only in default language.
Mercury removes this problem by letting you use multiple domains on the same WHMCS, one for each language. Our website serves as a perfect example. In fact we use:
This way search engines can "see" both websites indexing them in their respective languages. Moreover the structure gives the opportunity to choose location and language for each domain on Google Web Master Tools and Bing. Lastly it is fully compatibile with the integrated sitemap generator.
You can freely configure as many domains and subdomains as you want. For example you can get a Wikipedia-like language structure and mix it with multiple brands like follows:
Multi-domain functionalities extend to email notifications to ensure that customers don't land on the wrong domain. For example if a visitor requests password reset from katamaze.it, he receives the reset link from the same domain. This is valid also for invoice links, quotes, affiliate URLs, support tickets, email signature, login and logout.
As if it wasn't enough, starting from version 1.4.4 you can set define visibility of news, blog post and article of documentation for each of your brands/domains. This allows to deliver different contents for each of your domains and target audience.
Next to multi-domain, the integrated geolocation service can be used to apply country-specific rules that affect user-experience depending on location. Such rules can be used on languages, currencies, templates, cart templates and domains like in the following example.
To use multi-domains and IP geolocation, you need to place the following code at the very end of your configuration.php file.
All the involved domains and subdomains must be configured to point to the server that hosts WHMCS. Simply put, if your WHMCS is hosted on 127.0.0.1, all domains must resolve this same IP with an A record. Keep in mind that the overriding of URLs for email notifications is supported starting from version 7.8 of WHMCS.
Let us repeat it one more time. The use of multi-domain and geolocation require:
- Integration code in configuration.php
- Additional domains must point to your server with an A record
- WHMCS version 7.8 or newer is required to override email notifications
We're often asked if the use of the features we just described breaks WHMCS license agreement. As stated in WHMCS Knowledgebase, license are bound to a domain, IP address and directory path but there are some exceptions.
If like us you serve your website across multiple TLDs for the same brand, you are allowed to use any domain you want. In essence the following configuration is perfectly valid:
As long as the brand is the same, you can use an unlimited number of TLD. Bear in mind that License Verification which is the tool that allows to check if a domain is authorized to be running WHMCS, will only work on the main domain.
As a reference, a lookup for katamaze.it results in the following message. This is a false-positive as this check only works for katamaze.com.
Now let's talk about using different domain names. WHMCS states that the following scenario is not acceptable:
We don't want to promote or encourage any illegal activities so take what we say with a grain of salt.
Mercury allows to add an unlimited number of domains and bind each of them to a specific template. Technically speaking you can use the same installation of WHMCS to operate with multiple brands.
We have several customers that are doing this from more than a decade and they had no problems with WHMCS so far. In conclusion, you shoudn't do that but we've never heard of any punishment from WHMCS.