QuickBooks Online is a cloud-based accounting platform used by finance, operations, and accounting teams to manage invoices, bills, vendors, customers, payments, and general ledger activity. The QuickBooks Online integration within the Wrk platform allows you to automate accounting workflows by calling the QuickBooks Online Accounting API through prebuilt Wrk Actions.
Authentication
QuickBooks Online uses OAuth 2.0 authentication. When connecting your QuickBooks Online account in Wrk, you will be redirected to Intuit’s OAuth login screen. After signing in and granting access, Wrk receives an access token and refresh token, which are used for all subsequent API calls.
Important Notes
OAuth tokens expire automatically; Wrk refreshes them in the background.
If authorization is revoked in QuickBooks or scopes are changed, the connection must be reauthenticated.
If authentication fails, QuickBooks typically returns HTTP 401 Unauthorized.
How to Authenticate
Create a new QuickBooks Online Connected Account in Wrk.
Sign in using your Intuit account.
Choose the QuickBooks Online company file you want Wrk to access.
General API Behaviour
QuickBooks API Overview
The integration uses the QuickBooks Online Accounting API (v3). Most entities, such as invoices, customers, vendors, exchange rates, and bills, follow a consistent JSON structure. Each record returned by QuickBooks generally includes:
Id — the unique entity identifier
SyncToken — required for certain update/delete operations
MetaData — timestamps for creation/update tracking
Query Language (IQL)
QuickBooks uses a SQL-like query syntax called Intuit Query Language (IQL) for filtered and paginated retrievals. Example:
SELECT * FROM Invoice WHERE Balance > '0' ORDER BY TxnDate DESC STARTPOSITION 1 MAXRESULTS 50
Key details:
Supports
WHEREfiltersSupports
ORDER BY(ASC or DESC)ANDis supported,ORis not supportedPagination uses
STARTPOSITIONandMAXRESULTSQueries operate on one entity at a time (no JOINs)
IQL Reference: https://developer.intuit.com/app/developer/qbo/docs/learn/explore-the-quickbooks-online-api/data-queries
Rate Limits
QuickBooks Online enforces API rate limits at the:
Company file level
User/application level
Concurrency level
If limits are exceeded, QuickBooks may return throttling errors such as 429 or rate-limit warnings.
Available Wrk Actions for QuickBooks Online
Wrk provides a curated set of QuickBooks Online Actions that map directly to the most commonly used Accounting API endpoints.
Perform an API call in QuickBooks Online
Perform an API call in QuickBooks Online (Accounting Scopes Only)
Create a bill in QuickBooks Online
Create a customer in QuickBooks Online
Create a vendor in QuickBooks Online
Create an invoice in QuickBooks Online
Retrieve a bill from QuickBooks Online
Retrieve a customer from QuickBooks Online
Retrieve a vendor from QuickBooks Online
Retrieve an invoice from QuickBooks Online
Retrieve exchange rate from QuickBooks Online
Delete a bill in QuickBooks Online
Delete an invoice in QuickBooks Online
Query QuickBooks Online
Send an invoice in QuickBooks Online
Upload file attachment in Quickbooks Online
Additional Resources
QuickBooks Online Accounting API Reference:
https://developer.intuit.com/app/developer/qbo/docs/api/accounting/all-entities/accountQuery Language Documentation:
https://developer.intuit.com/app/developer/qbo/docs/learn/explore-the-quickbooks-online-api/data-queriesTroubleshooting Guide:
https://developer.intuit.com/app/developer/qbo/docs/develop/troubleshooting
