Thanks for your comments and votes on this idea so far. The obstacle we see is that most domain registrars don't 'push' API commands when a domain is transferred out.
So the domainsync script would have to figure out when a domain is transferred away, the response it would get from the registrar is 'domain name not found' so the question is; what criteria would like to see it use to determine this response indicates the domain is transferred away? Here are some ideas:

* The first time the domainsync.php detects a domain is not found, mark it as transferred away
* If the domain is reported as not found 4(?) times, mark it as transferred away
* If a domain is not found after 4(?) times, it is added to a list in the admin area under the Domains tab, where a list of potentially transferred out domains list listed for approval by staff.

What happens if the domain registrar has a fault at their end and incorrectly indicates domains are not found when they legitimately exist. How could such a situation be protected against?

Unfortunately the idea of finding out which registrar a domain is currently registered through and comparing it against the register in WHMCS wouldn't work as the data provided to domainsync.php by the registrar does not include that information.