Stripe Payout Reconciliation Example
A Stripe walkthrough showing how charges, fees, refunds, and payout support explain one bank deposit.
Try with sample files | View sample report
Problem statement
A Stripe bank deposit looks lower than the payment total. The example shows how a payout-first review separates gross customer payments from the deductions and timing fields that actually explain the deposit.
Numeric example
| Line item | Amount |
| Gross Stripe charges | $1,000.00 |
| Refunds | -$100.00 |
| Stripe fees | -$32.00 |
| Dispute adjustment | -$15.00 |
| Expected payout | $853.00 |
| Bank deposit | $853.00 |
Why Stripe payout may not match bank deposit
- Gross charges are not the same as the net payout that reaches the bank.
- Fees, refunds, disputes, and adjustments sit in the balance-transactions export, not just in the charge list.
- Payout date and bank arrival date can differ even when the payout is correct.
- The payout ID is stronger evidence than an amount-only comparison against the bank.
What files to export
- Stripe charges or payments export with gross payments, dates, customer references, and amounts.
- Stripe balance transactions export with fees, refunds, disputes, adjustments, payout ID, and net amount.
- Stripe payouts export with payout ID, arrival date, status, and net payout amount.
- Bank statement export with deposit amount, date, and bank description for the Stripe transfer.
Manual workflow
- Group balance-transaction rows by payout ID.
- Separate charges, fees, refunds, disputes, and other adjustments.
- Compare the grouped net amount to the payout report before the bank match.
- Match the payout report to the bank deposit by amount, timing, and reference.
- Keep unsupported shortfalls in review instead of assigning a precise cause too early.
Common mistakes
- Matching the bank deposit directly to gross customer charges.
- Ignoring non-charge balance-transaction types inside the same payout cycle.
- Treating payout timing gaps as proof of a real cash shortfall.
How Reconcile Locally helps
- Keeps payout support, balance-transaction rows, and bank rows in one local review flow.
- Separates matched deposits from amount differences, grouped-payment cases, and unknown bank rows.
- Exports a review-ready payout package before accounting handoff.
What still needs manual review
- Reserves, complex dispute flows, and weak bank references can still need manual confirmation.
- The example shows the review path, not the final ledger treatment.
Content review and sources
Written and reviewed by the Reconcile Locally product team. Last reviewed June 7, 2026.
Guidance is checked against current product behavior and first-party documentation where available. Reconciliation results still require human review.
Frequently asked questions
Why start from payout ID in a Stripe example?
Because the bank receives the payout-level net amount, and the payout ID is the cleanest link back to the component rows that explain it.
Should every lower Stripe deposit be called a fee difference?
No. The exports may only prove that a broader amount difference exists until more support is reviewed.