How to import Stripe transactions into QuickBooks Online

QuickBooks Online rejects a raw Stripe export on the first try. Here’s why, which Stripe report to download, how to fix it yourself in a spreadsheet, and the one-click shortcut if you’d rather skip it.

Why QuickBooks Online rejects it

Stripe’s Balance report (Reports → Balance → Balance change from activity) has columns like created, gross, fee, net, reporting_category and description, and the Payments export has a dozen more. QuickBooks Online’s bank import only accepts three columns: Date, Description and Amount, with dates written MM/DD/YYYY. Anything else and it rejects the whole upload. Stripe also writes dates with a time (2026-09-02 14:31:07) and shows fees as positive numbers, so even the right columns need reworking.

Which report? Use the Balance report, itemized. It has every payment, refund, dispute, Stripe fee and payout, so what you import matches your Stripe balance and each bank deposit. The Payments export (Payments → Export) is easier to find but has no payouts.

Option 1: Fix it by hand

Free, but tedious every month.

  1. In your Stripe Dashboard, go to Reports → Balance, pick the month, and under Balance change from activity click Download. Choose the itemized report as CSV.
  2. Open the file in Excel or Google Sheets.
  3. Reformat the created column to MM/DD/YYYY, dropping the time.
  4. Add a Description column, for example the reporting_category plus the description (“charge Invoice 1042”).
  5. For each payment, put the gross amount on one line, then add a second line for the same date with the fee as a negative number (Stripe shows it as positive). Gross minus fee equals net.
  6. Payouts, refunds and Stripe’s billing fees are already negative: keep them as one line each.
  7. Delete every other column so only Date, Description and Amount remain, with those exact headers in row 1.
  8. Strip any $ signs or thousands-separator commas. Make sure the file has only one currency.
  9. Save as CSV (UTF-8). Keep it under about 1,000 lines, or split it by date.
  10. In QuickBooks Online, upload it to a bank account named for Stripe (Banking → Upload transactions), and match each payout to the deposit in your checking account as a transfer.

Option 2: Skip the manual work

Web App

Stripe to QuickBooks

Upload Stripe’s Balance report or Payments export and get back a QuickBooks-ready CSV in seconds: dates fixed, every Stripe fee on its own line, payouts and refunds labeled.

Free sample · from $9

Changed your mind? How to undo an import

Our apps never touch your QuickBooks file, and your original export is never changed. If you import a converted file and want to take it back, remove it in QuickBooks Online like this:

  1. Go to Accounting → Bank transactions (called Banking in the older QuickBooks layout) and choose the account you imported into.
  2. Not posted yet: on the Pending tab (For Review in the older layout), tick the imported transactions and choose Exclude in the bar that appears at the bottom of the screen.
  3. Already posted: on the Posted tab (Categorized in the older layout), tick them and choose Undo in the bottom bar. They move back to Pending, where you can exclude them as above.
  4. Open the Excluded tab, tick the same transactions and choose Delete in the bottom bar.
  5. Fix whatever needed fixing, convert your original export again, and re-import.

Tip: filter by date so you select only the batch you imported. Undo affects just the transactions you tick.

Frequently asked questions

Why does QuickBooks Online reject a Stripe CSV export?
Stripe's reports have many more columns than QuickBooks Online's bank import accepts: created, gross, fee, net, reporting category, description and more. QuickBooks wants exactly Date, Description and Amount, with dates as MM/DD/YYYY, so it rejects the file instead of guessing.

Which Stripe report should I import into QuickBooks?
The Balance report (Reports > Balance > Balance change from activity, itemized). It lists every payment, refund, dispute, Stripe fee and payout, so the result matches your Stripe balance and each deposit in your bank. The Payments export has payments and refunds but no payouts.

Should I import Stripe's gross or net amount?
Import the gross amount as the sale and the Stripe fee as its own negative line. Together they equal the net that reached your Stripe balance, and your books show both the real sale and what card processing cost.

How do I record a Stripe payout in QuickBooks?
As a transfer from your Stripe account to your checking account, not as income. The payments it is made of were already recorded; counting the payout as income would count those sales twice.

Is there a row limit for QuickBooks Online CSV imports?
Stay under about 1,000 lines per file. Each payment and each fee is its own line, so download Stripe reports by month, or a shorter range if you're busy.

Convert other exports

← Back to DigitalBuilds.org