Domains Configuration
WHMCS offers many tools for selling domains and automated domain provisioning and management.
Contents
- 1 Domain Management Features
- 2 System Domain Settings
- 3 Registrar Configuration
- 4 Domain Pricing
- 5 Manual Domain Registration
- 6 Domain Renewals
- 7 Domain Renewal Notices
- 8 Offering Free Domain Registration with Selected Packages
- 9 Adding Additional WHOIS Services
- 10 TLD Specific Additional Domain Fields
- 11 Customising Domain Name Length Restrictions
- 12 Customising Domain Renewal Restrictions
- 13 Domain Pricing Matrix
- 14 Customising Domain Categories
Domain Management Features
The available management features are:
- Domain Registration
- Domain Transfers
- Renewal/Extensions
- View/Change Nameservers
- View/Update WHOIS Information
- Lock/Unlock Domains
- ID Protection
- EPP Code Retrieval
- Register/Manage Private Nameservers
- DNS Record Management
- Email Forwarding Management
Some of these features are only available on certain registrars. For registrar-specific information, see the relevant registrar's documentation. A list of supported registrar modules is available at Domain Registrars.
System Domain Settings
You can configure the domain options you offer (registration, transfers, or using the client's own domain) and various payment and renewal settings in the Domains tab at Configuration () > System Settings > General Settings.
Registrar Configuration
You can configure domain registrars at Configuration () > System Settings > Domain Registrars.
Domain Pricing
You can configure your own pricing for domain registrations at Configuration () > System Settings > Domain Pricing. You can also use automatic domain registration for many TLDs to ensure that WHMCS automatically submits renewal requests as soon as you receive payment.
Manual Domain Registration
You can use the Email registrar module to sell TLDs that none of the supported registrar modules allow. This lets you use WHMCS to accept the order and invoice the client while you perform the domain registration, renewals, and updates manually.
Domain Renewals
By default, all domains are set to auto-renew, but this is not the same as what domain regstrars commonly mean by auto-renewal. In this case, an invoice will generate a number of days (according to your settings) prior to the due date. After you receive payment, the domain will renew. Paid domains never renew without payment.
Note
In WHMCS 8.2 and higher, WHMCS prevents renewal of free domains in the Client Area unless bundled with a product or service.
You can disable automatic renewals for a specific domain if you do not want to generate an invoice and want the domain to expire. To do this, toggle Disable Auto Renew to YES in the Products/Services tab of the client's profile. Clients can do this by toggling the option in the Client Area domain details page.
When you disable automatic renewals, WHMCS checks for any outstanding invoices:
- If the domain is invoiced on its own, it cancels that invoice.
- If the domain appears on an invoice for multiple items, WHMCS only removes the domain's line.
Disabling auto-renewal via the Admin Area will not trigger the automated invoice cancellation, allowing you to keep an existing renewal invoice or to cancel it manually. The system will continue to send Upcoming Domain Renewal notices, and clients can renew the domain manually if they wish.
Domain Renewal Notices
By default, the system sends at least two domain renewal notices prior to expiration and one following it. You can change the timing, send reminders before and after a domain's expiration date, or disable it. The client's Email tab records the reminders, and the system logs them in the Domain Renewal Reminder Emails report for ICANN compliance (module dependant).
Note
For more information, see Domain Renewal Notices.
Changing Notice Intervals
To change the interval at which WHMCS sends renewal notices:
- Navigate to Configuration () > System Settings > Automation Settings or, prior to WHMCS 8.0, Setup > Automation Settings.
- Scroll to the Domain Reminder Settings section.
- For each of the five possible reminders:
- Enter a number of days. You can disable any reminder option by setting it to 0.
- Select either before or after from the dropdown menu to indicate whether to send the reminder that many days before the next due date or that many after it.
- 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.
Editing the Renewal Notice Email
To edit the email message sent to clients:
- Go to Configuration () > System Settings > Email Templates.
- Select a template and edit it:
- Upcoming Domain Renewal Notice is sent before a paid domain expires.
- Upcoming Free Domain Renewal Notice is sent before a free domain expires.
- Expired Domain Notice is sent after a domain expires.
For more information, see Email Templates.
Offering Free Domain Registration with Selected Packages
Note
In WHMCS 8.2 and higher:
- Domains cannot be renewed individually through the Client Area if they are eligible for free renewal bundled with a product or service..
- You can choose whether to send free domain renewal notices.
For more information, see Domain Renewal Notices.
With WHMCS, you are able to offer free domains with your packages clients purchase them with certain payment terms. For example, you might want to offer a free domain when a client purchases an annual package.
To do this:
- Go to Configuration () > System Settings > Products/Services.
- Click the edit icon next to the product or service that you want to offer a free domain with.
- Select the Free Domain tab.
- Choose the type of free domain you want to offer.
- Select the payment terms (or billing cycles) that you want to offer with the free domain. Press Ctrl when clicking the options to select more than one.
- Select which TLDs the free domain offer applies to. This allows you to exclude high-priced TLDs such as .tv. Press Ctrl while clicking the options to select more than one.
- Click Save Changes.
After you complete these steps, the package won't charge the user for the domain when their order meets the specified criteria.
If the domain and hosting account payment methods and next due dates are the same, WHMCS will invoice the domain and hosting account on the same invoice, depending on your settings in Configuration () > System Settings > Automation Settings.
Depending on your settings at Configuration () > General Settings > Domains, WHMCS may automatically renew clients for a futher period when you receive payment for the invoice. The hosting account and domain's next due date will automatically change to the next period.
Adding Additional WHOIS Services
WHMCS 7.0 introduced override capabilities to Whois servers. These provide an easy way to maintain customisations during automatic updates. In addition, the location and format for some of these files changed.
Overriding and adding additional whois servers
For more information, see WHOIS Servers.
Note
WHMCS will report the results from the Whois servers. Some Whois servers may not correctly report reserved or premium domains.
TLD Specific Additional Domain Fields
WHMCS 7.0 introduced override capabilities to additional domain fields. These provide an easy way to maintain customisations to these files during automatic updates. In addition, the location and format for some of these files has changed.
Overriding and adding additional domain fields
For more information, see Additional Domain Fields.
Customising Domain Name Length Restrictions
The major TLDs have length limits by default. You can specify your own for any others by adding lines like these to the WHMCS configuration.php file:
$DomainMinLengthRestrictions[".asia"] = 3; $DomainMaxLengthRestrictions[".asia"] = 64; $DomainMinLengthRestrictions[".ws"] = 4; $DomainMaxLengthRestrictions[".ws"] = 63;
Customising Domain Renewal Restrictions
Many TLDs have restrictions on renewal before and after expiration (the grace period). For example, you can typically renew a .com 40 days after the expiry date, while you can renew .uk domains between 180 days prior to expiration up to 97 days afterwards (registrar dependent).
The major TLDs have grace periods by default. You can specify your own for any others by adding lines such as these to the configuration.php file:
$DomainRenewalGracePeriods[".com"] = "40"; $DomainRenewalMinimums[".co.uk"] = "180"; $DomainRenewalGracePeriods[".co.uk"] = "97";
You can also specify multiple grace periods and minimum advance renewal restrictions in a single entry:
$DomainRenewalGracePeriods = array(".com"=>"30",".net"=>"40",".uk"=>"97"); $DomainRenewalMinimums = array(".com"=>"180",".com.au"=>"90");
Default Values
There are defined default Domain Grace and Redemption Period values for over 800 of the most common TLDs and extensions. For more information, see Domain Grace and Redemption Period Defaults.
The default Minimum Renewal Periods are:
.co.uk = 180,.org.uk = 180,.me.uk = 180,.com.au = 90,.net.au = 90,.org.au = 90
The default Minimum Length is three characters and the default Maximum Length is 63 characters for the following TLDs:
.com, net, .org, .info, biz, .mobi, .name, .asia, .tel,.in, .mn, .bz, .cc .tv, .us, .me, .co.uk, .me.uk, .org.uk, .net.uk, .ch, .li, .de, .jp
Domain Pricing Matrix
The Client Area Domain Extension Pricing page is at cart.php?a=add&domain=register. It is designed to provide visitors and clients an intuitive overview of your extension pricing. The layout of this client area page should aid you in promoting your best extensions.
For more information about domain spotlights, see Domain Pricing Matrix page.
Customising Domain Categories
Domain Categories are used on cart.php?a=add&domain=register to group domain TLDs into categories such as Popular, Shopping, or Real Estate and makes it easier for clients to navigate and find their ideal domain extension.
For more information about customising the domain categories, see Domain Categories.