Having issues with your QuickBooks Online integration? Below are some common errors explained.
This article will cover the following topics:
- Contacts Push Limitation
- Invoice Rounding Error
- Inventory Starting Date Error
- Country Limitations
- Currency Limitation
- SKU Field Limitation
The QuickBooks Online system has a known limitation that does not allow 2 individual contacts with the same name to be pushed through to QuickBooks.
Consider the following scenario:
In QuickBooks there exists a contact with name 'John Doe', with the email email@example.com
When integrating with another system, we get another 'John Doe' contact, however with a different email address and contact details (firstname.lastname@example.org)
Because of this we will treat both John Doe records as separate contacts. However if we try to push the new John Doe into QuickBooks, the QuickBooks API rejects this on the basis that the name is a duplicate.
When this happens, we'll automatically append the second contact with a '-1' (John Doe-1) to send it through to QuickBooks Online.
There is currently a known limitation with the QuickBooks Online system, where we sometimes run into calculation errors when dealing with tax codes.
Consider the following example:
Bigcommerce push's the following data through your QuickBooks Online integration:
1. Unit price for the item is $14.90 with 10% GST already applied
2. When we push this to QuickBooks Online, we are asked for an excluding tax total
3. we calculate this by $14.90 divided by the GST amount
4. This comes to $13.545454...
However we cannot give that sort of tax total over to QuickBooks Online, so we have to narrow this down to 2 decimal places:
1. As a result the ex-tax total is rounded to $13.55
2. we try to assign 10% GST on top of the excluding tax total
3. $13.55 plus 10% GST is $14.905
4. Then we need to apply rounding again to get $14.91
As you can see, there is a $0.01 discrepancy in the total. For now, we have reached out to QuickBooks Online about this, and hope to find a solution!
Error Could not push Invoice [INVOICE NUMBER]: Transaction date is prior to start date for inventory item
Transactions with inventory (QOH) products cant be dated earlier than the Inventory Start Date for the product
These errors are being reported by the QBO system directly and is not something we can control.
It looks like the items you have created in QBO have an Inventory start date that is dated later than the invoices we are trying to push through.
For example, if invoice ABC123 is dated 3rd June 2014. You need to make sure that all items in the invoice have a starting earlier than 3rd June 2014.
You may need to delete the item in QBO and then re-create them. If you do that, please contact Support so we can try to adjust your integration for this.
The same scenario can also happen in reverse, where we're unable to push an item if invoices containing the item already exist in QBO with an invoice date after the inventory start date of the item. This is fixed by changing the items start date to after the date of any invoices containing the item.
You will only be able to connect your QuickBooks Online to our integration if you're using the US, Canadian, UK, or Australian version of QuickBooks. If you're not using the above versions, you'll receive an error with the below message:
"This app is not set up to allow connections from your country"
Currently there is a limitation where one customer cannot order in multiple currencies - please consider the following scenario:
- Customer makes a sale in AUD
- We add the customer to QBO with AUD as their default currency
- Customer makes another sale in USD
- We hit an error as this is not the customers default currency
We're currently working on a way to handle this better, however for now please be aware the above scenario can occur if a customer orders twice in different currencies. You will have to process any invoice that hits this limitation manually.
Although Quickbooks Online has added an SKU attribute to their products / items, OneSaas is not currently using this field to match products across connected apps.
The reason for this is that this field is not mandatory, nor unique and it doesn't have the properties of an SKU field. Main point being that the Quickbooks Online system currently allows multiple items to have the same SKU.
The Name field instead has all the properties of an SKU type field, meaning they are unique and our system is using this field to match.
Hence, items are matched by their source system SKU / Product Code to Quickbooks Online Product Name.