Domain Transfer
Domain transfer allows your clients to move a domain name registered with another registrar to HostMyServers, while managing it from your WHMCS. Transfer is a long operation (from a few hours to 7 days depending on the TLD).
Transfer Prerequisites
Before initiating a transfer, the domain must meet the following conditions:
| Condition | Detail |
|---|---|
| Domain unlocked | The transfer lock must be disabled at the current registrar |
| Authorisation code (EPP/AuthCode) | Provided by the current registrar, often from the client area |
| Expiry > 7 days | A domain expiring in less than a week cannot be transferred |
| Not in redemption period | A domain in redemption cannot be transferred |
| Domain registered for > 60 days | ICANN registries impose a 60-day delay since the last transfer or registration |
Initiating a Transfer from the WHMCS Cart
- The client goes to your WHMCS cart and chooses Transfer an Existing Domain
- They enter the full domain name
- They enter the authorisation code (EPP/AuthCode) provided by their current registrar
- They validate and pay (some TLDs include a one-year renewal in the transfer price)
- WHMCS initiates the transfer via the HostMyServers API
Transfer Tracking
Transfers are not instantaneous. WHMCS displays the domain as Transfer in Progress for the duration of the operation.
Typical Delays by TLD Family
| TLD | Typical delay |
|---|---|
.com, .net, .org | 5 to 7 days (5-day FOA window) |
.fr | 48h to 5 days |
.eu | 5 to 7 days |
New TLDs (.io, .dev…) | 5 to 7 days |
| Some ccTLDs | Variable depending on the national registry |
FOA Email (Form of Authorization)
For ICANN-managed TLDs (.com, .net, .org…), a confirmation email (FOA) is sent to the domain's administrative contact. The holder must approve the transfer by clicking the link in this email. Without this approval, the transfer automatically expires after 5 days.
Inform your clients to check their inbox (including spam) after initiating the transfer.
Tracking from the WHMCS Back Office
Clients → relevant client → Domains tab → click on the domain
The module displays the real-time status via the HostMyServers API. Possible statuses:
| WHMCS Status | Meaning |
|---|---|
Pending Transfer | Transfer initiated, awaiting confirmation |
Active | Transfer completed successfully |
Cancelled | Transfer refused or expired |
The automatic synchronisation (cron) updates the status every 24h. To force an immediate update, use the Sync button from the domain record.
Manual Transfer from the Back Office
To initiate a transfer manually (without going through the cart):
- Clients → relevant client → Add Domain → type Transfer
- Fill in the domain, EPP code and duration
- Check Run Module Command Now
- Click Add
Cancelling a Transfer
If a transfer needs to be cancelled before completion:
- From the domain record in WHMCS, click Cancel Transfer
- The module sends a cancellation request to the HostMyServers API
- The domain remains with the current registrar
Refund in case of transfer cancellation depends on your commercial policy. HostMyServers does not charge for transfers that do not complete.
Common Transfer Errors
| Error message | Probable cause | Solution |
|---|---|---|
Invalid auth code | Incorrect or expired EPP code | Request a new EPP code from the current registrar |
Domain is locked | Transfer lock is still active | Ask the client to unlock their domain at the current registrar |
Domain not eligible | Domain registered less than 60 days ago | Wait until the 60-day period ends |
Domain expired | The domain has expired | Renew first with the current registrar |
Transfer already pending | A transfer is already in progress for this domain | Cancel the current transfer or wait for it to complete |