This article describes the steps to take to set up your integration between QBench and Quickbooks, as well as how the integration works.
Subscription Necessary
If you haven't already, contact your Customer Success Manager or account representative to inquire about pricing and to purchase the Quickbooks Online Integration subscription.
How It Works
The QBO integration is built primarily around synchronization of invoices from QBench to QBO (including related customers and assays, see details below), and of payments from QBO to QBench.
Important: Keep in mind that Customer and Invoice objects will be overwritten in QBO if they are updated in QBench for certain fields (billing email address, and address). So to avoid data loss, be sure to make updates in QBench specifically for Customer names and addresses, and for Invoices. It's strongly recommended that you try syncing from a QBench sandbox first to try out syncing of a limited number of Customer and Invoice records before using your live QBench site (your sandbox will have significantly less volume of invoices, etc. giving you more control to see how records are created in QBO).
The integration supports the following use cases:
-
Invoice: When invoices are created in QBench, and moved to the "INVOICED" status they will be copied over to Quickbooks Online. See notes below for how Invoice synchronization works:
- Invoice No.: The invoice number will be the QBench custom invoice ID or if you do not have a custom ID configured it will be the invoice ID with a "QB-" prefix (e.g. "QB-15").
- Customers: when an invoice syncs from QBench to QBO the system will look for a customer in QBO with the exact same name and link the two. If the customer is not found it will create a customer (along with Billing Email (see "Billing Email ..." bullet point below), and the customer's address). Accordingly, to avoid duplication of customers in QBO be sure that their names are an exact match.
- Products and Services: Assays and panels in QBench can be linked to products and services in QBO, and when they are linked the "Product/Service" column on the QBO invoice can be automatically selected. In order to have assays and panels linked to products and services in QBO you must ensure the assay or panel name in QBench is exactly the same as the product/service name in QBO. Then when an invoice is syncing to QBO it'll automatically link to the appropriate product/service. If the product/service does not exist in QBO it will NOT be created automatically.
- Billing Email on Invoices: to invoice a billing email address you must have email settings configured in QBench so that you can populate the "Email to" field on the QBench invoice.
- Invoice Memo: If you would like to populate an invoice "Memo" in QBench and have it sync over to Quickbooks you must create an additional field where the field system name must be "qbo_memo" (the field label can be anything of your choosing, see custom field configuration to learn about creating custom fields).
- Billing Email on Customers: similar to the above, if you would like a primary billing email address entered in QBench to sync to QBO you must create a custom field with the system name "qbo_billing_email". The contacts tab in QBench is not used to determine the billing email because there can be multiple billing contacts (keep in mind any emails on the "Email to" will be copied over to the invoice so the contacts tab functionality still works and syncing a primary billing email may not be desired).
-
Tax Rate: In order to sync invoice items that have a tax rate from QBench to QBO properly, you need to make sure that the Tax Rate Name in QBench matches with a Tax Rate Name in QBO. QBO integration only looks for the Tax Rate Name that matches with QBench and applies the tax rate percentage to the invoice item in QBO. If the Tax Rate Name does not exist in QBO, an error response will be posted to the QuickBooks Response Log field on the Invoice Detail Page in QBench.
-
Important: QBO does not support multiple tax rates. Please make sure to use only one type of Tax Rate for an invoice.
-
-
Online Payment: To allow Online ACH Payment, Online Credit Card Payment, and IPN Payment (Quickbooks legacy payment), you will need to create an additional field for Invoice in QBench for each one of the payments as below:
- Allow Online ACH Payment: Create an Invoice additional field where the field system name must be "qbo_allow_online_ach_payment". The field label can be anything of your choosing. Field Type must be a Dropdown with options of [“YES”, “NO”]. See custom field configuration to learn about creating custom fields.
- Allow Online Credit Card Payment: Create an Invoice additional field where the field system name must be "qbo_allow_online_credit_card_payment". The field label can be anything of your choosing. Field Type must be a Dropdown with options of [“YES”, “NO”]. See custom field configuration to learn about creating custom fields.
- Allow IPN ACH Payment: Create an Invoice additional field where the field system name must be "qbo_allow_ipn_ach_payment". The field label can be anything of your choosing. Field Type must be a Dropdown with options of [“YES”, “NO”]. See custom field configuration to learn about creating custom fields.
-
Payments: There is a button in QBench that can copy payments from QBO to QBench. This will only work for invoices that are linked between QBench and QBO. NOTE: invoices must be linked to QBO invoices and must be in the INVOICED status for payments to successfully sync to QBench. See below on how to configure the button necessary to sync payments.
- To configure the button go to "Configuration" > "Application" > "Developer" > "Settings". In the "Custom Actions" section click "+ New Custom Action". Fill the form as follows and click "Create":
- Name: "Sync Payments from Quickbooks" must match exactly
- Type: "Invoice"
- To configure the button go to "Configuration" > "Application" > "Developer" > "Settings". In the "Custom Actions" section click "+ New Custom Action". Fill the form as follows and click "Create":
-
Customers: When customers are created or updated in QBench they will be created or updated in QBO. If you want to link an existing customer in QBO to a QBench customer, you need to ensure the names are exactly the same (the customer name in QBench must match the "Display Name"). Keep in mind that the following fields will override fields in QBO if they are populated in QBench:
- "qbo_billing_email" custom field
- Address, City, State, Zip, Country (note City, State, Zip, and Country may be hidden, you can show them by editing the Customer object in Fields and Data Type Settings).
Configuration
- Go to "Configuration" > "Application" > "Quickbooks Online" (note this will require the subscription to the Quickbooks Online integration).
- Go to the "Authenticate with Quickbooks" tab and click "Connect to Quickbooks" button. You will be redirected to Quickbooks Online to grant access to QBench.
- After authenticating you can refresh the page to ensure you are successfully authenticated. You will see a message similar to what's shown below:
- This will enable syncing between QBO and QBench. If you have issues with syncing you can try to reconnect by clicking this button again to re-authenticate.
Field Definitions and Relevant Fields
Core Fields
| Field Name | Type | Options | Object | Purpose |
| Address | Text | N/A | Customer | Ensure address details match between systems. |
| Tax Rate Name | Text | N/A | General | Matches tax rates between QBench and QuickBooks Online. |
| QuickBooks ID | Text | N/A | Assay, Panel, Customer, Invoice | Unique identifier for the QuickBooks Online entry. |
| QuickBooks Edit Sequence | Text | N/A | Assay, Panel, Customer, Invoice | Tracks edits in QuickBooks Online to ensure sync integrity. |
| QuickBooks Last Synced | Text | N/A | Assay, Panel, Customer, Invoice | Timestamp of the last successful sync. |
| QuickBooks Response Log | Text | N/A | Assay, Panel, Customer, Invoice | Stores logs of sync responses for troubleshooting. |
Additional Fields
| Field Name | Type | Options | Object | Purpose |
| qbo_allow_online_ach_payment | Dropdown | ["YES", "NO"] | Invoice | Enables ACH payment options in QuickBooks Online. |
| qbo_allow_online_credit_card_payment | Dropdown | ["YES", "NO"] | Invoice | Enables credit card payment options. |
| qbo_memo | Textbox | N/A | Invoice | Syncs invoice memos to QuickBooks Online. |
| qbo_billing_email | Text | N/A | Customer | Syncs the primary billing email address. |
Definitions of Field Types
- Core Fields: Predefined system fields that cannot be deleted.
- Additional Fields: User-created fields for specific configurations.
- Default Value: Automatically populated values for faster data entry.
For details on configuring fields, refer to the: Fields and Data Types Configuration Guide
Troubleshooting and FAQs
Common Issues
-
Customer Duplication:
- Ensure customer names are identical in both systems. Additionally, there is a setting in General Settings to enforce unique customer names, which can help prevent duplication.
- Use sandbox testing to identify potential conflicts.
-
Invoice Sync Errors:
- Check the "QuickBooks Response Log" for details.
- Verify Tax Rates and product names match in both systems.
-
Authentication Problems:
- Reconnect via Configuration > Application > QuickBooks Online.
Related Articles
Comments
0 comments
Article is closed for comments.