We have 6000+ active domains right now. With the domain sync cron set to run every hour (the most frequent available setting) and syncing 50 domains only it will take it roughly 5 days to sync them all.
Allowing us to run it more frequent and/or sync more than 50 domains at a time would be super helpful.
WHMCS Team Clarification:
To benefit the most number of users, we're adding this clarification that the request's scope is being broadened to allow customisation of the domain sync batch size.
Allowing the batch size to be customised, could simultaneously meet the needs of users who need to sync fewer than 50 domains and also users who need to sync more.
12 Comments
Login to post a comment.
The above suggestions re customizing batch size and manual sync from the panel would be great. I'd add to that the ability to allow the "Domain Sync Notify Only" option be separately selectable for transfer and for regular sync (we'd like to have post transfer sync update domain dates, but not regular sync which is currently too dangerous in our situation because of the variety of domains we provide).
But to my mind, the most useful thing for sync would be to create a couple of Hooks to allow us customize sync behavior.
PreSync hook could run before the sync and receives a list of domains in the batch, along with the default sync settings. This would allow us to remove domains from the batch if they are of a type where automatic sync could cause problems.
PostSync hook could run after sync (but before domain database updates) and provide a list of domains with updated information, so we could override expiry or due dates for domains in certain TLDs after the up-to-date information has been returned from the registry/registrar.
The ability to override due date on a domain by domain basis is important for us because many TLDs auto-renew with the registry or registrar (something that WHMCS does not handle well) or they can suspend or even delete much earlier than gTLDS (.pl would be a great example) ... such domains need a much earlier due date and invoice generation to allow us to cancel them in time, if the client has disabled the domain, or simply has not paid.
Other users probably have other requirements, so having hooks to allow us flexibility is probably useful to many.
If it's to avoid renewing a domain that is transferred away for example; WHMCS could sync domains before creating an invoice/renewing to make sure this isn't an issue.
Question related to this topic have also been brought up several times to our Support (HEXONET). Resellers with a larger domain portfolio really need a lot of time until data is completely synced. We at HEXONET have a Quota System in Place. But, the API Commands used in the Domain Synchronization do even not affect this Quota System. Therefore we would highly enjoy having more customizing possibilities regarding the Sync Automation Settings.
Some of our Resellers started automating using a custom script that is just invoking the sync from command line in a loop e.g. 5 x 50 = 250 domains per run.
If the most of the registrars are not affected by such a limitation, it would of course be a bad idea to apply restrictions in general - a disadvantage for the majority then. But, I have no statistics insights regarding that matter - therefore, adding more flexibility would be just great.
Thanks
Kai Schwarz
I think a way around this would be a simple box in automation settings to set a maximum limit - per active registrar module.
That would allow people to use a "default" recommended limit, or increase it further if required/able to.
* https://www.namecheap.com/support/knowledgebase/article.aspx/9739/63/api-faq/#z
* https://manage.resellerclub.com/kb/node/744
We are interested in collecting feedback to hear if your registrar applies such rate limits and what those limits are (if known).
This script basically overrides the value "Domain Status Sync Frequency" set in WHMCS and forces a Domain status sync at every cron job, which is by default every 5 minutes. This way you can sync 600 domains per hour.
No script was attached? This would be handy if you're able to publish this. Thanks