While trying to sync accounts from Core to Xero in a batch using Core > Xero Sync Detail > Send menu, all the accounts are not synced. Rather, only a few of them are synced. On checking the Sync Log, the user sees the following error message:
The remote server returned an error: (429) Too Many Requests.
This happens because of the rate limitations of the Xero API that Core uses to sync the accounts. It restricts the number of API calls that can be sent per minute to the Xero API server. And for the Accounts API, Xero does not support batch processing yet, so each account is sent from Core to Xero in a separate API request. If you have a large number of accounts to send, the rate limit is triggered. The Xero API servers stop processing the requests for some time and return an error. Check out this article in Xero documentation for more details: API Limits in Xero.
Because this is a limitation of the Xero API, the best workaround for you is to sync the accounts multiple times until all your accounts are sent to Xero. You also need to wait for some time between each sync attempt to satisfy the rate limit on the Xero servers.