CSV and JSON Import Overview
How to import transactions into Forbidden Finance from CSV and JSON files, including supported formats, deduplication, mapping profiles, and how to undo an import.
Overview
Forbidden Finance lets you import transactions from CSV and JSON files, making it easy to migrate from another finance app or bring in historical data from your bank. The import system auto-detects the file format, handles date and amount parsing, skips duplicate transactions, and processes files in batches with a progress indicator. You can import from YNAB, Mint, Monarch, or any generic CSV file.
Supported Formats
| Format | Auto-Detected? | Best For |
|---|---|---|
| YNAB | Yes | Migrating from You Need A Budget |
| Mint | Yes | Importing historical Mint data |
| Monarch | Yes | Migrating from Monarch Money |
| Generic CSV | No (you map columns) | Bank exports, spreadsheets, other apps |
When you upload a file, Forbidden Finance reads the header row and compares it against known format signatures. If it recognizes YNAB, Mint, or Monarch, parsing is fully automatic. If the format is not recognized, you are prompted to map columns manually using the generic CSV and JSON importer.
How to Import
Go to Transactions
Open the Transactions tab and tap the Import button (or go to Settings > Import Data).
Select your file
Choose a CSV file from your device. The file should be a standard comma-separated values file with a header row.
Choose the target account
Select which account these transactions belong to. All transactions in a single import go to one account.
Review the preview
Forbidden Finance shows a preview of the first several rows, the detected format, and any validation warnings. Review the preview to make sure dates, amounts, and merchants look correct.
Confirm and import
Tap Import. Transactions are processed in batches of 100 with a progress bar showing how many have been imported, skipped (duplicates), or rejected (invalid data).
Deduplication
Forbidden Finance automatically checks each row against your existing transactions before importing. A transaction is considered a duplicate if it matches on all of the following:
- Same date
- Same amount
- Same merchant name
- Same account
Duplicate rows are skipped and reported in the import summary. Your existing data is never overwritten.
Mapping Profiles
When using the generic CSV and JSON importer, you can save your column mapping as a reusable profile. This is especially useful if you import from the same bank or spreadsheet format regularly.
- After mapping your columns, tap Save Mapping Profile and give it a name (e.g., "Chase Export" or "Company Expense Report").
- Next time you import a file with the same column structure, select the saved profile instead of mapping from scratch.
Batch Processing and Progress
Large files are imported in batches of 100 transactions. During import, you see:
- Total rows in the file
- Processed so far
- Inserted (new transactions added)
- Skipped (duplicates detected)
- Errors (rows with invalid data)
You can review error details after the import completes to see which rows failed and why.
Reversing an Import
If something went wrong (like importing to the wrong account), you can undo an entire import. Go to Settings > Import History, find the import, and tap Undo Import. All transactions from that import are removed. This does not affect transactions from other imports or other sources.
Tips
Frequently Asked Questions
What file formats are supported?
Standard CSV and JSON files (comma-separated values) with a header row. The file must be UTF-8 encoded. Excel files (.xlsx) are not supported directly -- export to CSV from Excel first.
How does Forbidden Finance handle different date formats?
The import system automatically detects common date formats by sampling your file, including MM/DD/YYYY, YYYY-MM-DD, DD/MM/YYYY, and several others. If the format is ambiguous, you are prompted to confirm.
What about different amount formats?
The importer handles negative signs, parentheses for negatives, currency symbols, thousands separators, and European-style decimals (1.234,56). It also handles separate inflow/outflow columns used by apps like YNAB.
Will imported transactions be auto-categorized?
Yes. If you have previously categorized transactions from the same merchant, your categorization rules apply to imported transactions as well. Unknown merchants are imported without a category, and you can categorize them afterward.
Can I import the same file twice without getting duplicates?
Yes. The deduplication system skips any rows that match existing transactions by date, amount, and merchant. Re-importing a file is safe.
Related Articles
Import from YNAB
Step-by-step YNAB migration guide.Import from Mint
Step-by-step Mint migration guide.Import from Monarch
Step-by-step Monarch migration guide.Import Generic CSV
Map columns from any CSV file.Need more help? Contact us at support@403fin.io.
Last updated today
Built with Documentation.AI