QuickBooks

From Starfish ETL
Jump to navigation Jump to search

ODBC

As of January 2023, the StarfishETL Connector for for QuickBooks On-Premises utilizes the QODBC Driver for QuickBooks: https://qodbc.com/what-is-qodbc/

The Starfish Connector requires the "QODBC Driver Server Edition" so there is an additional one-time cost of $499 from QODBC. There is a 30 day free trial available for testing. See https://qodbc.com/qodbc-versions-differences/ for information about each QODBC edition.

As of April 2023, I've been using the QODBC Connector with a customer for several months and we have found it to be much more stable than the old version.

Connection to QuickBooks

To Connect to QuickBooks, please see the documentation from QODBC: https://qodbc.com/connecting-to-quickbooks/

Once QODBC is setup, you should have a System DSN setup. On the Starifsh Origin or Destination Tab, you will then choose the ODBC Connector, enter your QuickBooks username and password, and set the Connection String to "DSN=My_DSN_Name".

The result will look like this:

QuickBooks Errors

The name "COMPANY NAME" of the list element is already in use.

I could not find a resolution to this error. A QuickBooks partner who used to work at Intuit told me to merge the "broken" Customer with a new Customer of the same name. Doing this fixed whatever was wrong in the database and we were then able to add Jobs to the Customer.

This customer already has job information. To add a new job, the customer's current job information must be moved into its own job.

I could not find a resolution to this error. A QuickBooks partner who used to work at Intuit told me to merge the "broken" Customer with a new Customer of the same name. Doing this fixed whatever was wrong in the database and we were then able to add Jobs to the Customer.

This list has been modified by another user.

This error pops up occasionally and goes away on its own. Searching the internet, the error seems to imply that another QuickBooks user was looking at, reporting on, or editing the record in QuickBooks. We always ignore this error because we code the integration to retry the next time it runs.

At least one Line record is required. Please insert Child/Detail record(s) before inserting Parent/Header record.

"Error,,1,2,System.Exception: ERROR [42S00] [QODBC] Not supported - At least one Line record is required. Please insert Child/Detail record(s) before inserting Parent/Header record. For more details please visit:qodbc.com/links/2953"

The link above contains more information. In the case where I saw this error, a Job was being inserted into QuickBooks and all of the line items had a $0 value. Giving one of the items a value greater than $0 resolved the issue.