Domain registrars

Enom — setup and reference

Configure Enom credentials, contacts, domain actions, confirmation and registry limitations.

Platform
Laravel / PHP
Laravel
13
PHP
8.4
Database
Dedicated MySQL-compatible production database

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

  1. 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.
  2. 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.
  3. 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:

← All EmailaBiller guidesGet help →

Need help with EmailaBiller?

Tell us the product version and what you are trying to do. Keep passwords and private keys out of your message.

Contact Emaila