Mailcow Mailbox Provisioning for WHMCS
Sell email hosting on your own mailcow server: domains created on payment with the product's quotas, mailboxes managed in WHMCS, suspension tied to billing.
What will the mailcow module do?
It connects WHMCS to the API of a mailcow server you run, so you can sell email hosting the same way you sell any other WHMCS product. When an order is paid, the module adds the customer's domain to mailcow with the limits from the product: how many mailboxes, how many aliases, the total storage for the domain and the largest mailbox allowed. It creates a DKIM key for the domain and shows the customer the DNS records to add. From then on the customer creates mailboxes, changes passwords and resizes or deletes mailboxes in the WHMCS client area, within those limits.
This product is built to order: you get the license key after a manual account check (up to 24 hours) and the download within 15 business days.
What does WHMCS already do, and what does this add?
WHMCS provisions email as part of cPanel, DirectAdmin and Plesk hosting accounts, and through MarketConnect it resells OX App Suite mailboxes with their own client area tools. It has no module for mailcow, so a host running mailcow next to WHMCS adds every domain and mailbox by hand and suspends nothing when an invoice goes unpaid. This module adds that link, using mailcow's own quota and limit settings on each domain.
What is included?
| Stage | What the module handles |
|---|---|
| Order paid | Domain created on the mailcow server with the product's limits, DKIM key generated |
| Product settings | Maximum mailboxes, maximum aliases, total domain storage, default and maximum mailbox size |
| Extra capacity | Limits raised by configurable options, such as extra mailboxes or storage |
| Client area | Create, resize and delete mailboxes, change passwords, see storage used, open webmail |
| DNS | MX, SPF and DKIM records shown with the exact values to add |
| Upgrades | New limits sent to mailcow when a WHMCS upgrade or downgrade order is paid |
| Overdue | Domain set inactive on suspension and active again on unsuspension |
| Termination | Mailboxes and then the domain deleted from the mailcow server |
Who is it for?
Hosting companies and IT providers that run mailcow for their customers' email and bill those customers in WHMCS. mailcow gives you the mail server, spam filtering and webmail; what it does not do is take payments or stop service when a customer stops paying. With the module, the plan a customer pays for is the plan the server enforces, and staff no longer take tickets just to add a mailbox or reset a password.
What do you need, and what are the limits?
Requirements: WHMCS 8.13 or 9.x (I confirm your exact version at purchase), PHP 8.1 or newer, and a mailcow server you run, with a read-write API key and your WHMCS server's IP address on mailcow's allowed list for API access. Several mailcow servers can sit in one WHMCS server group.
Limits: the module does not install, update or host mailcow, and it does not edit the customer's DNS zone, so mail for a domain arrives only after the customer adds the records shown. Aliases, forwarding, spam settings and mail import stay in mailcow's own interface. A downgrade that would set a limit below what the domain already uses is stopped, with a message to your staff. Termination deletes the domain's mailboxes, so keep your own backups if you hold mail after cancellation.
It costs $99 once for a lifetime license with twelve months of updates and support, and a seven-day refund window. I check each account by hand, which can take up to 24 hours, before the license key is issued, and the download follows within 15 business days of purchase.
Key features
- Domain created on your mailcow server when the order is paid
- Mailbox count, alias count and storage limits set per product
- Extra mailboxes or storage sold as configurable options
- Customers create, resize and delete mailboxes in the client area
- Password changes and storage used per mailbox in WHMCS
- DKIM key generated, with MX, SPF and DKIM records shown
- Limits updated on upgrade and downgrade orders
- Domain set inactive on suspension and active on unsuspension
- Mailboxes and domain removed on termination
Why customers buy this module
- →No more adding domains and mailboxes on the mail server by hand
- →The quota a customer pays for is the quota mailcow enforces
- →Customers add mailboxes and reset passwords without opening a ticket
- →Unpaid email accounts are suspended on the WHMCS schedule
Frequently asked questions
Which DNS records does the customer need to add?
An MX record pointing to your mailcow server, an SPF record, and the DKIM TXT record mailcow creates for the domain. The module generates the DKIM key when it adds the domain and shows all three, with the exact values, on the service page in the client area. It does not change the customer's DNS zone itself, so mail starts arriving once those records are in place.
Can customers go over the storage they paid for?
No. mailcow enforces the limits the module sets on the domain: a total storage figure, a largest mailbox size and a maximum number of mailboxes. Customers can create and resize mailboxes in the client area only inside those limits. To get more, they upgrade or add a configurable option, WHMCS bills the difference, and the module raises the limits on the server.
When will I get it, and what if you can't deliver?
It is built to order. After a manual account check, which can take up to 24 hours, you get the license key, and the download follows within 15 business days of purchase. If I do not deliver it in that time, you get a full refund. Once it is delivered, the store's 7-day refund window applies.
Technical specifications
- WHMCS
- 8.13 and 9.x (confirmed at purchase)
- PHP
- 8.1+
- Mail server
- mailcow (mailcow-dockerized) you operate
- Connection
- mailcow REST API with a read-write API key
- Availability
- Built to order, delivered in 15 business days
- License
- Lifetime, 1 year of updates and support included
- Delivery
- License key after a manual account check (up to 24 hours); download when built
- Refund window
- 7 days
Related modules
Self-Service cPanel Transfer Wizard for WHMCS
I built this wizard so customers can move their own sites from another cPanel host to yours without a ticket. It uses WHM API tokens, never root passwords, and checks the site, mail and DNS after the move.
Hetzner Cloud Provisioning and Auto-Sync for WHMCS
I built this Hetzner Cloud module so your WHMCS catalog never falls behind Hetzner. Server types, locations and prices sync hourly with your markup, and customers manage power, console, snapshots, networks, firewalls and volumes.
Vultr Cloud Server Provisioning for WHMCS
I built this module to resell Vultr through WHMCS. A paid order deploys the instance in the plan, region and OS the customer chose, and they get power controls, console, snapshots and rDNS without seeing Vultr.