QuickBooks Online Connection
The QuickBooks Online connection allows your Horizon agents to interact with your QuickBooks accounting data, including customers, invoices, payments, expenses, and reports.
Prerequisites
Section titled “Prerequisites”Before connecting QuickBooks Online to Horizon, ensure you have:
- A QuickBooks Online account (Simple Start, Essentials, Plus, or Advanced).
- Company Admin or Master Admin access in QuickBooks Online.
- The company you want to connect must be active (not cancelled or suspended).
Setting Up the Connection
Section titled “Setting Up the Connection”- Navigate to Workspace > Connections and click + Add Connection.
- Select QuickBooks Online from the integration list.
- Choose your environment: Production or Sandbox.
- Click Authorize with QuickBooks. You will be redirected to Intuit’s sign-in page.
- Sign in with your Intuit account credentials.
- If you have access to multiple QuickBooks companies, select the one you want to connect.
- Review the permissions and click Connect.
- You will be redirected back to Horizon with the status set to Connected.
Permissions and Scopes
Section titled “Permissions and Scopes”Horizon requests the following QuickBooks OAuth scopes:
- com.intuit.quickbooks.accounting — full access to QuickBooks accounting data including customers, vendors, invoices, bills, payments, and reports.
- openid — user identity verification.
What Agents Can Do
Section titled “What Agents Can Do”With the QuickBooks connection, agents can:
- Manage customers and vendors — create, read, and update customer and vendor records.
- Create and send invoices — generate invoices, apply line items, and email them to customers.
- Record payments — log customer payments and apply them to outstanding invoices.
- Track expenses — create and categorize expense entries.
- Create bills — enter vendor bills and track payment due dates.
- Query accounts — retrieve chart of accounts, account balances, and transaction histories.
- Run reports — pull profit and loss statements, balance sheets, and other financial reports.
Connection Settings
Section titled “Connection Settings”After connecting, configure these options from the connection detail panel:
- Company name — displayed for reference; shows which QuickBooks company is linked.
- Default income account — set the default account for invoice line items.
- Default expense account — set the default account for expense entries.
- Tax settings — configure whether agents should include tax calculations when creating invoices.
Token Refresh
Section titled “Token Refresh”QuickBooks Online access tokens expire after one hour, and refresh tokens expire after 100 days. Horizon automatically refreshes tokens before they expire. If the refresh token expires (for example, if the connection was unused for over 100 days), you will need to re-authorize.
Troubleshooting
Section titled “Troubleshooting”| Issue | Resolution |
|---|---|
| Connection shows Expired | Click Re-authorize to complete a new OAuth flow. |
| ”Authorization failed” error | Ensure you are signing in with an admin account for the correct QuickBooks company. |
| Agent receives “Business Validation Error” | Check that required fields (like customer name or line items) are populated correctly. |
| Rate limit errors (throttled) | QuickBooks enforces per-company rate limits. Reduce the frequency of agent requests. |
Disconnecting
Section titled “Disconnecting”To remove the QuickBooks connection, click Remove Connection in the connection detail panel. To also revoke access on the QuickBooks side, go to QuickBooks Online > Settings > Manage Connected Apps and disconnect Horizon.