Skip to content
Browse documentation 146 guides

Domain registrars

Openprovider — setup and reference

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

About 4 min read

On this page

Module and release scope

This guide covers Openprovider 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 — API username 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 automated renewals boolean No Default: false

Independent registrar package for EmailaBiller 1.3.6. Installation leaves the module disabled, creates no connection and contains no business configuration. Connection writes and automated renewals also start disabled.

Configure and test

Create a reseller account and enable API access. Use the API username/password for that environment, including any required source-IP allowlist. Live requests use https://api.openprovider.eu/v1beta; sandbox uses https://api.sandbox.openprovider.nl/v1beta. Sandbox accounts are separate, have limited TLD coverage and do not support domain transfers. Credentials are exchanged for a bearer token held only in module memory. Test authenticates and reads one domain; it makes no purchases or contact changes.

Select the environment, enter credentials, save and Test. Enable the module and connection separately, then enable remote writes only when ready. Give this integration only the account permissions it needs: domain/TLD/customer reads, domain creation/transfer/renew and domain updates when required. No inbound webhook is needed; domain status comes from authenticated synchronization.

Registration and transfers

Create each customer's contact handles in Openprovider first. Pass owner_handle, admin_handle, tech_handle, billing_handle in the domain tool's provider options. These are per-order values, never shared defaults. All four handles are checked through the authenticated customer endpoint before a purchase. A register also needs nameservers (at least two different hostnames) and years. Transfers need auth_code, preserve registry nameservers, and remain pending until completion. additional_data may carry registry eligibility data. Do not include premium acceptance fees: this module refuses premium registrations and premium renewals.

Example provider options (replace with real customer handles):

{"owner_handle":"AB123456-NL","admin_handle":"AB123456-NL","tech_handle":"AB123456-NL","billing_handle":"AB123456-NL"}

The TLD endpoint validates allowed terms and operation availability. The registry still makes the final eligibility decision. Special extensions require the corresponding customer/registry data; the module never invents it. Contact creation and DNS zone management are outside this registrar package.

Operations and confirmation

Supports availability, registration, inbound transfer, renewal, account synchronization, nameservers, transfer lock/unlock, and EPP retrieval. Owned-domain reads must match the exact domain and remote ID. Registration is active only after owned account readback confirms the registrant handle, active state and requested nameservers. Renewals require an advanced registry expiration date; acknowledgements and unadvanced dates remain pending. renewal_date is exposed separately as renewal_due_on; registry expiry is never replaced with a billing deadline.

Requests use fixed HTTPS endpoints, bounded responses and timeouts, and no automatic retries or redirects. A timeout after purchase dispatch is reported as submitted but unconfirmed: inspect the registrar account and synchronize before retrying. This prevents an unsafe automatic duplicate charge.

Provider documentation

  • REST API and schemas: https://docs.openprovider.com/
  • OpenAPI domain schema: https://docs.openprovider.com/swagger/domain.swagger.json
  • Authentication: https://support.openprovider.eu/hc/en-us/articles/360025683173-Getting-started-with-Openprovider-API
  • Sandbox limitations: https://support.openprovider.eu/hc/en-us/articles/8095671860114-Sandbox-Testing-Environment

Need a hand?

Tell us your product version, the step you are following and what happened. Our support desk keeps your conversation together.

Contact support →