Skip to content

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.

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:

  1. The client. If the client has never synced, the invoice has nobody to attach to. Sync the client from their record first.
  2. 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.
  3. The tax rates used on the invoice. Each one has to be mapped to a tax code on the other side.
  4. 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.

“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.

“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.

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.

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.