# Fix invoice sync errors with QuickBooks

## Common QuickBooks invoice sync errors and fixes

### Create failed: Required param missing

<figure><img src="https://3848983471-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F8mHp6Xvui6hSl3fbco11%2Fuploads%2F8m5JD4oMubyTygfTRp8Q%2Fcreate_failed_qb_status.png?alt=media&#x26;token=45e45307-4ac7-49ff-9f22-b539103b29dd" alt=""><figcaption></figcaption></figure>

**Cause:**\
This occurs when an invoice has no line items.

**Fix:**\
Revert to **Draft**, delete the empty invoice or edit it to add at least one line item (and tax if needed), then **Finalize**. Once you have finalized your invoice with line items it will automatically sync to xero. After you finalize, the invoice will sync to **QuickBooks** automatically.

***

### Update failed: Historical invoice

<figure><img src="https://3848983471-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F8mHp6Xvui6hSl3fbco11%2Fuploads%2Fn3gYQTLuE6SLOVdMDwsq%2Fupdate_failed_status_qb.png?alt=media&#x26;token=bbf61d11-dbe4-4eea-b059-91d5cdd3e30a" alt=""><figcaption></figcaption></figure>

**Cause:**\
This is shown on an invoice if it was created before connecting QuickBooks.

**Fix:**\
Leave it as is, or recreate in Caspen if you need it in QuickBooks.&#x20;

***

### Invalid refresh token

<figure><img src="https://3848983471-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F8mHp6Xvui6hSl3fbco11%2Fuploads%2FyvnnH6wVN2mu0HeNiAT3%2Finvalid_refresh_token_qb_status.png?alt=media&#x26;token=4c12e632-ab70-4c92-b4b2-176212bff963" alt=""><figcaption></figcaption></figure>

**Cause:**\
An invoice fails because the connection to Quickbooks has expired.

**Fix:**\
Disconnect and reconnect Settings → Integrations → QuickBooks, then click the Retry button.

***

### Duplicate document number

<figure><img src="https://3848983471-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F8mHp6Xvui6hSl3fbco11%2Fuploads%2F1AjU4ekTooH2s9r56CGF%2Fduplicate_no_qb_status.png?alt=media&#x26;token=b0ee6646-4adc-42e9-86c4-8f1d89144da9" alt="" width="393"><figcaption></figcaption></figure>

**Cause:**\
This error occurs when you try to create an invoice where an invoice with the same number already exists in QuickBooks.

**Fix:**\
Open that document in QuickBooks, change its number to something unique (add a prefix or extra digits), **save**, then return to Caspen and select **Retry**.

\
\&#xNAN;*For example:* *Use a unique scheme like* **INV{sequence}-{suffix}**, **CN{sequence}**, **ADJ{sequence}** *so they never clash with Caspen invoice numbers.*&#x20;

***

### Business validation error (tax)

<figure><img src="https://3848983471-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F8mHp6Xvui6hSl3fbco11%2Fuploads%2FeS2TuD511OFI3vxn1FpO%2Fbusiness_val_error_qb_status.png?alt=media&#x26;token=658f7d9f-cd0d-4b6e-9011-c881da53c2e4" alt=""><figcaption></figcaption></figure>

**Cause:**\
This error occurs when a Caspen tax rate is not linked to a matching QuickBooks tax code (or that code does not exist or is inactive in QuickBooks).

**Fix:**

1. Note the tax on the invoice line items (e.g. GST, GST free).
2. Go to **Settings** → **Taxes**.
3. Find that tax rate and select **Actions** → **Sync with QuickBooks** → choose the matching **QuickBooks Tax Code** → Click **Sync**.
4. If the code is not in QuickBooks: create or enable it in QuickBooks, then repeat step 3.
5. If the rate is not in Caspen: add the tax rate in Caspen, then repeat step 3 to link it.
6. Return to the invoice → **Retry**.

{% hint style="info" %}
**Tip:** The QuickBooks tax code must exist and be active before Caspen can link to it.
{% endhint %}

***

### No QuickBooks status card showing

**Cause:**\
The invoice was **voided in Caspen**. Caspen sends the void to **QuickBooks** and removes the **QuickBooks status** card from the invoice.

**Fix:**\
No action needed. This is expected for voided invoices.

***

#### **Not seeing your error here?**

Please contact Caspen Support with: invoice number, a screenshot of the status area, the exact error text (if any), and the time you tried to sync. We will investigate and help you resolve it.
