ml-connector
QuickBooks OnlineAnaplan

QuickBooks Online and Anaplan integration

QuickBooks Online runs accounting for small and mid-market businesses. Anaplan runs financial planning, budgeting, and forecasting across those same records. Connecting the two keeps your planning models up to date with the latest invoices, bills, and accounts from QuickBooks Online, so forecasts are based on current actual data. New vendors, customers, and transactions in QuickBooks flow into Anaplan without manual export and import steps.

How QuickBooks Online works

QuickBooks Online exposes vendors, customers, employees, items, accounts, departments, classes, invoices, bills, payments, purchase orders, and journal entries through the QuickBooks Online Accounting API v3, a REST service authenticated with OAuth 2.0 Authorization Code flow. The API uses a realm ID captured during OAuth authorization to identify the company, and each access token is valid for 1 hour while refresh tokens rotate every 24 to 26 hours. QuickBooks offers webhooks on Create/Update/Delete/Merge/Void events for most entities, and also publishes a CDC endpoint for polling with 30-day history. Webhook payloads contain only entity ID and operation type, requiring a fetch of the full record via REST.

How Anaplan works

Anaplan is a cloud planning platform holding workspaces, models, lists, modules, and line items. It exposes data through a REST Integration API v2.0 authenticated with Basic Authentication, Certificate-Based Authentication, or OAuth2 (Authorization Code or Device Grant). Anaplan supports polling only; there are no outbound webhooks or push mechanisms. Bulk data movement uses named Import and Export Actions inside a model, which must be created before the API can use them. Anaplan enforces a 600-request-per-minute rate limit across all integrations in a workspace, returns HTTP 429 when the limit is exceeded, and locks models during bulk operations to prevent concurrent reads. File uploads are limited to approximately 50 MB per request.

What moves between them

Invoices, bills, payments, vendors, and accounts flow from QuickBooks Online into Anaplan models on a schedule you define. Each record is created as a list item or module line item inside an Anaplan model, mapped to the appropriate list (for example, vendors map to a Vendor List, invoices to a Transaction module). Updates to existing records are reflected on the next sync run. Anaplan is planning-only and does not write back to QuickBooks Online. Sync cadence is typically daily or weekly depending on your planning cycle.

How ml-connector handles it

ml-connector stores the QuickBooks OAuth credentials and realm ID encrypted in its database and uses the OAuth 2.0 flow to obtain an access token valid for 1 hour. When the token nears expiry, it automatically refreshes using the stored refresh token before it rotates. For each sync run, ml-connector calls the QuickBooks API to retrieve new or updated invoices, bills, vendors, and accounts using either the webhook-based notification list or the CDC polling endpoint, depending on your setup. It batches records into CSV or JSON payloads and calls the Anaplan Import Action API to load them into the target model. Anaplan's 600-request-per-minute rate limit is managed by queueing sync jobs and backing off on HTTP 429 responses. All imported records carry a transaction ID and audit timestamp so updates and replays can be tracked and deduplicated. The Anaplan model must have a pre-created Import Action for each entity type being loaded (Vendor, Invoice, Bill, Account, etc.).

A real-world example

A boutique management consulting firm uses QuickBooks Online for accounting and Anaplan for financial forecasting and scenario modeling across multiple client engagements. In the past, the finance team manually exported invoices and expense records from QuickBooks each week and pasted them into Anaplan spreadsheets to update the expense forecast, a process that was error-prone and often out of sync with actual spend. With QuickBooks Online and Anaplan connected, each invoice and bill created in QuickBooks automatically appears in Anaplan's cost model within 24 hours, so forecasts always reflect the latest invoiced expenses. Month-end reconciliation now compares Anaplan forecasts to actual QuickBooks totals with no manual re-keying.

What you can do

  • Pull invoices, bills, and payment records from QuickBooks Online and load them into Anaplan models as list items or line items on a scheduled sync.
  • Map vendors and accounts between QuickBooks Online and Anaplan lists to ensure consistency across planning and accounting.
  • Automatically refresh OAuth 2.0 access tokens and manage realm ID per customer so credential expiry does not disrupt the sync.
  • Batch import records into Anaplan in compliance with the 600-request-per-minute rate limit and retry with backoff on transient failures.
  • Maintain an audit trail of every imported record with transaction ID and timestamp so updates and replays are traceable.

Questions

Does Anaplan write data back to QuickBooks Online?
No. Anaplan is a planning and forecasting tool, not an ERP. ml-connector pulls data from QuickBooks Online into Anaplan but does not write back. Anaplan is read-only in this integration.
How does ml-connector handle QuickBooks OAuth token expiry?
ml-connector stores the OAuth credentials and realm ID encrypted and monitors the access token expiry time. When the token is within 5 minutes of expiry, it automatically calls the QuickBooks refresh endpoint to obtain a new token before the old one expires. Refresh tokens rotate every 24 to 26 hours, and ml-connector tracks that rotation to ensure continuous authentication.
What happens when the Anaplan rate limit is hit?
Anaplan enforces a 600-request-per-minute limit across all integrations in a workspace. If ml-connector receives an HTTP 429 response, it pauses, backs off exponentially, and retries. For large syncs, ml-connector queues the import jobs to spread requests over time and stay under the limit.

Related integrations

Connect QuickBooks Online and Anaplan

Free to use. Add your credentials, ping your real systems, and see if we fit.

Get started