Home · Guide
Why a Stripe payout does not match the bank deposit
The bank is not missing money in the usual case. It received a net payout. Stripe’s sales list is gross charges. Those are different numbers. This page shows which two CSVs prove it, without connecting your Stripe account.
Need the check now? Open the in-browser explainer (first payout free; files stay in this tab).
What the bank line actually is
Stripe does not send each customer payment to your bank. It holds funds, then pays you on a schedule (often daily, two business days after the charge). That transfer is a payout. One payout can include many charges, plus negative items.
A typical net looks like:
payout amount = charges − Stripe fees − refunds − disputes/adjustments ± other balance transactions in that payout
If you sum Payments (successful charges) for “today” and compare that sum to today’s bank credit, it will almost never match. Wrong grain: charges vs payout. Wrong clock: charge date vs payout arrival date.
Stripe’s own reconciliation model is: list balance transactions filtered by payout id. The sum of those rows should equal the payout, to the cent. Then match that payout amount to the bank deposit (allowing for weekends and bank posting lag).
Export the two CSVs (no API)
- Payouts CSV. Dashboard → Payouts (under Balances, or Payments → Payouts). Use Export. You need at least payout id, amount, currency, and arrival/created date. This file is the list of bank-sized numbers.
- Balance transactions CSV. Dashboard → Reports → Balance / balance change from activity (wording moves around). Export transactions and include the payout id. This file is the ingredients:
charge,stripe_fee,refund,dispute, payout itself, and other types. - Do not start from Payments-only. A charges export without payout id cannot tell you which bank line a fee or refund belongs to.
- Optional: your bank CSV, if you want amount matching. The paid plan of the tool can lock that. The free run still explains the first payout in the file.
Paths above follow the current Dashboard. Stripe renames menus; if Payouts moved, search the Dashboard for “Payouts” and export from that table. Reports remain the place for a full balance-transaction dump.
Mistakes that look like a “missing deposit”
- Refunds on a later payout. Refunding Tuesday money often reduces Friday’s payout, not Tuesday’s.
- Stripe keeps the original processing fee on many refunds. The customer gets the full charge back; your net is worse than “minus the sale.”
- Disputes and reserved funds. A dispute hold or rolling reserve can shrink a payout without a matching “sale” row in the week you are staring at.
- Two payouts, one bank line (or the reverse). Some banks merge same-day credits. Some Stripe accounts send more than one payout per day.
- Still in transit. Payout status can be paid in Stripe before the bank posts it. Arrival date ≠ charge date.
- Connect / platform payouts. If you are a connected account, the platform’s split is not your customer’s charge. This tool is for a standard Stripe payout CSV, not a marketplace settlement file.
What this site does (and does not)
The Stripe payout explainer joins those two CSVs in your browser and writes one sentence per payout: this bank-sized amount is these charges minus these fees minus these refunds. It is not tax advice. It does not replace A2X, QuickBooks, or Xero. It does not post a journal. It answers the founder/bookkeeper question: “What is this deposit?”
FAQ
Why doesn’t my Stripe payout match the bank deposit?
Compare payout-to-bank, not charge-to-bank. The deposit is net of fees, refunds, and other balance transactions in that payout. Gross sales will be larger.
Which two Stripe CSVs do I need?
Payouts export + Balance transactions export with payout id. Payments-only is the wrong grain.
Do refunds hit the same payout as the original charge?
Often no. They usually reduce a later payout. That is the usual “this week’s sales look fine but the deposit is short” case.
Is this A2X or bookkeeping software?
No. No OAuth, no general ledger. One job: explain a payout line from CSVs in the browser.
Do you upload the files?
No. Unpack runs locally in the tab.
Not affiliated with Stripe. Official payout docs: Receiving payouts and Payout reconciliation.