How to reorder csv columns for a quickbooks import
- Step 1Confirm the column order QuickBooks wants — In QuickBooks Online go to Transactions → Bank transactions → Upload from file. The 3-column format is
Date,Description,Amount; the 4-column format splits Amount into separate Debit and Credit columns. Note which your bank export needs. - Step 2Export the transactions as CSV from your bank — Download the statement period as a CSV from online banking. It will usually include extra columns — running balance, reference / cheque number, transaction type — that you will move to the end.
- Step 3Drop the bank CSV onto the tool — Accepted inputs are
.csv,.tsv, and.txt; the delimiter is auto-detected. The tool reads the header row and lists each column with its current position number. - Step 4Move Date, Description, Amount to the front — Use the up arrows to lift
Dateto position 1, thenDescriptionto 2 andAmount(orDebit/Credit) to 3 and 4. Use the down arrows to pushBalance,Reference, andTypeto the end. - Step 5Apply the order and verify the preview — Click Apply order and check the first-10-rows preview: confirm column 3 shows transaction amounts, not the running balance. This single check prevents the most common QuickBooks import mistake. Re-drop the original file to start over.
- Step 6Download and upload to QuickBooks — Click Download CSV and upload the reordered file in the QuickBooks bank-feed wizard. With the three fields up front, mapping is immediate. Review the wizard's date-format and amount-sign settings before finishing the import.
QuickBooks Online bank-import layouts
QuickBooks accepts a 3-column or 4-column CSV for bank feeds. Reorder your bank export to one of these shapes so mapping is unambiguous. QuickBooks maps in its wizard, so headers can vary — position is what makes the mapping fast and error-proof.
| Format | Column 1 | Column 2 | Columns 3-4 | When to use |
|---|---|---|---|---|
| 3-column | Date | Description | Amount (single signed column; negatives = money out) | Banks that export one signed amount column |
| 4-column (Debit/Credit) | Date | Description | Debit, Credit (separate columns) | Banks that split outflows and inflows into two columns |
| Date format | Set in the QB wizard (dd/mm/yyyy, mm/dd/yyyy, etc.) | — | — | The tool never reformats dates — match the wizard setting to your file's format |
Typical bank-export columns and what to do with each
A representative online-banking CSV. Move the QuickBooks fields to the front; push the rest to the end (or remove them).
| Bank column | QuickBooks role | Reorder action |
|---|---|---|
Transaction Date / Posted Date | Date (column 1) | Move to position 1 |
Description / Narrative / Payee | Description (column 2) | Move to position 2 |
Amount / Debit + Credit | Amount (column 3, or 3+4) | Move to position 3 (and 4) |
Balance / Running Balance | Not imported | Push to the end — never let this map to Amount |
Reference / Cheque No / Type | Not imported | Push to the end or remove with csv-column-remover |
Free vs Pro limits for this tool
Limits apply to the processed result; over the ceiling you get an upgrade prompt, not a partial file.
| Constraint | Free | Pro |
|---|---|---|
| Input file size | 2 MB | 100 MB |
| Result row cap | 500 rows | 100,000 rows |
| Cell values | Never modified | Never modified |
| Output | Comma-separated CSV, LF line endings | Comma-separated CSV, LF line endings |
Cookbook
Real before/after layouts from online-banking CSV exports. Amounts and references are illustrative.
Bank export with balance column ahead of amount
ExampleA common export puts the running balance right after the amount, and the date last. Reorder to Date, Description, Amount and push Balance to the end so it cannot be mistakenly mapped.
Before (bank order): Reference,Description,Amount,Balance,Date TXN8841,COFFEE SHOP,-4.50,1042.10,2026-06-01 After (Apply order = Date, Description, Amount, Balance, Reference): Date,Description,Amount,Balance,Reference 2026-06-01,COFFEE SHOP,-4.50,1042.10,TXN8841 QuickBooks maps columns 1-3 directly; Balance + Reference ignored.
Debit/Credit split into the 4-column layout
ExampleSome banks export separate Debit and Credit columns. Line them up after Date and Description for the QuickBooks 4-column format.
Before: Type,Date,Credit,Narrative,Debit POS,2026-06-02,,GROCERY MART,32.18 DEP,2026-06-03,500.00,SALARY, After (Apply order = Date, Narrative, Debit, Credit, Type): Date,Narrative,Debit,Credit,Type 2026-06-02,GROCERY MART,32.18,,POS 2026-06-03,SALARY,,500.00,DEP
Negative amounts in parentheses preserved
ExampleAccounting-style exports write money out as (123.45). The tool preserves the value exactly when repositioning the Amount column — QuickBooks's wizard handles sign interpretation, not this tool.
Before: Description,Amount,Date UTILITY CO,(89.40),2026-06-04 After (Apply order = Date, Description, Amount): Date,Description,Amount 2026-06-04,UTILITY CO,(89.40) The (89.40) value is untouched — set sign handling in the QB wizard.
Merge 12 monthly statements, then reorder once
ExampleFor a full-year import, combine the monthly bank CSVs first, then reorder the merged file once into QuickBooks order.
Step 1 — csv-merger combines jan.csv ... dec.csv into year.csv Step 2 — reorder here: Before: Reference,Description,Amount,Balance,Date After: Date,Description,Amount,Balance,Reference Result: one year.csv in QuickBooks 3-column order, ready to upload.
Description column with commas survives
ExampleBank narratives contain commas (merchant city, reference strings). The quote-aware parser re-quotes such fields on output so the columns never split.
Before: Date,Amount,Description 2026-06-05,-15.00,"ACME, INC, LONDON GB" After (Apply order = Date, Description, Amount): Date,Description,Amount 2026-06-05,"ACME, INC, LONDON GB",-15.00 The quoted, comma-containing description stays a single field.
Errors and edge cases
Real errors and silent failures sourced from each platform's own documentation. Match the wording to the row, fix what the row says to fix.
Balance column accidentally mapped to Amount
Check inputThe single most damaging QuickBooks import mistake is mapping the running-balance column to Amount — every transaction imports as the wrong figure. Reordering Amount to position 3 and pushing Balance to the end makes the correct mapping obvious. Always confirm column 3 in the preview shows transaction amounts, not balances, before exporting.
Dates are not reformatted by the tool
By designThe tool preserves date strings exactly — 06/01/2026, 2026-06-01, and 1 Jun 2026 all pass through unchanged. QuickBooks interprets dates in its upload wizard, where you pick the date format. If QuickBooks misreads dates, fix the format setting in the wizard or normalise the date text with csv-find-replace; reordering will not change a date's format.
QuickBooks 3-/4-column limit and extra columns
ExpectedQuickBooks Online's bank upload uses only the Date, Description, and Amount (or Debit/Credit) columns. Extra columns left in the file are simply not mapped — they do no harm but add clutter. Push them to the end here, or delete them with csv-column-remover for a cleaner upload.
Amount sign convention varies by bank
Check inputSome banks write money out as a negative Amount; others use a positive number in a separate Debit column. The tool does not change signs — it only positions columns. Decide which QuickBooks layout (3-column signed, or 4-column Debit/Credit) matches your bank, reorder to that shape, and set sign handling in the wizard.
Free tier blocks files over 2 MB
Upgrade requiredA multi-year transaction export can exceed 2 MB. On free, that shows an upgrade prompt instead of processing. Pro raises the file limit to 100 MB. To stay on free, reorder one statement period at a time, or split a large file with csv-row-splitter.
Result over 500 rows blocks on free
Upgrade requiredFree caps the processed result at 500 transaction rows. A busy account's monthly export can exceed this. Pro lifts the cap to 100,000 rows. On free, split the file by month or week with csv-row-splitter, reorder each, then upload sequentially.
Header row missing or starts with a statement banner
Check inputMany bank CSVs begin with a few preamble lines (account number, statement period) before the real header. The tool treats row 1 as the header, so the banner would be listed as columns. Delete the preamble lines before uploading so the column list shows true field names like Date and Amount.
Amounts stored with thousands separators
PreservedA value like "1,234.56" is quoted because it contains a comma; the tool preserves it and keeps the quoting on output so the field stays whole. QuickBooks reads the amount during import. If you need the comma removed, use csv-find-replace before or after reordering.
Frequently asked questions
What column order does QuickBooks Online need for a bank import?
Either a 3-column layout — Date, Description, Amount — or a 4-column layout where Amount is split into separate Debit and Credit columns. QuickBooks maps columns in its upload wizard, so the exact header names can differ, but putting the right fields in positions 1-3 (or 1-4) makes mapping a one-click step instead of a field-by-field chore.
Does the tool reformat dates or amounts for QuickBooks?
No. It repositions columns only and preserves every cell exactly — dates keep their format, amounts keep their sign and any thousands separators. Date format and amount-sign interpretation are settings in the QuickBooks upload wizard. If a value's format itself is wrong, fix it with csv-find-replace before reordering.
How do I reorder the columns — can I drag them?
You move columns with up/down arrow buttons. Each column shows its current position number; the arrows shift it one step at a time. There is no drag-and-drop, which keeps reordering reliable on a trackpad and predictable on long transaction lists. Click an arrow repeatedly to move a column several positions.
How do I avoid importing the running balance as the amount?
Move the real Amount column to position 3 and push Balance to the end, then check the first-10-rows preview to confirm column 3 shows transaction amounts. This is the single best safeguard against the classic mistake of mapping the balance column to Amount, which makes every imported figure wrong.
Can I remove the balance and reference columns instead of just moving them?
Yes, but in a separate step — this tool keeps every column. Reorder here so the QuickBooks fields are first, then use csv-column-remover to delete Balance, Reference, and Type. QuickBooks ignores unmapped columns anyway, so removing them is optional housekeeping.
Does this work for QuickBooks Desktop too?
For CSV-based bank imports the column-order logic is the same — get Date, Description, and Amount lined up. QuickBooks Desktop also supports IIF files, which are a different format this tool does not produce; for IIF you need a dedicated converter. Use this tool whenever your import is CSV.
My bank uses separate Debit and Credit columns. Can I handle that?
Yes. Use the 4-column QuickBooks layout: reorder to Date, Description, Debit, Credit (push everything else to the end). The tool moves each column independently, so lining up the two amount columns after Date and Description is straightforward.
Can I prepare a full year by merging monthly statements?
Combine the monthly bank CSVs first with csv-merger, then reorder the merged file once here into QuickBooks order. Watch the free-tier 500-row cap on the combined file — a year of transactions can exceed it, so split with csv-row-splitter or upgrade to Pro.
Is my bank data uploaded to JAD Apps?
No. Parsing and reordering run locally in your browser through PapaParse. Transaction dates, descriptions, amounts, and account references never leave your machine. When signed in, only a usage counter (no content) is stored server-side, and you can opt out in account settings.
What file types and delimiters are supported?
.csv, .tsv, and .txt, with the delimiter auto-detected — so a tab- or semicolon-separated bank export works without configuration. The output is always written as comma-separated CSV, which QuickBooks accepts for bank uploads.
What are the size limits?
Free processes files up to 2 MB and caps the result at 500 rows; beyond either you get an upgrade prompt. Pro raises this to 100 MB and 100,000 rows. For large transaction histories on free, reorder one statement period at a time or split with csv-row-splitter.
Can I automate this before importing into QuickBooks?
Yes — the public CSV API / @jadapps/runner accepts an order array of header names (matched case-insensitively) or 0-based indices. Note one difference from the browser tool: in the API path, columns you omit from order are dropped, while the browser UI keeps them all. So when automating, list every column you want to keep in the order you want.
Privacy first
Processing runs locally in your browser with PapaParse. No file is uploaded — only metadata counters are saved for signed-in dashboard stats.