Integrations / Payments

QuickBooks Online

Query accounting data, look up customers and invoices, create and email invoices, and trigger workflows from QuickBooks Online changes.

7 tools 16 trigger events Connect with OAuth

Tools

quickbooks.query

Run a QuickBooks query, e.g. select * from Invoice where Balance > '0' orderby DueDate maxresults 50. Entity IDs are short numbers like 130.

query*

quickbooks.get_customer

Get a customer by ID, e.g. 58.

customer_id*

quickbooks.get_invoice

Get an invoice with its lines by ID, e.g. 130 (not the DocNumber printed on the invoice).

invoice_id*

quickbooks.create_invoice writes

Create an invoice for a customer, with one line per item sold. Customer and item IDs are short numbers like 58; find them with the query tool.

customer_id*lines*txn_datedue_datedoc_numberbill_emailcustomer_memoprivate_note

quickbooks.send_invoice writes

Email an invoice to the customer's billing address, or to another address.

invoice_id*send_to

quickbooks.api_get

Send a GET request to any QuickBooks Online API path under https://{api_host}/v3/company/{realm_id} and return the response. For endpoints the named tools don't cover.

path*params

quickbooks.api_request writes

Send a POST, PUT, PATCH or DELETE request to any QuickBooks Online API path under https://{api_host}/v3/company/{realm_id}.

method*path*paramsbody

Tick Allow raw writes on the connection to add api_request, which can send POST, PUT, PATCH and DELETE requests to any QuickBooks Online API path.

Connect

  1. Create an app on the Intuit Developer portal (developer.intuit.com → My Hub → App dashboard) with the com.intuit.quickbooks.accounting scope, and add the redirect URL shown on the connection page under its redirect URIs.
  2. Copy the app's client ID and client secret from Keys and credentials into the connection. Development keys work with sandbox companies, production keys with real ones.
  3. Choose the environment, then click Connect on the connection page and pick the QuickBooks company. Its company ID is filled in automatically.
  4. To trigger workflows, open Webhooks in the app on the Intuit Developer portal, enter the URL shown on the connection page as the endpoint URL for the same environment, choose the entities and operations, and paste the verifier token shown there on the connection.

Press Connect on the connection to approve access at QuickBooks Online. Tokens renew automatically. How OAuth connections work

Credentials

Client secret Webhook verifier token

QuickBooks Online API docs

Triggers

On developer.intuit.com, open your app's Webhooks page for the matching environment (Development or Production), set this URL as the endpoint URL, choose the entities and operations, and paste the verifier token shown there on this connection. Intuit allows one endpoint per app and environment. Each event in a batch starts its own run, with its type (e.g. qbo.invoice.created.v1) and the entity's ID in the payload.

Events

qbo.invoice.created.v1qbo.invoice.updated.v1qbo.invoice.deleted.v1qbo.payment.created.v1qbo.payment.updated.v1qbo.customer.created.v1qbo.customer.updated.v1qbo.customer.merged.v1qbo.estimate.created.v1qbo.estimate.updated.v1qbo.salesreceipt.created.v1qbo.bill.created.v1qbo.bill.updated.v1qbo.vendor.created.v1qbo.item.created.v1qbo.item.updated.v1
trigger
kind: quickbooks connection: quickbooks events: [qbo.invoice.created.v1] companies: [...]

Your next automation is one sentence away.

14-day free trial with $5 of built-in AI included. Cancel anytime.