Blog/Software Integrations/How to Import Bank Statements into Wave Accounting
🔗

How to Import Bank Statements into Wave Accounting

8 min readDecember 16, 2024

Quick Answer {#quick-answer}

To import bank statements into Wave Accounting: convert your PDF or raw CSV bank statement to a Wave-compatible CSV using QuickBankConvert, then go to Accounting → Transactions → More Options → Upload Transactions (CSV) in Wave and upload the file. Wave requires Date (MM/DD/YYYY), Description, and Amount columns at minimum. Most imports complete in under two minutes.


Why CSV Import Beats Manual Entry in Wave {#why-import-csv}

Wave Accounting is a popular free bookkeeping tool for small businesses and freelancers. It offers bank connections through Plaid, but those connections are not always reliable—banks change their authentication requirements, connections drop after 90 days, and some credit unions and smaller banks are not supported at all.

CSV import is the universal fallback. It works with any bank worldwide, gives you control over exactly which transactions are imported, and creates a clean audit trail tied to your official bank statements.

When to use CSV import instead of bank connection:

SituationUse CSV Import
Bank is not supported by PlaidYes
You prefer not to share bank credentialsYes
Connection has dropped and keeps failingYes
You are importing historical dataYes
You want to control which months are importedYes
Your bank is supported and connected stablyNo — use the connection

How to Prepare Your CSV for Wave {#prepare-csv}

Wave is stricter about CSV format than some other accounting tools. Getting the format right before uploading saves multiple failed attempts.

Required Columns

Wave's CSV importer accepts two formats:

Format A – Single Amount Column:

DateDescriptionAmount
01/15/2025Amazon Web Services-89.99
01/20/2025Client Payment - Acme Corp2500.00

Negative values = money out. Positive values = money in.

Format B – Separate Debit and Credit Columns:

DateDescriptionDebitCredit
01/15/2025Amazon Web Services89.99
01/20/2025Client Payment - Acme Corp2500.00

Date Format Requirements

Wave requires dates in MM/DD/YYYY format. Many bank CSVs use YYYY-MM-DD or DD/MM/YYYY. If your bank's CSV uses a different format, QuickBankConvert normalizes the date format automatically as part of the conversion.

Common Format Problems

ProblemHow to Fix
Dates in YYYY-MM-DD formatUse QuickBankConvert or Excel Text-to-Columns to reformat
Amount column contains $ symbolRemove currency symbols—Wave needs plain numbers
Thousands separator (1,234.56)Remove commas from numbers
Debit/Credit in parentheses (234.56)Convert to negative numbers (-234.56)
Extra header rows from PDF conversionDelete all rows above the column headers

Callout: The easiest way to get a Wave-ready CSV is to run your bank PDF or raw export through QuickBankConvert. It handles date normalization, currency symbol removal, and column standardization automatically—so the file you download is ready to upload directly into Wave without any manual editing.


Step-by-Step: Importing CSV into Wave {#step-by-step-import}

Step 1 – Prepare Your File

Convert your bank statement PDF to CSV using QuickBankConvert. Save the output file somewhere easy to find—your Downloads folder works fine for this.

Step 2 – Open Wave and Navigate to Transactions

Log in to your Wave account at waveapps.com. In the left sidebar:

Accounting → Transactions

Step 3 – Open the Upload Dialog

In the Transactions view, look for the More Options button or the upload icon near the top right of the transaction list. Click Upload Transactions (CSV).

Step 4 – Select Your Account

Wave will ask which account you are importing into. Select the correct bank account from the dropdown. If the account does not exist yet, create it first under Accounting → Chart of Accounts → Add a New Account.

Step 5 – Upload the File

Drag and drop your CSV file into the upload area, or click to browse and select it. Wave will display a preview of the first several rows.

Step 6 – Map the Columns

Wave will attempt to auto-detect your columns. Verify that:

  • Date column maps to → Date
  • Description column maps to → Description
  • Amount (or Debit/Credit) maps to → the correct field

If auto-detection is wrong, use the dropdown on each column header to correct it.

Step 7 – Set the Date Format

Confirm the date format matches your file. Select MM/DD/YYYY from the dropdown if Wave does not detect it correctly.

Step 8 – Review and Confirm

Wave shows a preview of how transactions will appear. Review a few rows. If everything looks correct, click Import. Wave will process the file and add the transactions to your account.

Step 9 – Handle Duplicates

If any transactions overlap with previously imported data, Wave will flag them. Review each flagged item and choose to import or skip.


Troubleshooting Common Wave Import Errors {#troubleshooting}

Error MessageLikely CauseFix
"File could not be parsed"Special characters or encoding issueSave file as UTF-8 CSV in Excel: File → Save As → CSV UTF-8
"Date format not recognized"Wrong date formatReformat dates to MM/DD/YYYY
"Amount must be a number"$ symbol or commas in amount fieldRemove all non-numeric characters from amount column
"No transactions found"Header row missing or wrongEnsure row 1 contains column labels: Date, Description, Amount
Transactions appear with wrong signDebit/Credit columns swappedCheck Format B mapping in the column assignment step
Import succeeds but balance is wrongInternal transfers includedRemove transfer rows before importing

After the Import: Categorizing Transactions in Wave {#after-import}

Once transactions are in Wave, you need to assign categories (Wave calls them "accounts" in the chart of accounts sense).

Use Wave's Rules feature to auto-categorize recurring merchants. Go to Settings → Rules and create rules like: "If description contains ADOBE, categorize as Software Subscriptions."

Review uncategorized transactions by filtering the Transactions view to show only items with the category "Uncategorized Expense" or "Uncategorized Income."

Reconcile against your bank statement once all transactions are categorized. Wave's reconciliation tool (under Accounting → Reconciliation) walks you through matching your Wave balance against your bank's ending balance month by month.

Callout: If you import multiple months at once and have hundreds of uncategorized transactions, tackle them account-by-account rather than scrolling through the full list. Sort by Description so identical merchants appear together, then categorize in batches. This approach typically reduces a three-hour categorization session to under 30 minutes.


Wave CSV Import vs. Bank Connection {#wave-vs-bank-connect}

FactorCSV ImportLive Bank Connection
Setup time5–10 min per import10–15 min once
Ongoing effortMonthly uploadAutomatic
Data freshnessAs current as your statementNear real-time
Bank compatibilityAny bank worldwidePlaid-supported banks only
Credential sharingNot requiredRequired (Plaid)
Historical dataAny periodTypically 90 days
Format controlFull controlPlaid-controlled
ReliabilityVery highConnection drops occur

For most small businesses, the hybrid approach works best: use a bank connection for day-to-day transaction feed, and fall back to CSV import when the connection drops or for one-time historical imports.

Visit QuickBankConvert to convert your bank PDFs into Wave-ready CSVs in seconds—no account or signup required.

Frequently Asked Questions

What CSV format does Wave Accounting require?
Wave requires a CSV with at minimum three columns: Date (MM/DD/YYYY format), Description, and Amount. You can include separate Debit and Credit columns instead of a single Amount column. The first row must be a header row. Wave does not accept XLS or XLSX files directly—save as CSV before uploading.
Can I import PDF bank statements directly into Wave?
No, Wave does not support direct PDF import. You must first convert your PDF bank statement to CSV. QuickBankConvert handles this conversion and outputs a Wave-compatible CSV in the correct column format, saving you the manual data-entry step.
How do I handle duplicate transactions when importing into Wave?
Wave checks for duplicates based on date, description, and amount. If you import the same date range twice, Wave will flag potential duplicates and ask you to confirm before adding them. Always note the date range you have already imported to avoid overlapping uploads.
Does Wave support OFX or QFX file imports?
Wave previously supported OFX/QFX imports but has deprecated this feature in favor of CSV. If your bank exports OFX files, convert them to CSV using QuickBankConvert or a dedicated OFX-to-CSV tool before uploading to Wave.
Is Wave Accounting free to use for CSV imports?
Yes. CSV import is available on Wave's free plan. There is no charge to manually import transactions via CSV. Wave charges only for payroll and payment processing add-ons.

Ready to convert your bank statement?

Free. Private. Instant. Your files never leave your browser.

Convert Your Statement