Import QuickBooks Data to Google Sheets

In this guide, we’ll walk through how to pull QuickBooks data data directly into Google Sheets, using the API Connector add-on for Sheets. Intuit QuickBooks is, of course, a well-known accounting software package. The QuickBooks API only supports authentication via OAuth2, so we’ll be connecting using API Connector’s built-in OAuth2 integration for QuickBooks.

PART 1: CONNECT TO THE QUICKBOOKS API

If you haven’t connected API Connector to QuickBooks before, you’ll first need to initiate the connection as follows:

  1. Open up Google Sheets and click Add-ons > API Connector > Manage Connections.
  2. In the list of available connections, find QuickBooks and click Connect.
    quickbooks-img2
  3. You will be directed to Intuit.com and asked to sign in, if you haven’t already. You’ll then be returned to your Google Sheet, and can verify that your QuickBooks connection is active in the Connections screen.
    quickbooks-img3

PART 2: CREATE YOUR QUICKBOOKS API REQUEST URL

For our first request, we’ll get some basic information about your QuickBooks account.

  • API root: https://quickbooks.api.intuit.com
  • Endpoint: /v3/company/YOUR_COMPANY_ID/companyinfo/YOUR_COMPANY_ID

To get your company ID, click the Gear icon in the top right corner of your navigation bar while logged into QuickBooks, and navigate to Billing and Subscriptions. You’ll see your company ID listed at the top:
quickbooks-img4

Putting it all together, we get the full API Request URL. Note that you enter your company ID twice:

https://quickbooks.api.intuit.com/v3/company/YOUR_COMPANY_ID/companyinfo/YOUR_COMPANY_ID

PART 3: PULL QUICKBOOKS API DATA INTO SHEETS

We can now enter our values into API Connector and start importing QuickBooks data into Google Sheets.

  1. Back in the Create Request interface, enter the Request URL we created above.
    quickbooks-img6
  2. In the Headers section, enter the following sets of key-value pairs:
    acceptapplication/json
    content-typeapplication/json
  3. Under Authentication, choose QuickBooks from the dropdown menu.
    quickbooks-img5
  4. Create a new tab and click ‘Set current’ to use that tab as your data destination.
  5. Name your request and click Run. A moment later you’ll see some information about your company populate your sheet.
    quickbooks-img7

PART 4: MORE EXAMPLE API URLS

The QuickBooks API uses a query language similar to SQL. You can access the full API documentation here, but only the “query” endpoint responses work well with Sheets. Therefore, it’s recommended to start with the following examples. Try the following URLs (one at a time), substituting in actual values where indicated.

  • Chart of Accounts
    https://api.intuit.com/v3/company/YOUR_COMPANY_ID/query?query=select * from Account
  • Bills
    https://api.intuit.com/v3/company/YOUR_COMPANY_ID/query?query=select * from Bill
  • Customers
    https://api.intuit.com/v3/company/YOUR_COMPANY_ID/query?query=select * from Customer
  • Employees
    https://api.intuit.com/v3/company/YOUR_COMPANY_ID/query?query=select * from Employee
  • Invoices
    https://api.intuit.com/v3/company/YOUR_COMPANY_ID/query?query=select * from Invoice
  • Items
    https://api.intuit.com/v3/company/YOUR_COMPANY_ID/query?query=select * from Item
  • Payments
    https://api.intuit.com/v3/company/YOUR_COMPANY_ID/query?query=select * from Payment
  • Vendors
    https://api.intuit.com/v3/company/YOUR_COMPANY_ID/query?query=select * from Vendor
quickbooks-img8

3 thoughts on “Import QuickBooks Data to Google Sheets”

    • Can you please double-check that you have access to the account you’re querying? That’s the only way I can produce a 403 error in my own tests. If you still have issues, please message support@mixedanalytics.com with a link to your sheet or screenshot of your request setup.

      Reply

Leave a Reply to Ana Cancel reply