1

Two Ways to Get Transactions into FreshBooks

FreshBooks offers two methods for adding bank transactions: automatic bank connection via Plaid, and manual CSV import. Each has specific limitations worth understanding before you start.

MethodSetupFormats SupportedBest For
Bank Connection (Plaid)One-time OAuthAutomaticOngoing sync for supported banks
Manual CSV ImportPer import.csv onlyUnsupported banks, historical data, PDFs
PDF UploadN/ANot supportedMust convert to CSV first
QBO/OFX ImportN/ANot supportedFreshBooks only accepts CSV

Note on Plaid: Even with bank connection enabled, Plaid typically only pulls 90 days of history on first connection. For older statements or banks not in Plaid's network, manual CSV import is the only option. Zera Books converts any PDF to FreshBooks CSV regardless of bank or statement age.

2

FreshBooks CSV Format Requirements

FreshBooks requires a specific CSV structure for manual transaction imports. The column names and date format must match exactly or the import will fail.

ColumnRequiredFormatExample
DateRequiredMM/DD/YYYY03/15/2025
DescriptionRequiredText stringAmazon Web Services
AmountRequiredDecimal (negative for expense)-249.00
CategoryOptionalFreshBooks category nameAdvertising & Promotion
AccountOptionalAccount name in FreshBooksChase Business Checking

Date Format (Critical)

FreshBooks requires MM/DD/YYYY. European format (DD/MM/YYYY) will either fail or silently import dates incorrectly, corrupting your records.

Amount Sign Convention

Use negative values for expenses/debits and positive for income/credits. No currency symbols or thousands-separator commas.

Header Row Required

The first row must be column headers. FreshBooks will treat the first row as a transaction if headers are missing, causing an import error.

UTF-8 Encoding

Save CSV as UTF-8 without BOM. Windows users saving from Excel should use "CSV UTF-8 (Comma delimited)" not "CSV (MS-DOS)".

3

Step-by-Step: PDF Bank Statement to FreshBooks

Complete workflow from PDF bank statement to imported, categorized transactions in FreshBooks.

1

Upload PDF to Zera Books

Go to zerabooks.com and upload your bank statement PDF. Works with any bank, any format — digital PDFs, scanned statements, multi-page documents.

Zera Books dynamically processes any bank format without templates. Supports Chase, Bank of America, Wells Fargo, TD, RBC, CIBC, and all major banks worldwide.
2

Select FreshBooks CSV as export format

In the export panel, choose "FreshBooks (CSV)." The output uses MM/DD/YYYY dates, signed amounts, and column headers matching FreshBooks import requirements exactly.

Zera AI also categorizes transactions using FreshBooks expense categories. The Category column in the CSV is pre-populated with suggested categories based on payee and transaction data.
3

In FreshBooks: Accounting → Transactions → Import

In FreshBooks, navigate to Accounting in the left sidebar, then Transactions. Look for the Import button near the top of the transactions list.

The import option is available on Plus, Premium, and Select plans. If you don't see it, check your subscription level in Account Settings.
4

Upload CSV and map columns

FreshBooks shows a column mapping interface. With Zera Books output, Date, Description, and Amount should map automatically. Confirm the mapping looks correct in the preview rows shown.

If FreshBooks doesn't auto-detect columns, manually assign each using the dropdown selectors. This only needs to be done once — FreshBooks remembers mappings for subsequent imports.
5

Review and categorize imported transactions

Imported transactions appear in the Transactions list. Review AI-suggested categories from Zera Books, adjust any that need updating, and mark transactions as reviewed.

FreshBooks learns from your categorization choices over time. After a few imports, the platform will start suggesting categories based on your history, reducing review time further.

Convert any PDF bank statement to FreshBooks CSV in minutes

Any bank. 99.6% accuracy. FreshBooks-ready CSV with AI categorization. $79/month unlimited for your entire practice.

Try for one week
4

Common FreshBooks Import Errors and Fixes

FreshBooks gives limited error detail during CSV imports. These are the most common problems and specific fixes.

Import fails with no error message shown

Usually caused by encoding issues, BOM characters, or a malformed header row. Fix: Re-export from Zera Books using the FreshBooks CSV option to get properly encoded UTF-8 output. If editing manually, use a plain text editor (not Excel) to save the file.

Dates appear as wrong month/day (transposed)

Your CSV has DD/MM/YYYY format but FreshBooks interprets it as MM/DD/YYYY. For example, March 5th becomes May 3rd. This is a silent error — the import succeeds but dates are wrong. Fix: Ensure all dates in your CSV are MM/DD/YYYY. Zera Books handles this automatically.

Transactions import as income instead of expenses

Amount signs are reversed. FreshBooks treats positive amounts as income. Ensure withdrawals/expenses are negative and deposits/income are positive in your CSV Amount column.

'This account already exists' error on bank connection

If you're switching from Plaid bank connection to CSV import for the same account, FreshBooks may show a conflict. In this case, disconnect the Plaid bank connection first, then use CSV import. Or create a separate manual account for historical imports.

5

Frequently Asked Questions

Can FreshBooks import PDF bank statements?

No. FreshBooks only accepts CSV files for manual imports. Convert PDFs to FreshBooks-compatible CSV using Zera Books before importing.

What CSV format does FreshBooks require?

FreshBooks requires a CSV with Date (MM/DD/YYYY), Description, and Amount columns. Amounts should be negative for expenses and positive for income. A header row is required.

How do I import historical bank statements into FreshBooks?

FreshBooks bank sync via Plaid typically only provides 90 days of history. For older data, export statements from your bank (or use Zera Books to convert PDF statements) and use the CSV import option.

Does FreshBooks support batch bank statement import?

FreshBooks imports one CSV file at a time, but you can combine multiple months into one CSV. Zera Books can batch-convert multiple PDF statements and optionally merge them into a single sorted CSV for import.