QuickBooks Online 3rd Party OAuth Setup
Below we outline how to connect Matillion ETL to your QuickBooks Online account using a simple OAuth setup. The process can be understood in 2 parts - collecting details from your QuickBooks Online account and then entering those details into Matillion ETL. This process is necessary before beginning to use the QuickBooks Online Query component.
Collecting Details From QuickBooks Online
1. To begin, log into your QuickBooks developer dashboard. From here, you can navigate to My Apps at the top-right of the page and then Create new app.
2. In the new app dialogue, select Select APIs and then choose one or both choices for included APIs, depending on what you wish to use Matillion ETL for. When satisfied, click Create App to complete creation.
3. Now back on the My Apps page, select the newly-created App.
4. From the Settings tab, you can optionally give your app a name.
5. From the Keys tab, make a note of the Client ID and Client Secret
6. Further down the Keys tab, you are required to add another Redirect URI that points to your Matillion ETL instance. The format of this URI is as follows:
Where <Instance Address> is the address of your Matillion ETL client (not its IP address). Be sure to access Matillion ETL from a secure HTTP address (HTTPS) or the authorization will be denied.
7. When completed, click Save to finalize the new Redirect URI.
Note that the given URI must be from a secure HTTP (HTTPS) and must not be an IP address.
8. Finally, make note of the QuickBooks Online Company ID for the company that you wish to connect to as this will also be required.
Configuring the Matillion ETL Instance
1. Log into your Matillion ETL instance and from the Project Menu select Manage OAuth. Use the + button at the lower-left of the Manage OAuth window to add a new OAuth method.
2. From the Service dropdown menu select QuickBooks Online and name the entry whatever you please before clicking OK. Now find that same entry from the list in the Manage OAuth window and select the green cogwheel icon beside it to edit the OAuth details.
3. Fill in the Client ID and Client Secret that we found in the previous section along with the Company ID of the QuickBooks Online company you wish to connect to. Hit Next.
4. On the next screen you will find your Callback URL. If you did not complete your Redirect URI in the previous section, copy the Callback URL and paste it into that field on the QuickBooks Online App settings (See Step 6 of the previous section).
5. When all is complete, click the Authorization link. Your web browser should open a new tab and prompt you to select a company to connect to through QuickBooks. Be sure to choose the company whose ID you entered into the Matillion ETL OAuth setup, then Authorize the connection. In this example, we're using Sandbox companies.
6. When Authorization is completed, you should be presented with an Authorization successful message in the Matillion ETL client.
7. You are now free to close the window. If the OAuth was unsuccessful, ensure your QuickBooks Online account is set up correctly and that the details entered are correct. If this still fails, do not hesitate to contact Matillion ETL support for hands-on help.
8. Now that your OAuth is configured, it can be used by selecting the entry name from the QuickBooks Online Query component's Authentication property.
Important: If you are using a sandbox account, you must set the UseSandbox parameter to true in the Connection Options Property.