Import and Export π₯π€¶
Valt allows you to import and export your transactions in CSV format, making data migration, backups, and spreadsheet integration easy.
Overview¶
| Feature | Description |
|---|---|
| Import | Loads transactions from a CSV file through a guided wizard |
| Export | Saves all transactions to a CSV file |
Both features use the same CSV format, allowing you to export data from Valt and import it back without losing any information.
Import Transactions π₯¶
Accessing the Wizard¶
- In the main menu, click Import Transactions
- The import wizard will open
Step 1: File Selection¶
In this step you select the CSV file to import.
Available options:
- Select File: Choose a CSV file from your computer
- Download Template: Downloads a CSV template with examples of all transaction types
After selecting the file, Valt will validate the content and show:
- β Number of valid rows
- β Number of parsing errors (if any)
Sample Template
If this is your first time importing, download the template first. It contains examples of all supported transaction types.
Parsing Errors
If there are errors, you can expand the list to see details. Fix the errors in the CSV file and select it again.
Step 2: Account Mapping¶
Valt automatically detects accounts from the CSV file and maps them to existing or new accounts.
Automatic detection:
- Accounts with
[btc]are detected as Bitcoin accounts - Accounts with currency codes (e.g.,
[USD],[BRL]) are detected as fiat accounts
Summary displayed:
| Information | Description |
|---|---|
| New accounts | Will be created during import |
| Existing accounts | Already exist in Valt and will be reused |
Automatic Matching
Valt tries to match CSV account names with existing accounts (case-insensitive). If a match is found, the existing account will be used.
Step 3: Category Preview¶
Similar to account mapping, Valt shows the categories found in the CSV.
Summary displayed:
| Information | Description |
|---|---|
| New categories | Will be created during import |
| Existing categories | Already exist in Valt and will be reused |
Step 4: Summary¶
Before executing the import, you'll see a complete summary:
- Total transactions to import
- Total accounts (new ones highlighted)
- Total categories (new ones highlighted)
Review the numbers and click Import to continue.
Step 5: Progress¶
During import you'll see:
- Animated progress bar
- Current action being executed
- Counter of imported transactions
When finished, a success message will be displayed and you can close the wizard.
CSV File Format π¶
Required Columns¶
| Column | Format | Description |
|---|---|---|
date |
YYYY-MM-DD | Transaction date |
description |
Text | Transaction description |
amount |
Number | Amount (negative = debit, positive = credit) |
account |
Text [CURRENCY] | Source account with currency in brackets |
category |
Text | Category name |
Optional Columns¶
| Column | Format | Description |
|---|---|---|
to_account |
Text [CURRENCY] | Destination account (for transfers) |
to_amount |
Number | Amount in destination account (for exchanges) |
Account Name Format¶
The account name must include the currency type in brackets:
| Type | Format | Example |
|---|---|---|
| Fiat | Name [CURRENCY] |
Checking [USD], Savings [EUR] |
| Bitcoin | Name [btc] |
Ledger [btc], Coinbase [btc] |
Amount Format¶
| Type | Format | Example |
|---|---|---|
| Fiat | 2 decimal places | 150.00, -35.50 |
| Bitcoin | 8 decimal places | 0.00100000, -0.05000000 |
Transaction Examples π¶
Fiat Expense¶
date,description,amount,account,to_account,to_amount,category
2024-01-15,Grocery shopping,-150.00,Checking [USD],,,"Food"
Fiat Income¶
date,description,amount,account,to_account,to_amount,category
2024-01-16,Salary,5000.00,Savings [USD],,,"Income"
Bitcoin Income¶
date,description,amount,account,to_account,to_amount,category
2024-01-21,Mining rewards,0.00100000,Ledger [btc],,,"Income"
Fiat to Fiat Transfer¶
date,description,amount,account,to_account,to_amount,category
2024-01-19,Transfer between banks,-1000.00,Checking [USD],Savings [USD],1000.00,"Transfer"
Bitcoin to Bitcoin Transfer¶
date,description,amount,account,to_account,to_amount,category
2024-01-20,Wallet consolidation,-0.05000000,Coinbase [btc],Ledger [btc],0.05000000,"Transfer"
Buy Bitcoin (Fiat to Bitcoin)¶
date,description,amount,account,to_account,to_amount,category
2024-01-17,Stack sats,-500.00,Checking [USD],Ledger [btc],0.00850000,"Investment"
Sell Bitcoin (Bitcoin to Fiat)¶
date,description,amount,account,to_account,to_amount,category
2024-01-18,Sold BTC,-0.01000000,Ledger [btc],Checking [USD],450.00,"Trading"
Export Transactions π€¶
How to Export¶
- In the main menu, click Export Transactions
- Choose the location and file name
- Click Save
The file will be saved with all your transactions.
What Gets Exported¶
The exported CSV file contains:
- Initial Balances: For each account with an initial balance, a special row with category
InitialValue - All Transactions: Ordered by date, in import-compatible format
Example Exported File¶
date,description,amount,account,to_account,to_amount,category
2024-01-01,InitialValue,5000.00,Checking [USD],,,"InitialValue"
2024-01-01,InitialValue,0.05000000,Ledger [btc],,,"InitialValue"
2024-01-15,Grocery shopping,-150.00,Checking [USD],,,"Food"
2024-01-16,Salary,5000.00,Savings [USD],,,"Income"
InitialValue Category
The InitialValue category is reserved by the system. When importing, rows with this category set the account's initial balance instead of creating a transaction.
Use Cases π‘¶
Data Backup¶
- Export your transactions periodically
- Store the CSV file in a safe location
- If needed, import the file back
Migration Between Computers¶
- On the old computer, export your transactions
- On the new computer, install Valt
- Import the CSV file
Spreadsheet Integration¶
The CSV format allows you to:
- Open in Excel or Google Sheets
- Create custom analyses
- Build custom charts
- Edit in bulk and re-import
Import from Other Apps¶
If you have data in another financial app:
- Export from the original app to CSV
- Adjust the columns to match Valt's format
- Import into Valt
Best Practices ⨶
Before Importing¶
- Create a backup by exporting current data
- Test with a few transactions first
- Verify dates are in the correct format (YYYY-MM-DD)
- Confirm Bitcoin amounts have 8 decimal places
Account Names¶
- Use consistent names with existing accounts
- Always include the currency in brackets
- For Bitcoin, always use
[btc]in lowercase
Categories¶
- Use existing category names when possible
- Avoid creating duplicate categories with different spellings
Troubleshooting π§¶
Error "Invalid date"¶
Cause: The date is not in YYYY-MM-DD format
Solution: Use the year-month-day format (e.g., 2024-01-15)
Error "Account not recognized"¶
Cause: The account name doesn't have the currency code in brackets
Solution: Add [USD], [EUR], [btc], etc. to the end of the name
Error "Invalid amount"¶
Cause: The amount contains invalid characters or incorrect formatting
Solution: Use only numbers and decimal point (e.g., 150.00, not $150.00)
Duplicate transactions after import¶
Cause: You imported the same file more than once
Solution: Valt doesn't automatically detect duplicates. Delete the duplicate transactions manually or restore a previous backup.
Next Steps¶
- Transactions - Manage your transactions manually
- Accounts - Organize your accounts
- Reports - Analyze your finances