ml-connector
QuickBooks OnlinePipedrive

QuickBooks Online and Pipedrive integration

QuickBooks Online runs your accounting and invoicing. Pipedrive manages your sales pipeline. When these two systems are connected, your sales team sees the latest customer master data and payment status in Pipedrive without reaching back to QuickBooks Online or re-entering records by hand. New customers and customer changes in QuickBooks Online flow into Pipedrive on a schedule you set, so Pipedrive always reflects the current billing picture.

How QuickBooks Online works

QuickBooks Online exposes customers, vendors, invoices, bills, payments, GL accounts, departments, classes, and journal entries through the QuickBooks Online Accounting API (v3) at https://quickbooks.api.intuit.com/v3/company/{realmId}. Requests use OAuth 2.0 Authorization Code flow, and access tokens expire in 1 hour while refresh tokens rotate every 24-26 hours. Webhooks fire on create, update, delete, merge, and void actions for most entities, though webhook payloads contain only the entity ID and operation - the full record must be fetched via GET. A CDC endpoint at /cdc supports polling with 30-day history. All creates and updates require exact object representation with SyncToken for concurrency control, and no hard deletes are permitted on customers, vendors, or accounts.

How Pipedrive works

Pipedrive exposes deals, organizations, persons, products, and related sales objects through REST API at https://api.pipedrive.com/v1/ and https://api.pipedrive.com/api/v2/. Requests authenticate with API token (x-api-token header scoped to a user) or OAuth2 bearer token. Pipedrive webhooks support both v1 format (action.object) and v2 format (separate action and entity fields) with HMAC-SHA256 signature verification. Custom fields are stored as opaque hashes and field definitions must be retrieved separately. Rate limits vary by plan: API token allows 20-120 requests per 2-second window, while OAuth allows 80-480. Pagination uses cursor-based pagination on v2 and collection endpoints (up to 500 per page) and offset-based on v1 (up to 500 per page).

What moves between them

Customer records flow from QuickBooks Online into Pipedrive. When a new customer is created in QuickBooks Online, ml-connector reads the full record, validates it, and creates or updates the matching organization in Pipedrive. Customer billing status, payment terms, and contact information sync on a daily or intra-day schedule you define. The flow is one-way: QuickBooks Online is the source of truth for customer master data.

How ml-connector handles it

ml-connector stores OAuth credentials encrypted for both systems and refreshes tokens independently as each expires - QuickBooks Online access tokens every hour and refresh tokens at their 24-26 hour rotation point, and Pipedrive bearer tokens on their returned lifetime. On the QuickBooks Online side, it polls the CDC endpoint or accepts webhooks (though webhook payloads require a second GET to fetch full records). On the Pipedrive side, it presents the organization name, billing address, and contact details from QuickBooks Online, mapping them to Pipedrive organization fields. When QuickBooks Online returns a 401 on token expiry, ml-connector refreshes and retries automatically. Pipedrive token budgets vary by plan (30,000 base tokens multiplied by plan multiplier), so ml-connector batches reads and limits write frequency to stay within budget. Every customer record carries a full audit trail and can be replayed if a webhook is missed or a token refresh fails.

A real-world example

A mid-market B2B services firm uses QuickBooks Online to invoice customers and manage accounting, and Pipedrive for sales pipeline tracking across four sales reps. Before the integration, sales reps had to search QuickBooks Online separately to check if a prospect was already a customer or review payment status on an open deal, slowing the sales process and creating duplicate records. With QuickBooks Online and Pipedrive connected, each new customer created in QuickBooks Online (after contract signature) automatically appears in Pipedrive as an organization, so sales reps see billing status, contact details, and order history without leaving the CRM. Month-end, the accounting team can quickly confirm that all invoiced customers are accurate in both systems.

What you can do

  • Sync new and updated customer records from QuickBooks Online into Pipedrive as organizations on a daily or intra-day schedule.
  • Bridge OAuth2 authentication on both sides, managing token refresh and expiry without manual re-authorization.
  • Validate customer data and map QuickBooks Online billing attributes to Pipedrive organization fields.
  • Retry on transient failures (token expiry, rate limit 429 responses) and track every sync in a full audit trail.
  • Handle webhook payloads from QuickBooks Online and reconcile with polling on the CDC endpoint for 30-day lookback.

Questions

Which direction does data flow between QuickBooks Online and Pipedrive?
Data flows one way, from QuickBooks Online into Pipedrive. Customer records, billing addresses, contact information, and payment terms sync from QuickBooks Online to Pipedrive as organization records. Deals and sales activity in Pipedrive do not flow back into QuickBooks Online - QuickBooks Online remains the source of truth for customer master data.
How does ml-connector handle QuickBooks Online's webhook payloads and token refresh?
QuickBooks Online webhooks contain only entity ID and operation, so ml-connector must fetch the full customer record via GET after each webhook fires. Access tokens expire in 1 hour and refresh tokens rotate every 24-26 hours, so ml-connector tracks both and refreshes each independently. When a 401 response indicates token expiry, ml-connector automatically refreshes and retries the failed request.
Why does Pipedrive have a token budget and how does ml-connector respect it?
Pipedrive's token budget is 30,000 per day multiplied by the plan multiplier (1x for Lite, 2x for Growth, 5x for Premium, 7x for Ultimate), and single entity reads cost 2 tokens while entity lists cost 20. ml-connector batches customer reads, limits write frequency to stay within budget, and uses cursor-based pagination to minimize list costs.

Related integrations

Connect QuickBooks Online and Pipedrive

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

Get started