WHMCS Module for Email Hosting Provisioning – Example Setup

Basic 10GB variable Product – setup for WHMCS


This is an example setup for a Product using our WHMCS module for email provisioning. This Product allows incremental updates of 10GB Basic mailboxes while also requesting a minimum of 5 mailboxes to be bought – your customer will be able to buy 5 or 6 or 11 mailboxes of 10GB each, for example.

PolarisMail’s WHMCS module was designed to improve business operations for our white label email Resellers. This module helps you manage and sell PolarisMail email accounts directly from your installed WHMCS. Also, your clients can easily create mailboxes and manage them directly from the Client Area of your WHMCS.

Use this guide to set up a similar Product for your Reseller business or use our suggestions to further customize your Products and start offering professional email hosting services to your customers.

1. Create the product and the configurable options


Follow the WHMCS Setup Guide to install the module and create your first Product. Once your Product and Configurable Option Group are created (as explained in Step 3 of the guide), you can continue to edit them using the next steps.

2. Product example


2.1. Product Setup

This is how your Product should look like after the setup. What to look for and double check:

Details tab: check “Require domain”

Pricing tab: set your product to “Recurring” and leave the price set to 0. The price will be calculated using the Configurable Options. Enable payment for the prepayment options you want to offer: monthly, yearly, etc.

Module Settings tab: choose the option for “Automatically setup” you want to offer.

Configurable Options: choose the desired configurable Option Group – that you will edit at the next step.

Upgrades: check the option to allow upgrades via “Configurable Options”.

2.2. Configurable Option Group Setup

Next, edit the Configurable Option Group you have created for this Product and make sure you have created all the necessary Configurable Options:

  • Total Mailboxes
  • Total Enhanced Mailboxes
  • Mailbox Quota (GB)
  • Total Aliases
  • Total Distribution Lists

Make sure there are no spelling errors and that they each have a value assigned, even if it’s zero.


Tip: you can hide all the Configurable Options that are not variable.


2.3. Configurable Options Setup

To make this product variable, we will choose the Option TypeQuantity” in order to let the customer specify how may email addresses he wants to purchase. The price will be obtained by multiplying the quantity entered by the customer with the Pricing you specify for one mailbox in the Configurable Option “Total Mailboxes”. 

    Tip: if you want to make several tiers for pricing, you can specify minimum and maximum quantity accepted for the product. For example, the pricing per mailbox is $1.00 when you buy between 5 and 10 mailboxes (product A) and $0.90 per mailbox when you buy between 11 and 50 mailboxes (product B).


    The Configurable OptionMailbox Quota (GB)” is where you specify the mailbox size. The value should be the size of one single mailbox, not total storage per product.

    Tip: you cannot have multiple options with different pricing for “Mailbox Quota (GB)” if your “Total Mailboxes” or “Total Enhanced Mailboxes” are variable (it will work but it will break the pricing).

    3. Check your configuration


    Go through your setup for Product and Configurable Options once again and make sure you didn’t forget anything. Some of the most common mistakes are:

    • You skipped Test Connection from the Setup guide. First make sure you can connect to PolarisMail back end
    • You didn’t specify Require Domain on the Product
    • You didn’t create a Configurable Option Group for the Product
    • You didn’t assign a Configurable Option Group to the Product
    • The Configurable Option Group doesn’t have all these Configurable Options: Total Mailboxes, Total Enhanced Mailboxes, Mailbox Quota (GB), Total Aliases, Total Distribution Lists; they have a misspelling, or they don’t have a value assigned, even if it’s zero

    Remember, the pricing is the sum of the price you set on Product and the prices you set on each Configurable Option.

    You can now go ahead and place a test order and try to upgrade it afterwards from your customer Client Area in WHMCS.