Excellent discussion! As a CPA, I want to add the tax and compliance perspective because this is where many businesses get into trouble with embedded finance accounting.
Critical Tax Issue #1: Gross Revenue vs Net Deposits
The IRS doesn’t care what hit your bank account. They care about gross revenue.
If you only track the net deposits ($94.80 in Fred’s example), but Stripe reports $100 in gross charges on your 1099-K, you’ve got a mismatch that will trigger audit flags.
What You MUST Track
- Gross sales: $100 (what customer paid)
- Processing fees: $3.20 (deductible expense on Schedule C line 10)
- Platform commission: $2.00 (deductible expense)
- Net deposit: $94.80 (what hits your bank)
Your books need to show all four numbers clearly, with an audit trail connecting them.
Critical Tax Issue #2: Revenue Recognition Timing
This depends on your accounting method:
Cash Basis (most small businesses):
- Record revenue when customer pays Stripe (March 20)
- NOT when you receive the bank deposit (March 22)
- Why? Because the money is legally yours on March 20, even though it’s in Stripe’s custody
Accrual Basis:
- Record revenue when customer commits to purchase (potentially even earlier)
- The 2-day settlement lag is just a cash flow timing issue
Most of my embedded finance clients are cash basis, so I tell them: Revenue date = Stripe charge date, NOT bank deposit date.
Critical Tax Issue #3: Platform Reserves Create Timing Problems
This is subtle but important for year-end tax:
If Stripe is holding $2,000 in reserves on December 31st:
- That $2,000 is YOUR money (you owe tax on it)
- Even though you can’t access it yet
- It should show as Assets:StripeConnect:Reserve on your balance sheet
- The revenue was recognized when customers paid (potentially months ago)
Common mistake: Only recognizing revenue when reserves are released. This defers taxable income artificially and will cause problems in an audit.
Critical Tax Issue #4: 1099-K Reconciliation
Stripe will send you (and the IRS) a 1099-K showing gross payment volume. For 2026, the threshold is $5,000 (it changed from $20,000 in previous years).
Your tax return needs to reconcile:
- Line 1 (Gross receipts): Should match your Revenue:Sales:Gross account
- Should match the 1099-K (or explain differences)
- Processing fees go on Line 10 (Contract labor)
- Net effect: Taxable income = Gross - Fees
If your books only show net deposits, you can’t complete this reconciliation.
Recommended Beancount Structure (CPA Perspective)
; When customer makes purchase (charge date = revenue date)
2026-03-20 * "Stripe Connect sale" ^charge-id:"ch_abc123" ^payout-id:"po_xyz789"
Assets:StripeConnect:Pending 94.80 USD ; What you'll receive
Expenses:Fees:Processing:Stripe 3.00 USD ; Deductible
Expenses:Fees:Platform 2.20 USD ; Deductible
Revenue:Sales:Gross -100.00 USD ; Matches 1099-K
; When payout settles to bank (2 days later)
2026-03-22 * "Stripe payout batch po_xyz789"
Assets:Bank:BusinessChecking 1,247.38 USD
Assets:StripeConnect:Pending -1,247.38 USD
; Year-end: Reserves still held by Stripe
2026-12-31 * "Document Stripe reserves for balance sheet"
Assets:StripeConnect:Reserve 2,000.00 USD
Assets:StripeConnect:Available -2,000.00 USD
For Tax Season Prep
Make sure your system can generate these reports:
- Total gross revenue (must match 1099-K)
- Total processing fees (Schedule C deduction)
- Reserve balance at year-end (balance sheet)
- Reconciliation showing: Bank Deposits + Reserves = Gross Revenue - Fees
Pro Tip: Quarterly Estimated Taxes
Don’t forget: You owe tax on revenue held in Stripe reserves, even if you haven’t received the cash yet.
If you have $2,000 in reserves on March 31, you need to include that revenue in your Q1 estimated tax payment. I see a lot of businesses get surprised by this.
Bob’s Refund Handling Note
@bookkeeper_bob is spot on about non-refundable fees! One addition:
2026-03-21 * "Customer refund" ^refund-id:"re_def456"
Revenue:Sales:Gross 100.00 USD ; Reverse revenue
Expenses:Fees:Processing:NonRefundable 3.00 USD ; Stripe keeps this\!
Assets:StripeConnect:Available -103.00 USD
For tax purposes, the $3 non-refundable fee stays as a deductible expense. You gave back $100 in revenue but permanently lost $3 to Stripe.
Bottom Line
The key to audit-proof books:
- Track gross revenue (matches 1099-K)
- Track all fees separately (deductible expenses)
- Revenue date = charge date (not deposit date)
- Document reserves clearly
Happy to answer any specific tax questions about embedded finance scenarios!