When you sync ServiceCore with QuickBooks Online (QBO), your invoices, payments, and customer data transfer between the two platforms automatically.
If your QuickBooks Online (QBO) sync ever fails, ServiceCore logs an error message to help you identify what went wrong.
Use this glossary to look up the error, understand what it means, and follow the steps to resolve it.
If you've integrated QuickBooks Desktop (QBD) with your ServiceCore account, please click here to see the QBD Glossary instead.
Before You Start
Here are a few things to know before you continue:
You must have Owner or Admin permissions in both ServiceCore and QBO to troubleshoot error messages.
- ServiceCore is the source of truth and invoices/payments/credit memos should be created and edited in ServiceCore instead of QBO.
- Records created or edited directly in QBO are the most common cause of sync errors.
- Errors cascade because records are linked to each other in ServiceCore.
- For example: if a customer fails to sync, every invoice for that customer will fail and every payment on those invoices will fail too.
- Always fix the earliest record in the chain first: Customer > Site > Service/Account > Invoice > Payment.
- ServiceCore cannot delete records in QBO because the integration can only create and update.
- Deleted records in QBO CANNOT be restored.
- If you delete an invoice or payment in QBO that came from ServiceCore, it's gone permanently and the link between the two systems breaks.
- You can view deleted items in the QuickBooks Sync Log report, but you cannot restore them. Please contact our Support team if you need assistance with a deleted item.
How Items are Linked in ServiceCore
The sync between ServiceCore and QBO works as a chain. Each piece of data in ServiceCore links to another piece of data and a failure anywhere in that chain blocks everything downstream from syncing.
The decision tree below walks you through how to trace a sync failure back to its root cause. This is helpful for understanding why you have to check multiple items when something doesn't sync properly.
For example, if a payment doesn't sync to QBO, you must check its related invoices, service line items, account names, and more to find the root cause of the sync failure.
TIP: Click on the image below to enlarge it and zoom in.
Re-Sync a Failed Record
Most errors can be resolved by fixing the underlying cause and then triggering a re-sync.
To do that, just follow the instructions below:
- Find the record in ServiceCore.
- Click "Edit".
- Click "Save". You don't need to actually change anything!
- Check the QuickBooks Sync Log report to confirm it went through.
If a payment won't re-sync, just add a space in the memo field. This forces ServiceCore to register a change to the payment record and re-sync it.
If you need to re-sync an item that is linked to multiple transactions in your account, you'll need to edit/re-save the item first and then edit/re-save all the linked transactions. For example, an invoice linked to 5 payments means that the invoice and all 5 payments must be edited and re-saved to trigger a re-sync. Clearing the invoice error does not always release the payments automatically.
Glossary of Error Messages
Error messages for the ServiceCore <-> QBO sync fall into several different categories, laid out below.
Each table contains common error messages you might see in ServiceCore, what they mean, and how to resolve them so the items sync properly.
Service, Product, and Tax Errors
A single deactivated service or tax code can block every invoice that uses it.
Before working through a large error list, check whether a service or tax code failure is the root cause since fixing one of these records can clear hundreds of downstream errors.
Error Message |
What It Means |
How to Fix It |
|---|---|---|
|
"Service '[ServiceName]' has been deactivated in ServiceCore" Also appears as "Service '[ServiceName]' has been soft deleted in ServiceCore" |
A service used as a line item on this invoice or credit memo has been deactivated in ServiceCore. |
|
| "Tax code '[Name]' has been deactivated in ServiceCore" | Same pattern as a deactivated service, but for a tax code. Any invoice using that tax code cannot export. |
TIP: If a large number of invoices are affected, contact Support for a bulk re-sync. |
|
"Service 00000 '[ServiceName]' was not imported" Also appears as: "Could not find service identifier by value [X]" |
A service on the invoice is not recognized by ServiceCore, usually because it was deleted or changed in QuickBooks. |
|
| "Parent Ref Required" | Your services are nested underneath categories or parent items in QuickBooks. ServiceCore's sync does not support nested services. |
|
| "Invalid account type: You can't associate a product or service with accounts of certain types (such as Accounts Receivable and Accounts Payable)..." | A service is linked to the wrong type of account in QuickBooks. Things you sell need an income account. AR and AP accounts cannot be used. |
|
| "Item type NonInventory not supported" | The item type assigned in QuickBooks is not one the sync can work with. | Contact Support so we can confirm the correct item configuration for your setup. |
| "Business Validation Error: Tax Exemption Reason should be specified in case customer is marked as not taxable" | The customer is marked tax-exempt in QuickBooks but the required Tax Exemption Reason field is blank. |
|
| "Business Validation Error: We're sorry, QuickBooks encountered an error while calculating tax. Try reselecting the tax rate or reentering the product/service item and saving the form again" | QuickBooks cannot calculate tax on this invoice. Two common causes: a line item is flagged as taxable while the invoice carries a 0% tax rate, or a line item is missing a tax code entirely. |
|
| "Business Validation Error: You can't create or modify a transaction with a date that comes before you started tracking quantity on hand" | The transaction is dated before the inventory start date of an item on it. |
|
| "Due days required" | The payment term on this record has no due-days value set. QuickBooks requires terms to be set to a fixed number of days. |
|
Customer and Site Errors
Customer errors cascade into every invoice and payment linked to that customer.
Always fix the customer record first (assuming a service, product, or tax code error isn't the cause), then work through invoices, and then work through payments.
Error Message |
What It Means |
How to Fix It |
|---|---|---|
|
"Missing customer identified in QuickBooks" Also appears as a longer message ending in "expected to find an identifier for the customer" |
ServiceCore cannot match this invoice to the right customer in QuickBooks. Almost always caused by a customer name change that did not carry through to the linked records. |
TIP: If editing in ServiceCore does not work, open the customer in QuickBooks, add a space in the notes field, and save. Then re-sync from ServiceCore. |
|
"Duplicate Name Exists Error: The name supplied already exists" Also appears as: "The name supplied already exists. : null" |
QuickBooks requires every name to be unique across your Customer, Vendor, and Employee lists, including inactive records. A name in one of those lists matches a ServiceCore customer. |
|
| "You cannot enter more than 100 characters in the billing_email field." | The customer's billing email exceeds QuickBooks' 100-character limit. This usually happens when several addresses are stored in one field. |
|
| Customer will not sync -- no clear error, or an "invalid" message on the name | QuickBooks rejects certain characters and formatting that ServiceCore accepts. Common offenders: colons (:) in names, leading or trailing spaces, embedded line breaks. |
|
|
"Site does not have a primary customer set" Also appears as: "Site must have a parent customer." |
The site is not attached to a parent customer, so QuickBooks has nothing to file it under. Sites sync to QuickBooks as sub-customers and always need a parent. |
TIP: If a customer is assigned and the error persists, contact Support since the underlying link may need to be set manually. |
| An invoice will not sync and its site shows as deleted | The site attached to this invoice was deactivated or deleted in ServiceCore, so the invoice has nowhere valid to point. | Submit a support request to have the site reactivated. Once it is restored, the invoice and its payments can be re-synced. |
Invoice and Credit Memo Errors
Invoice errors block all payments attached to that invoice.
Resolve invoice errors before working on payment errors.
Error Message |
What It Means |
How to Fix It |
|---|---|---|
|
"Duplicate Document Number Error: You must specify a different number. This number has already been used. DocNumber=[X] is assigned to TxnType=Invoice with TxnId=[Y]" Also appears with TxnType=Credit Memo. |
A transaction in QuickBooks already uses this document number. Most often this means invoices are being created directly in QuickBooks using the same numbering as ServiceCore. |
If the QuickBooks record looks like the same invoice ServiceCore is trying to send, do not delete it. Contact Support so we can reconnect the two records instead of creating a duplicate. Please Note: You'll need to stop creating invoices directly in QuickBooks. If you must, use a different number prefix. |
|
"The entity in QuickBooks was deleted, so we are unable to sync it back to QuickBooks" Also appears as: "Expected to find matching ID in QuickBooks" |
The record was deleted in QuickBooks Online. ServiceCore is still linked to it and cannot update something that no longer exists. |
If the record should stay deleted, delete it in ServiceCore to match. If the record should exist, contact Support. We need to unlink it so ServiceCore can create it fresh in QuickBooks. |
|
"Invalid Reference Id: This account has been deleted" Also appears as: "Invalid Reference Id : Names element id [X] not found" or "Invalid Reference Id : Line.SalesItemLineDetail.ItemRef" |
The transaction points to something in QuickBooks that no longer exists -- an account, a customer name, or a product/service line item. |
TIP: If you are seeing many of these at once, contact Support rather than fixing them individually. |
| "Account Period Closed: The account period has closed and the account books cannot be updated" | The transaction is dated inside an accounting period you have closed in QuickBooks. |
|
| "Operation Create/Update with Deposit turned off from Sales Deposit preference is not supported." | The invoice includes a deposit, but the Deposits feature is switched off in your QuickBooks settings. |
|
| "Required parameter Line.DiscountLineDetail is missing in the request" | The invoice has a discount applied, but the Discount feature is switched off in your QuickBooks settings. |
|
| "Business Validation Error: The discount amount can't be greater than the subtotal." | The discount on this invoice is larger than the subtotal. This often happens when tax is calculated before the discount is applied. |
Please Note: To get a $0.00 total, apply the full subtotal as a discount before tax, so tax is calculated on zero. |
| "transaction line item required" / "Required parameter Line is missing in the request" | QuickBooks requires at least one line item on every invoice. The first variant means the invoice has no lines. The second specifically affects invoices that originally came from QuickBooks and are being re-created without their line items. |
Open the record in ServiceCore and confirm it has line items. If it does have line items and the error persists, or if you see the 'Required parameter Line is missing' variant, contact Support. This requires a change on our side before the invoice can sync. |
| "You cannot enter more than 21 characters in the doc_num field." | The document number is too long. QuickBooks caps document numbers at 21 characters. |
|
| "Line items associated with deactivated Class '[Name]' cannot be exported" | A QuickBooks Class assigned to line items on this invoice has been deactivated. Deactivating a class does not remove it from invoices that already use it. |
Please Note: Reactivating the class in QuickBooks (change the list filter to Inactive) is often faster if many invoices are affected. If this affects dozens of invoices, contact Support so we can correct them in bulk. |
| "Stale Object Error: You and [name] were working on this at the same time. [name] finished before you did, so your work was not saved." | Someone was editing the same record in QuickBooks at the moment ServiceCore tried to update it. QuickBooks rejected the second change. |
TIP: Avoid editing records directly in QuickBooks while a sync is running. |
| "Update not allowed for this entity type." | QuickBooks does not permit updates to this kind of record once it has been created. | Submit a support request so we can confirm which record type is involved and advise on the right path. |
|
"More than one result was found for query although one row or none was expected." Also appears as: "Matched bound record; delete duplicates to fix." |
ServiceCore has found more than one link between this record and QuickBooks and cannot tell which is correct. | Submit a support request so we can clean up the duplicate link. |
Payment and Refund Errors
Payment errors often appear in batches because a single failed invoice blocks every payment attached to it.
Always resolve the invoice error first, then re-sync the payments.
Error Message |
What It Means |
How to Fix It |
|---|---|---|
| "Payment must relate to a linked transaction" | QuickBooks allows payments that are not applied to any invoice. ServiceCore does not sync unapplied payments. |
|
| "Related invoice [InvoiceNumber] was not imported" | The payment could not sync because the invoice it belongs to failed to sync first. |
|
|
"Could not find identifiers for all related Invoices. Id(s) [ID] may have errored." Also appears as: "Could not find identifiers for all related Invoices. Retrying." or "Could not find all related Invoices" |
Same cause as above. The payment is waiting on one or more invoices that have not successfully reached QuickBooks. |
|
| "Business Validation Error: Enter a transaction amount to continue." | QuickBooks is rejecting a payment with a $0.00 amount. This usually happens when a credit memo fully covers an invoice so the Amount Received is zero, or when a matching payment already exists in QuickBooks. |
TIP: If neither applies, contact Support since the payment record may need to be inspected. |
| "Business Validation Error: The Amount Received (plus credits) can't be less than the selected charges. Also, the selected charges can't be less than the selected credits." | The payment amount plus any applied credits does not add up to the invoices selected. QuickBooks will not save a payment that does not balance. |
|
| "TxnID Cannot Be Linked : [number]" | QuickBooks will not let this payment attach to the transaction it is pointing at, usually because that transaction is already fully paid, has been voided, or is in a state that blocks new payments. |
TIP: If the invoice looks correct and the payment still will not link, contact Support. |
| "Voided payments cannot be synced" | The payment has been voided. ServiceCore does not sync voided payments to QuickBooks. |
No action needed if the void was intentional, the error is informational. If the payment should not have been voided, create a new payment in ServiceCore. |
| "payment method not found" | The payment method on this record does not exist in your QuickBooks payment methods list. ACH/EFT is commonly missing. |
|
| "Object Not Found: Something you're trying to use has been made inactive. Check the fields with accounts, customers, items, vendors or employees." | The payment references something in QuickBooks that has been made inactive or deleted, most often the invoice it was applied to. |
TIP: If the QuickBooks record was deleted rather than deactivated, contact Support. |
| "Could not find AR account named Accounts Receivable (A/R)" | Refunds require an account named exactly Accounts Receivable (A/R) in your QuickBooks Chart of Accounts. Yours is named something else. |
|
| "Could not find identifiers for all related JournalEntries. Id(s) [ID] may have errored." | This payment is linked to a refund that has not synced yet. The refund must sync before the payment can. |
|
| "EntityType Error: The input was not found in the haystack" | A refund cannot be re-synced from the sync log. This affects Refunds V2 records specifically. | Submit a support request. This error cannot be cleared by re-saving the record. |
Connection and QuickBooks System Errors
These errors come from the connection between ServiceCore and QuickBooks OR from QuickBooks itself instead of your data.
When nothing is syncing at all and the log is quiet, start here.
Error Message |
What It Means |
How to Fix It |
|---|---|---|
| "Exception appears in converting Response to XML" | QuickBooks sent back a response ServiceCore could not read. The record may have actually reached QuickBooks even though the sync shows as failed. This was a known issue from 14 July to 28 July 2026, resolved by a patch. |
If the record is already in QuickBooks, do not re-sync since that will create a duplicate. Contact Support so we can reconnect the two records. If you have a backlog from July 2026 or a payment sitting with no error at all, contact Support. |
|
"Authorization Failure" Also appears as: "Error while refreshing access token for [company name]" or a generic "An error occurred. Please contact ServiceCore for assistance." |
The connection between ServiceCore and QuickBooks has expired or been broken. Nothing will sync in either direction until it is restored. |
TIP: If reconnecting fails or the error returns, contact Support. You will also likely need a catch-up sync for anything missed while the connection was down. |
| "Permission Denied Error: To access this, sign in again or contact an administrator. Missing permission on Invoice to Read" | The QuickBooks user account the integration is connected through does not have sufficient permissions. |
|
| "QBO subscription period is coming to an end or has been cancelled" | Your QuickBooks Online subscription has lapsed or is about to. The sync stops working when the subscription is inactive. |
TIP: Once restored, contact Support for a catch-up sync of anything that failed in the meantime. |
| "cURL error during making API call. cURL Error Number:[28] with error:[Operation timed out...]" | QuickBooks did not respond in time. Usually a temporary QuickBooks slowdown, but it can also happen on invoices with very large numbers of line items (400+). |
TIP: If it fails repeatedly on a very large invoice (400+ line items), contact Support. Consolidating line items may help. |
| "Invalid auth/bad request (got a 500, expected HTTP/1.1 20X or a redirect)" | QuickBooks returned a server error. This is on Intuit's side, not ours. |
Wait and retry the record. If it recurs on the same record, contact Support. |
| "Business Validation Error: Unexpected user error. ( -11622 )" | An undocumented QuickBooks validation error. QuickBooks does not tell us specifically what it objected to. |
|
| "Feature Not Supported" | The action is not supported by your current QuickBooks subscription level or settings. |
|
Common Situations That Cause Sync Errors
Most sync errors trace back to a small number of workflows. Recognizing them helps you avoid them.
Situation |
Why It Happens |
How to Fix It |
|---|---|---|
| Duplicate Document Number errors, often in volume. | Creating invoices in QuickBooks using the same numbering as ServiceCore causes a collision when ServiceCore later exports its own invoice with that number. | Create all invoices in ServiceCore. If you must create one in QuickBooks, use a distinct prefix. |
| "The entity in QuickBooks was deleted" or "Invalid Reference Id" errors. | Deleting a synced record in QuickBooks permanently breaks the link to ServiceCore. This is often discovered in bulk -- an accountant or departing employee can generate hundreds of errors at once. | Void rather than delete where possible. If records were deleted in error, contact Support to have the links removed so ServiceCore can re-create them. |
| "Missing customer identified in QuickBooks" across every invoice for one customer. | Renaming a customer in either system leaves existing invoices and payments pointing at the old name. | Edit and save the customer record first so the change syncs, then edit and save the affected invoices and payments. |
| A batch of invoices failing with "deactivated" or "soft deleted in ServiceCore". | Deactivating a service or tax code in ServiceCore stops every invoice containing it from syncing. | Reactivate it, let the affected invoices sync, then deactivate it again. |
| "Line items associated with deactivated Class" persisting after you removed the class. | Deactivating a class in QuickBooks does not remove it from invoice line items that already carry it. Removing the class from services and templates does not touch historical invoices. | Clear the Class field on each affected invoice line, and remove classes from recurring templates. Reactivating the class in QuickBooks is often the faster route if many invoices are affected. |
| Payments disappearing or invoices reopening in QuickBooks after a sync. | ServiceCore overwrites the whole invoice each time it syncs. Any payment applied manually in QuickBooks is unapplied when the invoice re-syncs. | Record every payment in ServiceCore, using a Third Party Payment where the money was taken outside ServiceCore. If you apply a payment manually in QuickBooks, do not re-sync that invoice. |
| cURL Error Number: [28] timeouts on specific large invoices. | Invoices with hundreds of line items can exceed QuickBooks' processing window. Invoices up to around 373 line items have synced successfully; above 400 they often fail. | Retry first, since many timeouts are temporary. If it fails consistently, consider consolidating line items or contact Support. |
| Nothing syncing, few or no errors in the log. | An expired QuickBooks connection, a lapsed subscription, or an integration connected by a non-admin user stops syncing silently. Records may show no error at all -- they simply never arrive. | Reconnect as a QuickBooks Admin, then contact Support for a catch-up sync. Check your sync log periodically rather than assuming silence means success. |
When to Contact Support
Some errors cannot be resolved from your side because they require a change to the internal link between a ServiceCore record and its QuickBooks counterpart.
Contact our Support team if you see any of these error messages:
- "The entity in QuickBooks was deleted" or "Expected to find matching ID in QuickBooks" and the record should still exist.
- "More than one result was found for query although one row or none was expected".
- "Required parameter Line is missing in the request".
- "EntityType Error: The input was not found in the haystack".
- "Update not allowed for this entity type".
- A Duplicate Document Number error where the QuickBooks record appears to be the same invoice, not a separate one.
- An invoice failing because its site was deleted in ServiceCore.
- A record that shows no error at all but never reaches QuickBooks.
- Any error affecting a large batch of records that would be impractical to fix one at a time.
- Any error that persists after 48 hours and two retry attempts.
TIP: When you contact the Support team, please include the following information so we can diagnose the issue quickly:
- Your company name.
- The exact error message from the sync log.
- The record number(s) affected (invoice, payment, or customer)
- Roughly when the error occurred.
If you have any questions, please reach out to our Support team through the chat widget on the bottom of this page or by sending an email to support@servicecore.com!