Best Way to Do Integration With QuickBooks Desktop

By: Chintan
Updated: Oct 14, 2022 | Category: QuickBoooks
Best-way-to-do-Integration

Hi All,

I would like to share with you that the majority of Online software nowadays provides REST or SOAP-based API to programmatically manage their data.
But in the case of QuickBooks desktop, it’s been really difficult to get the REST or SOAP endpoint where you can connect and easily exchange the data.

Before we understand the different options of integration with QuickBooks desktop. Let’s understand why Intuit didn’t provide any easy way like SOAP or REST endpoint.

As the name suggests, QuickBooks desktop editions are installed in the Windows operating system with many layers of security, i.e. VPN, Hardware and software firewall, and antivirus. And most SMBs and Enterprize use the right networks and cloud-hosted QuickBooks desktops.

Because of a strictly secure environment accessing the data from outside is always considered a threat to the organization. And chances are that data or server may get hacked, then the organization’s important data can be stolen or encrypted (by ransomware)

So Intuit changed the control mechanism, where instead of any third party can access QuickBooks data externally, the QuickBooks desktop server got a mechanism like a web connector to poll the external service from within the QBD server. So that they do not have to open any Ports on the server for incoming connections. This mechanism in programming is called inversion of control(IOC)

Because of IOC, QBD became difficult to access like any normal REST or SOAP service. Let’s look at it from a different angle, this specification of service allowed Quickbooks to ensure the interest of all their enterprise customers in terms of security.

Let’s look at the different options to connect with QuickBooks desktop

  1. Quickbooks web connector
  2. Quickbooks Remote connector (discontinued)
  3. QODBC component for Directly accessing data using ODBC style locally and remotely
  4. Custom executable program

Options to connect with Integration, QuickBooks desktop:

1. QuickBooks web connector

  1. Create a QuickBooks Sample company file or use an existing one.
  2. Download and install the QuickBooks Web Connector software from the Intuit Developer Network website.
    Download and install the QuickBooks Web Connector software from the Intuit Developer Network
  3. Create the necessary Web Connector configuration files and QBWC (QuickBooks Web Connector) certificate files from the developer of the application you are integrating with QuickBooks.
  1. Set up the integration in QuickBooks desktop by adding the application to the Integrated Applications list and authorizing the application to access your QuickBooks data.
  2. Configure the Web Connector by adding the QBWC configuration file and certificate file to the Web Connector, along with the application’s .QWC file.
  3. Set the Web Connector to run on a schedule or initiate manual syncs as needed.

Typical SOAP web service

QuickBooks Web Connector Architecture for message exchange:

How can I download a web connector ?

Do I have to pay for using the web connector ?

No, web connector is a free program provided by intuit

Do you have a sample web connector connection file ?

Download a sample QuickBooks web connector connection file.

2. Custom executable Program

How can I get sample code for QuickBooks desktop custom application ?

Intuit developer already has listed sample code to connect with QuickBooks desktop in different programming language like C#, Java, VB.net , Node.js QuickBooks Desktop Sample applications and code

What are the key differences between using the QuickBooks Web Connector and a custom executable program for integration ?

QuickBooks Web Connector:

  1. Allows you to centralize the synchronization logic on a same or remote web server
  2. Business logic or synchronization logic can be managed remotely, without requiring access to the business’s server. I.e patch can be released in shorter amount of time.
  3. Makes it easier to update and maintain the integration source code
  4. Provides an additional layer of security, as the end user has full control over whether they want to allow a third-party integrator app to access their company data or not
  5. Changes to the synchronization logic on the server side are automatically reflected in the integration
  6. Suitable for SaaS application integration where multiple business of SaaS application needs data synced from and to the accounting software

Custom Executable Program:

  1. Requires access to the business’s server for installation and execution
  2. Can be more time-consuming to set up, potentially involving steps such as setting up user accounts, installing software, configuring firewalls, and troubleshooting connectivity issues
  3. Debugging may also require access to the business’s server as and when needed
  4. Provides more control and flexibility over the integration process i.e you can add your own menu or windows form within QuickBooks’s menu system.
  5. Suitable when you plan to make a custom application on top of QuickBooks desktop.
  6. Requires a certain level of technical expertise in winform programming

3. QODBC component for Directly accessing data using ODBC style locally and remotely

What is QODBC ?

QODBC

QODBC is a type of ODBC driver that allows applications to access QuickBooks data using standard SQL queries. It provides an easy way for developers and users to extract QuickBooks data and integrate it with other software applications or tools, such as Microsoft Excel or Crystal Reports.

Is it free ?
No , it comes with a price.

DescriptionPrice
QODBC Desktop Edition Read Only Driver for QuickBooks$149.00
QODBC Desktop Edition Read Write Driver for QuickBooks$199.00
QODBC Server Edition Read Write Driver for QuickBooks$499.00

4. IIF file import and export

In QuickBooks Desktop, Intuit Interchange Format (.IIF) files are text files that use TSV (Tab-Separated Value) format and allow for the import or export of lists or transactions. This can help to streamline data transfers between different platforms and improve management of company records within QuickBooks.

Importing and exporting .IIF files within QuickBooks Desktop is a straightforward process as the software formats the file for you. However, creating .iif files from scratch or adapting data from another program can be technically complex and may pose challenges for those who lack experience formatting delimited text files. For this reason, it may be faster and more efficient to manually enter the information directly into QuickBooks Desktop, especially for small amounts of data. For larger amounts of data, using .IIF files can be a viable option.

IIF-file-import-and-export

Open file menu -> Utilities -> Import / Export IIF files

IIF-file-import-and-export

Sample IIS file with data

Sample IIF file Formats : download

Conclusion

The article discusses different options for integrating QuickBooks Desktop with other software or tools. The options covered are the QuickBooks Web Connector, a custom executable program, the QODBC component, and the import/export of Intuit Interchange Format (.IIF) files.

The QuickBooks Web Connector allows you to centralize synchronization logic on a remote web server and make it easier to update and maintain integration source code, while a custom executable program provides more control and flexibility over the integration process, making it suitable for custom applications on top of QuickBooks Desktop. The QODBC component allows for direct access to QuickBooks data using standard SQL queries, and the import/export of .IIF files can help streamline data transfers between different platforms.

The choice of approach depends on the specific integration requirements and available resources, and it is important to consider factors such as the complexity of the integration, the frequency of data synchronization, and the skills and experience of the development team when making a decision

If you’re feeling confused about which approach to use for integrating QuickBooks Desktop, don’t worry! Our QuickBooks Integration company, Satva Solutions is a QuickBooks partner and can provide consulting services to help you make a more informed decision. Our team of experts has extensive experience in working with QuickBooks Desktop and can guide you in selecting the right integration approach based on your specific needs and resources. Contact us today to schedule a consultation and take the first step towards seamless integration with QuickBooks Desktop.

Do you need help with Custom QuickBooks Integration Service or Development? Experts are here to help you!

Book Free consultation Call