Module and release scope
This guide covers Enom 1.0.0, Extension API 1, from the reviewed product source. Its declared core range is 1.3.6–1.3.99. Use the matching released core and signed provider package; a version label alone does not install the required contracts. Source availability does not mean the module is bundled in every currently downloadable product, installed on your server, enabled or certified for your merchant/server account. Nothing in this guide enables a provider or changes your existing connections.
Open System → Domain registrars (newer source may group these as Payments, Domain services or Hosting services). Install the reviewed signed package through Modules & addons or the integration workspace's Install tab, enable the module separately, add an account/connection, save its own credentials, run its stated Test and explicitly enable the connection. Saving or retesting disables the connection until you enable it again. Start with the provider's test environment where supported; otherwise use an isolated account or server.
Exact connection fields
These are the fields declared by this module. Secret values are entered privately and encrypted by the application. Defaults are configuration hints, not approved live merchant settings. Internal fields are populated by the module and are not operator-editable.
| Key / label | Type | Required | Default / guidance |
|---|---|---|---|
environment — Environment |
select | Yes | Default: "sandbox" Choices: sandbox = Sandbox, live = Live |
username — Reseller login |
text | Yes | Use the account-specific value described below. |
password — API password |
secret | Yes | Use the account-specific value described below. |
allow_writes — Allow domain purchases and changes |
boolean | No | Default: false |
allow_automated_renewals — Allow paid-invoice automated renewals |
boolean | No | Default: false |
Standalone registrar module for Enom reseller accounts. It installs disabled, with both remote-write permissions off. No business credentials, contacts or catalogue data are included.
Configure
- Obtain an Enom reseller account with API access and sufficient balance. Enom API access is for reseller accounts and requires allowlisting the server's static outbound IP.
- Arrange separate sandbox credentials. Enable the module, create a connection, select Sandbox, and enter the reseller login and API password. Test reads account information and verifies that the account is a reseller; no domain is changed and returned passwords/security answers are never exposed.
- Test registration, renewal, transfer and synchronization in your sandbox before selecting Live and replacing credentials. Enable purchases explicitly. Automated paid-invoice renewal is a separate permission, off by default.
Fixed endpoints: https://resellertest.enom.com/interface.asp and https://reseller.enom.com/interface.asp. Commands are sent using HTTPS POST form bodies rather than credential-bearing URLs. No webhook is required. Responses must be complete XML, match the command and have ErrCount=0; errors are displayed after secret/contact redaction. External XML entities and DTDs are rejected.
Supported operations
Availability (Check), registration (Purchase), transfer-in (TP_CreateOrder), renewal (Extend), domain synchronization (GetDomainInfo and GetDNS), nameservers (ModifyNS), and transfer lock/unlock (SetRegLock/GetRegLock). EPP retrieval, premium domains, extended TLD eligibility, ownership trades and paid privacy products use the Enom panel in this version. There is no pricing import.
The owning customer's registrant profile supplies Registrant/Admin/Tech/AuxBilling contacts. Registration sends the chosen nameservers, billing years, disables Enom auto-renew, and never authorizes premium pricing. Transfer submits one domain with its authorization code and supplied customer contacts; it remains pending. Country-code extensions with extra eligibility attributes require assisted handling in the provider panel. Do not invent eligibility values.
Order acceptance remains pending until a fresh owned-domain synchronization confirms it. When the application supplies expected customer and DNS details, synchronization reads GetWhoisContact and compares the registrant and nameservers; mismatches remain pending for review. Explicit renewal is only confirmed if the owned domain expiry advances. A timeout is an uncertain submission: check the account and synchronize before retrying.
Official references:

