ml-connector
QuickBooks OnlineAirbase

QuickBooks Online and Airbase integration

QuickBooks Online tracks accounting and vendor records. Airbase handles accounts payable, vendor bills, and corporate card spend. Connecting the two keeps your vendor master and bill history aligned across both systems. Bills entered in Airbase flow into QuickBooks Online as bill records mapped to the correct vendors and accounts, vendor changes sync in both directions, and payments can be tracked across both platforms without re-keying. ml-connector manages the different auth schemes and syncs on a schedule you control.

How QuickBooks Online works

QuickBooks Online exposes vendors, customers, employees, bills, payments, purchase orders, journal entries, and general ledger accounts through the QuickBooks Online Accounting API v3, a REST API that uses OAuth 2.0 authorization code flow and requires a realm_id (company identifier) from the OAuth callback. Access tokens expire in one hour and refresh tokens rotate every 24 to 26 hours. QuickBooks Online supports webhooks for entity creates, updates, deletes, and merges, though webhook payloads contain only the entity ID and operation type, requiring a follow-up GET to fetch the full record. A CDC endpoint is also available for polling with 30 days of history.

How Airbase works

Airbase exposes bills, purchase orders, vendors, payments, GL accounts, and corporate card transactions through a REST API accessible via a static bearer token generated in the Airbase portal. The token is passed in the Authorization header with no publicly documented granular scopes. Airbase supports webhooks managed via the portal for events like purchase_request_approved, and the webhook signature verification method must be confirmed in the portal. GL accounts and subsidiaries are read-only since the connected ERP is the source of truth, and card transactions are also read-only.

What moves between them

The primary flow is Airbase into QuickBooks Online. Bills and purchase orders created in Airbase are read via polling or pushed via webhooks and written to QuickBooks Online as bills, with line items mapped to accounts and vendor records matched by name. Vendor records are synced in both directions so the master remains current on both sides. Payment records are read from Airbase and can be written to QuickBooks Online as bill payments or journal entries to keep the cash position aligned. GL accounts are read from both systems to validate mappings before writing.

How ml-connector handles it

ml-connector stores the Airbase bearer token encrypted and presents it on every request. For QuickBooks Online, it manages the OAuth 2.0 authorization code flow, caches the access token, and refreshes it before it expires, monitoring the refresh token rotation every 24 to 26 hours to catch token revocation. When reading from Airbase via webhooks, it deduplicates payloads that may arrive out of order or be repeated. Before writing a bill into QuickBooks Online, it validates that the vendor name exists in the vendor master and that each line item's GL account exists and matches the intended mapping. It handles QuickBooks Online's requirement for SyncToken values when updating records to manage concurrency, and it retries on rate limits and transient errors with exponential backoff. Bills cannot be hard-deleted in QuickBooks Online, so ml-connector marks them inactive when deletions are requested in Airbase. Every record carries a full audit trail showing the source, destination, timestamp, and any transformation applied.

A real-world example

A mid-sized SaaS company uses QuickBooks Online for accounting and Airbase for vendor bill approval and corporate card management across multiple departments. Before the integration, the finance team received bill approvals in Airbase and manually entered each one into QuickBooks Online, then spent hours every month reconciling the two systems and chasing discrepancies when bills were entered in one system but not the other. With Airbase and QuickBooks Online connected, approved bills flow automatically into the accounting system and land on the correct vendor and account, corporate card transactions are tracked in both places, and the month-end reconciliation process no longer requires manual re-entry or hunting for missing records.

What you can do

  • Write Airbase bills and purchase orders into QuickBooks Online as bills, mapped to the correct vendors and GL accounts.
  • Sync vendor records between Airbase and QuickBooks Online so the vendor master stays current on both sides.
  • Map Airbase payment records to QuickBooks Online bill payments and journal entries to track cash movement across both systems.
  • Manage OAuth 2.0 token refresh and rotation for QuickBooks Online and bearer token storage for Airbase, with encrypted credential storage.
  • Deduplicate webhook payloads, validate GL account and vendor names before writing, and maintain a full audit trail on every record.

Questions

Which direction does data flow between QuickBooks Online and Airbase?
The primary flow is Airbase into QuickBooks Online. Bills, purchase orders, and vendor records are synced from Airbase into QuickBooks Online, and vendor records are aligned in both directions. Payments can flow from Airbase into QuickBooks Online as bill payments or journal entries.
How does the integration handle QuickBooks Online's OAuth token refresh and expiry?
ml-connector monitors the OAuth access token expiry, which is one hour, and refreshes it before expiration. Refresh tokens rotate every 24 to 26 hours, so ml-connector tracks the refresh token lifecycle and detects revocation, which forces a new authorization cycle. This prevents auth failures from interrupting bill syncs.
What happens if a bill record already exists in both systems or if a vendor name does not match?
ml-connector deduplicates bills using the Airbase bill ID and checks for existing QuickBooks Online records before writing to avoid duplicates. For vendors, it validates that the vendor name exists in the QuickBooks Online vendor master before writing bill line items. If the name does not match exactly, the operator is alerted so the vendor master can be reconciled before retrying.

Related integrations

Connect QuickBooks Online and Airbase

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

Get started