WHMCS import: domains arrive without expiry, auto-renew or registrar order id

Sheernox

New Member
Env: ClientExec 7.2.2 (ionCube), PHP 8.5.10, MariaDB 11.8.9. Source WHMCS 9. Registrar NetEarthOne (LogicBoxes).

Where: plugins/import/whmcs/whmcs2ce.php line 729, exportDomains(). The query selects registrationdate, domain, recurringamount, registrationperiod, status, nextduedate, registrar and paymentmethod, but not expirydate or donotrenew. WHMCS keeps no registrar order id, and the importer does not look one up.

Bug: Imported domains have no Expiration Date, keep auto-renew on where WHMCS had "do not renew", and have no Registrar Order Id. ClientExec's registrar plugins set that field only when they register or transfer a domain themselves (plugins/registrars/netearthone/PluginNetearthone.php lines 117 and 159).

Repro: Import a WHMCS install with an active domain marked "do not renew", then open the domain in the admin. Expiration Date and Registrar Order Id are empty and auto-renew is on.

Fix: Export expirydate (stored as a Unix timestamp, as the domain updater writes it) and donotrenew, and after import look up each active domain's order id at its registrar by name (LogicBoxes domains/orderid.json), storing it as <registrar>-<orderid>.
 
Thanks for the report.

This will be fixed in our upcoming 7.3.0 release. However, the order id is something that we're not going to look up after an import.
 
Back
Top