Difference between revisions of "Automation Settings"
(→Support Ticket Settings) |
(→Data Retention Settings) |
||
Line 151: | Line 151: | ||
==Data Retention Settings== | ==Data Retention Settings== | ||
+ | [[File:Data Retention Settings.png|thumb|Data Retention Settings]] | ||
{{:Data_Retention_Policy_Automation}} | {{:Data_Retention_Policy_Automation}} | ||
Revision as of 10:56, 9 March 2021
The Automation Settings allow you to configure all of WHMCS's automated processes. This includes suspensions, unsuspensions, terminations, how far in advance the system generates invoices, and when the system sends overdue notices. It's the one central place that controls everything that the daily automation tasks do.
To trigger the daily automation tasks, you must configure a Cron Job at a recommended frequency of every 5 minutes. This is usually part of the initial installation of WHMCS.
Contents
- 1 Scheduling
- 2 Automatic Module Functions
- 3 Billing Settings
- 4 Credit Card Charging Settings
- 5 Currency Auto Update Settings
- 6 Domain Reminder Settings
- 7 Domain Sync Settings
- 8 Support Ticket Settings
- 9 Data Retention Settings
- 10 Scheduling
- 11 Automatic Module Functions
- 12 Billing Settings
- 13 Payment Capture Settings
- 14 Currency Auto Update Settings
- 15 Domain Reminder Settings
- 16 Domain Sync Settings
- 17 Support Ticket Settings
- 18 Data Retention Settings
- 19 Miscellaneous
- 20 Miscellaneous
Scheduling
Time of Day
This setting allows you to select the hour in which you'd like WHMCS to perform all daily automation tasks. To function properly, this setting depends on configuring your cron job to run at least once every hour. We recommend setting it to run every 5 minutes to allow other system processes, such as checking for updates, to take place.
Automatic Module Functions
These settings pertain to your customer’s products or services and how the system handles non-payment.
Enable Suspension
Selecting this option will enable automatic suspensions when payments for products or services are overdue. The setting below (Suspend Days) controls the amount of time between your customer becoming overdue and when the system suspends them.
Suspend Days
If you enabled Enable Suspension, this configures the amount of time between a customer's product or service becoming overdue and the system suspending them.
Enable Unsuspension
When you enable this setting, services that the system suspended due to "Overdue on Payment" will automatically become unsuspended when they pay the unpaid invoice for the item. However, if you suspended products or services manually, and assigned a custom reason for suspension, then an automatic reactivation will not occur. For example, you may have manually suspended an item with a reason of "Broken Terms of Service" or "Awaiting ID Verification".
Enable Termination
Enable this option to terminate the client's service (remove it from the server) according to the setting below (Termination Days).
Termination Days
If you selected Enable Termination, this determines the number of days between a product or service becoming overdue and the system terminating that product or service.
Billing Settings
Use these settings to determine how the system generates invoices and sends payment reminders to your customers. Setting the Unpaid and Overdue Reminder settings to 0 will prevent the system from sending the related emails.
Invoice Generation
This is the number of days before the system will generate due date invoices. For example, if this setting is 7, the system will generate an invoice seven days before the due date for products, services, addons, and domains.
Per Billing Cycle Settings
By clicking Advanced Settings, you can specify a different invoice generation setting for each billing cycle. For example, you may want the system to generate invoices for monthly services seven days in advance and generate invoices for annual services 14 days in advance.
Domain Invoice Generation
This optional setting allows you to specify how far in advance to generate domain renewal invoices. You can use this if you want to give a longer time between invoice generation and the due date for domain invoices. This is particularly useful when you don't accept payments online and more time might be necessary to avoid domain expiration.
Leave this setting blank if you want the system to generate all invoices at the same time.
Payment Reminder Emails
If you enable this, the system will remind your customers by email in advance of an unpaid invoice's due date. It does this using the Invoice Unpaid Reminder setting (below). This setting does not apply to Overdue Reminders.
Invoice Unpaid Reminder
The system sends this email before the due date if the invoice remains unpaid, to remind a customer that the invoice will be due soon.
Overdue Reminders
If a customer hasn't paid an invoice in a certain number of days after the due date, the system will email the customer with a reminder.
Add Late Fee Days
If a customer hasn't paid an invoice that is this number of days overdue, your customer will be charged late fees (according to your choices in General Settings).
Overage Billing Charges
Use this to determine how to bill clients for overage (if you enabled this). The first setting will calculate the bandwidth overage costs on the last day of each month and create an invoice that is 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, the system will add it to the client's next invoice.
Change Invoice Status
Part of the Payment Reversals feature. Set Invoice to Collections Status. WHMCS uses the collections status for invoices to denote invoices that are bad debts. You can use this to track invoices that have received payment disputes or chargebacks.
Change Due Dates
Part of the Payment Reversals feature. This reverts Next Due Date Increments for the products and services in an invoice. The system considers them as 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
Use these settings to determine how to charge your customer's cards when you use a merchant gateway to handle credit card payments.
Process Days Before Due
This specifies the number of days before the due date that you wish to capture. For example, setting this to 1 would attempt to charge the card for the first time one day before the invoice due date.
Attempt Only Once
By default, the system will attempt to capture payment for unpaid invoices daily until it succeeds. When you enable 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 you have enabled this setting, WHMCS will attempt the card once a week for this number of weeks. For example, if you set this to 2, the system would attempt to charge the card two additional times. Set this to 0 to disable this, causing the system to attempt to change the card every day.
CC Expiry Notices Date
This is the day of the month on which the system will send reminder emails to active clients with cards that expire by the end of the month, asking them to update their records. On the 1st of the month, WHMCS will remove any credit cards with an expiration date before that day's date.
We recommend a low value, such as 1, to give clients as much notice as possible to update their card details. For example:
Scenario
Card Expiry Date: March 2020
CC Expiry Noticed Date: 1
Timeline of Events
Reminder email sent: 1st March 2020
Card removed from WHMCS: 1st April 2020
Do Not Remove CC on Expiry
When you enable this option, the client's credit card information will remain on file after its expiration date. When you disable this, the system will remove the credit card details using the setting you specified for CC Expiry Notices Date.
Currency Auto Update Settings
Use these settings for the multi-currency system.
Exchange Rates
When you enable this setting, 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. For more information, see the list of supported currencies.
Product Prices
When you enable this setting, the system will automatically update your prices according to the exchange rates. For example, if you have a product that costs $1 in your default base currency (USD) and the exchange rate is 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 change to £0.7.
Domain Reminder Settings
These settings determine when and how many emails the system sends to your customers to remind them to renew their domain names. You can send a maximum of five reminders. If you set any field to 0 it will disable that email.
You can configure WHMCS to send Domain Renewal Notices before and after a domain has expired.
For more information on this functionality, see the Domain Renewal Notices documentation.
Domain Sync Settings
Domain Sync Enabled
Enable this setting for the domain date and status synchronisation function.
Sync Next Due Date
Use this setting to choose whether to sync the Next Due Date to the Expiry Date, and, if you wish, how many days in advance of it.
Domain Sync Notify Only
If you enable this, the domain sync script won't make any changes. It will only notify admins of the changes it would have made. This is useful for debugging.
Domain Expiry Sync Frequency
A value of 0 will check the domain expiration dates every four hours. Use this setting to set a different frequency. The lowest frequency setting, 1, will check every hour.
Pending Transfer Sync Frequency
A value of 0 will check the domains in Pending Transfer status every four hours. Use this setting to set a different frequency. The lowest frequency setting, 1, will check every hour.
Support Ticket Settings
Close Inactive Tickets
After this amount of time has passed, the system will close any tickets that meet both of the following criteria:
- The ticket's status is either answered or customer reply.
- There have been no new replies from staff or the customer.
The system will also send an email to the customer.
Tickets in on hold and in progress status are exempt from auto-closure. Closure takes place when the daily cron job runs.
Prune Ticket Attachments
When this setting is enabled, ticket attachments will be automatically deleted after the selected amount of time of inactivity following the closure of a ticket. This can be set between 1 and 24 months.
For more information on this functionality, see the Ticket Attachment Pruning documentation.
Data Retention Settings
The Automation Settings allow you to configure all of WHMCS's automated processes. This includes suspensions, unsuspensions, terminations, how far in advance the system generates invoices, and when the system sends overdue notices. It's the one central place that controls everything that the daily automation tasks do.
You can access this feature at Configuration () > System Settings > Automation Settings or, prior to WHMCS 8.0, Setup > Automation Settings.
To trigger the daily automation tasks, you must configure a Cron Job at a recommended frequency of every 5 minutes. This is usually part of the initial installation of WHMCS.
Scheduling
Time of Day
This setting allows you to select the hour in which you'd like WHMCS to perform all daily automation tasks. To function properly, this setting depends on configuring your cron job to run at least once every hour. We recommend setting it to run every 5 minutes to allow other system processes, such as checking for updates, to take place.
Automatic Module Functions
These settings pertain to your customer’s products or services and how the system handles non-payment.
Enable Suspension
Selecting this option will enable automatic suspensions when payments for products or services are overdue. The setting below (Suspend Days) controls the amount of time between your customer becoming overdue and when the system suspends them.
Suspend Days
If you enabled Enable Suspension, this configures the amount of time between a customer's product or service becoming overdue and the system suspending them.
Enable Unsuspension
When you enable this setting, services that the system suspended due to "Overdue on Payment" will automatically become unsuspended when they pay the unpaid invoice for the item. However, if you suspended products or services manually, and assigned a custom reason for suspension, then an automatic reactivation will not occur. For example, you may have manually suspended an item with a reason of "Broken Terms of Service" or "Awaiting ID Verification".
Enable Termination
Enable this option to terminate the client's service (remove it from the server) according to the setting below (Termination Days).
Termination Days
If you selected Enable Termination, this determines the number of days between a product or service becoming overdue and the system terminating that product or service.
Billing Settings
Use these settings to determine how the system generates invoices and sends payment reminders to your customers. Setting the Unpaid and Overdue Reminder settings to 0 will prevent the system from sending the related emails.
Invoice Generation
This is the number of days before the system will generate due date invoices. For example, if this setting is 7, the system will generate an invoice seven days before the due date for products, services, addons, and domains. The number of days should be an integer of 0 or more.
Per Billing Cycle Settings
By clicking Advanced Settings, you can specify a different invoice generation setting for each billing cycle. For example, you may want the system to generate invoices for monthly services seven days in advance and generate invoices for annual services 14 days in advance.
Domain Invoice Generation
This optional setting allows you to specify how far in advance to generate domain renewal invoices. You can use this if you want to give a longer time between invoice generation and the due date for domain invoices. This is particularly useful when you don't accept payments online and more time might be necessary to avoid domain expiration.
Leave this setting blank if you want the system to generate all invoices at the same time.
Payment Reminder Emails
If you enable this, the system will remind your customers by email in advance of an unpaid invoice's due date. It does this using the Invoice Unpaid Reminder setting (below). This setting does not apply to Overdue Reminders.
Invoice Unpaid Reminder
The system sends this email before the due date if the invoice remains unpaid, to remind a customer that the invoice will be due soon.
Overdue Reminders
If a customer hasn't paid an invoice in a certain number of days after the due date, the system will email the customer with a reminder.
Add Late Fee Days
If a customer hasn't paid an invoice that is this number of days overdue, your customer will be charged late fees (according to your choices in General Settings).
Overage Billing Charges
Use this to determine how to bill clients for overage (if you enabled this). The first setting will calculate the bandwidth overage costs on the last day of each month and create an invoice that is 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, the system will add it to the client's next invoice.
Change Invoice Status
Select this to use the Collections invoice status to denote invoices that are bad debts (payment reversals). You can use this to track invoices that have received payment disputes or chargebacks.
WHMCS 8.3 and higher includes support for disputes for Stripe (credit card only) and some PayPal® transactions at Billing > Disputes.
Change Due Dates
Part of the Payment Reversals feature. This reverts Next Due Date Increments for the products and services in an invoice. The system considers them as due again, and, in cases where the date is in the past, overdue, which will trigger an automated suspension until repayment is made.
Enable Auto Cancellation
Select this to enable automatic cancellation of overdue invoices after a specific number of days. This setting automates cancellation of old, overdue invoices in the Unpaid status each time that the system cron runs.
- This setting will not cancel any overdue invoices that have partial payment or applied credit, regardless of the invoice's age.
- Invoice cancellation does not explicitly trigger additional actions. However, depending on your automation settings, additional automation may occur due to cancelled invoices.
- When the system cron cancels the applicable invoices, it will add a note to the invoice to indicate closure due to automatic cancellation.
You can view the overdue unpaid invoices that the system cancelled during the last daily task run under Overdue Invoice Cancellation at Configuration () > System Settings > Automation Status.
Days Overdue
If you enabled Enable Auto Cancellation, enter the number of days an invoice can remain overdue before the system cron job cancels it.
Payment Capture Settings
Prior to WHMCS 8.2, these settings were under Credit Card Charging Settings.
Use these settings to determine how to charge your customer's pay method when you use a merchant gateway to handle credit card and other payments.
Process Days Before Due
This specifies the number of days before the due date that you wish to capture. For example, setting this to 1 would attempt to charge the card for the first time one day before the invoice due date.
Attempt Only Once
By default, the system will attempt to capture payment for unpaid invoices daily until it succeeds. When you enable 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
When you enable this, WHMCS will attempt to charge the card every Seven days from the expected capture attempt date for this number of weeks. For example, if an invoice's Next Due Date value is on the 14th and you set this setting to 2 and Process Days Before Due to 1, the system will attempt the first payment capture on the 13th. Then, it will retry payment on the 20th and 27th if the invoice status is not Paid.
You can also set this setting to 0 to disable the weekly retries, causing the system to attempt to charge the card every day until it succeeds or the invoice status changes to Cancelled
CC Expiry Notices Date
This is the day of the month on which the system will send reminder emails to active clients with cards that expire by the end of the month, asking them to update their records. On the 1st of the month, WHMCS will remove any credit cards with an expiration date before that day's date.
We recommend a low value, such as 1, to give clients as much notice as possible to update their card details. For example:
Scenario
Card Expiry Date: March 2020
CC Expiry Noticed Date: 1
Timeline of Events
Reminder email sent: 1st March 2020
Card removed from WHMCS: 1st April 2020
Do Not Remove CC on Expiry
When you enable this option, the client's credit card information will remain on file after its expiration date. When you disable this, the system will remove the credit card details using the setting you specified for CC Expiry Notices Date.
Currency Auto Update Settings
Use these settings for the multi-currency system.
Exchange Rates
When you enable this setting, 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. For more information, see the list of supported currencies.
Product Prices
When you enable this setting, the system will automatically update your prices according to the exchange rates. For example, if you have a product that costs $1 in your default base currency (USD) and the exchange rate is 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 change to £0.7.
Domain Reminder Settings
You can configure WHMCS to send Domain Renewal Notices before and after a domain has expired and, in WHMCS 8.2, choose whether to send renewal notices for free domains bundled with a product or service.
For more information on this functionality, see Domain Renewal Notices and Free Domains.
Renewal Notices
You can send a maximum of five reminders.
To configure these settings, for each renewal notice:
- Enter the number of days for that notice. If you set any field to 0 it will disable that email.
- Select whether to send the reminder that many days before or after the renewal date.
Free Domain Reminders
In WHMCS 8.2 and later, choose whether to send renewal reminders for free domains associated with a paid product or service. This setting defaults to disabled for existing installations upgrading to WHMCS 8.2 and to enabled for new installations of WHMCS 8.2 and higher.
For more information, see Free Domains.
Domain Sync Settings
Domain Sync Enabled
Enable this setting for the domain date and status synchronisation function.
Sync Next Due Date
Use this setting to choose whether to sync the Next Due Date to the Expiry Date, and, if you wish, how many days in advance of it.
Domain Sync Notify Only
If you enable this, the domain sync script won't make any changes. It will only notify admins of the changes it would have made. This is useful for debugging.
Domain Expiry Sync Frequency
A value of 0 will check the domain expiration dates every four hours. Use this setting to set a different frequency. The lowest frequency setting, 1, will check every hour.
Pending Transfer Sync Frequency
A value of 0 will check the domains in Pending Transfer status every four hours. Use this setting to set a different frequency. The lowest frequency setting, 1, will check every hour.
Support Ticket Settings
Close Inactive Tickets
After this amount of time has passed, the system will close any tickets that meet both of the following criteria:
- The ticket's status is either answered or customer reply.
- There have been no new replies from staff or the customer.
The system will also send an email to the customer.
Tickets in on hold and in progress status are exempt from auto-closure. Closure takes place when the daily cron job runs.
Prune Ticket Attachments
When this setting is enabled, ticket attachments will be automatically deleted after the selected amount of time of inactivity following the closure of a ticket. This can be set between 1 and 24 months.
For more information on this functionality, see the Ticket Attachment Pruning documentation.
Data Retention Settings
Automatically Delete Inactive Clients
Automatically Delete Inactive Clients
- We added this setting in WHMCS 7.5.
- In WHMCS 8.3 and earlier, this was the After no invoice or transaction activity has occurred for the following number of months setting.
This setting allows you to configure client records to be automatically deleted after a given number of months with no invoice or transaction history. The length of time you must retain data is often governed by the laws and regulations of your local jurisdiction. Most jurisdictions agree that you should only keep personal data for as long as is necessary.
To enable this setting, select After no invoice payment has occurred for the inactive or closed client in the following number of months and specify a number of months that is greater than 0.
This setting is disabled by default.
Paid Invoices and Transactions
The presence of paid invoices or transactions within the specified period determines whether WHMCS retains client records. If you enable this feature, WHMCS will immediately delete clients who are in the Inactive or Closed statuses and have no invoice or transaction history.
This setting causes the system to perform the Data Retention Pruning task each day. This will delete client records that meet the following criteria:
- A status of Inactive or Closed.
- No paid invoices within the specified number of months.
- No entered or applied transactions within the specified number of months.
- If the client is an affiliate, a commission balance of 0 or no referrals within the specified retention period.
Delete associated users if the user(s) are not associated with any other client account
Optionally, you can set this to YES to cause the Data Retention Pruning task to also delete users who are only associated with this client.
Miscellaneous
Cancellation Requests
When you enable the Show Cancellation Link option, enabling this setting will automatically terminate the client’s package on the termination date.
For more information, see Cancellation Requests.
Update Usage Statistics
Enabling this option will display disk and bandwidth usage statistics from the hosting control panel (if it is supported) inside the WHMCS admin and client areas. It will update them on a daily basis.
Client Status Update
The following applies to the client status dropdown found in the client account Profile tab. WHMCS automatically sets clients older than 2 days, with no active products or 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 system won't change the status of a client automatically.
Change client status based on active/inactive products — If a client was created more than 2 days ago, has no active or suspended services, domains, addons, or billable items, the system will automatically set their account to Inactive status the next time that the cron job runs.
Change client status based on active/inactive products and not logged in for longer than 3 months — In addition to the above option, the system will only set a client's account to inactive when their last login date was over 3 months ago.
Module Log Pruning
Enabling this option allows you to choose the number of days of module log entries to retain. The system prunes the module log daily during the execution of the cron.
For more information, see the Data Retention Policy Automation page.
Miscellaneous
Cancellation Requests
When you enable the Show Cancellation Link option, enabling this setting will automatically terminate the client’s package on the termination date.
Update Usage Statistics
Enabling this option will display disk and bandwidth usage statistics from the hosting control panel (if it is supported) inside the WHMCS admin and client areas. It will update them on a daily basis.
Client Status Update
WHMCS automatically sets clients with no active products or 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 system won't change the status of a client automatically.
Change client status based on active/inactive products — If a client has no active or suspended products or services, the system will automatically set their account to Inactive status the next time that the cron job runs.
Change client status based on active/inactive products and not logged in for longer than 3 months — In addition to the above option, the system will only set a client's account to inactive when their last login date was over 3 months ago.
Automatically Delete Inactive Clients
This setting allows you to configure client records to be automatically deleted after a given number of months with no invoice or transaction history. This setting defaults to off.
To enable this, you must select the radio option for removing clients automatically and specify a number of months that is greater than 0.
When you enable it, the system performs the Data Retention Pruning task daily and will remove clients that meet the following conditions:
- Are in a status of Inactive or Closed.
- Have no invoices that have been marked paid within the given number of months you specify.
- Have no transactions that have been entered or applied within the given number of months you specify.
- Is an affiliate with a balance greater than 0 or has made a referral within the specified retention period.
The client status can be changed automatically by the system. This is controlled by Configuration () > System Settings > Automation Settings > Client Status Update.