# Salesforce and QuickBooks Online Integration

## Introduction

DBSync provides a **seamless and easy-to-use integration** solution between **Salesforce** and **QuickBooks Online**, enabling real-time synchronization of key financial and CRM data across both platforms.

The integration supports data exchange between the following entities:

* **Salesforce**: Accounts, Contacts, Products, Opportunities, or any custom objects
* **QuickBooks Online**: Customers, Jobs, Items, Invoices, Estimates, Sales Orders, Sales Receipts, and Credit Memos

This integration not only facilitates ongoing data synchronization but also supports **historical data migration**—allowing you to move legacy records from QuickBooks Online to Salesforce or vice versa. It is ideal for organizations undergoing system consolidation, CRM adoption, or financial data restructuring.

DBSync also offers a **unidirectional integration** template (Salesforce to QuickBooks and QuickBooks to Salesforce) model with **pre-configured field-to-field mappings**, reducing implementation time and ensuring data consistency. Additionally, the template is highly **flexible and customizable**, supporting dynamic field transformations and complex mapping logic to meet specific business requirements.&#x20;

With **automatic updates**, DBSync ensures you always have access to the latest features, enhancements, and security improvements—without the need for manual upgrades.

## Video

Watch the following video to understand the functionality:

{% embed url="<https://youtu.be/qLHRZkRtWik>" %}

## Data Flow

Data flow between Salesforce & QuickBooks Online is shown below.

<figure><img src="https://1036205596-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fv9avy716UiAsS24zOznZ%2Fuploads%2Fe7b5cpTYcazCKVgwDduh%2FData%20Flow1.png?alt=media&#x26;token=85ea570a-0a73-49d8-9065-dce3ba5faf5e" alt=""><figcaption></figcaption></figure>

{% hint style="info" %}
**NOTE:** Integration of Salesforce to QBOE transaction is invoked if the Generate field in Salesforce Opportunity is selected with the required transaction.

It is mandatory that Salesforce Opportunity (to be integrated with QBOE Invoice) is associated with respective Salesforce Account. And, it also should have Products with Standard Price Book attached to it for DBSync to invoke integration.
{% endhint %}

<figure><img src="https://1036205596-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fv9avy716UiAsS24zOznZ%2Fuploads%2FPuAsgYI47upJMXZNsAIQ%2Fimage.png?alt=media&#x26;token=f47b6a47-2325-4345-94f7-d4529a0016e9" alt=""><figcaption></figcaption></figure>

{% hint style="info" %}
NOTE: This template is unidirectional.&#x20;
{% endhint %}

## **DBSync package (QuickBooks Integration) Installation in Salesforce** <a href="#salesforce-and-quickbooksonline-bidirectionalintegration-_toc381191461dbsyncpackage-quickbooksintegr" id="salesforce-and-quickbooksonline-bidirectionalintegration-_toc381191461dbsyncpackage-quickbooksintegr"></a>

Get the following App from AppExchange for your Salesforce instance - <https://login.salesforce.com/packaging/installPackage.apexp?p0=04t600000001jlq>

{% hint style="info" %}
&#x20;**NOTE:** If you are installing into a Sandbox, you must replace the initial portion of the URL with [http://test.salesforce.com](http://test.salesforce.com/).
{% endhint %}

1. Input **Username** and **Password** of the Salesforce instance where you would like to install DBSync. The **Username** and **Password** must belong to a user with **administrative privileges** to install.
2. You can see details like App Name, Publisher, Version Name, Version Number along with Components & API Access.
3. Select a profile - Admin, All Users or a specific profile. The selected profile will have access to the installed package. Then, click install or upgrade.
4. Once the process is complete, you will see a message - Installation or Upgrade complete.&#x20;
5. Assign **DBSync Page Layouts** to **Accounts, Contacts, Opportunity, Opportunity Products and Products** objects. Refer to the following steps to assign DBSync Page layout to Accounts Object. Existing Page Layout will be replaced by DBSync Page Layout. Any custom fields available in the existing page layout should be moved to DBSync Page Layout if required.
6. Go to **Salesforce Setup** **>** **Customize** **>** **Accounts** **>** **Page Layouts**. This will show the list of available Page Layouts for Accounts Object. Click on **Page Layout Assignment**.
7. You will find the list of default Page Layouts assigned for every Salesforce Profile. Click on **Edit Assignment** to proceed.
8. Click on the **Page Layout next to the required profile**. Account Layout is the existing Page Layout for System Administrator Profile. The profile should be assigned to DBSync's Page Layout. In this case Account Layout should be selected next to System Administrator's profile.
9. Select DBSync Account Layout from **Page Layout To Use** picklist. Page Layout will be changed from Account Layout to DBSync Account Layout. Click on **Save** to save the new Page Layout assignment.
10. Similarly, assign DBSync Page Layout for Salesforce Objects - Contacts, Opportunity, Opportunity Products and Products.

## Process to Run the Integration

To utilize the pre-built template: **Salesforce to QuickBooks Online Order to Cash** follow the below steps:

1. Login to DBSync Cloud Workflow and from the home screen click **Add Template.**
2. Select the template: **Salesforce to QuickBooks Online Order to Cash** template which allows for running multiple workflows and integration between the two applications -Salesforce and QuickBooks Online.
3. The template will be added to your **Projects**.
4. Select the template and you will be redirected to the **Task Screen**.
5. Navigate to the task screen and click 'Setup' to access the setup wizard pre-built template form as shown below:

<figure><img src="https://1036205596-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fv9avy716UiAsS24zOznZ%2Fuploads%2FSyTdgqzIC6ZKY8fMzDVh%2Flan%202.PNG?alt=media&#x26;token=63d38199-d76d-4127-8f17-b9cf35ecc5d6" alt=""><figcaption><p>Setup Wizard</p></figcaption></figure>

6. Connect & Verify your applications are connected: Salesforce and QuickBooks Online.

{% hint style="info" %}
For more information about the Salesforce connector, click [here](https://docs.mydbsync.com/cloud-workflow/connectors/salesforce).\
For more informaiton about the QuickBooks Online connector, click [here](https://docs.mydbsync.com/cloud-workflow/connectors/quickbooks-online).
{% endhint %}

<figure><img src="https://1036205596-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fv9avy716UiAsS24zOznZ%2Fuploads%2F2aS7TFHlPxwkMn9JzK0W%2Flan%203.PNG?alt=media&#x26;token=d25dd9f6-da0e-4193-952a-d26bf317f654" alt=""><figcaption><p>Connect Applications</p></figcaption></figure>

7. After connecting your connectors, click **Test Connection** and you will get a pop-up confirming the same. Ensure you verify the connection for both Salesforce and QuickBooks Online.

<figure><img src="https://1036205596-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fv9avy716UiAsS24zOznZ%2Fuploads%2FA3iaGG8E5Hjaw1WGgLpo%2FLan%204.PNG?alt=media&#x26;token=7af7749c-33ec-4d89-9f08-d7717f6d1b48" alt=""><figcaption><p>Test Connection</p></figcaption></figure>

8. Click Next and you will be redirected to the **Setup** tab.
9. The Setup tab displays a form like questionnaire which you can choose to answer based on the workflow you want to run. There are 4 types of integration or sync you can perform with this template as listed below:

### QuickBooks to Salesforce

There are 5 types of integration or sync you can perform with this template as listed below:

#### A. Integrate New Customers to Salesforce.

Use this form to update all customer records from QuickBooks Online and push them into Salesforce as Accounts. The form is pre-populated with answers for the tabs and you can modify them based on need. The form has the following fields already pre-populated with mapping:

* **Do you want to create/update your Accounts in Salesforce?**\
  Click **Yes** or **No** in order to update Account from Salesforce to QuickBooks Online as a customer.
* **Select QuickBooks Object that you want to integrate with Salesforce Customers**\
  Select the Salesforce object such as Account, Contacts etc from the drop down menu. \
  For example, Choose Account.
* **Customer Integration ID**\
  This is the customer id generated from QuickBooks to create a one to one relationship between records.
* Account Name, email, phone, website and billing and shipping information is  mapped into Salesforce. This means that these child items will be synced into Salesforce with the same information from QuickBooks Online. Click **Next**.

<figure><img src="https://1036205596-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fv9avy716UiAsS24zOznZ%2Fuploads%2FlWzLFId06syUuYNdhodk%2Fimage.png?alt=media&#x26;token=04b69745-b943-436b-94a8-c77c18e3e078" alt=""><figcaption></figcaption></figure>

#### B. Integrate New Customer Jobs to Salesforce

Use this form to update all sub-customer records if any from QuickBooks Online and push them into Salesforce as Accounts or Contacts. The form is pre-populated with answers for the tabs and you can modify them based on need. The form has the following fields already pre-populated with mapping:

* **Do you Want to Create Job in Salesforce?**\
  Click 'Yes' or 'No' in order to update the Job from QuickBooks to Salesforce as an Account or Contact.
* **Select Salesforce Object that you want to integrate with QuickBooks Jobs**\
  Select the Salesforce object such as Account, Opportunity, orders etc from the drop down menu. For eg: Choose Account.
* **Job Integration ID**\
  This is the customer id generated from QuickBooks to create a one to one relationship between records
* Customer Name, email, phone, website and billing and shipping information is  mapped into QuickBooks Online. This means that these child items will be synced into QuickBooks Online with the same information from Salesforce. Click 'Next.'

<figure><img src="https://1036205596-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fv9avy716UiAsS24zOznZ%2Fuploads%2FEC5xiS0BavfbSRm5IYHy%2Fimage.png?alt=media&#x26;token=ef00bebd-e0c6-4dcf-9703-208c20fce692" alt=""><figcaption></figcaption></figure>

#### C. Integrate New Products to Salesforce

Use this form to update all product information as products or items in Salesforce. The form is pre-populated with answers for the tabs and you can modify them based on your need. The form has the following fields already pre-populated with mapping:

* **Do you want to create/update Salesforce Products in QuickBooks?**\
  Choose 'Yes' or ' No' from the drop-down to add products from Salesforce into QuickBooks Online as products/items.
* **Select the Salesforce object that you want to integrate with QuickBooks Items**\
  Select the Salesforce object as 'Product' to add product information from Salesforce to QuickBooks Online.
* **Item Type**\
  Select the field that populates the Item type from QuickBooks Online to Salesforce.

<figure><img src="https://1036205596-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fv9avy716UiAsS24zOznZ%2Fuploads%2FuoU92uKY2IRNVcTGyR2d%2Fimage.png?alt=media&#x26;token=fd595fd9-c809-4f04-be7a-85ffad26454c" alt=""><figcaption></figcaption></figure>

#### D. Integrate New Transactions to QuickBooks

Use this form to generate various transactions from QuickBooks Online to Salesforce . You can create Invoices, Sales Receipts, Estimates and Credit memos and directly update from QuickBooks Online to Salesforce.

The form is pre-populated with answers for the tabs and you can modify them based on need. The form has the following fields already pre-populated with mapping:

* **Select Salesforce object that you want to integrate with QuickBooks Transactions**\
  Define the object from Salesforce to retrieve/map the information into QuickBooks in order to create a transaction: for Eg; Invoice. The main object in this example would be 'Opportunity'
* **Select QuickBooks Object that you want to integrate with Salesforce**\
  Define the object from QuickBooks to retrieve/map the information into Salesforce in order to create a transaction: for example, Invoice.

The following fields are pre-populated and already mapped with QuickBooks Online:

* Transaction Integration ID
* Select the stage that indicates Transactions are created/updated in Salesforce
* Transaction Number, date and description
* Job Name / Child Customer Name: This is already mapped with 'Name' in Salesforce.&#x20;
* Select Salesforce object that you want to integrate with QuickBooks TransactionsLines
* Transaction Line Product Id, Name and Description
* Define Product quantity, unit price and total price

<figure><img src="https://1036205596-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fv9avy716UiAsS24zOznZ%2Fuploads%2FqB8z6zaeFjJkjJc4Wx1l%2Fimage.png?alt=media&#x26;token=d14fae5f-a908-4c44-8060-3700198fc722" alt=""><figcaption></figcaption></figure>

#### E. QuickBooks Online to Salesforce Payment Integration

Use this form if you want to sync the Payments from QuickBooks Online to Salesforce.

* **Do you want to create Transaction Receivable in Salesforce?**\
  Choose 'Yes' or 'No' to enable the sync which will update the receivable information for a customer invoice in Salesforce.
* **What kind of Transactions Receivable do you want to generate?**\
  Define the receivable you want to Generate: Invoice, Estimate, Credit memo or Sales Receipt
* **Select Salesforce object that you want to integrate with QuickBooks Payment**\
  Define the Salesforce object you want to sync the payment to. E.g. AVSFQB\_\_Invoices\_\_c
* **Transaction ID**\
  Define the id field for the Invoice that payments are made against. E.g.AVSFQB\_\_Opportunity\_\_c

<figure><img src="https://1036205596-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fv9avy716UiAsS24zOznZ%2Fuploads%2F1BLMjk0diBIE7r4U6SuR%2Fimage.png?alt=media&#x26;token=9b03eeb2-29db-4657-9fe8-b5e14d649b1d" alt=""><figcaption></figcaption></figure>

### Salesforce to QuickBooks

#### **A. Integrate New Customers to QuickBooks**

Use this form to update all customer records or accounts from Salesforce and push them into QuickBooks Online as customers. The form is pre-populated with answer for the tabs and you can modify based on need. The form has the following fields already pre-populated with mapping:

* **Do you want to create/update your Accounts in QuickBooks?** \
  Click 'Yes' or 'No' in order to update Account from Salesforce to QuickBooks Online as customer.
* **Select Salesforce object that you want to integrate with QuickBooks Customers**\
  Select the Salesforce object such as Account, Opportunity, orders etc from the drop down menu. For eg: Choose Account
* **Customer Integration Id**\
  This is customer id generated
* Customer Name, email, phone, website and billing and shipping information is  mapped into QuickBooks Online. This means that these child items will be synced into QuickBooks Online with the same information from Salesforce. Click **'Next.**'

<figure><img src="https://1036205596-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fv9avy716UiAsS24zOznZ%2Fuploads%2FKRotmbB0Euw2xmgv0hvL%2FLan%205.PNG?alt=media&#x26;token=7a64c714-f865-4739-8d6a-c86bd32d90f5" alt=""><figcaption><p>Customer Integration Form</p></figcaption></figure>

{% hint style="success" %}
Click Next and run the integration for Customer Sync. Ensure the 'Update account in QuickBooks' field is mapped from Salesforce to QuickBooks.&#x20;
{% endhint %}

#### **B. Integrate New Products to QuickBooks**

Use this form to update all product information as products or items in QuickBooks Online . The form is pre-populated with answer for the tabs and you can modify based on need. The form has the following fields already pre-populated with mapping:

* **Do you want to create/update Salesforce Products in QuickBooks?**\
  Choose 'Yes' or ' No' from the drop-down to add products from Salesforce into QuickBooks Online as products/items.
* **Select Salesforce object that you want to integrate with QuickBooks Items**\
  Select the Salesforce object as 'Product' to add product information from Salesforce to QuickBooks Online.&#x20;
* **Item Type**\
  Define the type of item based on need.&#x20;

<figure><img src="https://1036205596-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fv9avy716UiAsS24zOznZ%2Fuploads%2FokmjFMQS6T4fZYy6rrYu%2Flan%206.PNG?alt=media&#x26;token=f1c31b67-40d3-46b2-a9b7-d1815f19ee3e" alt=""><figcaption><p>Product Integration Form</p></figcaption></figure>

{% hint style="success" %}
Click 'Next' and run the integration for Product Sync. Ensure you select the Salesforce Object as 'Product' in order to map the fields into QuickBooks Online.
{% endhint %}

#### C. Integrate New Transactions to QuickBooks

Use this form to 'Generate' various transactions from Salesforce to QuickBooks. You can create invoice, sales receipts, estimates and credit memos and directly update from Salesforce to QuickBooks

The form is pre-populated with answer for the tabs and you can modify based on need. The form has the following fields already pre-populated with mapping:

* **Select Salesforce object that you want to integrate with QuickBooks Transactions**\
  Define the object from Salesforce to retrieve/map the information into QuickBooks in order to create a transaction: for Eg; Invoice. The main object in this example would be 'Opportunity'
* **What kind of Transactions do you want to generate?**\
  Choose the type of transaction you would like to generate and update in QuickBooks Online: invoice, sales order, estimates and credit memos.

The following fields are pre-populated and already mapped with QuickBooks Online:

* Transaction Integration ID
* Select the filter field that indicates which Transactions should be created/updated from Salesforce
* Transaction Number, date and description
* Do you Want to Create Job in QuickBooks?\
  In case you want to create a job in QuickBooks Online for this transaction select 'Yes.'
* Job Name / Child Customer Name: This is already mapped with 'Name' in QuickBooks.&#x20;
* Select Salesforce object that you want to integrate with QuickBooks TransactionsLines.
* Transaction Line Product Id, Name and Description.
* Define Product quantity, unit price and total price.

<figure><img src="https://1036205596-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fv9avy716UiAsS24zOznZ%2Fuploads%2FWWGYUuLvOYAcnZiaDmqN%2Flan%208.PNG?alt=media&#x26;token=2509bb4c-ac09-40cc-b372-6954379fd815" alt=""><figcaption><p>Transaction Sync Form</p></figcaption></figure>

#### D. QuickBooks to Salesforce Integration

Use this form if you want to sync the records from QuickBooks Online to Salesforce.

* **Do you want to create Transaction Receivable in Salesforce?**\
  Choose 'Yes' or 'No' to enable bidirectional sync which will update the receivable information for a customer account in Salesforce.&#x20;
* **What kind of Transactions Receivable do you want to generate?**\
  Define the receivable you want to Generate: Invoice, estimate, credit memo or sales receipt

<figure><img src="https://1036205596-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fv9avy716UiAsS24zOznZ%2Fuploads%2FYvO4Vogb2EjtsDBCgg6a%2FScreenshot%202024-09-26%20at%203.52.20%20PM.png?alt=media&#x26;token=ba99ce6d-0218-4f85-b8b2-2ab2ada04a32" alt=""><figcaption><p>QuickBooks to Salesforce Form</p></figcaption></figure>

10. Click **'Next'** to **'Run Now'** to complete the sync.

<figure><img src="https://1036205596-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fv9avy716UiAsS24zOznZ%2Fuploads%2FWgO5aaj3QVwpwTi80B37%2Flan%2011.PNG?alt=media&#x26;token=5f82d60e-2852-4ce3-9c1b-efa26afa24ef" alt=""><figcaption><p>Run Now</p></figcaption></figure>

{% hint style="info" %}
You can also choose to set a schedule to your sync: Update the task, start and end time along with frequency which ensures that both the applications are in common sync at all times.
{% endhint %}

<figure><img src="https://1036205596-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fv9avy716UiAsS24zOznZ%2Fuploads%2FKfk9eud5q8mm67jdFuyY%2Flan%2012.PNG?alt=media&#x26;token=26661932-5271-4dd3-8760-8e6282465475" alt=""><figcaption><p>Scheduler</p></figcaption></figure>

11. Click Finish. Your sync is completed.
