Zimbra Email For WHMCS
About Zimbra Email For WHMCS
|Zimbra Email For WHMCS is a module which allows your customers to manage email accounts of your domain directly in WHMCS.|
Your clients will be able to conveniently manage mailboxes, email and domain aliases and quickly move to their webmails.
- Admin Area Features:
|✔ Create Account|
|✔ Terminate Account|
|✔ Change Package|
|✔ Change Password|
|✔ Go To Zimbra Webmail|
|✔ Define Products Configuration:|
|✔ Set Zimbra Account Settings|
|✔ Use Class Of Service As:|
|✔ Fixed Choice|
|✔ Allowed Single Choice By Clients|
|✔ Allowed Multiple Choices Of Quota Per Account|
|✔ Custom Settings|
|✔ Select Essential Features|
|✔ Select General Features|
|✔ Select Mail Service Features|
|✔ Select Contact/Calendar/Search/S/MIME Features|
|✔ Set Requirements For Passwords|
|✔ Select Access To Client Area Features|
|✔ Generate Default Configurable Options|
|✔ Enable Metric Billing|
|✔ Log In To Zimbra Administrator Panel On Click|
- Client Area Features:
|✔ Manage Email Accounts:|
|✔ View Creation/Last Login Date|
|✔ View Mailbox Quota|
|✔ View/Change Mailbox Status|
|✔ Change Account Password|
|✔ Log In To Mailbox|
|✔ Manage Email Aliases|
|✔ Manage Distribution Lists|
|✔ Manage Domain Aliases|
|✔ Upgrade / Downgrade Account|
|✔ Go To Zimbra Webmail|
- Configurable Options:
|✔ Email Accounts Limit|
|✔ Email Account Size|
|✔ Email Aliases Limit|
|✔ Distribution List Limit|
|✔ Domain Aliases Limit|
|✔ Class Of Service|
- General Info:
|✔ Configurable Options Support|
|✔ Integrated With Advanced Billing For WHMCS - Actual Server Resource Usage Billing (read more)|
|✔ Integrated With Server Allocator For WHMCS - Automatic Assignment Of Most Suitable Servers To Products (read more)|
|✔ Multi-Language Support|
|✔ Supports Zimbra 8.5.0 And Later|
|✔ Supports PHP 8.1 Back To PHP 7.4|
|✔ Supports WHMCS Metric Billing - Integration: Email Accounts, Email Aliases, Distribution Lists, Domain Aliases, Storage|
|✔ Supports WHMCS Server Sync Tool|
|✔ Supports WHMCS Themes "Six", "Twenty-One" And "Lagom WHMCS Client Theme"|
|✔ Supports WHMCS V8.7 Back To WHMCS V8.4|
|✔ Requires ionCube Loader V12 Or Later|
|✔ Easy Module Upgrade To Open Source Version|
Installation and Configuration
|This tutorial will show you how to successfully install and configure Zimbra Email For WHMCS.|
We will guide you step by step through the whole installation process.
Note: If you still use any of the module's previous versions prior to v2.X, follow these instructions.
|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.
|Previous updates of the module may contain two packages dedicated to various PHP versions.|
The first one that supports PHP 5.6 up to PHP 7.3, and the second one addressed to PHP 7.4 up to PHP 8.1.
|Note: You can check the current PHP version in your WHMCS. To do so, proceed to 'Utilities' → 'System' → 'PHP Info'.|
|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 Zimbra Email For WHMCS for the first time, you have to rename the 'license_RENAME.php' file.|
The file is located in 'modules/servers/zimbraEmail/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. You can find your license key in our client area → 'My Products'.
|6. The last step is to set up the 'storage' folder as recursively writable.|
This folder is available at '/yourWHMCS/modules/servers/zimbraEmail/'.
|7. Now let's configure a new product. Log in to your WHMCS, press 'Setup' → 'Products/Services' → 'Servers'. |
Afterwards, press 'Add New Server'.
|8. Next, enter your server name and Zimbra server hostname or IP address. |
Choose 'ZimbraEmail' from a dropdown menu and type in your username and password used to log in to Zimbra server.
Keep in mind that value of client area button 'Go To Webmail' is taken from the 'Hostname' field. If the field is empty, it is taken from the 'IP Address' field.
|9. After you configure your server correctly, you will see the following screen.|
Now you need to create a new group for your server. For that purpose press 'Create New Group'.
|10. Enter name, click on your previously created server, press 'Add' then 'Save Changes'.|
|11. In order to create and configure product, click on 'Setup' → 'Products/Services' → 'Products/Services'. |
If you do not have a product group, click on 'Create a New Group'. If you do, simply move to step 12.
|12. Enter a product group name and press 'Create Group'.|
|13. When you have a product group, you can create your product and assign it to Zimbra Email. If you already have a product, go to step 14.|
To create a product click on 'Create a New Product'.
|14. Afterwards, choose your product type and product group from dropdown menus, enter your product name and press 'Continue'.|
|15. Now, go to the 'Module Settings' section, and choose the previously created server group from dropdown menu.|
|16. Afterwards, define settings of the module and press 'Save Changes'. |
Note 1: If you choose 'Use Custom Settings' from the 'Class Of Service Name' dropdown menu, you can define your own set of user permissions using sections below.
|17. If you select 'Allow Clients to choose Class Of Service Quota Per Account' in Class Of Service Name, the new 'Class Of Service For Mailbox Accounts' settings will appear.|
Define the number of the accounts limit for each available size. Your clients will be allowed to order a product with limits defined in configurable options and create mailboxes within the defined quota size.
|18. Additionally, you can replace the module static limit with dynamic one in the form of configurable options.|
Press 'Generate Default' near 'Configurable Options' to generate default set of them.
|This is what a properly created and configured product should look like from the administrator site.|
|Let's customize your Zimbra Email For WHMCS and see what features it has in offer.|
|Zimbra Email product management site:
|Order page view of a product with the 'Allow clients to choose Class Of Service' option selected:|
|Order page view of a product with the 'Allow Clients to choose Class Of Service Quota Per Account' option selected:|
|Zimbra Email allows your customers to manage their Zimbra email accounts from your WHMCS client area.|
This is what its management page looks like in the client area. Move to the below sections to learn more details.
|Email Accounts section enables full management of accounts associated with your domain.|
You may edit existing accounts with a wide range of options and create new ones within defined limits.
|Press 'Add Mailbox' to create a new account.|
Fill out the fields to provide any details on the account owner. Only fields marked with an asterisk are obligatory.
|If you wish, you can provide more details of a new account in the 'Additional Information' tab, although it is not required for the account creation.|
|You can order various operations on a single account using buttons marked on the screen .|
You are allowed to change the account's status and password, log in directly to a mailbox, edit its details or delete it.
Note: The 'Last Login' column shows only the date of the last manual login. When using the "Log In To Mailbox" feature, its date is not registered by the API here.
|Email Aliases enable you to create and use additional address for the same e-mail account.|
Note: Email aliases are created within the same email domain.
|Any aliases can be quickly removed through pressing an adequate icon or using mass actions.|
|Distribution lists enable you to create and manage them without the necessity to log in to Zimbra panel.|
|Create them in the same way you would do that in Zimbra panel. Start with entering an email address, then move to assigning members to the list.|
Proceed with setting detailed options.
|Remember that in order to enable the distribution list on its creation, you must select option 'Can Receive Mail' in the 'Properties' section.|
|Assign email aliases if you have any.|
|You may also add/remove owners of the list.|
|As soon as you set the last preferences, press 'Confirm' to finally create the distribution list.|
|If you made a mistake while creating a list, you can quickly edit it or remove it completely.|
|Domain Aliases option allows you to create more than one domain name that will refer to the same account.|
Add a new domain alias, like on the below screen, and no matter which address used, emails will be delivered to the same mailbox.
|When a domain alias is no longer needed, simply delete it by pressing an icon.|
Management of Billing
|When you combine Zimbra Email For WHMCS with Advanced Billing For WHMCS, you will be able to set up additional billing options.|
|Module allows you to charge your customers basing on the server resources used by them.|
For more detailed information on the configuration please refer to our Advanced Billing For WHMCS documentation.
|With Advanced Billing module, you can also display the current server resource usage and their cost and let your customers see it.|
|1. Zimbra Email For WHMCS requires SOAP installed on your server.|
|2. You can set your own custom ports which will be applied only by clients in order to connect to their accounts when the 'Log In To Mailbox' option is used.|
To do so, please go to the file located here <whmcs>/modules/servers/zimbraEmail/app/Config/configuration.yml.
|3. To update the 'diskusage' table in 'tblhosting' , you need to run the following cron command.|
php -q /your_whmcs/crons/cron.php do --UpdateServerUsage
How To Use Language Overrides
|Incorporating language customizations - the module readily accommodates language overrides, allowing you to tailor the language files to your preferences.|
The language file english.php remains unencoded and can be modified to suit your needs. However, it's recommended to avoid altering the core file itself, and instead, leverage the capability of using overrides.
|Here's how to apply language overrides:
$_LANG['Search'] = 'Search';
$_LANG['Search'] = 'Look for';
|By following these steps, you can seamlessly implement language customizations without altering the core language file, ensuring your changes will not be lost after every module update.|
Remember that some of the modules have more than one language file, located under /addons and /servers paths. You may create the override files for both of them.
|An essential guidance through the process of updating the module is offered here.|
Important: If you migrate the module from version 1.X to version 2.X, the following steps are needed to be performed additionally:
Keep in mind there is a quick and easy option in our client area that will let you upgrade the license of your module to an open source version at any time - and at a lower price!
|1. When you have problems with connection, check whether your SELinux or firewall does not block ports.|
|2. If you got 'A problem with module occurred. Please contact the administration' error, please validate the correctness of your module license key first and you may also try to reissue key in your ModulesGarden control panel.|
3. The error 'Could not connect to host' is connected with SOAP. To fix it, make sure that port default 7071 is open.
Note: If you upgraded a module prior to 2.X version, the custom port was given in the 'Access Hash' field, which will no longer be used after the upgrade to 2.X version.