Guides8 min read

EPP code: what it is and how to get one for a domain transfer

What an EPP code is, how it differs from EPP status codes, and how to get one and keep it safe. Includes ICANN's adopted 2026 changes and the transfer rules for .si domains.

Terminal log for mkr.si showing four lines: transfer lock removed, EPP code requested, code sent to new registrar and transfer approved

An EPP code is the password that lets a domain move from one registrar to another. Also called an auth code or AuthInfo code, it comes from the Extensible Provisioning Protocol (EPP), the standard registrars use to talk to registries. Your current registrar issues it, and the new registrar must present it to complete the domain transfer.

The rules around the code are changing. On June 7, 2026, the ICANN Board adopted recommendations that rename the code and cap its life, though ICANN had announced no effective date by October 5, 2026. The phrase “epp code” gets about 200 searches a month in the US and 1,300 worldwide (Ahrefs, October 5, 2026).

EPP code vs EPP status codes

An EPP code and an EPP status code are different things. The code is a secret password tied to one domain, while status codes are public flags that describe what a registration can and cannot do.

The code is the authorization information that RFC 5731, the EPP domain mapping standard, attaches to domain objects to make transfers possible. The same standard defines status codes, and ICANN’s EPP status codes page explains them for domain holders. The key flag here, clientTransferProhibited, tells the registry to reject any transfer away from your current registrar.

AspectEPP code (auth code)EPP status codes
What it isA password (authorization information) for one domainFlags that show the state of a domain registration
Who sees itThe holder, the current registrar, the new registrar and the registry, which checks itAnyone: status codes are public
ExampleA random string generated for a single domainclientTransferProhibited, pendingTransfer
Where definedRFC 5731 (domain:authInfo element); ICANN Transfer Policy (AuthInfo code)RFC 5731; explained on ICANN’s EPP status codes page
Role in a transferProves the holder approved the transferclientTransferProhibited blocks the transfer until it is removed

In practice a transfer needs both: the lock flag removed and the code in hand. A valid code cannot move a domain that still carries clientTransferProhibited, and removing the lock alone does not start a transfer.

How to get your EPP code

You get your EPP code from the registrar that manages the domain today, usually in the domain’s settings. Under the ICANN Transfer Policy, a registrar must hand it over within 5 calendar days of your request if it does not let you generate the code yourself.

Five-step flow for getting an EPP code: sign in, open domain settings, remove the transfer lock, get the code and give it to the new registrar
How to get and use an EPP code at your current registrar. Source: ICANN Transfer Policy; RFC 5730.
  1. Sign in to the account at your current registrar, the company that manages the domain now.
  2. Open the settings for the domain you want to move and find the transfer or authorization code section.
  3. Remove the transfer lock. This clears the clientTransferProhibited status, and ICANN gives registrars 5 calendar days to do it on request when there is no self-service option.
  4. Request or view the code. Depending on the registrar, it appears on screen or arrives by email.
  5. Give the code to the new registrar when you start the transfer there. The new registrar submits it to the registry, which needs it to complete the transfer.

Dashboards differ between registrars, but the path is usually the same: domain settings, then a label such as Transfer or Authorization code. If you cannot find it, ask support. For gTLDs such as .com, the 5-day deadline still applies.

When a domain changes owners, the seller runs these steps. A careful seller releases the code only after escrow holds the buyer’s payment. Our guide to buying a domain that is already taken walks through that sequence.

How long an EPP code is valid and how to keep it safe

An EPP code has no single global validity period, because it depends on the registry and the registrar. RFC 9154, the standard for secure authorization information, says the code should exist only while a transfer is in process. The registrar must also tell you its time to live. Register.si caps a .si code at 16 days, and ICANN’s adopted recommendations would set 14 days for gTLDs.

Three rules keep the code safe.

  • Secrecy: share the code only with the new registrar. RFC 9154 requires an encrypted channel and bars the old registrar from storing it. The registry must keep it only as a strong one-way hash.
  • Uniqueness: ICANN requires registrar-generated codes to be unique for each domain and used only to identify the holder.
  • Strength and a short life: RFC 9154 calls for a secure random value with at least 128 bits of entropy. After a successful transfer, the registry must unset the code automatically.

If a code leaks or a transfer stalls, ask the registrar for a new one.

What ICANN’s revised Transfer Policy changes

The ICANN Board adopted all 47 Transfer Policy Review recommendations on June 7, 2026, in resolution 2026.06.07.04. They are not in force yet: as of October 5, 2026, ICANN had announced no effective date, and implementation still requires drafting the policy text with an Implementation Review Team.

The details are not in the resolution itself but in the working group’s Final Report of February 4, 2025. Under the adopted recommendations, ICANN plans these changes and clarifications.

  • New name: policies will use Transfer Authorization Code, or TAC, in place of AuthInfo code. The change is terminology only.
  • Deadline in hours: registrars must still provide the TAC within 5 days, now stated as at most 120 hours. The policy must make clear that 120 hours is the maximum, not the standard.
  • Fixed validity: a TAC is valid for 336 hours (14 days) from the moment it is set at the registry, unless it is used or reset earlier, for example after a security breach.
  • One-time use: each TAC works for a single transfer.
  • Stronger codes: the RFC 9154 minimum of 128 bits of entropy becomes mandatory.
  • Shorter restrictions: a 720-hour (30-day) transfer restriction after registration, and after a transfer between registrars, would replace today’s 60 days.

Until implementation, the current policy applies: AuthInfo codes, the 5-day deadline and the 60-day windows. These ICANN rules cover gTLDs such as .com. Country-code domains, explained in our ccTLD guide, follow their own registry rules.

EPP codes for .si domains

A .si transfer uses the same mechanism as a gTLD transfer, but Register.si calls the code geslo (password), also epp koda, epp geslo or authinfo. The holder sets it at the current registrar and gives it to the new registrar, which completes the transfer. Register.si says the geslo is valid until its first use or for 16 days at most.

That limit comes from Register.si’s Slovenian transfer page. If no transfer happens in that time, the holder must set a new one. The English page gives no validity period.

Both the Slovenian and the English version of the page offer an option worth knowing: an AuthInfo SHA-256 calculator. You choose the password yourself, give its SHA-256 digest to the current registrar and give the plain password to the new one. The calculator runs locally in your browser, so the password is not sent over the network when you generate the digest.

One gap matters for planning. The ICANN Transfer Policy covers gTLDs, not .si, and we found no .si equivalent of ICANN’s 5-day deadline on Register.si’s pages. Ask your registrar how fast it sets the code before agreeing on a timeline.

Our .si domain guide covers the other rules. .si is Slovenia’s country-code domain. For AI companies it reads as SuperIntelligence.

What to do when an EPP code fails

When a transfer fails, check four things in order: the lock, the code, the timing and any legal hold.

  • Domain still locked: while clientTransferProhibited is set, the registry rejects the request. Ask the registrar to remove it; for gTLDs it must do so within 5 calendar days.
  • Code rejected: the code may have expired or been mistyped. Request a fresh one and paste it without extra spaces.
  • Domain too new: a registrar may deny a transfer within 60 days of registration or of a previous transfer. After a change of registrant, the registrar must apply a 60-day transfer lock, unless it offered an opt-out and the holder used it before the change.
  • Legal hold: a registrar must deny a transfer during a UDRP proceeding, under a court order, or during a pending TDRP or URS dispute.

Under the ICANN policy, a registrar must not deny a transfer over an unpaid future registration period or a holder who did not respond. A lock is no excuse either, unless the holder had a reasonable chance to remove it. If a gTLD registrar still refuses or misses the 5-day deadline, file a complaint with ICANN Contractual Compliance through its transfer complaint form. That route does not apply to .si, because the ICANN Transfer Policy does not cover country-code domains.

What to do next as a buyer or seller

The right move depends on your side of the deal. Sellers control the timing, while buyers carry the risk until the domain reaches their account.

If you are selling, check the 60-day windows before you promise a date, and remove the lock only once the buyer’s payment is held in domain escrow. Send the EPP code privately, to the buyer or the new registrar only. For a .si name, remember the 16-day limit and set the geslo close to the transfer date.

If you are buying, ask the seller for the registration date and the last transfer date, so a 60-day restriction does not stall the deal. Start the transfer as soon as you receive the code, and confirm the domain shows in your account before escrow releases the funds. If you are still deciding whether a name is worth its price, our premium domain names guide covers comparable sales and total cost.

Frequently asked questions

What is the EPP code?

The EPP code is a password that authorizes moving a domain from one registrar to another. It is also called an auth code, AuthInfo code or authorization code, and it comes from the Extensible Provisioning Protocol, defined in RFC 5730 and RFC 5731. The current registrar issues the code, and the new registrar presents it to the registry to complete the transfer.

How do I get my EPP code?

You get your EPP code from your current registrar. Sign in to your account, open the domain's settings, remove the transfer lock and request or view the authorization code. Under the ICANN Transfer Policy, a registrar for a gTLD such as .com must provide the code within 5 calendar days of your request if you cannot generate it yourself.

Where can I find the EPP code for my domain?

The EPP code for your domain is in your current registrar's account, usually in the domain settings under a label such as Transfer, Authorization code or Auth code. Registrar dashboards differ, but the path is usually similar. If you cannot find the code, ask the registrar's support team to issue it or send it to you.

How long is an EPP code valid?

How long an EPP code is valid depends on the registry and the registrar. RFC 9154 says the code should be set only while a transfer is in process and that registrars must tell you its time to live. For .si, Register.si keeps the code valid until its first use or for 16 days at most. ICANN's adopted recommendations would set 14 days for gTLDs, with no effective date yet.

Is the EPP code the same as the auth code?

Yes. EPP code, auth code, AuthInfo code, authorization code and transfer code all name the same password for a domain transfer. ICANN's current Transfer Policy uses the term AuthInfo code. Under recommendations the ICANN Board adopted on June 7, 2026, the planned name is Transfer Authorization Code, or TAC, but no effective date had been announced as of October 5, 2026.

Sources

  1. Transfer Policy (updated February 21, 2024) — ICANN
  2. Registrant FAQs: transferring your domain name — ICANN
  3. EPP Status Codes: What Do They Mean, and Why Should I Know? — ICANN
  4. Approved Resolutions, Regular Meeting of the ICANN Board, June 7, 2026 (resolution 2026.06.07.04) — ICANN
  5. Transfer Policy Review PDP Working Group Final Report (February 4, 2025) — ICANN GNSO
  6. Transfer complaint form — ICANN Contractual Compliance
  7. RFC 5730: Extensible Provisioning Protocol (EPP) — RFC Editor
  8. RFC 5731: EPP Domain Name Mapping — RFC Editor
  9. RFC 9154: Extensible Provisioning Protocol (EPP) Secure Authorization Information for Transfer — RFC Editor
  10. Zamenjava nosilca in registrarja — Register.si
  11. Registrar and registrant transfers — Register.si