> For the complete documentation index, see [llms.txt](https://help.konnektive.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://help.konnektive.com/konnektive-crm/admin-setup/plugins/accounting/quickbooks-online-plugin.md).

# QuickBooks Online Plugin

This article will walk you through setting up the QuickBooks Online plugin.

***

### Migrate to OAuth 2.0 <a href="#migrate-to-oauth-2.0" id="migrate-to-oauth-2.0"></a>

{% hint style="danger" %}
**As of December 17th 2019, All existing Quickbook Users need to Migrate to OAuth 2.0. Below are the steps needed to take to Migrate to OAuth 2.0**
{% endhint %}

* [Log into your intuit developer account](https://developer.intuit.com/app/developer/homepage) and click **My Apps**

<figure><img src="/files/kRWVXo44Gbb8In1rnFJy" alt=""><figcaption></figcaption></figure>

* Click on your existing app or create a new app if you do not have one listed

<figure><img src="/files/AMJcpKdgWNoY6fF0k6Ad" alt=""><figcaption></figcaption></figure>

* Navigate to the **Production** section and click on **Keys & OAuth** This will expose your **Client ID** and **Client Secret**
* Note that before displaying Keys, Quick Books may require an app assessment to be completed. Fill this out to the best of your ability.

<figure><img src="/files/TciV9X3Q6vqIiDZTANFE" alt=""><figcaption></figcaption></figure>

* In the same **Production** Section, Please scroll down to **Redirect URIs** and click **Add URI**. Enter **<https://api.konnektive.com/oauth/quickbook/>**

<figure><img src="/files/q5GpVEPuCmDAxhhXpV6v" alt=""><figcaption></figcaption></figure>

### Add OBO keys into CRM plugin <a href="#add-obo-keys-into-crm-plugin" id="add-obo-keys-into-crm-plugin"></a>

Now that you have obtained your Production Keys we can now input them into the CRM Plugin.

Navigate to **Admin** → **Plugins** → **Accounting**. Select **Quickbooks** and hit the Green **+ button** to add an instance of the plugin.

![](/files/YQI7nFpW6JgNAqUr0lHw)&#x20;

* Enter the **ClientID** and **ClientSecret**

<figure><img src="/files/fh4SHbR7c8P0ZsFHCZKB" alt=""><figcaption></figcaption></figure>

* In the QuickBooks Advanced Setup screen, confirm the **ClientId** and **ClientSecret** are entered then click the link to authorize Konnektive to access your app.

<figure><img src="/files/ijT4rPjnosJUC8m9i1F8" alt=""><figcaption></figcaption></figure>

* When the CRM has been Authorized to access your app you’ll notice that the **RefreshToken** field is populated and the **“Refresh token is required”** warning (from the previous screenshot) disappears.

<figure><img src="/files/QTMSO9MxXj5SnQkvc4fv" alt=""><figcaption></figcaption></figure>

{% hint style="info" %}
**The lifetime of the refresh token is 100 days. You will need to re-authorize the CRM connection using the link in the Plugin setup.**

ERROR: Please refresh the page. If this issue persist please reauthorize the CRM for accessing your QuickBooks account. ERROR DETAILS: Refresh OAuth 2 Access token with Refresh Token failed. Body: \[{"error\_description":"Token invalid","error":"invalid\_grant"}].
{% endhint %}

Now that the **ClientID, ClientSecret**, and **RefreshToken** fields are populated, feel free to configure the plugin to fit your use case.

**DefaultTaxCode** is required.

### Apply Gateway Routings <a href="#apply-gateway-routings" id="apply-gateway-routings"></a>

<figure><img src="/files/eanQXRNcU26vZsyd3v8d" alt=""><figcaption></figcaption></figure>

### Apply Product Routings <a href="#apply-product-routings" id="apply-product-routings"></a>

<figure><img src="/files/0PEDi60jjpaIfY7IfErQ" alt=""><figcaption></figcaption></figure>

&#x20;
