Before you start
- Download a CSV or XLSX export from your bank — no particular format is required.
- Create the account you are importing into first, in the currency the statement is in.
- Have your categories roughly in place; you can still create them during review.
1. Upload the file
Go to Transactions → Import, choose the destination account, and drop the file in. The wizard reads the header row and shows you the first rows exactly as they appear in the file, so you can confirm you uploaded the right statement before going further.
2. Map the columns
Tell the wizard which column holds the date, the amount and the description. Rasa AI proposes a mapping for you; if it cannot tell, it says so and falls back to plain detection. You can override any field.
Amount signs: if your bank uses separate debit and credit columns rather than one signed column, set type detection accordingly here — otherwise every row will import as the same transaction type.
3. Review every row
The review editor shows each parsed row with its suggested category. Reassign anything that looks wrong, edit descriptions, and drop rows you do not want. Repeating charges that look like subscriptions are flagged so you can collapse them into a recurring series instead of importing twelve copies.
4. Confirm the import
Confirming writes the rows as transactions in the destination account. Each one stores the exchange rate that applied on its own date, so a statement covering three years converts using three years of real rates — not today's.
Troubleshooting
Dates arrived a month out
Day/month order was read the other way round. Re-run the import with the correct date format selected — nothing was written if you have not confirmed.
Everything imported as an expense
Type detection was set to a single signed column while your file uses separate debit and credit columns. Change it in step 2.
The file will not upload
Export as CSV or XLSX rather than PDF, and make sure the sheet has a header row. If it still fails, send us the file.