Connecting QuickBooks to Bizintel360 Datalake
User Guide: Configuring Source as QuickBooks and Target as Bizintel360 Datalake.
This guide offers a detailed walkthrough for configuring Quickbooks as the source and Datalake as the target. By following these steps, you'll seamlessly establish a connection, retrieve desired data from the source, and efficiently transmit it to your chosen destination.
Note : This guide utilizes the access token API in the source, subsequently employing the generated access token in operations to retrieve details from the payment business object of the QuickBooks API. Depending on user preferences, it's also possible to configure a different business object in the source and utilize OAuth 2.0 to obtain the response directly within the source.
Data Source :
Step 1:
· In the Data Source page, Select the source type as "API"
Step 2:
· Now, In the Product Name select "Create New"
Step 3:
· Please provide the Product Name and Business object of your choice for user convenience
Note: Opting for 'Create New' requires the user to furnish all necessary details essential for configuring the API as the source.
Step 4:
· In this context, we are generating the access token at the source. Therefore, we are supplying the token API along with other necessary details such as Headers and Body to obtain the access token.
Method : Post
API Endpoint URL : https://oauth.platform.intuit.com/oauth2/v1/tokens/bearer
Headers : {"Content-Type" : "application/x-www-form-urlencoded"}
Body :
For the body, include the following information and populate the provided placeholders with the client_id, client_secret, scope, and refresh_token.
client_id={{client_id}}&client_secret={{client_secret}}&scopes={{scopes}}&grant_type=refresh_token&refresh_token={{refresh_token}}
Note : The Body type should be selected as "Text"
Now, Click on the "Test" to check that the access token is generated.
Data Operations :
Step 6:
Data Extractor :
The Data Extractor operation is crafted to selectively retrieve particular data from the JSON response. In this case, we employ the Data Extractor to specifically extract the Access Token while excluding other keys present in the response received from the source.
Reference Link : Data Extractor
API :
In this step, we employ the API operation to retrieve the response for the "Payment" business object, utilizing the Access Token generated earlier in the source.
In The API Operation we have 2 tabs, System and Test.
In System Tab:
Choose "Create New" as the Product Name, and proceed to input the desired Product Name and Business Object. In this example, we are retrieving Payment information from the QuickBooks API, and the product name and business object are specified as illustrated in the image below.
In the Test Tab :
Method : Get
API Endpoint URL : Please refer the QuickBooks API Documentation (Link : Documentation)
Params : {"minorversion":"{{minorversion}}"}
we use minor version to access a specific version of an API entity. Please refer the documentation for more information on this (Link : Minorversion)
Headers : {"Authorization" : "Bearer {%access_token%}"}
Note : We utilize sprintf in the Headers to pass the access token. (Reference Link : Sprintf)
Reference Link : API
XML to JSON :
The XML to JSON conversion is employed to transform XML data into JSON format. As the response is received in XML, this conversion allows us to insert the data into the Datalake in JSON format.
Note : The API response is saved in the "bizdata_dataset_response" dataset.
Reference Link : XML to JSON
Eliminate :
The Eliminate Operation serves to exclude specific keys from the pipeline. In this scenario, we utilize the Eliminate function to discard any keys that are not being sent to the Datalake.
Reference Link : Eliminate
Single-Line to Multi-Line
This 'Single Line to Multiline' operation facilitates the transformation of JSON data from a single-line format to a multiline format. It's particularly beneficial when handling responses received in a single-line JSON structure. By converting it to multiline JSON, it separates and organizes records, enabling easier application of subsequent operations on each individual record.
Reference Link : Single-Line to Multi-Line
Step 7 :
· Configure the Data Target as Datalake by referring to the provided link for instructions on setting up the Data Target as Bizintel360 Datalake.
Link : Datalake Ingestion