Base WHMCS SmarterMail Provisioning Module
The WHMCS SmarterMail module is an open source module developed in PHP that integrates SmarterMail as an add-on into WHMCS that can be attached to Product/Services to provision SmarterMail domains as well as point MX and CNAME records on WHM/CPANEL to a SmarterMail server using standard settings across all WHMCS users.
The primary goal of the WHMCS SmarterMail module was to reduce server administrator labor. Previously, MX and CNAME records would have to be entered manually, as well as the domain creation in SmarterMail. With the module installed, the whole process is automated. Not only is everything created for you on initialization, but also for suspension, deletion, un suspension, and termination.
The package provides the following services:
- Create, Suspend, UnSuspend, Terminate, and Delete Domains from a SmarterMail server using a standard set of defaults.
- Multiple SmarterMail Server Support with Management side interface for adding, deleting, suspending, unsuspending SmarterMail servers as well as setting max domain levels per server.
- Client side link to SmarterMail login.
- SSL support.
- Existing installation of WHMCS (version 5.0 and above)
- Existing installation of WHM/CPanel
- Licensed installation of SmarterMail
Installing the SmarterMail Module
Installing the SmarterMail module is no different than installing any modules within WHMCS. Below are the steps necessary to get a SmarterMail installation added to WHMCS.
- Extract the SmarterMail module
- Place contents in your WHMCS directory under "..modules/addons/smartermail"
- Navigate to http(s)://your_WHMCS_hostname.com/admin/configaddonmods.php
- Click "Activate" next to the SmarterMail Provisioning Module
- Go back to http(s)://your_WHMCS_hostname.com/admin/configaddonmods.php
- Click "Add New Add On"
- Set desired add-on settings and make sure you attach to at least one product/service
- Next, find the Addon ID
Go back to http(s)://your_WHMCS_hostname.com/admin/configaddonmods.php
Click "Configure" (it's to the right of "Activate")
Fill in the Addon ID you found in Step 8
Check "Module Logging" (you can turn this off later when everything is running smoothly or simply leave it running indefinitely)
Check "SSL" if your WHMCS address begins with 'https://'
If you want to give specific Roles the ability to modify the SmarterMail servers from within the management interface of WHMCS, select them from the list
Click "Save Changes" and that's it! The SmarterMail module is installed and you can now configure SmarterMail servers
- If this is the first add-on created in this WHMCS instance, then the ID will be 1.
- If there are multiple add-ons in WHMCS, you may need to look in the database to find out the SmarterMail add-on ID.
Once the SmarterMail module is installed, you can begin adding new mail servers to your WHMCS installation and begin provisioning domains and mailboxes within SmarterMail.
- Navigate to http(s)://your_WHMCS_hostname.com/admin/configaddonmods.php?module=smartermail
- Here, you're presented with the SmarterMail server interface. This is where you create, suspend, set max domain counts and delete SmarterMail servers
- Click "New Server"
- Fill in the following settings:
Click "Submit" to create the new server
You can now test provisioning domains and accounts in SmarterMail
If you experience problems, and Module Logging is enabled, you can go to http(s)://your_WHMCS_hostname.com/admin/addonmodules.php?module=smartermail to check the error logs
- Server Name - The friendly name for your SmarterMail server within WHMCS
- Server URL - The domain name and URL of the server. (E.g., https://mail.YourDomain.com)
- Domain Path - The path on the server where you store the Domain folders. (E.g., c:\\SmarterMail\Domains)
- Server Admin Username - The administator username for this server
- Server Admin Password - The password associated with the Server Admin Username
- Max Domains - The maximum number of domains allowed on the server
- Status - The status of the server. Note: Only "Active" servers will allow provisioning of domains