Domain Renewal Notices

From WHMCS Documentation

This page describes a feature available in version 5.3.12 and above. As a result, you will not see this functionality or logs for any renewal notices sent prior to the date you upgrade to 5.3.12.
This feature requires that WHMCS has been configured for the automated provisioning and management of domains. For information on this please refer to the Domains Configuration section.

Domain Renewal Notices can be configured to be sent by WHMCS leading up to, and after a domain has passed its next due date. You can use these to remind and encourage your customers to renew their expiring domains with you.

Configuring When Renewal Notices Are Sent

Domain Renewal Notices are configured by default to meet the minimum requirements set out by ICANN for Expiration Reminder Notices by a domain registrar. At the time of writing, those are at least twice prior to the next due date, and once following it (if the domain remains unrenewed).

You can however customise the intervals at which Domain Renewal Notices are sent in Configuration () > System Settings > Automation Settings or, prior to WHMCS 8.0, Setup > Automation Settings.

  1. Begin by navigating to Configuration () > System Settings > Automation Settings or, prior to WHMCS 8.0, Setup > Automation Settings.
  2. Scroll to the Domain Reminder Settings section of the page
  3. For each of the 5 possible reminders, you can enter a number of days and select either before or after from the dropdown menu to denote if it's to be sent the number of days specified before the next due date or after it
  4. You can disable any reminder option by setting it to 0 (zero)

An example configuration is shown below where 3 notices have been setup prior to the next due date at 60, 30 and 7 days, as well as one 3 days after the next due date (if the domain remains unrenewed). The fifth possible reminder option is disabled by setting it to zero (0).


These settings interact with the Domain Synchronisation Settings in the section below.

Take into account the Sync Next Due Date value, as this moves the Next Due Date forward, which determines when to send renewal notices.

Renewal Notice Recipients

Renewal notices are sent to the registered email address of the account to which a domain belongs within WHMCS.

Renewal notices can also be sent to additional addresses using the Contacts system:

  1. Starting on the Summary tab, click the Contacts tab
  2. Enter the name and email address of the person who wishes to receive a copy of the domain renewal notice
  3. Tick the Domain Emails option in the EMail Notifications section
  4. Click Save Changes

This contact will now receive a copy of all domain renewal emails for the account in question. Repeat this process for each additional person who wishes to receive the emails.

Once a contact has been configured to receive Domain Emails, the Domain Emails option can then be disabled for the account via the Profile tab. There must always be one recipient of domain emails per account.

Registered Name Holder Notifications

Where a registrar module supports it, WHMCS will also send a copy of the renewal notices to the registered name holder as defined in the WHOIS Record for a given domain.

Please Note: This functionality is only available in specific domain registrar module(s) at this time. They include:

More will be added in due course.

Customising the Renewal Notices

There are two email templates that are used for domain renewal notices. They are:

  • Upcoming Domain Renewal Notice - Used for notices sent prior to the domains Next Due Date
  • Expired Domain Notice - Used for notices sent after the domains Next Due Date (if the domain remains unrenewed)

These can be edited in the usual way in Configuration () > System Settings > Email Templates or, prior to WHMCS 8.0, Setup > Email Templates.

For more information on customising email templates, please refer to the Email Templates documentation.

Email Syntax

The renewal reminders provide advanced variables allowing for the customisation of the domain renewal emails sent to clients. Under normal operation the renewal reminder email template can be left as default, but advanced users interested in customising it, the available options are summarised here.

  • $days_until_expiry - Will show the amount of days left until the domain's expiry date from the date the reminder is sent out.
  • $expiring_domains - This contains a list of the domains due for renewal "in the next" XX days. This is an array of information containing domainid, name, nextduedate, expirydate and days.
  • $domains - This is an array populated with the domains information - domainid, name, nextduedate, expirydate and used to show multiple domains details for future reference.

Reviewing Renewal Notices That Have Been Sent

WHMCS maintains an indefinite log of all renewal notices that it sends to provide you with an audit trail which you can refer to, and export if needed.

It can be accessed from any Domains' Management page within the admin area:

  1. Browse to a domain within the admin area
    1. Using search, the domains list, or by navigating to a Clients Profile and selecting a domain from there
  2. Towards the bottom of the page, you'll see a Sent Domain Reminders section
  3. If none are listed, no domain reminders have yet been sent for this domain
  4. When domain reminders have been sent, you will see a list containing the following for each reminder that has been sent: date, reminder type, who it was sent to, and the number of days either prior to or after renewal it was sent for. See the screenshot below for an example.


You can export the Renewal Notices log in CSV format for use elsewhere by clicking the Export button shown below the log and then selecting Export to CSV which is available in the tools shown below the report log.

The Renewal Notices log can also be accessed directly via a report which you'll find in Reports > Other > Domain Renewal Emails. The report allows you to apply more detailed filters and includes the ability to filter by registrar as well as for a specific date range.