QuickBooks is one of the most popular accounting software options. Naturally, there is a lot of interest around integrating custom FileMaker solutions with QuickBooks to avoid duplicate data entry and to streamline workflows.
Since Intuit (the developer of QB) has stopped supporting QuickBooks Desktop and is encouraging its customers to move to the cloud-based QuickBooks Online (QBO), this article will focus on integrating FileMaker with QuickBooks Online.
Table of Contents
There are so many options; which to choose?
In general, we have four different options when it comes to integrating QBO with FM:
- Manual export/import
- Using workflow automation tools such as Claris Connect
- Native FileMaker scripting
- Using 3rd-party FM products (plugins, add-ons, or packaged FM features)
I’ll discuss the pros and cons of each option and provide a decision tree at the end to help advise as to which option is right for you.
The old-fashioned way
Option 1: Manual export/import
Yes, this is an option. While fully-automated data exchange sounds nice and fancy, whether the value it brings justifies the implementation cost depends on your use case. Perhaps certain types of information don’t change very often for your organization. If this information doesn’t need to be exchanged frequently between FM and QBO, then integration could be done via manual export/import.
This option involves very little development cost, and can be used out-of-the-box today.
This option depends on manual processes, which have a higher risk margin than fully automated processes. There’s also a human labour cost attached to this, and because we are talking about accounting data, it’s likely not your summer intern who’s doing this.
The manual export/import method can be used for data that only needs to be exchanged between FM and QBO infrequently. This approach could also handle the initial data migration to align the two systems before full automation is deployed.
Remember that the value of fully automated processes changes over time as your business evolves. If you are using manual export/import to handle most of your integration needs, be sure to regularly monitor the volume of data exchanged and the required exchange frequency. When the value of full automation outweighs the implementation cost, you can be aware and switch methods.
Leverage APIs to fully automate data exchange
Unlike the manual export/import option, where we leverage the UI (user interface) of both FM and QBO to exchange data, APIs (application programming interfaces) allow systems to talk to systems without human user interference. Nowadays, many popular cloud-based apps or services provide APIs to enable interactions with other apps/services, including both FM and QBO.
The next three options all utilize APIs, but they all have advantages and disadvantages.
Option 2: Using workflow automation tools such as Claris Connect
The mention of APIs or integration projects used to be somewhat intimidating, but thanks to workflow automation tools such as Claris Connect, connecting two services with APIs has never been easier.
Take Claris Connect as an example; you can set up triggers that monitor an event in QBO (see the screenshot below for available triggers). Once the triggering condition is met, it can talk to FileMaker and execute certain actions, such as push data to FileMaker or pull data from it. This allows you to initiate data exchange from the QBO end.
The opposite can be done as well. In Claris Connect, you can also set up triggers that monitor an event in your FM app and then execute a flow that interacts with QBO, or have FM trigger a flow in Claris Connect on-demand, allowing you to initiate data exchange from the FM end.
Claris Connect is continuously evolving; in the latest product roadmap, Claris announced that a QuickBooks Sandbox Connector will be released soon (see our take on this roadmap announcement here: Claris Roadmap Update).
The programming involved in using Claris Connect is very lightweight. People with no programming background can get started easily. Don’t know how? Check out our step-by-step guide: Harness the Power of Claris Connect in 3 Steps.
With this option, the data exchange can be initiated from either the FM or QBO sides.
Depending on your use case, the built-in triggers or actions in the Claris Connect QuickBooks connector may not be sufficient. As Claris continues to enhance Claris Connect, eventually you should be able to create your own custom connectors to handle scenarios that the built-in connectors can’t currently accommodate. However, doing so will be a bit more challenging than using the out-of-the-box connectors of Claris Connect.
I’d recommend this option if the built-in QBO connector is sufficient to handle your use case, or if obtaining skilled development resources is going to be a problem for your organization.
Before committing to it, you can access Claris Connect for free, and try building some of the desired flows to verify if it’s versatile enough for your needs. Again, check out this article for a step-by-step guide on how to do so: Harness the Power of Claris Connect in 3 Steps.
Options 3: Using native FileMaker scripting
This is the DIY option. Since FileMaker 16 started supporting cURL options in the Insert from URL script step, FileMaker is capable of leveraging the full power of the QBO API.
Many resources online teach you how to use the Insert From URL script step to integrate with REST APIs, such as Web Integration. So, I’m not going to do a step-by-step guide here.
But at a high level, you need to do the following:
- Reference Intuit Developer to set up your Intuit developer account, create an app on the Intuit Developer Portal and obtain your API key.
- Reference Intuit Developer and set up your authentication procedure via OAuth 2.0.
- Start by making an authorization request to obtain the authorization code. You can use the web viewer in FM to facilitate the user interaction required within this step.
- Once you have obtained the authorization code, make another call to obtain the refresh and access tokens.
- Reference Intuit Developer and use the access token obtained to make subsequent calls to various API endpoints based on your workflow.
This approach gives you maximum flexibility.
Unlike using 3rd-party integration products, because everything is built with native FM features, the maintenance and operational cost for this option is relatively low (I’ll elaborate more in the next section).
Short-term development costs could be higher for this approach compared to other options. It may take longer for the return to outweigh the investment.
This approach also requires developers with higher skill levels.
If your use case is complex, requires intricate exception handling, may evolve rapidly over time, and if you have access to reliable development resources of higher caliber, whether in-house or from development vendors (like us!), this approach is my recommended option. It’s likely the option that gives you the best ROI in the long-term.
Option 4: Using third-party FM products
There are third-party FM products (plugins, add-ons, and packaged features) that can be used in your FileMaker scripts to interact with QBO. These products typically capture steps that you need to program yourself into pre-built functions or scripts, so you don’t have to start from scratch.
Option is typically more complex than option 2 (using workflow automation tools like Claris Connect), and less complex than option 3 (using native FileMaker scripting).
These tools typically simplify development, which lowers the technical skill threshold, much like option 2. Yet, unlike Claris Connect, which is still evolving, many of these products have been in the market for a while and support almost all the actions you would need.
Because these products are still closely tied to FileMaker, many give you much freedom and flexibility, like option 3. Because these products do a lot of the heavy (developmental) lifting for you, they lower the development cost.
Does this sound like the perfect option? Well, using some third-party products is still my favorite way to get certain things done in FM (not only limited to doing QBO integration). However, the real cost of this approach is in maintenance and operations.
Any time we introduce a new party into our formula, we introduce overhead costs to maintenance and operations. For example, if you decide to upgrade your FileMaker solution(s), you would need to confirm with each of your third-party product vendors their compatibility with the new version, hoping they continue to support their products to keep up with newer versions of FileMaker.
When something goes wrong with your integration, in addition to checking your code, you now have the possibility that the third-party product causes the issue. All communication between you, your developers, and your third-party product vendors are operational costs.
I’d recommend this option if you are certain you will get great customer service from the chosen product vendor, and that they plan to support their products for the long run.
Another recommended use of this option is if the product vendor is also your FM development vendor (many of them offer development services). In this case, they are no longer third-party, potentially eliminating some operational overhead.
The Decision Tree
We are blessed with many options to integrate FM with QBO. The key to choosing the right option is understanding your use case and resources. I hope this article can help you make informed decisions.
Keep in mind that we don’t have to choose only one option. We can mix and match approaches when needed. For example, you may want maximum flexibility, and to be able to initiate the data exchange from both the FM and QBO sides. Then, combining options 2 and 4 would give you a good solution.
If you have more questions about integrating QBO with FM or want to collaborate on implementation, please get in touch with us.