How to integrate and use QuickBooks Online with Zuper?

How to integrate and use QuickBooks Online with Zuper?


Zuper is integrated with QuickBooks online to make your accounting and inventory management seamless.

The Zuper and QuickBooks Online integration is an excellent solution for businesses managing field service operations and accounting.  

 

Core Features of Zuper-QuickBooks Online Integration 
  • Automated Invoice Sync: Invoices created in Zuper automatically sync with QuickBooks Online, ensuring up-to-date financial records. 

  • Real-Time Data Synchronization: Changes in QuickBooks Online, like payment updates, are instantly reflected in Zuper, and vice versa. 

  • Unified Customer and Organization Management: Keep customer and organization information consistent across both systems, eliminating duplicate entries and ensuring data reliability. 

Key Benefits 
  • Time Efficiency: Automated data transfer reduces manual tasks and saves time. 

  • Enhanced Accuracy: Seamlessly syncing data across platforms minimizes manual entry errors. 

  • Improved Collaboration: Operations and finance teams access up-to-date, consistent information, enabling better teamwork and insights. 

  • Simplified Financial Reporting: Aggregated data from both systems enables quick, accurate financial reporting. 

InfoInsight: This help document applies to QuickBooks online.

With this integration, you can:
  1. Sync all your contacts, accounts & inventory from Zuper to QuickBooks online.
  2. Upon creating a Quote/Invoice in Zuper, it will be synced with QuickBooks online.

Prerequisites

  1. You must have an online active account with QuickBooks.
  2. You cannot connect multiple QuickBooks online organizations to your Zuper account and vice versa.
  3. Ensure that the base currency of both these organizations is the same.
  4. Ensure that the Zuper account used for API key generation and the one used for syncing invoices with QBO are separate.
  1. To create the Zuper API, refer to the article (How do I create an API Key for my Zuper account?).
NotesNote: It is mandatory to enter the Zuper API Key for Integration to perform smoothly. 

Set up QuickBooks Online integration with Zuper.

Integrating Zuper with QuickBooks is a simple and streamlined process.
  1. Log in to your Zuper account.
  2. Navigate to the App Store on the sidebar.
  3. Choose Accounting & Payments from the side menu.
  4. Select QuickBooks  & Click the Install QuickBooks button.
  5. You will be redirected to the QuickBooks sign-in page. Enter your credentials to proceed with the integration.
  6. Once you sign in to QuickBooks, you need to select the organization you want to connect with Inventory if you have multiple organizations.
  7. After choosing an organization, click Connect to complete the integration.

Zuper App Configure

  1. Once you have connected with QuickBooks online, you will be redirected to your Zuper account to configure the integration.
  2. You must configure the settings to sync the Zuper modules with QuickBooks online.
         

  1. To create the Zuper API (Mandatory) refer to the article (How do I create an API Key for my Zuper account?).

  1. Sync Customers (Mandatory) - If you select “Yes,” whenever a new customer is created in Zuper, it will automatically synchronize with the QuickBooks Online customer module. If you choose “No,” customer sync between Zuper and QuickBooks Online will not be executed.

  1. Sync Estimates (Mandatory) - If you select “Yes,” whenever a new quote is created in Zuper, it will automatically synchronize with the QuickBooks Online estimate module. If you choose “No,” quote sync between Zuper and QuickBooks Online will not be executed. 

  1. Sync Deposits to Customer  If you select “Yes,” whenever a deposit is created in Zuper, it will automatically synchronize with the QuickBooks Online customer module. If you choose “No,” the deposit will not be synced to the customer on QuickBooks Online. 

  1. Sync Services and Products (Mandatory)  By selecting “Yes,” Inventory will synchronize two ways from Zuper to QuickBooks Online and vice versa. If “No” is selected, Zuper and QuickBooks Online do not synchronize inventory items. 

    NotesNote: You need a QuickBooks Online Essentials plan and above


  1. Master Product System (MandatoryBy selecting “Zuper,” the master product system will be Zuper. If “QuickBooks is selected, the master product is QuickBooks Online. 

  1. Master Product Location—Enter the Master product location to which the inventory line is synced from Zuper to QuickBooks Online. 

  1. Non-Inventory Product Quantity — Enter the non-inventory product quantity that gets synced from Zuper to QuickBooks Online. 

  1. Product Minimum Quantity — Enter the product minimum quantity of Zuper to which QuickBooks is synced. 

  1. Invoice Status (Mandatory) Upon selecting the status for the invoice in Zuper, we trigger the sync to create a similar invoice in QuickBooks without any duplication. If the status is selected as "All" upon creating the invoice in Zuper, sync will be triggered immediately, and the invoice will be created in QuickBooks.

  1. Default Tax Agency (In QuickBooks) - Copy/Paste the "Default tax Agency" from QuickBooks, if available.

  1. Sync Failure Emails   - Upon sync, a failed error message will be emailed to the given ID's.

  1. Default Payment Mode UID (Mandatory)- Enter the default Zuper payment mode UID to sync with QuickBooks online. 

  1. Auto Enable invoice payment methods  - If you select the option "Yes," the invoice payment method created in Zuper, will gets synced with the QuickBooks online invoice module automatically. If you select the option "No," the invoice sync between Zuper and QuickBooks will not be executed.

  1. Default Payment Mode UID ( To get the "Payment UID". Click "CRTL+Shift+J" and copy/paste the below code.)

    var scope = angular.element(angular.element($(".hbox"))[0]).scope();
    _.each(scope.vm.payment_modes, function(p){
    console.log("-----------------------");
    console.log("Payment Provider Name: ", p.payment_mode_name);
    console.log("Payment Provider UID:", p.payment_mode_uid)
    });



  1. Sync Estimate (Mandatory)If you select the option "Yes," whenever a new estimate is created in Zuper, it will be synced with the QuickBooks online estimate module automatically. If you select the option "No," the estimate sync between Zuper and QuickBooks will not be executed.

  1. Estimate / Invoice ID (Mandatory) : After selecting the "Zuper ID / QuickBooks ID," this will be updated in QuickBooks online under the field name "Estimate / Invoice No."

  1. Identify Customers in Zuper - QuickBooks - Upon selecting the below option, at the time of syncing the invoice/estimate with QuickBooks, it checks and creates the invoice for the right customer.

    Zuper
    QuickBooks
    Customer Email
    Customer Email
    Customer Name
    Customer Name
    Billing Email
    Customer Email
    Billing Name
    Customer Display Name
    Organization Name
    Customer Display Name

  1. Quickbooks Plan (Mandatory)—The product type is allowed as “Service” only for the Essentials plan in QuickBooks online. If not the Essentials plan, the product type can be “Inventory or Non-Inventory.”
  1. Custom Field Mapping -The data flows from Zuper Custom fields to QuickBooks Custom fields from the Invoice. 
Notes
The format of custom field mapping is:QBField1,ZuperField1;QBField2,ZuperField2
Notes
Note: QuickBooks supports only three custom fields; if we add more than three custom fields, the data sync will not occur. 
  1. Display Name Format - From Zuper account for the invoices and estimates the customer name sync to QuickBooks online happens based on the dropdown options:
                              
Info
First Name, Last Name (Default)
Last Name, First Name

Based on the preference chosen, the name sync happens. 
  1. Account Name to deposit PaymentsEnter the account name to which the payment needs to be allocated. The payment amount will be recorded in the chosen account, ensuring accurate financial tracking and allocation. 
  2. For example, if the deposit payment is for rent, you might enter “Rent Expense account” in this field to ensure the payment amount is recorded under the Rent Expense account in QuickBooks.

  1. Delete action in Zuper to Void in Quickbooks – Upon selecting "Yes", whenever any invoice is deleted in Zuper will also be voided in QuickBooks online. If "No" is selected, deleting an invoice in Zuper will only remove it from Zuper, leaving the corresponding invoice unaffected in QuickBooks online.

  1. Invoice Cancel in Zuper to Void in QuickBooks  Upon selecting "Yes", invoice cancelled in Zuper will be invalid in QuickBooks, If the option "No" is selected, the invoice cancelled in Zuper will not be invalid in QuickBooks online.

  1. Use QuickBooks as Tax Master – Upon selecting "Yes", QuickBooks online will be used as the primary source for tax-related information such as tax rates and codes. If "No" is selected, Zuper will be the primary source for Tax. 
Notes
If QuickBooks Online is chosen as the primary tax source, ensure that tax configurations in Zuper align with those specified in QuickBooks Online.
  1. Push Email Field for Customer in QuickBooks - Enter the email of the Zuper customers to get the sync with customers on QuickBooks. 

  2. Use Different Discount Account in QuickBooks  Upon selecting "Yes", the different discount accounts will be used in QuickBooks; the discount account is specified in the Discount Name. If the option "No" is selected, the default discount account will be used in QuickBooks online.

  3. Class Tracking - Enabling Class Tracking for Invoices, Quotes, and Products in QBO 

    When creating a new Invoice/Quote/Product in QuickBooks Online, we can assign it a class while syncing it from Zuper to accurately track and categorize financial transactions.   
     

    In the QBO configuration screen, select whether the class tracking is to be done and if it is to be done for the entire transaction or for each line item in the transaction based on what you’ve specified in QBO.

    1. In the QBO configuration screen, select whether the class tracking is to be done and if it is to be done for the entire transaction or for each line item in the transaction based on what you’ve specified in QBO.



    2. Go to Settings > Custom Fields & Checklist Settings > Invoice Fields or Product/Part Fields or Quotation Fields 
    3. Create a custom field with the label “QBO Class” 
    4. While creating the invoice, ensure that the value for the custom field is present.        

QuickBooks Online Integration Account Configure

  1. Sign In to the QuickBooks online account and click the below link based on the account signed-the in. Then click the "Switch Now" button.
    1. QuickBooks Live Account - https://app.qbo.intuit.com/app/categorymigration 
    2. QuickBooks Staging Account - https://sandbox.qbo.intuit.com/app/categorymigration 
            
  1.  Go to Accounting -> Chart of Accounts and make the following changes to the below 3 accounts:


  2.    Name: Inventory Asset
      Account Type: Other Current Assets
      Detail Type: Inventory
       Name: Cost of Goods Sold
      Account Type: Cost of Goods Sold
      Detail Type: Supplies & Materials - COGS
       Name: Sales of Product Income
      Account Type: Income
      Detail Type: Sales of Product Income

Pushing Customers to Quickbooks online: 

With the Zuper-QuickBooks Online integration you can sync Customer master data from Zuper to Quickbooks. You can control this through a setting available in the configuration.  
 
The customer records can be created or updated in Quickbooks Online based on changes in zuper 
If the Zuper customer is present in Quickbooks Online, then they are identified using: 
  • Customer Quickbooks ID 

  • Email ID.  

  • Customer Name. (First Name Last Name) 

 

Similarly if the organization is present in QuickBooks Online, then they are identified using: 

  • Org QB ID 

  • Org name 

 

The billing contact of QuickBooks Online, are identified using: 

For billing contact 

  • Billing name 

  • Billing email 

 

If the customer, organization, or billing contact is absent in QBO, it will be created during the sync.  

This can be configured using the below setting: 

 

 

The various mapping details:  

Customer Description mapped as Customer Notes in Zuper 

The Customer’s Address is mapped as a Billing Address in Zuper 

 


Alert

Alert: The Customer ID created in QuickBooks Online is stored as a Custom field in Zuper. To maintain the sync, it is important not to delete or override this field. 


Push Products and Services to Quickbooks online: 

  

  • Depending on the configuration for Products Master, products and services are synced from Zuper to QuickBooks and vice versa 


  • If the QuickBooks Online product is present in Zuper, the validation is done based on the following criteria: 

  1. Product Quickbooks ID.  

  1. Product Name. 

NotesNote: Based on the validation – The system will return a specific product or service if a product ID is given; another wise list of products or services will be returned if we search using the product name. 

 

Notes for Inventory sync  

  • Products and Parts of Zuper are captured as Inventory in QuickBooks Online. (Track Quantity means Inventory).

  • Service is captured as Service in QuickBooks Online (If the track quantity is not present, this is captured as non-Inventory).  

  • Before a product/part/service is created in Quickbooks, the category must be in QBO. Once identified, the item will be created.  


Mapping Details: 

For all the products, a chart of account details is needed.  

  1. a. Income account reference b. Inventory Asset account reference c. Expense account reference.  

  • Inventory Start Date – Company created date or Current day1 (if company date is absent). 

  • Description – Product Description. 

  • Purchase Cost – Unit Selling Price. 

  • SKU – Unique ID identifying the product.  

NotesNote: For the Essentials plan in QuickBooks Online, the product type is allowed as “Service” only. Other than the “Essentials” plan, the product type can be “Inventory or Non-Inventory.” 

Based on Zuper’s tax information, the tax masters should be created in QuickBooks Online, and then the tax mapping will happen with the tax ID and name.  

The created Product ID in QuickBooks Online is stored as Custom fields in Zuper 

Refer to this article to enable bidirectional inventory sync.

 

Push Quotes to QuickBooks Online: 

With the Zuper-QuickBooks Online integration you can sync quotes from Zuper to Quickbooks. You can control this through a setting available in the configuration. 

  • The data push will happen from QuickBooks Online to Zuper 

  • If the Estimate settings are enabled in the integration settings, we will fetch the Estimate UID.  

  • If the QuickBooks Online Estimate is present in Zuper, the validation is done based on the following criteria: 

  1. List of matching criteria listed

Note: Based on the validation – The QuickBooks Online Estimate ID is back verified in Zuper if the ID is not present, and a new Estimate ID is created in Zuper. 

Notes for Quotes Sync:  

  • Billing Address in Zuper is captured as Customer Address in QBO. 

  • Service and Billing customers of Zuper are considered Billing customers in QuickBooks Online only.  

  • If the Customer already exists, then the Customer will have a QuickBooks Online ID; if not, a new customer will be created in QuickBooks Online based on the billing address of the Zuper details.  


Line-Item Details: 

The service charge varies based on the estimate for installation or repair, so these situations are not captured as master line items. For custom line items – the amount is captured dynamically.  

  • Estimate’s expiration date – QuickBooks Online’s expiry date 

  • Notes - QuickBooks Online’s Customer Memo 

  • Await Payment – Email sent (Payment collection pending) 

  • Customer, Customer ID – Verify that if a new customer is absent, the customer ID will be created in Zuper 

  • The status names will be synchronized from Zuper to QuickBooks Online (This transaction status verification is to be done).  

  • US tax rule – The tax rule structure is to be followed; for the rest of the world, different taxes are calculated straightforwardly.  

  • The Quote number in Zuper is captured as a document number in QuickBooks Online.  

 

The created estimate ID in QuickBooks Online is stored as a custom field in Zuper. 

 

Push Invoices to Quickbooks Online: 

Zuper-QuickBooks Online integration sync Invoice. You automatically synchronize Invoices as per the pre-defined settings and quote conversion.  

You can do three significant actions: Invoice Create Sync, Invoice Update Sync, Invoice Payment, and Invoice Note Addition Sync

  • The data push will happen from QuickBooks Online to Zuper 

  • We will fetch the Invoice if the invoice settings are enabled in the integration settings.  

  • If the QuickBooks Online Estimate is present in Zuper, the validation is done based on the following criteria: 

  1. List of matching criteria listed in Zuper 

NotesNote: Based on the validation – The QuickBooks Online Invoice ID is back verified in Zuper if the ID is not present, and a new Invoice ID is created in Zuper. 

The various preliminary details:  

  • Customer Address in QuickBooks Online is captured as a Billing address in Zuper 
  • Service and Billing customers of Zuper are considered Billing customers in QuickBooks Online only.  
  • If the Customer already exists, then the Customer will have a QuickBooks Online ID; if not, a new customer will be created in QuickBooks Online based on the billing address of the Zuper details.  



Line-Item Details: 

The service charge varies based on the installation or repair invoice, so these situations are not captured as master line items. For dynamic custom line items – the amount is captured dynamically.  

  • Invoice’s due date – QuickBooks Online’s due date 

  • Remarks - QuickBooks Online’s Customer Memo 

  • Customer, Customer ID – Verify that if not present, a new Customer customer ID is to be created in Zuper 

  • Await Payment – Email sent (Payment collection pending) 

  • The status names will be synchronized from Zuper to QuickBooks Online (This transaction status verification is to be done).  

  • US tax rule – The tax rule structure is to be followed; for the rest of the world, different taxes are calculated straightforwardly.  

  • Item Description of Zuper is captured as a Sale Item Line Item in QuickBooks Online.  


NotesNote: If the contract exists with an Invoice, then the contract details will be synchronized as line items in QuickBooks Online.  

The discount details and subtotal are captured as line items in QuickBooks Online.  

  • You can convert an estimate as an invoice or create an invoice directly in both Zuper and QuickBooks Online. The converted estimate is captured as a linked transaction.  

  • Private Note – This is visible to a few users based on the settings.  

  • Job – Invoice creation – This is done based on the Job’s prefix.  

  • For the existing invoice sync – An update operation will happen if the new invoice creation means a new invoice is created.  

  • The full payment done in Zuper gets synchronized with QuickBooks Online as the total invoice payment along with the mode of payment.  

  • For the partial payment made in Zuper – the same gets recorded in QuickBooks Online 

The created Invoice ID in QuickBooks Online is stored as a Custom field in Zuper. 

 

Limitations: 

  • QuickBooks Online limits a customers First Name/ Last Name to 25 characters and a Company Name to 50 characters. If a customer is created in Zuper with a name that is over 25 characters long, there will be an error in creating the Customer in QuickBooks Online.

  • If a customer is deleted in Zuper, the record will still be available in QuickBooks Online. 

  • For inventory tracking, the Customer should subscribe to QuickBooks Online Plus or Advanced.  

  • The Zuper account holder should have a dedicated account to generate the API Key, and the user should be in the administrator role. This account should be different from the one connecting to QBO.  

  • For the B2B scenario cases, to push the Organization to QuickBooks Online, the value for the fields “Identify Customers in ZuperQuickBooks Online” should be specified as: 

  1. Billing Name – Customer Display Name  
  • QuickBooks Online allows a maximum of three custom fields for Quotes and Invoices. Irrespective of the status of the custom field in QuickBooks Online, more than three custom fields will replace the current custom field values. 

 

Note:NotesNotes: Adding the account names in the Product Custom Fields enables easy selection of specified accounts while creating products and services. This ensures that products or services are correctly linked to QuickBooks Online’s appropriate income or expense accounts.


Updating newly created Income/Expense Accounts in Product Custom Fields

When creating new income and/or expense accounts in QuickBooks for accurate tracking and categorizing financial transactions, it’s essential to ensure seamless integration and data consistency between Zuper and QuickBooks online. Follow these steps to add the newly created account name in the Product Custom Fields.

  1.  Go to Settings > Custom Fields & Checklist Settings > Product / Part Fields.
    The Product Custom Fields page opens.
  2.  In the QBO Income Account field, add the names of the newly created income accounts as values.
  3. In the QBO Expense Account field, add the names of the newly created expense accounts as values.
 Adding the account names in the Product Custom Fields enables easy selection of specified accounts while creating products and services. This ensures that products or services are correctly linked to QuickBooks' online appropriate income or expense accounts, facilitating accurate financial tracking and categorization.

Updating newly created Invoice Custom Fields

When creating new Invoice in QuickBooks for accurate tracking and categorizing financial transactions, it’s essential to ensure seamless integration and data consistency between Zuper and QuickBooks online. Follow these steps to add the newly created Invoice in the Product Custom Fields.

  1.  Go to Settings > Custom Fields & Checklist Settings Invoice Fields.
    The Product Custom Fields page opens.
  2.  In the QBO Invoice field, add the names of the newly created invoice date as values.
  3. In the QBO Invoice field, add the names of the newly created due date as values.
 Adding the invoice date and due date in the Invoice Custom Fields enables easy selection of specified accounts while creating Invoices. This ensures that Invoices are correctly linked to QuickBooks' online.







    • Related Articles

    • QuickBooks Online Sync History

      Customers who use the Quickbooks integration to send invoice and quote data from Zuper to Quickbooks sometimes face errors. The Sync history feature allows you to troubleshoot these issues. To help troubleshoot Zuper-QuickBooks Online sync issues, ...
    • Common QuickBooks Online Errors

      The most common QuickBooks online errors are listed out here. We came with the errors along with the resolution for each. If you are not finding any errors listed, kindly reach out to support@zuper.co Unsupported Operation Error | Error Code : 500 ...
    • How to integrate and use QuickBooks Time with Zuper?

      Overview: Quickbooks Time, formerly known as tsheets is an application that provides Employee Time Tracking, Scheduling and Payroll Management features. Zuper’s integration with Quickbooks time syncs entries from the Timesheets module on zuper to the ...
    • Zuper <> QuickBooks Desktop sync payments

      The sync will happen between QuickBooks Desktop payments and Zuper payments. This allows you to use one system as the system of origin for payments while update synced on both systems. Prerequisites The payment mode used for the payment in QuickBooks ...
    • Zuper <> QuickBooks Desktop Pre-Requisites

      Zuper is integrated with QuickBooks Desktop to make your accounting and inventory management go hand-in-hand with this seamless integration. With this integration, you can: Sync all your customers & inventory from Zuper to QuickBooks Desktop. Upon ...