Importing Transactions into SavePoint
Already have history at your bank? SavePoint imports transactions from CSV, Excel, QIF, QFX, and OFX files, and it all stays private on your own device (nothing is ever uploaded to a server). This guide walks you through the import wizard one step at a time, including mapping your bank's columns to SavePoint fields, handling currencies, catching duplicates before they clutter your data, and using import batch tracking so you can review or undo an import later. It is the fastest way to get months of history into SavePoint cleanly.
SavePoint can import transactions from CSV, Excel, QIF, QFX, and OFX files downloaded from your bank, credit card company, or other financial institutions. CSV and Excel imports cover standard spreadsheet exports, while QIF (Quicken Interchange Format) handles exports from Quicken and similar software, and QFX/OFX files are the bank-downloaded statement format used by most financial institutions for direct download. The import system uses a 9-step wizard to map your bank's data format to SavePoint fields, handle currencies, detect duplicates, and categorize transactions. For QIF and QFX/OFX files, some steps are handled automatically (such as amount direction, since these formats include pre-signed amounts). This section explains each step in detail.
📁 Getting Transaction Files from Your Bank
Before importing, you need to download transaction data from your bank. SavePoint supports multiple file formats:
- CSV (.csv): The most common export format. Most banks offer this under "Export," "Download," or "Statements" options. Some banks call it "Excel," "Spreadsheet," or "Comma Separated"
- Excel (.xlsx, .xls): Some banks provide Excel files directly. SavePoint handles both modern (.xlsx) and older (.xls) Excel formats
- QIF (.qif): Quicken Interchange Format. Used by Quicken and other financial software for exporting transaction data. Supports transactions, categories, split transactions, transfers, check numbers, cleared status, and memo fields. Multi-account QIF files are detected automatically so all accounts can be imported in a single pass
- QFX (.qfx) / OFX (.ofx): Bank-downloaded statement files used by most financial institutions for direct download. QFX is the Quicken-specific variant of OFX. SavePoint parses both OFX 1.x (SGML) and 2.x (XML) formats. These files include a unique transaction ID (FITID) from your bank, which SavePoint uses for stronger duplicate detection than date-and-amount matching alone
To get started:
- Log into your online banking and find "Export," "Download," or "Statements" options
- Choose your preferred format - CSV is the most universal, but QFX/OFX files provide stronger duplicate detection
- Select your date range - start with one month to test the import process
- Download the file to your computer
- Open SavePoint and go to Transactions → Import to start the wizard
Most Banks: Account Activity → Download/Export → CSV or QFX/OFX format
Credit Cards: Statements or Activity → Download Transactions → CSV or QFX/OFX
Quicken Users: File → Export → QIF format (select the accounts you want to export)
Important: Each bank's interface is different, but most have CSV or QFX/OFX export under Account Activity, Statements, or Download sections. SavePoint auto-detects the format based on file extension
🔄 The 9-Step Import Process
SavePoint's import wizard guides you through these steps:
Step 1: Select File
Upload your transaction file. SavePoint will analyze the file structure and detect the format automatically based on file extension.
- File Formats: Supports CSV (.csv), Excel (.xlsx, .xls), QIF (.qif), QFX (.qfx), and OFX (.ofx)
- CSV/Excel Required Columns: Date, Description/Payee, Amount, Category (Category required in file or will be mapped later)
- CSV/Excel Optional Columns: Currency, Notes/Memo, Reference Number/Check Number
- QIF Files: All transaction fields (date, amount, payee, category, memo, check number) are parsed automatically from the QIF format. Multi-account QIF files are detected and you will see an account mapping table to assign each QIF account to a SavePoint account. Split transactions within QIF files are also parsed and saved automatically after import
- QFX/OFX Files: Transaction data including date, amount, payee, and the bank's unique transaction ID (FITID) are parsed automatically. FITID is stored in the confirmation number field and used for enhanced duplicate detection. Account type and currency are also extracted from the file
- Date Formats: Automatically detects MM/DD/YYYY, DD/MM/YYYY, YYYY-MM-DD, and other common formats
- Amount Formats: Handles positive/negative numbers with or without currency symbols ($, €, £, etc.)
- Important: For CSV/Excel files, your file should have column headers in the first row (or use the Header Row selector in Step 2 to specify a different row). Save with UTF-8 encoding if you have special characters. QIF and QFX/OFX files do not require any preparation
The transaction import is for income and expenses (purchases, deposits, refunds, fees, interest). Do NOT use this for daily account balances or balance snapshots - those belong on the Balance Sheet page. Payments and transfers will be identified during import and excluded from income/expense categories to avoid double counting.
Step 2: Column Mapping
Tell SavePoint which columns in your file correspond to which transaction fields. The wizard shows your column headers and lets you map them to SavePoint fields. This is the first step where you interact with your data, and it includes the Header Row selector for files where the column headers are not on the first row.
- Header Row Selector: If your file has extra rows above the actual column headers (disclaimer text, account information, blank rows, etc.), use the Header Row selector to tell SavePoint which row contains your column headers. You can cycle through each row and preview the header names directly within SavePoint. This saves you from having to open and manually edit each spreadsheet file before importing. If your headers are on the first row, you don't need to change anything. A "Following row" preview below the selector shows the row right after the one you picked, so you can confirm it looks like real data
- Transaction Date (Required, marked with a red asterisk): Map to your date column
- Description/Payee (Required, marked with a red asterisk): Map to merchant name or transaction description column
- Category (Required, marked with a red asterisk): Map to category column if your file has one, or leave blank to categorize later
- Amount (Required, marked with a red asterisk): Map to the amount/value column
- Currency (Optional): Map if your file has a currency column (like "USD," "EUR," "GBP")
- Notes/Memo (Optional): Map to any notes or memo column
- Reference Number (Optional): Map to check number, confirmation code, or reference column
- Account Selection (Required, marked with a red asterisk): Choose which SavePoint account these transactions belong to - all imported transactions go to this one account
Step 3: Amount Direction
Banks format amounts differently. Tell SavePoint how expenses are represented in your file so it can correctly identify income vs expenses.
- Negative Amounts (-50.00): Choose this if expenses show as negative numbers and returns/refunds show as positive
- Positive Amounts (50.00): Choose this if expenses show as positive numbers and returns/refunds show as negative
- Why This Matters: SavePoint needs to know if -$100 means you spent money or received a refund - this varies by bank
- Example: If you see "Gas Station -45.50" in your file, select "Negative Amounts." If you see "Gas Station 45.50" for expenses, select "Positive Amounts"
- File Preview: A table shows your file's actual column headers and the first few data rows, unmodified, so you can check the sign of your amounts without opening the file yourself. Final signs are still applied later, in Step 9, based on each transaction's category type
- QIF/QFX/OFX Note: This step is automatically skipped when importing QIF, QFX, or OFX files because these formats include pre-signed amounts (expenses are already negative and income is already positive). No action is needed on your part
Step 4: Currency Mapping
Set the currency for your transactions. If you didn't map a currency column in Step 2, or if you need to override currencies for specific vendors, do it here.
- Default Behavior: All transactions start with your base currency unless you mapped a currency column
- Vendor-Level Currency: Transactions are grouped by vendor/description - you can set a different currency for each vendor
- Set All to Base Currency: Click this button to quickly set all transactions to your base currency
- Individual Mapping: Each vendor group shows a dropdown to select its currency (USD, EUR, GBP, etc.)
- Auto-Detection: SavePoint tries to detect currency symbols in amount fields (like $, €, £) and pre-selects them
Step 5: Data Preview
Review how your data looks with all mappings applied. This preview shows what will be imported (but final signs for income/expense aren't applied until Step 9).
- Table View: See all transactions in a table with Date, Description, Category, Amount, Currency, Notes, and Reference
- Verify Mappings: Check that dates, amounts, and currencies look correct
- Go Back if Needed: Use the Previous button to fix any mapping errors
- Sign Conversion Note: Income and expense signs are applied in Step 9 based on category types and your expense direction setting from Step 3
Step 6: Category Mapping
Map all categories from your bank file to SavePoint categories. Each unique category in your import file gets mapped to an existing SavePoint category.
- Exact Match: If a category name in your file matches one of your SavePoint categories exactly (including a subcategory), it's pre-selected automatically with a green "Exact match" badge
- Suggestions as Clickable Buttons: For everything else, SavePoint shows up to three suggestions as buttons - click one to apply it directly, or pick manually from the dropdown
- Historical: A suggestion based on how you've categorized similar transactions before. SavePoint matches on wording shared between the imported description and your past transaction descriptions, not an exact vendor match - occasionally this can surface a category from an unrelated transaction that happens to share a common word. If a suggestion looks wrong, just pick a different button or map manually. You can control how far back Historical looks in Settings → Merchant Mapping → Historical Match Window (see the Merchant Mapping System section)
- Merchant Pattern: A suggestion based on your saved patterns in Settings → Merchant Mapping. Because one file category can cover several different vendors (for example, "Restaurant" might include both a pizza place and a convenience store), this only appears when every vendor sharing that file category agrees on the same SavePoint category - otherwise it's left for Step 8 to resolve vendor by vendor
- Smart Match: A suggestion from a small built-in list of common category keywords (for example, "internet" or "cable" suggesting Cable/Internet)
- Pattern Match: A suggestion based on a partial match against your existing category names
- Auto-Map Suggested Matches: Applies the top suggestion to every unmapped row at once
- No Matches Found: Nothing matched, so you'll need to select the category manually
- Transfer & Payment Categories: These are for internal transactions and won't be included in income/expense calculations (prevents double counting)
- Important: Use Transfer for account-to-account moves, Payment for credit card payments - these don't affect your income or expenses
Step 7: Duplicate Check
SavePoint compares your import to existing transactions and flags potential duplicates. You decide which duplicates to skip.
- Duplicate Detection: Finds transactions with matching date, amount, and description in your existing data
- FITID Matching (QFX/OFX): When importing QFX or OFX files, SavePoint also uses the bank's unique transaction ID (FITID) stored in the confirmation number field for exact duplicate detection. This is significantly more reliable than date-and-amount matching alone, since it can distinguish between two legitimate transactions on the same day for the same amount
- Side-by-Side Comparison: Shows the new transaction next to existing matches so you can compare
- Skip Duplicates: Check the box next to any transaction you want to skip (won't be imported)
- Keep Checkbox: Leave unchecked to import even if it looks like a duplicate (useful for recurring transactions)
- Why This Matters: Prevents importing the same transactions twice if you download overlapping date ranges
Step 8: Vendor-Level Mapping (Optional)
Fine-tune category assignments based on specific vendors or transaction descriptions. This is optional but provides more precise categorization.
- Enable Vendor Mapping: Turn on the switch to activate vendor-level overrides
- Override Categories: Map specific vendors to different categories than the general category mapping from Step 6
- Example Use Case: "Skyline Airlines" might map to "Travel - Transportation" instead of just "Travel"
- Auto-Map Similar Vendors: Click this button to automatically group similar vendor names and assign them the same category
- Merchant Mapping Patterns: You can set up permanent patterns in Settings → Merchant Mapping for future imports
- Source Indicators: Shows whether each category came from auto-mapping, patterns, or historical data
Step 9: Final Preview
Final review of all transactions with all mappings, conversions, and duplicate exclusions applied. This is your last check before importing.
- Summary Cards:
- Transactions to Import (green card) - how many will be added
- Duplicates Excluded (yellow card) - how many were skipped
- Vendor Overrides (blue card) - how many have vendor-specific categories
- Final Table: Shows all transactions with final amounts, categories, currencies, and mapping source
- Mapping Source Column: Shows where each category came from (vendor mapping, pattern, category mapping, etc.)
- Unmapped Category Warning: If any transactions still have no category mapping, a confirmation appears before the import starts, listing which file categories are affected and how many transactions each covers. Choose "Continue Anyway" to proceed (those specific transactions are skipped and reported as errors) or go back and fix the mapping first
- Ready to Import: Click "Import" to add all transactions to your account, or "Previous" to make changes
- Download bank CSV with 3 months of transactions
- Step 1: Upload file → SavePoint detects headers automatically
- Step 2: Map Date, Description, Amount columns → Select checking account
- Step 3: Choose "Negative Amounts" (bank shows expenses as negatives)
- Step 4: Keep all as USD (or map foreign vendors to their currencies)
- Step 5: Preview looks good → Continue
- Step 6: Map bank categories to SavePoint categories → Create "Groceries" category
- Step 7: Skip 12 duplicates from overlapping download period
- Step 8: Enable vendor mapping → Set "Coffee Corner" to "Dining Out"
- Step 9: Review final count: 145 transactions to import → Click Import
Result: 145 new transactions added to checking account, all categorized and ready for budgeting.
- Export from Quicken: File → Export → QIF format, select checking and credit card accounts
- Step 1: Upload .qif file → SavePoint detects multiple accounts in the file
- Account Mapping: Map each QIF account (e.g., "Chase Checking", "Visa Card") to existing SavePoint accounts or create new ones
- Step 2: Column mapping is handled automatically for QIF files
- Step 3: Skipped automatically (QIF amounts are already pre-signed)
- Step 4: Keep all as USD → Continue
- Step 5: Preview shows parsed transactions → Continue
- Step 6: Map QIF categories to SavePoint categories. Split transaction categories from the QIF file also appear here for mapping
- Step 7: Review duplicates → Skip any that already exist
- Step 8: Review vendor mapping. Split transactions show as read-only with a "Split (N categories)" badge
- Step 9: Review final count → Click Import. Split transactions from the QIF file are automatically saved with their split categories and amounts after import
Result: All transactions from both accounts imported in a single pass, with QIF split transactions preserved and categories mapped to SavePoint categories.
- Download from your bank: Look for "Download Transactions" or "Export" and choose QFX or OFX format
- Step 1: Upload .qfx or .ofx file → SavePoint parses the bank statement data, including account type, currency, and unique transaction IDs
- Step 2: Column mapping is handled automatically → Select or create the SavePoint account
- Step 3: Skipped automatically (QFX/OFX amounts are already pre-signed)
- Step 4: Currency is auto-detected from the file → Continue
- Step 5: Preview shows parsed transactions → Continue
- Step 6: QFX/OFX files typically don't include categories, so you'll map all transactions to SavePoint categories here
- Step 7: Duplicate check uses FITID matching for exact detection → Skip any duplicates
- Step 8: Enable vendor mapping for precise categorization
- Step 9: Review final count → Click Import
Result: Bank transactions imported with FITID-based duplicate detection. Re-importing the same statement next month will automatically flag exact duplicates using the bank's transaction IDs.
Set aside time at least once a month to review and enter your transactions. You may find it helpful to do this at the beginning of each month for the previous month's activity. Import your bank statements, categorize transactions in Edit Mode, and review your budget performance. This monthly routine keeps your financial data accurate without requiring daily maintenance. Use the "Current Month" filter to focus on what matters most - this month's budget performance.
Every time you import transactions, SavePoint assigns the import a unique batch ID. The batch ID includes the date and original filename (for example, "2026-03-17_Chase-Checking.csv" or "2026-03-19_test-import.qif"). If you import the same file multiple times on the same day, SavePoint appends a counter to the batch ID (e.g., "_2", "_3") so each import is uniquely identifiable. This tracking applies to all import formats: CSV, Excel, QIF, QFX, and OFX.
📦 Why Import Batch Tracking Matters
Import batch tracking gives you the ability to review, verify, or undo an entire import after the fact. If you accidentally import the wrong file, import to the wrong account, or discover that an import contains incorrect data, you can quickly filter to that specific import and take action without affecting the rest of your transaction history.
- Import Batch Filter: A new "Import Batch" dropdown in the transactions filter bar lets you filter your transaction list to show only transactions from a specific import. Select any batch from the dropdown to see exactly what was imported in that batch
- Auto-Refresh: The Import Batch dropdown automatically refreshes after you delete transactions, so empty batches (where all transactions have been removed) disappear from the list immediately
- Bulk Delete an Import: To remove an entire import, filter to the batch using the Import Batch filter, enter Edit Mode, use Select All to select all visible transactions, and delete them. This effectively undoes the entire import
- Import Source Tracking: SavePoint also records the file type of each import (csv, xlsx, qif, qfx, or ofx) so you can identify how transactions were imported
- Open the Import Batch filter in the transactions filter bar
- Select the batch you want to review (batches are listed by date and filename)
- Review the transactions that were part of that import
- If you need to remove the import: Enter Edit Mode → Select All → Delete Selected → Confirm deletion
Result: All transactions from that import are removed, and the batch disappears from the Import Batch dropdown.
Scenario: Jennifer had been avoiding her finances for months. She had transactions scattered across 3 bank accounts, 2 credit cards, and no idea where her money was going.
Her SavePoint Journey:
- Month 1 - Initial Setup: Downloaded 3 months of bank statements as CSV files and imported them into SavePoint. Spent about 2 hours in Edit Mode categorizing the imported transactions
- Month 2 - First Monthly Update: Downloaded last month's transactions and imported them. Set up merchant mapping rules based on her common vendors. Took about 30 minutes
- Month 3 - Analysis: Used filters to analyze spending patterns and identify problem areas. Updated her budget based on actual spending
- Month 4 - Routine: Monthly import now takes 15 minutes thanks to auto-categorization from merchant mapping
Results After 3 Months:
- Discovered she was spending $400/month on dining out (didn't realize it was that much)
- Found $1,200 in subscription services she'd forgotten about and canceled unused ones
- Started budgeting based on her actual spending patterns
- Reduced financial stress by having complete visibility with just a monthly 15-minute routine
Result: Jennifer went from financial chaos to complete control with a simple monthly routine, saving over $500/month by understanding where her money was actually going.