Top summary
Reconcile Stripe at the payout level: post gross customer charges, fees, refunds, disputes, and balance movements to a clearing account, then match the resulting net settlement to the bank. Do not treat each bank deposit as sales revenue.
- A payout is a settlement batch, not a sales report.
- Use Stripe’s itemized payout data as the bridge between orders and the bank.
- Close only when the clearing balance, bank match, and exception log all agree.
Who is this for, and what decision should they make?
This is for an ecommerce founder or operator whose Stripe deposits no longer match the month’s orders after refunds, chargebacks, fees, and settlement delays. The decision is whether the month can be closed or whether the variance needs investigation before revenue, margin, or cash reporting is trusted.
The recurring questions behind this article were collected on 12 August 2026: “How do I reconcile Stripe payouts with my bank deposits?” from Collect for Stripe; “How do I reconcile Stripe in QuickBooks?” and “Why doesn't Stripe's native export work for bookkeeping?” from recurring questions displayed by StripeClose; “How do I reconcile Stripe payments in Xero?” from Reconkept; and “How does Stripe bank reconciliation work?” and “How do I reconcile each payout with the batch of transactions it settles?” from Stripe documentation. The final question is supported independently by Stripe’s Payout reconciliation report and Bank reconciliation documentation, both checked 12 August 2026.
Why do the order total and the deposit disagree?
Because the systems are answering different questions. Your store reports customer orders; Stripe reports balance activity and settlement; the bank reports money received. Stripe says its payout reconciliation report groups the transactions settled by each automatic payout, while its bank-reconciliation summary includes charges, refunds, disputes, adjustments, and fees. A Friday order can therefore be in a later bank deposit, and a current deposit can contain a prior-period refund.
| Layer | Best evidence | Question answered | Common mistake |
|---|---|---|---|
| Order | Store order ID and tax status | What did the customer buy? | Calling an order cash received |
| Stripe balance | Balance transaction and payout ID | What changed processor cash? | Ignoring fees or reversals |
| Bank | Deposit amount and value date | What settled? | Posting net deposit straight to revenue |
What is the payout-to-bank reconciliation map?
Use a dedicated Stripe clearing account. Each completed charge increases it; each fee, refund, dispute debit, reserve movement, or adjustment changes it; each payout transfers the net cleared amount to the operating bank. The map is deliberately different from a Shopify-payments workflow: its control key is the Stripe payout ID and itemized settlement batch.
- Freeze an accounting period and export the Stripe payout reconciliation itemized report plus the balance report if you use manual payouts.
- Map every completed charge to an order/invoice identifier and record gross revenue according to your revenue-recognition policy.
- Post fees separately; post refunds against the related sale or a returns/contra-revenue account under your policy; log disputes separately from ordinary refunds.
- Group the movements by payout ID. Net movement plus opening clearing balance must equal the payout transfer and ending clearing balance.
- Match the payout transfer to one bank line. If timing differs, retain both dates and the payout ID rather than forcing a false match.
Which exception should be investigated first?
Use this triage order: bank amount with no payout ID; negative or failed payout; dispute or reserve movement; payout with unmapped order IDs; then harmless settlement timing. Stripe notes that refunds and disputes deduct funds from the payments balance, and a reserve can hold funds that are unavailable for payout. These are cash-risk items, not formatting annoyances.
Definition of done: each payout has one bank disposition; the clearing account is explainable at the close date; unmatched items have a dated owner, evidence link, and next action; and no bank deposit has been posted as gross sales merely because it was received.
Worked hypothetical example: one payout, five movements
Hypothetical example, not a customer result. Assume a small apparel store has an opening Stripe clearing balance of $0. During a payout batch it has $12,000 completed charges, $360 processing fees, a $500 refund, a $700 disputed charge, and a $15 dispute fee. Its expected net payout is $10,425: $12,000 − $360 − $500 − $700 − $15. If the bank statement shows a $10,425 Stripe deposit, the bank leg can clear.
The operating interpretation is not “sales were $10,425.” The gross charges, return, dispute status, and fees remain separately visible. If the bank deposit is $9,925 instead, first check whether $500 was retained as a reserve or paid in another batch; do not plug the difference to revenue. This calculation excludes sales tax, currency conversion, platform commissions, and the question of when revenue is earned; those require the business’s own policy and may require an accountant.
What data must the operator retain?
Keep payout ID, balance transaction ID, charge/refund/dispute ID, order ID, currency, gross amount, fee, net amount, status, event date, payout date, bank reference, and resolution note. Stripe’s documentation allows itemized downloads and custom metadata in payout reports; put the ecommerce order ID into the processor metadata where your implementation permits it. That turns a support hunt into a traceable join.
What should the month-end close pack show?
Create one row per payout and retain a drill-down file underneath it. The row should show opening clearing balance, charges, fees, refunds, disputes, other adjustments, reserve movement, net payout, bank date, bank reference, and closing clearing balance. Separating the row from the supporting transactions gives a founder a fast control view while leaving an accountant enough evidence to reperform the result.
Use an exception status, not a blank cell. “Pending settlement” is different from “missing bank deposit”; “merchant disputes charge” is different from “dispute lost.” A closed period can contain open operational cases if their accounting effect, owner, and next evidence date are known. It cannot contain an unexplained plug that makes the clearing account appear to zero.
Common failure modes that create a false match
First, importing net payouts as revenue understates gross sales and hides payment costs. Second, matching refunds solely by refund date can double-count them when the underlying charge settled in an earlier payout. Third, clearing the account to zero at month-end without preserving pending balance activity confuses a timing difference with an error. Fourth, grouping all processor deductions as fees obscures disputes and reserve cash risk. Make each of these a review rule in the close checklist.
Self-check before sign-off
- Can every bank line be linked to a payout ID or documented as non-Stripe?
- Do itemized payout totals reproduce the net bank transfer without a manual plug?
- Are fees, refunds, disputes, and reserves visible in separate accounts or fields?
- Are open disputes labeled by status rather than assumed lost or won?
- Is the clearing-account balance explained by pending activity at the cutoff date?
When does this method need professional review?
Escalate if your business uses multiple currencies, marketplace/Connect flows, manual or instant payouts, customer deposits, deferred revenue, tax collected on behalf of authorities, or entity-specific reporting requirements. Stripe explicitly notes that it cannot identify the transactions within instant payouts; the business must reconcile those to transaction history. A bookkeeper or qualified accountant should confirm account mapping, revenue timing, tax treatment, and any formal financial statements.
Sources and last updated
Last updated: 12 August 2026. Primary sources: Stripe, Payout reconciliation report; Stripe, Bank reconciliation; Stripe, Balances and settlement time. Caigeek can help set up the data map, clearing-account close pack, exception ownership, and handoff files; outputs should be reviewed with the client’s accountant where applicable.
FAQ
Should Stripe fees reduce revenue?
Usually no: record customer charges at gross revenue and processing fees separately, subject to your accounting policy and adviser’s review.
Why does a Stripe payout not match this month's sales?
A payout is a settlement batch. It may include charges, fees, refunds, disputes, reserves, and timing from different dates.
What proves a Stripe payout is reconciled?
The itemized payout ties to the processor clearing account, the net amount ties to the bank deposit, and all exceptions have an owner and resolution note.
