Products are configured via the Setup > Products/Services > Products/Services page
Basic instructions for creating your first product group and product can be found under Setting Up Your First Product. This page explains all the advanced options available, including hiding products, stock control and upgrades.
Products are organised on the order form by group, as each group has a separate page, this means products can be split into categories or across several pages for ease of display. For example you may wish to list your shared hosting plans on a separate page to the reseller plans. Clients can switch between groups on the order form or you can link to them directly (see #Links Tab).
- To create a product group click the Create a New Group link
- Enter a name for the group - this will be displayed on the order form
- Use the tick boxes to select which payment gateways will be offered on the checkout page to pay for products within this group.
- To hide this group from the order form tick the Hidden checkbox
- Click Create Group. To edit the group at a later date click the corresponding Edit icon on the Products/Services page.
To create a product click the Create a New Product link and you will see these three options:
- Product Type - There are 4 options to choose from and used to determine only how WHMCS should handle it. This is only for system use - you use the groups to divide products into categories for your own use.
- Shared Hosting - for web hosting accounts
- Reseller Hosting - for web hosting reseller accounts
- Dedicated/VPS Server - for servers and displays server hostname, ns & root pw fields on signup
- Other - for anything else
- Product Group - The group the product belongs to for display on the order form
- Product Name - The name to display to customers and throughout the admin area
Once created the following options will be available for configuration. To edit a product at a later date click the corresponding Edit icon on the Products/Services page.
This is the first tab you see and contains general information about a product including its name and product group.
- Product Type, Product Group and Product Name - See above #Products
- Product Description - The detailed information displayed on the order form relating to this product
- Welcome Email - The email template to send when the product is activated. You can create custom email templates to use on different products - see Email Templates for more info.
- Require Domain - To show the domain registration options on ordering. Should always be enabled for hosting and disabled for any other products that don't require a domain name.
- Stock Control - Can be used if you have a specific quantity of an item available (for example servers) or a limited special offer product - tick to enable and enter a quantity remaining and WHMCS will stop orders when it reaches zero. When a stock controlled item is cancelled (either by cancellation request or clicking "Cancel Order" on an order) the stock level will automatically increase.
- Sort Order - Can be set to a number to overide the default product ordering of alphabetical names. A product with sort order of 0 will appear in the list first, 1 will be beneath that, 2 beneath that etc..
- Apply Tax - Tick if tax rules should be applied to this product. For more information refer to Tax/VAT Rules.
- Hidden - Tick to not show the product on the order form - can still be ordered using the direct order links
- Retire - When ticked the product is hidden from admin area lists, such as the Products/Services dropdown in the client's Products/Services tab.
This second tab is where the prices and length of the product are specified.
- Payment Types - consists of Free, One Time & Recurring options
- Use the pricing grid to enter the price of the product.
- For Free products the grid can be left as-is, the free payment type overrides any prices entered here.
- For One Time products, enter the prices in the One Time/Monthly fields
- For Recurring pricing types there are several billing cycles to choose from depending on how often you want clients to be billed.
- The setup fee in each column allows you to specify different setup fees depending on the cycle chosen, for example you may charge setup fees on monthly cycles and offer free setup if paid annually
- If you do not wish to offer a billing cycle enter -1.00 as the price to disable it. In this screenshot the product will only be available monthly or annually.
- Allow Multiple Quantities - When enabled this option allows clients to choose the quantity of this product they wish to order, on the checkout page an option will be available. The product must require no additional configuration such as product custom fields, configurable options.
- Recurring Cycles Limit - For Recurring payment types the default value 0 will invoice indefinitely until cancelled. However by entering a value in this field you can limit the number of times this product will invoice the client. For example entering 5 on a monthly product would cause no invoice to be generated in the 6th month after ordering.
- Auto Terminate/Fixed Term - You can setup products to automatically terminated after a set number of days from the date of signup. This can be used to offer free trial products for a certain period of time, or time limited products that should only recur for a certain number of cycles before stopping.
- To enable enter the number of days to wait before terminating, and choose an email template to be sent to the client when the termination occurs (for example an up-selling email to promote your paid products in the case of a trial, or confirmation of payment completing for instalment payment situations). Set the Auto Terminate/Fixed Term value to 0 to disable this feature.
- Entering a number in this field will cause the product to be terminated when the cron runs x days after the product registration date.
- Termination Email - When the above feature is enabled, choose an email to be sent to the client when the product is terminated.
- Prorata Billing - This allows you to bill products on a specific day of the month and charge a prorata'd amount at the initial time of order. If enabled all clients will be charged on one exact day each month. When disabled the product will use the default anniversary billing system (eg. Jun 15 - Jul 15).
Note: Prorata billing is not compatible with the free domain logic or having domain renewal invoices generated further in advance than other products.
- Prorata Date - If you set this to 1, then all clients would be charged on the 1st of each month.
- Charge Next Month - After this day of the month has been reached, a client will also be charged for the next month in their initial payment. If you had prorata date set to 1, and a client signed up on the 30th of the month, they'd only be charged a tiny amount without this setting. So it is pro-rated amount + next month in advance.
Module Settings (aka Provisioning)
This tab specifies which server type the product will use and how WHMCS will behave when this product is ordered.
- From the Module Name dropdown menu select the type of server you're using
- The options you will see depend upon the module chosen, and more info specific to each module can be found in the Provisioning Modules section
- If a product has no specific module to be linked to then you can set it to "Autorelease" in order to have the activation simulated and therefore welcome email sent automatically
- There are 4 automation settings to choose from for product activation and they are:
- Automatically setup the product as soon as an order is placed - this will setup instantly usually used for free products
- Automatically setup the product as soon as the first payment is received - this will perform the setup as soon as the order is paid for
- Automatically setup the product when you manually accept a pending order - this will perform the setup only when an admin has manually reviewed and accepted the order
- Do not automatically setup this product - never auto setup the product - admins can still initiate manually from the product details page under a clients profile
From this tab you can create custom fields for this product, allowing you to collect additional information from your clients on the order form required for supplying the product.
- Field types consist of text boxes, dropdown selections, yes/no checkboxes, memo text boxes and password fields (text entered here with appear as asterisks ****)
- Fields can be set as admin only for private data, required/optional on the order form, displayed on the order form or only in the client area, or displayed on invoices (such as VAT numbers)
- See Custom Fields for more info
Use this tab to select which configurable options are associated with the product, they can be displayed on the order form or in the client area.
- Configurable Options allow you to give your clients options which alter the price of the product
- Refer to Addons & Configurable Options for more info
The sixth tab allows you to specify whether the client can upgrade or downgrade from this product to another.
- Upgrades/downgrades can be fully automated by WHMCS with many of the modules
- All you need to do on this tab is select the products that the product can be upgraded or downgraded to
- Use Ctrl+Click to select multiple products
- There is also a checkbox for enabling the upgrades of configurable options if there are any on the product
- From the Upgrade Email dropdown menu you can select an email template to be sent when an upgrade order is placed. A new Product email template will first need to be created under Setup > Email Templates.
- See the Automated Upgrades and Downgrades article for more info on how upgrades/downgrades are calculated and processed.
Use this tab to configure the offer of a free domain with this product is desired
- WHMCS lets you offer free domains with your packages when purchased with certain payment terms
- For example you might want to offer a free domain when a package is purchased annually as an incentive
- Refer to the Offering Free Domain Registration article for more details on how to configure it
The penultimate tab contains miscellaneous settings such as product affiliate rates, product downloads and overage billing.
- Custom Affiliate Payout - These settings allow you to specify a custom payout rate for this specific product if using the built in affiliate system, this setting overrides the system default commission rate, it can even be disabled.
- Affiliate Pay Amount - Based on your setting above to either percentage or fixed amount, this is the percentage or amount paid for a purchase of this product
- One Time Payout - Tick this if you want to pay only a one off commission
- Subdomain Options - Enter a domain in the format ".yourdomain.com" if you want to offer a free subdomain option for the domain at signup. You can offer more than one by entering a comma separated list, eg. ".yourdomain.com,.yourdomain.net"
- Product Downloads - Lets you offer files to be automatically released to the customer when the product is activated. See Product Downloads Distribution for more information
- Overage Billing - Allows you to bill for the product based on disk and bandwidth usage for the month. Refer to Disk Space and Bandwidth Overage Billing for more information.
The final tab contains some ready-made URLs to add to a webpage linking to this product.
- Each URL will add the product to the shopping cart and jump straight to the configuration step
- There are many more possible variations, refer to Linking to WHMCS.