How to Embed QuickBooks Sync on Your Stripe Connect Platform

Most Stripe Connect platforms never journal fees, refunds, or payout deposits into QuickBooks. Stripe now offers an endorsed embedded path. Here's how it...

Acodei Content Team · 4/30/2026 · 10 min read

If your platform processes payments through Stripe Connect, your merchants likely have an accounting problem you haven't solved yet. A Stripe Connect QuickBooks integration that covers invoices, fees, refunds, and payout deposits is something most platforms never ship. Invoices might flow into QuickBooks Online, but Stripe fees, refunds, and payout deposits almost certainly don't.

This gap is structural, baked into how Stripe Connect works, and it touches every vertical: course platforms like Teachable and Podia, field service tools like Jobber and Housecall Pro, fitness software like Mindbody and Wodify, nonprofit tools like Donorbox and Givebutter, and CRMs like HoneyBook and HighLevel. The branded payments layer ("Kajabi Payments," "Jobber Payments," "Mindbody Payments") obscures the fact that it's all Stripe Connect underneath, and most of these platforms don't journal the settlement activity into QBO automatically.

Stripe now offers an endorsed path to fix this. Here's how to integrate it.

The Accounting Gap Every Stripe Platform Ships With

Every Stripe Connect platform follows the same general pattern. A charge is facilitated, Stripe deducts its fee, and the net amount lands in the merchant's bank account as a payout deposit. QBO rarely sees the fee or the gross-to-net breakdown.

Merchants on Jobber might get invoices pushed to QBO, but the 2.9% + 30¢ per transaction stays off-ledger. Mindbody merchants face similar gaps. Teachable creators export CSVs. Donorbox organizations rely on Zapier workarounds or manual journal entries to reconcile what actually hit their bank account versus what QBO thinks should be there.

What this looks like in practice: bank feeds show lump-sum deposits that don't match any single invoice. Reconciliation becomes a monthly headache, and most small businesses just skip it, leaving their books perpetually inaccurate.

What Is an Embedded QuickBooks Integration?

An embedded QuickBooks integration is one your platform hosts inside its own UI. Merchants authenticate with QBO, configure sync preferences, and monitor the connection without ever leaving your dashboard — the integration functions as a native feature, not a third-party tool the merchant has to discover on their own.

The contrast is a direct Stripe-to-QBO connection that a merchant sets up themselves outside your platform, typically via the Stripe App Marketplace. That works fine when merchants have full Stripe dashboard access. For platforms on Express or Custom Connect (which is most of them), embedded is the only viable model — merchants on those Connect types can't install Stripe Apps themselves.

How Stripe's Embedded Apps Framework Works

Stripe provides a framework called Connect embedded components for Stripe Apps, currently in Private Preview. This framework lets platforms render third-party app UIs natively inside their own dashboards using the Connect.js SDK.

The accounting-specific implementation is documented separately. Acodei ("QuickBooks Sync by Acodei") is the named reference implementation in Stripe's official documentation for embedded QBO and Xero integrations. Stripe chose Acodei as the featured partner for this use case, which carries meaningful weight if you're evaluating who to trust with your merchants' accounting data.

The architecture is straightforward: your frontend loads Connect.js, renders Acodei's prebuilt UI components, and Acodei handles the QBO sync logic on the backend. In practice, this looks like dropping a <ConnectAccountInstallApp /> component into your dashboard's settings page. The component renders the OAuth handshake, the onboarding wizard, and the live connection status — your team writes none of the QBO-side logic. Your engineering team doesn't need to understand double-entry accounting or the QuickBooks API.

What Data Syncs to QuickBooks (and What Doesn't Without It)

With Acodei embedded, your merchants get real-time sync of:

  • Sales (gross transaction amounts)
  • Refunds (properly categorized, not just negative adjustments)
  • Stripe fees (mapped to expense accounts in QBO)
  • Payouts (deposit amounts matched to bank feeds)
  • Invoices
  • Tax (collected amounts journaled correctly)
  • Customers (synced or matched to existing QBO records)
  • Products (mapped to QBO items)

A few edge cases worth noting: multi-currency transactions, partial refunds, and historical backfill each require specific configuration. Acodei supports these scenarios, but merchants with complex refund patterns or transactions in multiple currencies should expect to spend a few extra minutes in the sync settings to get mappings right. If you're onboarding merchants with months of prior Stripe activity, ask Acodei about historical data import during setup.

Without an embedded sync, the typical platform default looks like this: invoices push to QBO (sometimes), and everything else requires manual journal entries. Fees accumulate invisibly. Payout deposits hit the bank feed as unexplained lump sums. Refunds create reconciliation mismatches that compound month over month.

The gap between these two states is the gap between books that close cleanly and books that require a bookkeeper to manually reconstruct Stripe activity from CSV exports.

Two Ways Your Merchants Can Connect

The path to QBO sync depends entirely on which Stripe Connect type your platform uses.

Standard Connect: Direct Merchant Auth

On Standard Connect, merchants own and control their own Stripe account. They can log into the Stripe dashboard, browse the Stripe App Marketplace, and install Acodei directly. Your platform doesn't need to do anything for these merchants to get QBO sync, though embedding it still creates a better experience.

Express and Custom Connect: Embedded Is the Only Path

On Express or Custom Connect, your platform controls the Stripe account on the merchant's behalf. Merchants can't access the Stripe dashboard or browse the Stripe App Marketplace. They have no path to self-install a Stripe App from their own dashboard.

If your platform runs Express or Custom Connect (and most SaaS platforms do), embedding Acodei through Stripe's framework is the only way your merchants get automated QuickBooks sync. The merchant simply does not have the access level required to set it up independently. (In theory, a determined merchant could attempt to reconcile manually using CSV exports and journal entries, but that defeats the purpose of automation and scales poorly.)

How to Build a Stripe Connect QuickBooks Integration with Acodei

The integration follows Stripe's embedded apps guide and requires five steps.

Step 1: Apply for Private Preview Access

Stripe's embedded apps framework for third-party Stripe Apps is in Private Preview. Your team needs to request access through Stripe, typically coordinated between your Stripe account manager and Acodei. This is a gating step, so start here before writing any code.

Step 2: Set Up Connect.js

Initialize the Connect.js SDK in your platform's frontend. Connect.js is Stripe's client-side library for rendering embedded components, and it handles authentication, session management, and secure communication between your UI and Stripe's infrastructure.

Step 3: Add the App Installation Component

Render Acodei's app-install embedded component in your platform dashboard. This is where merchants authenticate with QuickBooks Online. The auth flow is one-time: once a merchant connects their QBO account, they don't need to re-authenticate, even after token refreshes.

Step 4: Add the App Settings Component

Render the settings component so merchants can configure how their data syncs. This includes mapping products to QBO items, choosing how customer records are handled, setting payout deposit preferences, and selecting the right QBO accounts for fees and refunds. Acodei provides a guided onboarding wizard that walks merchants through these choices.

Step 5: Customize for On-Behalf-Of (OBO) Connect

If your platform uses destination charges (common on Express and Custom Connect), configure the integration for OBO mode. This ensures Acodei reads the correct underlying Stripe data for each connected account, rather than pulling from the platform's top-level Stripe account.

Build vs. Embed: The Cost Comparison

Building a QuickBooks Online integration from scratch is expensive and maintenance-heavy in ways that are easy to underestimate. You need engineers who understand the QBO API (which has its own quirks around journal entries, deposit objects, and entity references), plus CPAs to validate the accounting logic, plus ongoing maintenance as both Stripe and Intuit update their APIs.

A reasonable in-house estimate, factoring engineering salaries, CPA review, QA, and security audits, lands around $500K in year-one build cost, plus ongoing maintenance every quarter as Stripe and Intuit ship API changes. Time-to-launch typically runs 12 to 24 months. Those numbers vary with scope, but even a minimal integration covering just fees and payouts tends to balloon once you account for edge cases, multi-currency, refund permutations, and QBO API versioning.

Embedding Acodei through Stripe's framework compresses that timeline to weeks. Your team handles frontend component rendering. Acodei handles the accounting engine, QBO API maintenance, token management, and sync logic. There is no ongoing accounting logic for your team to maintain, which means no panicked escalations when QBO changes its API behavior or Stripe adjusts its fee structures.

ApproachYear-One CostTime to LaunchOngoing Maintenance
Build from scratch~$500K+12–24 monthsYour team owns all accounting logic
Embed AcodeiWeeks of frontend work2–4 weeksAcodei maintains sync engine

Platforms Already Using This Model

Multiple platforms are already live with embedded Acodei integrations. Kajabi and Thinkific are the two largest, and they're useful reference points because both publish their integration setup flows.

Kajabi uses Acodei to give its creators automated QBO sync covering sales, refunds, fees, payouts, and tax. The integration lives inside Kajabi's dashboard. Creators connect their QBO account once and get real-time sync from that point forward. Kajabi's integration documentation covers the full data scope.

Thinkific follows the same model. Course creators on Thinkific get the same automated sync of all Stripe settlement data into QBO, configured entirely within Thinkific's UI. Thinkific's integration documentation details the setup flow.

Both integrations cover the complete data scope: sales, refunds, fees, payouts, invoices, taxes, customers, and products. These are production implementations, not beta experiments — and they sit alongside several other live embedded deployments across the Acodei platform partner roster.

What Merchants Get After Setup

From the merchant's perspective, the experience is simple. They see a "Connect QuickBooks" option inside their platform dashboard. They authenticate once. Acodei's onboarding wizard walks them through sync configuration: which QBO accounts to use, how to handle products and customers, where payout deposits should land.

After that, sync runs in real time. Every sale, refund, fee, and payout deposit flows into QBO automatically. Bank feed reconciliation becomes a matter of matching Acodei's synced deposits to the amounts the bank reports, which should be a one-click match in most cases.

No CSV exports. No Zapier chains. No monthly bookkeeper sessions dedicated to reconstructing what Stripe actually did.

Frequently Asked Questions

Does this work if my platform uses Express or Custom Connect? Yes, and for Express and Custom Connect platforms, embedding is the only viable approach. Merchants on these Connect types can't access the Stripe dashboard or install Stripe Apps on their own, so the platform must embed the integration for them. Acodei's OBO (On-Behalf-Of) mode is designed specifically for this scenario.

What data does Acodei sync from Stripe to QuickBooks? Acodei syncs sales (gross amounts), refunds, Stripe processing fees, payout deposits, invoices, tax collected, customer records, and product mappings. Partial refunds and multi-currency transactions are supported with additional configuration.

How long does it take to integrate Acodei on a Stripe Connect platform? Most platforms complete the frontend integration in 2 to 4 weeks. The bulk of the work is rendering Acodei's embedded components via Connect.js and configuring OBO mode if you use destination charges. There is no backend accounting logic to build.

Do my merchants need their own Acodei account? No. Merchants interact with Acodei entirely through your platform's dashboard. They authenticate with QuickBooks Online via the embedded component, and Acodei manages the connection behind the scenes. There's no separate signup or login required.

What happens to historical transaction data? Acodei can backfill historical Stripe transactions into QBO, but the scope and timeline depend on the volume of prior activity. Discuss historical import needs with Acodei during onboarding so expectations are set before your merchants activate the sync.

Getting Started

If you're a platform operator running on Stripe Connect and your merchants need QBO sync, the integration path is straightforward. Contact Acodei to discuss embedding. Because the Stripe framework is in Private Preview, you'll coordinate access between Acodei and your Stripe account team.

The technical lift is a frontend integration measured in weeks, not a backend accounting project measured in quarters. Stripe has already named Acodei as the reference implementation for this exact use case. Kajabi, Thinkific, and a growing roster of other platforms are already live. The framework, the partner, and the documentation all exist. What remains is putting the components on your dashboard.

Three concrete next steps to start a build:

  1. Reach out to Acodei to scope your Connect type, charge model, and the data dimensions your merchants actually need synced.
  2. Loop in your Stripe account team to request Private Preview access for the embedded apps framework — this gating runs in parallel.
  3. Stand up a Connect.js sandbox in your staging environment so you can render the install + settings components against test merchants the day Stripe access lands.
Share

Automate your Stripe to QuickBooks sync

Save hours every month. Acodei automatically syncs your Stripe transactions, invoices, and payouts to QuickBooks Online.

Get more operational finance guides like this one

We will only send high-value product and finance content.