WHMCS - Registrar Module

Introduction

Modules directly shipped with WHMCS are maintained by the WHMCS Core Team. Bugs and Feature Requests have to be addressed via https://whmcs.com. It is possible to migrate to our Module Variant.

We are offering our custom module for WHMCS which covers more features than the natively integrated module would ever receive. In addition, this enables us to release more frequently. Therefore, we recommend using our custom variant instead.

Supported built-in WHMCS Features

Find below Features that can be integrated based on WHMCS Registrar Functions. Some of them are optional and historically joined WHMCS.

  • Availability Check
  • Domain
    • Registration
    • Renewal & Restore
    • Transfer
    • Release / Push (.uk, ...)
  • Domain & Transfer Synchronisation
  • Registrar Lock
  • Private Nameservers
  • Manage Domain Contact Information
  • Get EPP/Auth Code
  • Additional Fields
  • TLD & Pricing Sync (aka. Registrar TLD Sync)
  • Premium Domains
  • IDNs
  • DNSSEC
  • DNS Management
  • Email Forwarding
  • ID Protection

Custom Features

Here, is where we are doing it better than our competitors. Some of the below features can be enabled or disabled in the Registrar Module Settings.

  • Registrar Lock Menu Removal (e.g. .eu)
  • Show Registrar System Connectivity Status
  • Additional Domain Fields Extensions
    • Validation on Checkout

System Requirements

In our system requirements, we recommend avoiding PHP versions that have reached their End of Life (EOL), as indicated in red on the PHP Supported Versions page.

To ensure compatibility with WHMCS, please follow these steps:

Ensure to have the below packages installed on your WHMCS Server:

  • curl
  • php-curl

Installation

To install our module please download the latest version from here and follow the belows steps:

  1. Extract the entire archive contents to your WHMCS installation’s root directory
  2. Login to whmcs Admin area and activate the module.
  3. Fill in your API key and password, chose whether you want to use the live or the test environment and save. If using in test mode please use testapi/testpass for API key/password.
  4. IMPORTANT NOTE: If you want to enable premium domains in whmcs, you need to make sure that you define an exchange rate between USD and your currency in Admin the menu Setup→Payments→Currencies. Our module explicitly sets USD when checking the price for premium names and USD price will be sent back to us when confirming the price for the premium name at registration time. Also you need to enable premiu domains for your API KEY in your account in the reseller settings page (need to change “Allow premium domains operations” from NO to YES).
  5. NOTE: If you plan on configuring the cron job to synchronize expiration dates of your domains (useful when you have pending transfers or have autorenewal enabled for your domains in your account on our system) when the “SyncNextDueDate” checkbox is not checked the script will only update the status and the expiration date. If you check the “SyncNextDueDate” it will also update the Next Due Date which determines the time when WHMCS will issue a new invoice for the domain. This only applies if you are using our custom sync script and not the WHMCS built in sync.
  6. Optional: If you are upgrading from a previous verson of our module or swirtchng from the one shipped with WHMCS please also execute the SQL queries in the file upgrade.sql
  7. Optional: We offer language files (Italian only for now) here. Please copy those files to the /lang/overrides folder of your WHMCS installation’s root directory. See below for details on adding your own.
  8. Optional: If you want to register .it, .fr, .be, etc., please configure your additional domain fields as explained here.

Additional Fields

WHMCS provides a way to define additional fields that are needed for some TLDs. We add those for our module via file /resources/domains/dist.additionalfields.php. Add the below at the end of the file, if not yet present.

include(ROOTDIR."/modules/registrars/ibs/ibs_additionaldomainfields.php");

Unfortunately we do not yet have support for all TLDs that have additional fields in our WHMCS module but plan to add it in future releases.

From the TLDs that require additional data we currently support: .co.uk, .org.uk, .me.uk, .uk, .eu, .be, .asia, .fr, .re, .pm, .tf, .wf, .yt, .it, .de, .nl, .tel, .us

NOTE: If you want to offer .it domain names, please copy the file itterms.html (or itterms-it.html for the italian variant, please rename it then) to the root of your WHMCS installation. Find the files under modules/registrars/ibs.

NOTE: The above way via /resources/domains/dist.additionalfields.php is not a recommended way, still suggested by our documentation since years. We will rewrite that mechanism to a future-safe way. Just a matter of time and priorities. Also, please keep in mind that you have to apply the current solution after each WHMCS upgrade again.

NEW: We ship with a built-in mechanism that checks for the above include statement to be present. It adds the line automatically if absent.

Localization support

Our module is in English, and we provide an Italian translation as well.

Find all the language files we offer here. The ones of interest please copy to /lang/overrides/.

Notes

The price sync feature supports only the following currencies: USD, EUR, GBP, CAD, AUD and JPY. If your default currency is not one of the above then the prices are pulled from our API in USD and you need to define exchange rates between USD and your default currency in order to use this feature.

Was this article helpful?
0 out of 0 found this helpful