QuickBooks and Xero sync errors
A sync failure is almost always your accounting software refusing something, not EyeOnTask breaking. The message it sends back is passed on as-is, which is why the errors below read like QuickBooks and Xero rather than like the rest of the application.
Setting the connection up in the first place is covered separately — QuickBooks, Xero, and integrations for what each connection carries.
Check the order things sync in first
Section titled “Check the order things sync in first”Most invoice failures are not really invoice failures. An invoice cannot exist in QuickBooks or Xero without the things it points at, so they have to arrive first:
- The client. If the client has never synced, the invoice has nobody to attach to. Sync the client from their record first. A client who has synced but has since been archived or deleted on the accounting side fails in a different way — see the client associated with this invoice was deleted or merged below.
- The items and services on the invoice lines. If a line refers to something your accounting software has never heard of, either map it to an existing item or let it be created.
- The tax rates used on the invoice. Each one has to be mapped to a tax code on the other side.
- The connection itself, which expires — see Authentication failed below.
Working down that list resolves most of what arrives as “the invoice will not sync”.
A payment is a step further along again: it can only cross once the invoice it belongs to has. Which records travel which way is set out in what syncs, and which way.
Why can’t I sync my inventory to QuickBooks or Xero?
Section titled “Why can’t I sync my inventory to QuickBooks or Xero?”Because inventory does not travel that way. It is not failing — there is no outward sync to fail.
Products and services come in only. The Inventory tab on the QuickBooks or Xero integration imports the items already set up in your accounting package into EyeOnTask, so your item list matches the one your accountant bills from. There is no button that sends your EyeOnTask item list the other way, and no direct export.
Your items reach the accounting side on invoices instead. Whatever item or service is on an invoice goes across with that invoice when it syncs, and is created there if it does not exist yet. So anything you actually bill for arrives the first time you bill for it — which is usually all an accountant needs.
If an item has to be in QuickBooks or Xero before it is ever invoiced, add it there and import it. See QuickBooks inventory and Xero inventory.
“A client with this name already exists” (Code 6240)
Section titled ““A client with this name already exists” (Code 6240)”What it means. QuickBooks Online will not allow two customers or vendors to share an exact display name, and the client you are pushing matches one already there.
What to do. Search QuickBooks for the name first, because the fix depends on what you find.
If it is genuinely the same customer, link the two rather than creating a second one: open the client in EyeOnTask and link it to the existing QuickBooks customer.
If it is a different customer that happens to share a name, change the name in EyeOnTask so the two can be told apart — a suffix that means something to you, such as a site or a town, works better than an initial. Then sync again.
“An invoice with this number already exists”
Section titled ““An invoice with this number already exists””What it means. An invoice carrying that same code is already in QuickBooks or Xero.
What to do. Give the EyeOnTask invoice a code that is not in use, and sync again. If it keeps happening rather than being a one-off, the two systems are numbering into each other’s range — change the prefix or the next number in invoice settings so the sequences stop colliding.
“The client associated with this invoice was deleted or merged”
Section titled ““The client associated with this invoice was deleted or merged””What it means. The customer this invoice belongs to is no longer a live contact in your accounting software. They have been archived, deleted or merged on that side — most often archived in Xero, which is what “inactive” means there.
The invoice is rejected outright: it is not pushed across, and it stays in the sync tab with the error against it. An invoice has to attach to a contact that can still receive it, and an archived contact cannot.
The wording is generic and names deletion or merging even when the contact was only archived, so read it as this customer is no longer available in your accounts, not as a claim about which of the three happened.
What to do. Deal with the contact first, then sync again:
- Archived by mistake — restore the contact in Xero or QuickBooks and the invoice syncs on the next attempt.
- Archived deliberately, but you still need the invoice across — the contact has to be live to receive it. Restore it, sync the invoice, and archive it again afterwards.
- Merged into another contact — link the EyeOnTask client to the contact that survived the merge, so the invoice points at a record that exists.
If the customer really is finished with in your accounts, the invoice belongs in EyeOnTask only, and forcing it across is not the answer.
A currency mismatch when syncing an invoice
Section titled “A currency mismatch when syncing an invoice”What it means. The client on the invoice is set to a currency your accounting organisation does not hold. Xero starts with one base currency, and it will not accept an invoice in a currency that has not been added to the organisation, so the sync is refused rather than converted.
Nothing is wrong with the invoice. EyeOnTask bills that client in their currency quite happily; it is the other side that has never been told the currency exists.
What to do. Add the currency in Xero, then sync again:
- In Xero, go to Settings → Currencies.
- Add Currency, and pick the one the client is set to in EyeOnTask. It has to be the same currency, not an equivalent.
- Back in EyeOnTask, open the Invoice tab of the Xero integration, select the invoice and sync it.
With the foreign currency live in the organisation, the invoice goes across without the mismatch. It is a one-off per currency, not per invoice — the next client billed in the same currency syncs straight away.
“Authentication failed” or “Connection expired”
Section titled ““Authentication failed” or “Connection expired””What it means. The token that lets EyeOnTask act on your accounting account has expired, been revoked, or stopped working because the credentials of the person who connected it changed.
What to do. Reconnect from Settings → Integration: disconnect the integration and connect it again, signing in to QuickBooks or Xero and granting access when asked. Then retry whatever failed.
This is the one to suspect when everything synced yesterday and nothing syncs today.
“Account code does not exist” or a mapping failure
Section titled ““Account code does not exist” or a mapping failure”What it means. A line on the invoice is pointing at a ledger account that has been archived, renamed or deleted in your accounting software, so the mapping no longer resolves.
What to do. Open the mapping screen for the integration and check the account selections — sales, expense and bank. Any that are empty or flagged need a valid, active account picked again from your current chart of accounts. Save the mapping and retry.
“Contact or item not found”
Section titled ““Contact or item not found””What it means. The client, item or service the invoice refers to was deleted, archived or merged on the accounting side, and the link between the two records is now pointing at nothing.
What to do. If it was archived, restoring it in QuickBooks or Xero is the quickest fix and keeps the history intact. If it was removed for good, unlink the record in EyeOnTask and sync it again to create a fresh one.
“Rate limit exceeded” or “Too many requests”
Section titled ““Rate limit exceeded” or “Too many requests””What it means. Too many sync requests went out in too short a time and the accounting software has started refusing them. Both services cap how many calls they will accept per minute.
What to do. Wait a minute or two — the limit resets on its own — then retry the failed items. Pressing a bulk sync repeatedly while it is working is usually what causes this, and each extra press makes the wait longer rather than shorter.
“The discount item DiscountAmount is Category type”
Section titled ““The discount item DiscountAmount is Category type””What it means. QuickBooks expects a discount to be a Service item, and in your QuickBooks account the DiscountAmount item has been set up as a Category instead.
What to do. This one is fixed in QuickBooks, not in EyeOnTask. Under Products and Services, find DiscountAmount, edit it, and change its type from Category to Service. Save, then re-sync the invoice.
“This invoice cannot be modified”
Section titled ““This invoice cannot be modified””What it means. The invoice you are re-syncing has already been paid, part-paid, voided or locked in your accounting software. Accounting systems deliberately refuse edits to invoices with payments against them.
What to do. If it has been paid, make the change in QuickBooks or Xero directly — the sync will not be allowed to do it, and that restriction is protecting the books. If it has been voided, it has to be unvoided or raised again on the accounting side.
Deleting a client does not delete it in your accounts
Section titled “Deleting a client does not delete it in your accounts”Worth knowing before it surprises you: deleting a client in EyeOnTask does not delete them in QuickBooks or Xero. The link between the two records breaks, and the accounting record stays exactly where it is.
That is deliberate on the accounting side, where financial history is not meant to disappear because of an action taken in another system. If you want the customer gone from your accounts as well, archive or delete them there yourself.