Import your bank CSV.
Budget done.
Your bank already generates a transaction export — migj reads it in 30 seconds and updates your budget. Free, forever, no limits. No OAuth. No API key. No bank login shared with anyone.
How CSV import works — step by step
No technical knowledge required. If you can download a file, you can import it.
Log into your bank's website
Go to your bank's "movements", "transactions" or "statement" section — the name varies by bank. You don't need the mobile app for this step.
Download the CSV or XLSX export
Most banks offer a date-range export in CSV or Excel format. Select the period you want (e.g. current month) and download the file. It stays on your device.
Drop the file into migj
Drag the file onto the import area — or click to browse. migj automatically detects the bank format. For unknown formats, a wizard guides you to map columns (date, amount, description).
Review the preview
Before anything is saved, you see all imported rows. Duplicates are flagged (same amount + date + description within 24h). AI suggests categories for each transaction (Premium). You confirm or adjust.
Budget updated
Confirmed transactions flow into your budget categories. Your dashboard updates instantly — spending totals, remaining amounts, alerts.
Why CSV instead of bank API connections?
Most "open banking" budget apps ask you to grant permanent access to your account. migj deliberately chose a different path.
🔐 Your credentials stay private
CSV import never requires your bank username or password. The file you download is just a text file — no persistent connection is established between migj and your bank.
📋 Your bank already provides this
Every bank in the EU (and most globally) lets you download your transaction history as CSV or XLSX. You don't need to set up any permissions or app integrations.
💸 Actually free — no API costs
Open banking API licences cost thousands of euros per year. By using CSV, migj keeps the import feature completely free, forever — no premium paywall, no usage limits.
🛡️ One-time exposure vs permanent access
When you use an API-connected app, it has ongoing access to your account. With CSV, you share exactly what you choose, when you choose — then the connection ends.
Supported banks at launch
Auto-detected formats — no column mapping needed. More banks added continuously based on waitlist requests.
| Bank | Format | Country | Auto-detect |
|---|---|---|---|
| Intesa Sanpaolo | CSV (semicolon, ISO-8859-1) | 🇮🇹 Italy | ✓ |
| UniCredit | CSV (comma, UTF-8) | 🇮🇹 Italy / EU | ✓ |
| Fineco | Excel XLSX (sheet 2) | 🇮🇹 Italy | ✓ |
| BNL | CSV | 🇮🇹 Italy | ✓ |
| N26 | CSV (comma, UTF-8) | 🇩🇪 Germany / EU | ✓ |
| Revolut | CSV (comma, UTF-8) | 🌍 Global | ✓ |
| Monzo | CSV (amounts in pence) | 🇬🇧 UK | ✓ |
| Wise | CSV (comma, UTF-8) | 🌍 Global | ✓ |
| ING Italia | CSV | 🇮🇹 Italy | ✓ |
| Any other bank | Generic CSV wizard | 🌍 Anywhere | Manual (template saved) |
CSV import — common questions
👫 Budgeting with a partner?
migj is built for couples and families — shared budgets, privacy levels, savings goals together. See how the family features work.