Before You Start
This guide assumes you have active Stripe and QuickBooks Online accounts and a basic understanding of both platforms. It is designed for small business owners, e-commerce managers, and bookkeepers handling online sales.
Overview
What You’ll Learn
- How to prepare your QuickBooks accounts for Stripe data
- Setting up a connector for automated Stripe imports
- Mapping Stripe transaction types to QBO accounts
- Efficiently reconciling Stripe payouts with bank deposits
1. Preparation Steps
Before connecting anything, you need these accounts in QuickBooks:
Required Accounts
- Stripe Sales (Income)
- Stripe Fees (Expense)
- Stripe Payouts (Bank/Asset)
- Sales Tax Payable (Liability)
Optional (but recommended)
- Stripe Refunds (Expense)
- Stripe Discounts (Income Reduction)
- Stripe Liabilities (e.g., for disputes)
2. Choosing Your Sync Method
You have two main options, each with serious pros and cons.
Method A: Manual Import / Basic QBO Integration
This involves manual CSV imports or basic, limited direct integrations.
- No extra cost for software.
- Good for very low transaction volume.
- Direct QBO CSV import available.
- Time-consuming manual work.
- Error-prone without automation.
- Reconciliation can be complex.
Method B: Third-Party Connectors (Synder, Bookkeep)
These are paid apps that offer far more control and automation.
Expert Tip: We strongly recommend using a third-party connector like Synder or Bookkeep. They automatically handle gross sales, fees, and refunds, posting a single journal entry per payout that perfectly matches your bank deposits from Stripe, making reconciliation a one-click process.
3. Step-by-Step: Syncing with a Connector
Here is the high-level workflow for a clean setup.
The ideal workflow involves Stripe sending data to a specialized connector (like Synder or Bookkeep), which then processes and posts summarized transactions into QuickBooks Online. This ensures all revenue, fees, and payouts are accurately recorded and easily reconcilable.
Here is a sample code block to show how a Stripe webhook payload might look.
{
"event_id": "evt_00000000000000",
"type": "charge.succeeded",
"data": {
"object": {
"id": "ch_00000000000000",
"amount": 10000,
"currency": "usd",
"status": "succeeded",
"metadata": {
"customer_email": "[email protected]",
"order_id": "ORD-2023-010"
},
"balance_transaction": "txn_00000000000000"
}
}
}
4. Setting Up Your Chosen Connector (e.g., Synder/Bookkeep)
- 1
Connect Stripe to Connector
Authorize your chosen connector (e.g., Synder, Bookkeep) to access your Stripe account data. Follow the on-screen prompts for secure authentication.
- 2
Connect Connector to QuickBooks
Link your QuickBooks Online company file to the connector. Ensure you grant necessary permissions for data synchronization.
- 3
Map Your Accounts
Carefully map Stripe transaction types (sales, refunds, fees, tips, transfers) to their corresponding income, expense, asset, and liability accounts in QuickBooks. This is crucial for accurate reporting.
Common Error: Netting Transactions Directly
Avoid directly posting net Stripe deposits to income. Instead, record gross sales, separate fees, and then reconcile the payout. This provides a clear audit trail and accurate financial statements.
5. Testing Your Setup
Test Import Checklist
- Import a test payout from a recent period
- Verify gross sales, fees, and refunds match Stripe reports
- Check sales tax calculations are correctly recorded
- Confirm the imported payout amount matches your bank deposit
Need Help?
Get Support
Having trouble with your setup? Our team can help troubleshoot your specific workflow.
Contact Us