In addition to automatic bank feeds, you can manually import bank transactions from CSV files. This is useful when bank feeds aren't available or for historical data.
Last updated Feb 18, 2026 · 3 min read
To manually import transactions from a CSV file:
The system validates the file format and attempts to map CSV columns to transaction fields.
Your CSV must include these required columns:
Date - Transaction date (format: YYYY-MM-DD or M/D/YYYY)
Amount - Transaction amount in the account's currency
Description/Name - Payee or description
Reference - Optional reference number or memo
Type/Sign - D for debit (withdrawal), C for credit (deposit), or +/- signs
Additional optional columns:
If your CSV columns have non-standard names, map them:
Light learns your CSV format and pre-fills the mapping for future imports.
Light validates each transaction before importing:
If validation fails, you'll see which rows have errors. Fix the CSV and re-upload.
Light checks for duplicate transactions using:
If a transaction already exists in Light, the import skips it with a notification. This prevents duplicate posting.
You can force reimport if needed, but duplicates will be created.
Light applies some data cleansing during import:
For amounts with thousands separators (e.g., "1,000.50"), remove separators before uploading.
For large files (1,000+ transactions), import runs in the background:
Check Background Jobs to monitor large imports.
After import, transactions are available for reconciliation:
Reconciliation happens separately from import (covered in other articles).
To import for multiple accounts:
Multi-account CSV must include an "Account" or similar column to distinguish which transactions go to which account.
When importing years of historical data:
For multi-year imports, plan for a few hours of processing time depending on file size.
If you need to correct an imported transaction:
Only certain fields can be edited. If you need to change the date or transaction ID, you may need to delete and re-import.
To remove an incorrectly imported transaction:
Once deleted, the transaction is removed from reconciliation. If you accidentally deleted a transaction, you can re-import it from your CSV.
CSV with standard columns:
Date,Description,Amount,Type
2024-01-15,Office Supplies Co,500.00,D
2024-01-16,Customer Payment,2500.00,C
CSV with additional details:
Date,Description,Amount,Sign,TransactionID,Fees
2024-01-15,Wire Transfer OUT,10000.00,-,WIR-12345,0.00
2024-01-16,ACH Deposit,5000.00,+,ACH-67890,0.00
CSV with multi-currency:
Date,Amount,Currency,OrigAmount,OrigCurrency,Description
2024-01-15,535.00,USD,500.00,EUR,Wire from Munich
"Date format not recognized" - Use YYYY-MM-DD or M/D/YYYY format consistently
"Amount values not valid" - Remove currency symbols and thousands separators
"File too large" - Split into multiple files (max 50,000 rows per file)
"Encoding error" - Save CSV as UTF-8 (not UTF-16 or other encodings)
"Duplicates rejected" - This is intentional to prevent duplicate posting; use force reimport if certain
For accounts not supported by bank feeds:
This keeps your Light account current even without automated feeds.
Was this article helpful?