WHMCS Automation Settings


Written by Dennis Nind

Last published at: February 8th, 2019

Automation Settings

The Automation Settings are where you configure all the automated processes such as suspensions, unsuspensions, terminations, how far in advance to generate invoices, when overdue notices are sent, etc... It's the one central place that controls everything that the cron does during its daily run. You must configure the Cron Job to run once per day inside your hosting control panel for the automated actions to occur (if you didn't do it when advised during the installation process).
Watch Video Tutorial

Automatic Module Functions

These settings pertain to your customer’s product/services and how the system handles non-payment.

Enable Suspension

Selecting this option will enable automatic suspension when products/services are overdue on payment. How long overdue they are allowed to get before being suspended is controlled by the setting immediately below.

Suspend Days

Once the products due date is this many days overdue, the clients’ product will be suspended if the above suspend option is enabled.

Enable Unsuspension

When enabled, suspended products that are suspended for a reason of "Overdue on Payment" will automatically be unsuspended when the unpaid invoice for the item is paid. However, if products or services are suspended manually, and assigned a custom reason for suspension, then an automatic reactivation will not occur. For example a custom reason might be "Broken Terms of Service", "Awaiting ID Verification", etc...

Enable Termination

Ticking this option will terminate the clients’ package (remove it from the server) according to the setting below.

Termination Days

Once the product/service is this many days overdue the clients’ account will be terminated.

Billing Settings

These settings determine invoice generation and when your customers are reminded to make payments. Setting the Unpaid and Overdue Reminder settings to 0 will prevent that email from being sent.

Invoice Generation

This is the number of days before the due date invoices will be generated. Eg. If this setting is 7 then an invoice will be generated 7 days before the due date for products, services, addons & domains and your customer emailed.

Per Billing Cycle Settings

By clicking the Advanced Settings link you can specify a different invoice generation setting for each billing cycle. For example you may wish invoices for monthly services to be generated 7 days in advance while invoices for annual services are generated 14 days in advance.

Domain Invoice Generation

This is an optional setting that allows you to specify how far in advance domain renewal invoices should generate. You can use this if you want to give a longer time between the generation and due date for domain invoices, particularly useful in cases where payments are not taken online and so more time might be necessary to avoid domain expiry. Leave this setting blank if you want all invoices to be generated the same.

Payment Reminder Emails

When enabled your customers will be reminded by email in advance of an unpaid invoice's due date in line with the Invoice Unpaid Reminder setting. This setting does not apply to Overdue Payment Reminders

Invoice Unpaid Reminder

This email is sent before the due date if the invoice is still unpaid to remind a customer an invoice will soon be due.

Overdue Reminders

If an invoice hasn’t been paid this many days after the due date these emails will be sent to the customer to remind them to pay.

Add Late Fee Days

Once an invoice is this many days overdue then your customer will be charged late fees (if defined in General Settings).

Overage Billing Charges

Determines how clients are billed for their overage (if enabled). The first setting will calculate the bandwidth overage costs on the last day of each month and create an invoice due immediately. This will create a separate invoice. The second setting will still calculate the overage change on the last day of the month, but it will not create a separate invoice, instead it will be added to the client's next invoice.

Change Invoice Status

Part of the Payment Reversals feature. Set Invoice to Collections Status. The collections status for invoices in WHMCS is used to denote an invoice which is a bad debt and can be used to track invoices which have received payment disputes or chargebacks.

Change Due Dates

Part of the Payment Reversals feature. Reverts Next Due Date Increments for the products and services contained within an invoice. This has the effect of making the item be considered due again, and in cases where the date is in the past, overdue, which will trigger an automated suspension until repayment is made.

Credit Card Charging Settings

When using a merchant gateway to handle credit card payments these settings determine how your customer’s cards are charged.

Process Days Before Due

This is the number of days before the due date that you wish to capture. Eg. Setting to 1 would first attempt the card 1 day before the invoice due date.

Attempt Only Once

By default, unpaid invoices will have their payment capture attempted daily until successful. By enabling this option, WHMCS will only attempt to charge the customer’s card once. If it fails, it will not try again until the client or an admin makes a manual payment attempt.

Retry Every Week For

If a credit card is declined and this setting is enabled, WHMCS will attempt the card once a week for this number of weeks. For example, setting to 2 would attempt to charge the card 2 additional times before giving up. Set to 0 to disable and cards will be attempted each day.

CC Expiry Notices Date

This is the day of the month emails will be sent to active clients with cards expiring in the next month to remind them to update their records. The default of 25 will send a notice on the 25th to customers whose cards expire next month. The expiring credit card will also be removed when this email is sent.

Do Not Remove CC on Expiry

With this option ticked client's credit card information will remain on file after its expiration date. When unticked the credit card details will be removed in accordance with the setting above.

Currency Auto Update Settings

These settings are tied into the multi-currency system.

Exchange Rates

When enabled WHMCS will connect with the European Central Bank and obtain the latest exchange rates. This will ensure your currency conversion functions are always using an accurate rate. Currencies supported by this function are listed here.

Product Prices

Enabling this setting will automatically update your prices according to the exchange rates. So if you have a product costing $1 in your default base currency (USD) and the exchange rate was 0.6 for a second currency (GBP), the product’s price would automatically update to £0.6. Tomorrow, if the exchange rate changed to 0.7, a $1 product would be changed to £0.7.

Domain Reminder Settings

These settings determine when and how many emails are sent to your customers to remind them to renew their domain name. You can send a maximum of 5 reminders, setting any field to 0 will disable that email. Domain Renewal Notices can be configured to be sent by WHMCS leading up to, and after a domain has expired. For more information on this functionality, please refer to the Domain Renewal Notices documentation.

Support Ticket Settings

Close Inactive Tickets

Any tickets in answered or customer reply status will be closed after this amount of time has passed without a reply from staff or customer and an email sent to the customer. Tickets in on hold and in progress status are exempt from auto-closure. Closing takes place when the daily cron runs.


Cancellation Requests

When the Show Cancellation Link option is enabled, ticking this setting will automatically terminate the client’s package when the termination date is reached.

Update Usage Statistics

Enabling this option will display disk & bandwidth usage statistics from the hosting control panel (where supported) inside the WHMCS admin and client areas and update them on a daily basis.

Client Status Update

WHMCS automatically sets clients with no active products/services to Inactive status, this helps you to distinguish and filter clients effectively. However you can stop WHMCS from doing this by changing this setting. More information on this feature is available in Client Management. Disabled - The status of a client will not be changed automatically Change client status based on active/inactive products - If a client has no active or suspended products/services then their account will automatically be set to Inactive status when the cron job next runs. Change client status based on active/inactive products and not logged in for longer than 3 months - In addition to the above option, a client's account will only be set to inactive when their last login date was over 3 months ago.