SheetStatement
Reconciliation

Reconcile Stripe Payouts to Your Bank Statement

Match Stripe payouts to bank deposits, break each payout into sales, fees, refunds and disputes, and record gross revenue correctly in Excel or your books.

SheetStatement Team11 min read

On this page

TL;DR A Stripe payout that lands in your bank account is a net figure: customer charges minus Stripe fees, refunds, disputes and other adjustments, bundled together. To reconcile, match each bank deposit to a payout in Stripe by amount and date, then use Stripe's payout-level reporting to break the payout into its parts. Record gross sales as income, fees as an expense, and refunds and disputes separately, so the net equals the bank deposit. Do the same in Excel with a simple payout table, or in accounting software with a clearing account.

If you sell through Stripe, your bank statement probably shows a series of deposits labelled with "STRIPE" and a reference. None of them match any single invoice or order. One might be $1,184.32, the next $2,907.15. Your accountant asks what your gross revenue was last quarter, and the honest answer is that you're not sure, because the deposits are net of fees and refunds.

This is one of the most common reconciliation problems for online businesses, subscription products, and anyone who takes card payments through a processor. This guide explains how payouts work in general terms, how to match them to your bank statement, and how to record them so your books show the real picture. Stripe updates its dashboard and report names from time to time, so we describe them in general terms; Stripe's own documentation is the authoritative reference.

This article is general bookkeeping information, not accounting or tax advice. Ask your accountant how they want processor activity recorded for your business.

How a payout is built

When a customer pays you through Stripe, the money doesn't go straight to your bank. It goes into your Stripe balance. Stripe deducts its processing fee, and after a waiting period the funds become available. On your payout schedule, Stripe sends the available balance to your bank account as a payout.

Between one payout and the next, many things can affect the balance:

Activity Effect on the payout
Customer charges Increase
Stripe processing fees Decrease
Refunds to customers Decrease
Disputes (chargebacks) Decrease, plus a possible dispute fee
Disputes won Increase when funds are returned
Other fees, such as for additional Stripe products Decrease
Adjustments and reserves Either direction

The payout is the net of all of these. So a single bank deposit might represent forty charges, one refund, a dispute and all of the associated fees. That's why matching deposits to invoices directly doesn't work.

The goal of reconciliation

You're trying to prove two things:

  1. Every payout in Stripe arrived in your bank, and every Stripe deposit in your bank corresponds to a payout. This is the bank-side match.
  2. Each payout is fully explained by charges, fees, refunds, disputes and adjustments. This is the breakdown, and it's what lets you record gross revenue and fees correctly.

Once both are done, your books show gross sales as income, fees as an expense, refunds and disputes properly, and a bank balance that matches the statement.

Step 1: Get your bank deposits into a spreadsheet

Start with your bank statements for the period. Convert them to a spreadsheet with date, description and amount. If you only have PDFs, SheetStatement converts them and checks each statement balances. Then filter the descriptions for Stripe deposits.

You'll end up with a list like:

Bank date Description Amount
2026-08-04 STRIPE TRANSFER 1,184.32
2026-08-06 STRIPE TRANSFER 2,907.15
2026-08-11 STRIPE TRANSFER 864.90

The exact description varies by bank; it usually includes "Stripe" and often a reference you can use for matching.

Step 2: Export your payouts from Stripe

In the Stripe Dashboard, you can view your payouts and their amounts, dates and statuses, and export them. Export the payouts for the same period, plus a few days either side, because a payout initiated on the last day of a month may arrive in the bank at the start of the next.

Your payout list will look something like:

Payout ID Arrival date Amount Status
po_...A 2026-08-04 1,184.32 Paid
po_...B 2026-08-06 2,907.15 Paid
po_...C 2026-08-11 864.90 Paid

Step 3: Match payouts to bank deposits

Put both lists in the same workbook. Matching on amount usually works, with date as a tiebreaker. In the bank list, add a column that looks up the payout:

=XLOOKUP(C2, Payouts[Amount], Payouts[Payout ID], "NOT FOUND")

If two payouts share the same amount, add a date check, or match on amount and the closest arrival date.

Then check both directions:

  • Bank deposits with no payout might be a different processor, a manual transfer, or a payout outside your export range.
  • Payouts with no bank deposit might be in transit, failed, or sent to a different bank account. Check the payout status in Stripe.

A failed payout is typically returned to your Stripe balance and included in a later payout, so you may see the funds arrive later as part of a larger amount.

Step 4: Break each payout into its parts

Now the important part. For each payout, you need the totals of charges, fees, refunds, disputes and adjustments that make it up.

Stripe provides reporting that ties balance activity to payouts, including a payout reconciliation report and the ability to see the balance transactions included in each payout. Export that detail for the period. Each row is a balance transaction with a type (such as charge, refund, dispute or fee-related adjustment), a gross amount, a fee, a net amount, and the payout it belongs to.

Summarize it by payout and type with a pivot table: Payout ID in rows, transaction type in columns, and sums of gross amount and fee in values. You'll get a breakdown like this:

Payout Charges (gross) Refunds Disputes Fees Net = payout
po_...A 1,260.00 -40.00 0.00 -35.68 1,184.32
po_...B 3,050.00 0.00 -55.00 -87.85 2,907.15
po_...C 900.00 0.00 0.00 -35.10 864.90

These numbers are illustrative; yours come straight from your export. The key check is the last column: the parts must add up exactly to the payout amount, which must equal the bank deposit. If any row doesn't, something is missing from the export or the payout includes an adjustment you haven't captured.

Step 5: Record it in your books

How you record this depends on whether you use a spreadsheet or accounting software.

In a spreadsheet

Add a "Stripe breakdown" sheet with one row per payout and the columns above. In your main transaction table, the bank deposit stays as one line, categorized as "Stripe payout". Your income and expense summaries then use the breakdown sheet for gross sales, refunds, disputes and fees instead of the net deposit.

The check at the bottom of the sheet: total net of all payouts equals the total of Stripe deposits on the bank statement for the period, allowing for payouts in transit at the start and end of the period.

In accounting software: the clearing account method

A widely used approach is a clearing account, sometimes called a Stripe clearing or undeposited funds-style account:

  1. Record sales into the clearing account at their gross amount, with the matching income.
  2. Record fees as an expense out of the clearing account.
  3. Record refunds and disputes out of the clearing account.
  4. Record the payout as a transfer from the clearing account to your bank account. This is the line that matches the bank deposit.

When everything is recorded, the clearing account returns to zero after each payout, apart from funds still waiting to be paid out. A clearing account that keeps growing or goes negative means something is missing.

Many businesses use integrations or apps that post Stripe activity into accounting software this way automatically. If you do, you still want to reconcile the bank side monthly and check that the clearing account behaves. Ask your accountant which method they prefer.

When reconciling the bank account itself, the Stripe payout is matched to the transfer from the clearing account. Our guides to Xero bank reconciliation and importing bank statements into QuickBooks Online cover the bank side.

A reusable monthly reconciliation workbook

If you reconcile Stripe in Excel every month, a fixed workbook layout saves a lot of time. Four sheets are enough:

1. Bank. Your converted bank transactions for the month, with a Stripe flag column (=ISNUMBER(SEARCH("STRIPE", B2))) and a matched payout ID column.

2. Payouts. The Stripe payout export for the month plus a few days either side, with a matched bank date column that looks back at the Bank sheet.

3. Activity. The balance transaction export with payout IDs, loaded as a table.

4. Summary. A small grid that answers the questions your accountant will ask:

Line Source
Gross charges Sum of charge amounts in Activity for payouts that arrived this month
Refunds Sum of refund amounts
Disputes and dispute fees Sum of dispute-related amounts
Stripe fees Sum of fee amounts
Other adjustments Everything else
Net payouts Sum of the above, which must equal total payouts
Stripe deposits on bank statement Sum of flagged Bank rows
Difference Net payouts minus bank deposits, which should be zero or explained by payouts in transit

Each month, paste in the three exports, refresh the pivot tables, and check that the Difference line is zero or fully explained. If you load the exports through Power Query from a folder, the refresh is a single click.

Keep the workbook for each month alongside the bank statements and the Stripe exports. If anyone later asks how you arrived at your revenue figure, you can show every step from the customer charge to the bank deposit.

Two habits keep this reliable. First, always use the same date basis: either the payout arrival date or the transaction date, consistently, so months don't overlap. Second, never edit the exported data by hand; if something looks wrong, fix it in Stripe or add a clearly labelled adjustment row with a note. Our guide to finding bank reconciliation discrepancies has more techniques for tracking down a stubborn difference.

Month-end timing differences

Payouts don't line up with calendar months. A charge on August 30 may be paid out on September 2. That creates timing differences:

  • Sales in August, payout in September: August income includes the sale, but the bank deposit is in September. At the end of August, the funds sit in your Stripe balance or the clearing account.
  • Refund in September for an August sale: The refund belongs to September.

For month-end, compare your clearing account balance (or your spreadsheet's "pending" figure) with the Stripe balance at the end of the month. They should agree, give or take amounts in transit. Our month-end close checklist has a slot for processor clearing accounts.

Common problems and fixes

A bank deposit doesn't match any payout amount. Check payouts just outside your date range, and check whether two payouts arrived on the same day and the bank combined them on the statement, which some banks do. If so, sum the payouts for that date.

The breakdown doesn't add up to the payout. The export may be missing a transaction type, such as a dispute fee, a reserve release or a fee for another Stripe product. Look at every type in the export, not just charges and refunds.

Fees seem too high or too low. Different payment methods, international cards and currency conversion can carry different fees. Check the fee on individual transactions rather than estimating.

Refunds made after the original payout. A refund reduces a later payout, not the one that contained the original sale. That's normal; record the refund when it happens.

Disputes. When a dispute is opened, the disputed amount and any dispute fee are typically deducted from your balance. If you win, the amount is returned later. Record both movements, and keep notes so you can follow the dispute through.

Multiple currencies. If you sell in several currencies, payouts may be converted to your bank account's currency. Work in the payout currency for matching, and ask your accountant how to handle conversion differences.

Other processors. The same method applies to PayPal, Square, Shopify Payments and other processors that pay out net amounts. Each has its own reports, but the logic of gross, fees, refunds and net is the same.

A worked example

A small software company sells subscriptions through Stripe and receives several payouts a week. The founder has been recording each Stripe deposit as revenue, and the accountant has asked for gross revenue and fees for the quarter.

  1. Bank side. Three months of bank statements are converted and filtered for Stripe deposits: 38 deposits in total.
  2. Payout export. Stripe payouts for the quarter, plus a week either side, are exported.
  3. Match. 37 deposits match a payout by amount. One deposit matches no single payout; it equals the sum of two payouts that arrived the same day.
  4. Breakdown. Balance transactions for the quarter are exported with their payout IDs and summarized with a pivot table. Each payout's parts sum exactly to its amount.
  5. Record. In accounting software, the founder's previous entries (deposits as revenue) are replaced with the clearing account method: gross subscription revenue, Stripe fees, refunds and one dispute.
  6. Check. The clearing account balance at quarter end matches the Stripe balance not yet paid out.

The result: the quarter shows gross revenue higher than the deposits suggested, fees appear as an expense, and the bank account still reconciles to the statements.

Why it matters

Recording net payouts as revenue understates both income and expenses. That can distort margins, make it harder to see what payments actually cost you, and create mismatches if a processor issues income reporting based on gross amounts. Clean gross-and-fees records also make reviews by lenders, buyers or auditors much smoother. See our guide to preparing bank statements for an audit for related tips.

Start with clean bank data

Upload your bank statement PDFs to SheetStatement, confirm each balances, and download Excel or CSV to match against your Stripe payouts. The free plan covers 3 pages a month; paid plans are $9, $19 or $39 a month. Our free balance checker is handy for confirming statements are complete.

FAQ

Why doesn't my Stripe deposit match my sales?

The payout is net of Stripe fees, refunds, disputes and adjustments, and it bundles many transactions together. Break it down using Stripe's payout-level reporting.

Should I record Stripe payouts as revenue?

Generally, bookkeepers record gross sales as revenue and fees, refunds and disputes separately, with the payout recorded as a transfer to the bank. Ask your accountant how they want it handled.

What is a Stripe clearing account?

An account in your books that receives gross sales and pays out fees, refunds and payouts. It should return to near zero after each payout, apart from funds not yet paid out.

How do I handle payouts that cross month end?

Record sales when they happen. Funds not yet paid out sit in your Stripe balance or clearing account at month end and arrive in the bank the next month.

What if two payouts appear as one bank deposit?

Sum the payouts that arrived on that date and match the total to the deposit.

Does this work for PayPal or Square too?

Yes. Other processors also pay out net amounts. Use their reports to break payouts into gross sales, fees and refunds, and apply the same matching approach.

Related articles

Convert your first statement free

3 pages a month on the free plan. No credit card.