Stripe Statement to Excel Converter
Turn Stripe payout and balance report PDFs into a clean Excel workbook. FlowParse reads each part of the report — sales, refunds, fees, adjustments, reserves and the payouts to your bank — and puts each on its own sheet with the report's own columns, plus a summary sheet with the merchant ID, period, currency, gross amount and net payout.
Scanned or digital · multi-page · every line preserved · review before export
From a Stripe PDF to a working spreadsheet
A fictional sample document converted by the same engine you get — flip through the source PDF and every export format, or download the files themselves.

If you can log in to the Stripe Dashboard, start there: every report can be downloaded as CSV, which opens in Excel. This converter is for the other case — when what you have is the PDF. An accountant receiving monthly PDFs from a client, an auditor working from a document pack, or an old report saved as PDF all end up with the same problem: the numbers are on the page, not in a spreadsheet.
Upload the PDF, check the preview and download Excel or CSV. Before export, the sections are added up and compared with the payout the report prints, so a missed line shows up before it reaches your books.
AI extraction, no templates
Reads this layout with no per-provider setup.
Labelled by type
Trades, income, transfers and fees kept distinct.
Every field preserved
Date, description, amount and every detail, 1:1.
Totals checked
Line items tie back to the statement summary.
What FlowParse extracts from a Stripe report
A Stripe report is not one table. A Balance summary report has a summary, a breakdown of balance change from activity by reporting category and a payouts section; a Payout reconciliation report groups the transactions in each payout by category — charges, refunds, fees and so on. FlowParse keeps that structure instead of flattening it into one long list.
The workbook opens on a Summary sheet with the merchant or account ID, the period, the currency, and the gross and net payout figures where the report prints them. After that comes one sheet per kind of section — Sales, Refunds, Fees, Adjustments, Reserves, Transfers — each keeping the report's own column headings in the same order, so the spreadsheet reads like the PDF.
| Field | Captured in the export |
|---|---|
| Summary sheet | Merchant or account ID, statement period, currency, gross amount and net payout, as printed |
| Sales | Charges and payments, with the report's own columns (date, description, gross, fee, net…) |
| Refunds | Refunds and reversed payments, kept as their own sheet |
| Fees | Processing and other Stripe fees, one sheet even when the report splits them into several tables |
| Adjustments & reserves | Disputes, corrections and any amounts held back |
| Transfers | The payouts to your bank account — the figure to match against the deposit |
Why gross, fee and net matter
The money customers pay is not the money that arrives in your bank. Stripe deducts its fees, refunds come out of the balance, and one payout bundles many transactions. Recording only the net deposit understates revenue and hides an expense.
With gross, fee and net kept as separate columns, your books can show the full revenue, the fees as an expense and the net figure that ties to the bank deposit — the way payment income should be recorded rather than collapsed into one number.
New to this? Read the guide on how to extract transactions from a PDF.
From PDF to clean data in three steps
1 · Upload the PDF
Drop one statement or many — digital or scanned, any number of pages.
2 · AI extracts & labels
Every line is read, labelled by type, amounts signed, weak pages retried.
3 · Review & export
Check the editable preview, then download Excel, CSV, QBO, OFX or Xero.
Convert to the format you actually need
The same extraction powers every export, so you only convert once and choose the output your next tool expects — a spreadsheet to analyse, a CSV for tax software, or a bank-feed file for your accounting tool.
| Format | Best for |
|---|---|
| Excel (.xlsx) | Analysis, totals and tax prep — clean line-item sheet |
| CSV | Importing into any tool, tax software or spreadsheet |
| .QBO / .OFX | QuickBooks & other accounting tools (cash activity) |
| Xero CSV | Xero's import & reconciliation |
Related: PDF to CSV, Bank Statement to Excel, Xero.
Reconcile payouts to your bank
Each payout is a single deposit on your bank statement. The Transfers sheet lists the payouts with their dates and amounts, so you can tick them off against the bank one by one.
If a deposit does not appear on the day you expect, check the date first: Stripe's reports group a payout by its estimated arrival date, and weekends, holidays and bank processing can move the day the money actually posts.
Stripe to Excel, CSV or your accounting tool
The same extraction powers every export. Take your Stripe data to Excel for revenue and fee analysis, CSV for another spreadsheet or tool, or .QBO, .OFX and Xero CSV to post it into your books.
It fits whether you are a founder reconciling your own payouts, a bookkeeper recording client revenue correctly, or an accountant closing the month.
Consolidate a year of Stripe reports
With Smart Merge you can upload a year of monthly Stripe PDFs and combine them into one workbook, with a source reference on every row so each figure can be traced back to its report.
That turns twelve reports into one reconciliation-ready file instead of twelve separate downloads.
Stripe's own export or a converter: which one you need
Stripe already lets you download your data. In the Dashboard, the Reports section has a Balance summary report and a Payout reconciliation report; each section has an Export or Download button, and CSV is available to every account. A CSV opens in Excel directly, so if you can log in, that is the fastest route to a spreadsheet — and the only complete one for very busy accounts.
A PDF converter is for when the CSV is out of reach. The account belongs to a client who sends monthly PDFs. The account was closed and only saved reports remain. An auditor received a document pack. Someone downloaded the summary PDF because it looked tidier and now needs the numbers in rows. In each case the data exists only on the page, and retyping it is where mistakes start.
| Your situation | Best route | Why |
|---|---|---|
| You can log in to the Stripe Dashboard | Download the report as CSV and open it in Excel | Complete data, every column you choose |
| You have the PDF, not the login | Convert the PDF with FlowParse | Rebuilds each section as a sheet, checked against the payout |
| Thousands of transactions a month | CSV from the Dashboard | Stripe's itemized PDF export stops at 5,000 rows |
| You need it in QuickBooks or Xero | Convert, then download .QBO, .OFX or Xero CSV | Same data, ready to import |
| A year of monthly PDFs | Convert all and combine with Smart Merge | One workbook, a source reference on each row |
Balance summary or payout reconciliation: which PDF do you have?
The two reports answer different questions, and it helps to know which one you are holding before you start reconciling.
The Balance summary report works like a bank statement for your Stripe balance: starting balance, activity during the period (charges, refunds, disputes, adjustments, fees), payouts to your bank, and the ending balance. It does not tell you which transactions went into which payout.
The Payout reconciliation report answers exactly that. It is available to accounts on automatic payouts, and it groups the transactions in each payout by reporting category. Stripe's documentation points out a limit: because you control the timing and amount of instant payouts, Stripe cannot say which transactions an instant payout includes — those you reconcile against your transaction history yourself.
| Balance summary | Payout reconciliation | |
|---|---|---|
| Question it answers | How did my Stripe balance change this month? | What is inside each payout to my bank? |
| Who it suits | Manual payouts; anyone reconciling Stripe like a bank account | Automatic payouts |
| Main sections | Balance summary, balance change from activity, payouts | Balance summary, payout reconciliation, ending balance reconciliation |
| Ties to the bank | Total payouts for the period | Each payout, transaction by transaction |
How the payout check works
A payment report always implies one sum, even when it does not print it as an equation: what came in, minus what went back out and what was deducted, equals what was paid to the bank. FlowParse uses that sum as its check.
Each section is added up with the sign its kind implies. Sales and adjustments add; refunds, fees and reserves subtract. The result is compared with the Transfers section when the report has one, or with the net payout printed on the report. The two have to agree within the larger of 0.02 or 0.1% of the payout.
An example: sales of 12,480.00, refunds of 320.00, fees of 371.42 and an adjustment of +15.00 add up to 11,803.58. If the Transfers section shows a payout of 11,803.58, the check passes. If it shows 11,833.58, something is missing — often a refund line that sat on another page — and the preview tells you before the file is downloaded. When a report shows only sales with nothing to compare against, the check reports that it could not be verified rather than passing.
Recording Stripe in your books
The common mistake is to book each Stripe deposit as revenue. That puts the net figure in sales, leaves fees out of expenses and makes refunds disappear. Most bookkeepers treat Stripe as a clearing account instead: money comes in at gross, fees and refunds go out of it, and payouts move the remainder to the bank.
- Gross sales → revenue, credited from the Stripe clearing account
- Stripe fees → an expense such as bank or merchant fees
- Refunds → a reduction of revenue (or a refunds account)
- Disputes and adjustments → their own line, so they can be followed up
- Payouts → a transfer from the Stripe clearing account to the bank account
- Whatever stays in the clearing account at month end should equal the Stripe balance on the report
A monthly Stripe-to-Excel routine
Stripe closes its reporting day by day: according to its documentation, the complete data for a day is available by midday the following day in the report's time zone. So run the month's report a day or two after month end, not on the last evening of the month, or the final day will be missing.
Pick one report and stay with it. Mixing a Balance summary one month and a Payout reconciliation the next makes the months hard to compare, because the two group transactions differently — the payout report includes transactions from before the period when their payout falls inside it. Bookkeepers on automatic payouts usually choose the payout report; everyone else, the Balance summary.
- Download the month's report — CSV if you have Dashboard access, PDF if that is what you receive
- Convert the PDF and check the payout check in the preview before downloading
- Post gross sales, fees, refunds and adjustments from the section sheets
- Match each line on the Transfers sheet to a deposit on the bank statement
- Compare the Stripe clearing account with the ending balance on the report
- Save the PDF and the workbook together as evidence for that month
Working from a client's Stripe PDFs
Accountants often get Stripe the hard way: a client forwards a PDF at year end, or a folder of them, and has never shared a Dashboard login. Ask for the same report every month and for the full period, not a selection — a Balance summary for each month is enough to build revenue, fees and payouts, and the ending balance of one month should equal the starting balance of the next, which is a quick test that nothing is missing.
If a client can give access, Stripe lets account owners invite team members with restricted roles, which is the cleaner long-term setup. Until then, the PDFs plus the payout check give you figures you can stand behind.
When the numbers do not tie
Most differences between a Stripe report, the spreadsheet and the bank come from a short list of causes:
| What you see | Usual cause | What to do |
|---|---|---|
| The payout is in Stripe but not on the bank statement that day | Stripe dates payouts by estimated arrival; the bank posts later | Look a few business days ahead on the bank statement |
| An instant payout cannot be matched to transactions | Stripe cannot say which transactions an instant payout includes | Reconcile it against the Balance summary instead |
| Fee total is higher than expected | Withheld sales tax, VAT or GST is included in the fee column | Split the tax out if you can reclaim it |
| The itemized PDF looks incomplete | Itemized PDF exports stop at 5,000 rows | Use the CSV export for that period |
| Sections do not add up to the payout | A line was missed, or a section continues on another page | Check the preview; correct or re-upload the full PDF |
| Amounts are in two currencies | Charges in another currency are converted to your settlement currency | Book the settlement-currency amounts the report shows |
Your financial data stays private
Account and transaction statements are sensitive documents. FlowParse is built so converting one never puts it at risk.
Encrypted transfer
Every upload and download runs over TLS.
Deleted automatically
Your original PDF is deleted automatically after 30 days.
EU servers
Stored on servers in the EU.
No AI training
Your documents are never used to train models. GDPR-aligned.
Read the full security overview.
