Every accounting platform has a slightly different CSV template. The main differences are column names, date format, and whether debits and credits are in separate columns or a single signed amount column.
| Platform | Required columns | Date format | Amount |
|---|---|---|---|
| QuickBooks Online | Date, Description, Amount | MM/DD/YYYY | Single column (negative = debit) |
| Xero | Date, Amount, Payee, Description, Reference | DD/MM/YYYY or DD MMM YYYY | Single column (negative = debit) |
| FreshBooks | Date, Description, Amount, Currency | YYYY-MM-DD | Single column |
| Wave | Date, Description, Debit, Credit, Balance | YYYY-MM-DD | Separate Debit/Credit columns |
| Sage | Date, Reference, Details, Debit, Credit | DD/MM/YYYY | Separate Debit/Credit columns |
Bank Statement Engine exports CSV in a standard format. For QuickBooks and Xero, the downloaded file is pre-formatted to match the platform's expected column layout — select the correct export format before downloading.
Upload your bank statement PDF at bankstatementengine.com, then select CSV (QuickBooks) from the format dropdown before downloading. This exports Date, Description, and Amount columns in the format QBO expects.
In QuickBooks Online, navigate to Bookkeeping → Transactions → Bank transactions. Click the account you want to import into, then click Upload transactions.
QuickBooks will show a column-mapping screen. Match: Date → Date, Description → Description, Amount → Amount. If your CSV has separate debit/credit columns, map them individually. Click Next and then Import.
QuickBooks date tip: If transactions don't import, the date format is usually the cause. QuickBooks Online (US) expects MM/DD/YYYY; QBO UK expects DD/MM/YYYY. The CSV export from Bank Statement Engine auto-detects your bank's locale and formats accordingly.
Select CSV (Xero) when downloading. The file will have the columns Xero expects: Date, Amount, Payee, Description, Reference, Cheque Number, Balance.
In Xero, go to Accounting → Bank accounts, click your account, then click Import a statement. Select CSV as the file type and upload your file.
Xero shows a preview of transactions with proposed matches to existing invoices. Review and click Complete. Unmatched transactions go into the reconciliation queue.
Xero sign convention: In Xero CSV, money in (credits to your account) should be positive, money out (debits) should be negative. Bank Statement Engine applies this automatically.
FreshBooks accepts CSV imports under Accounting → Transactions → Import. The required columns are Date (YYYY-MM-DD), Description, Amount (negative for expenses), and optionally Currency. Download the standard CSV from Bank Statement Engine and rename the column headers to match FreshBooks' template if needed.
Wave uses separate Debit and Credit columns rather than a single signed Amount column. Download CSV, then in Wave go to Accounting → Transactions → More → Import transactions and upload. Wave's column mapper lets you assign which column is Debit and which is Credit.
This almost always means the date format in your CSV doesn't match what the platform expects. Open the CSV in Excel, select the date column, and reformat: for QuickBooks US use MM/DD/YYYY, for Xero UK use DD/MM/YYYY.
QuickBooks and Xero check for duplicate dates and amounts. If you're re-importing a date range you've already imported, the platform will flag duplicates. Either delete the existing import or choose a non-overlapping date range.
This happens when currency symbols (£, $, ₹) or commas remain in the Amount column. Bank Statement Engine strips these automatically, but if you've edited the CSV manually, ensure the amount column contains only numbers and a decimal point.
Check the sign convention. If all transactions imported as the wrong sign (all credits showing as debits), the Amount column signs are reversed. Multiply the entire Amount column by -1 in Excel, then re-import.
QuickBooks, Xero, FreshBooks — correct format, ready to import.
Convert Free →QuickBooks and Xero do not accept PDF files directly — CSV or OFX/QBO are the supported formats. Bank Statement Engine exports to all three. If you want the richer matching that OFX/QBO provides, select those formats instead of CSV.
A bank feed connects your bank account directly to QuickBooks or Xero via Open Banking / API, streaming transactions in real time. A CSV import is a one-time manual upload for a date range. CSV import is useful when your bank isn't supported by direct feeds, or when importing historical statements.
Yes. Open the downloaded CSV in Excel before importing. Delete rows you don't want, save, and then import. Alternatively, use the category filter in the transaction preview on Bank Statement Engine to exclude certain transaction types.
The CSV export includes all transaction amounts as shown in the statement. If your statement shows transactions in multiple currencies, the exported amounts will reflect whatever currency column the bank printed. Xero and QuickBooks handle multi-currency import natively.
Related guides: Bank Statement to CSV · PDF to QBO for QuickBooks · Bank Statement to QuickBooks