Migrate Data Into Eigenn
Connect source systems and backfill transaction history, but do not use Eigenn as a replacement general ledger.
Eigenn can synchronize supported financial systems and import transaction history from CSV. The current web app has no general-purpose spreadsheet importer for customers, invoices, forecasts, or arbitrary workbook tabs.
Choose the Right Migration Method
| Source | Supported path | Best use |
|---|---|---|
| Bank feed | Connect a bank provider | Continuous transaction and balance synchronization |
| Stripe | Connect the Stripe integration | Customers, invoices, subscriptions, payments, and Stripe-derived metrics supported by the sync |
| Accounting integration | Connect the provider under Settings → Integrations | Provider-supported customer, invoice, payment, and ledger synchronization |
| Transaction CSV | Transactions → Add → Import/backfill | Historical bank or card activity not available from a live connection |
| HTML or Markdown document | Open a document and choose Import | Insert document content into the editor |
Document import and financial-record import are separate. The document editor accepts HTML and Markdown. The editor shows its Word and CSV options as unavailable. Transaction CSV import is available from the Transactions workspace.
Keep the Accounting Source of Record
Use Eigenn as the operations workspace around the financial record. Keep the accounting system responsible for journal entries, close, tax adjustments, and statutory reporting. Do this unless your finance policy explicitly says otherwise.
Before migration:
- decide which connected system owns each record type
- choose the active workspace and the base currency
- find the bank account that each CSV belongs to
- preserve a copy of every source file
- record the cutover date and the date range that each source covers
Do not load the same historical period from both a live integration and CSV. First decide how you will handle duplicates.
Import Transaction History From CSV
- Open Transactions.
- Open the add menu.
- Select Import/backfill.
- Drop a CSV file or browse for one.
- Examine the proposed column map.
- Map the necessary fields:
- Amount
- Date
- Description
- Optionally map Balance.
- Select the destination bank account.
- If that account has no saved currency, select the CSV currency.
- Turn on Inverted amount for a credit-account export that needs reversed signs.
- Select Confirm import.
- Wait for the completion message.
The file must be CSV, no larger than 5 MB, and contain a header plus at least two data rows. The import preview reads the first rows and proposes a column map. You must confirm the map.
How Eigenn Applies the Import
- You must select an account, and that account must belong to the active workspace.
- Eigenn stores the chosen currency on that account as part of import submission.
- A mapped balance can update the account balance.
- Eigenn inserts the valid rows in batches.
- Eigenn skips rows with invalid amounts, invalid dates, or other validation errors.
- Eigenn skips a duplicate transaction identity.
- Eigenn queues the imported records for transaction enrichment after insertion.
The success toast reports that the job completed. The current modal does not show imported, skipped, and error counts. Examine the destination account after completion.
Check a Backfill
Check a small file before you import the complete history.
- Export a representative period from the source.
- Confirm whether debits are negative or positive.
- Import the sample into the correct account.
- Compare the row count, the start and end balance, the dates, the descriptions, and the sign direction.
- Confirm that the import did not introduce duplicates.
- Examine the categories and the reconciliation suggestions.
- Import the other periods only after this check.
The current web app has no import rollback control. If a bad import creates records, stop. Assess the affected rows before you delete or edit records in bulk.
Cut Over by Record Type
Transactions
Connect the bank source first. Use CSV only for history outside the connection's available window or for an unsupported account export.
Customers and invoices
Prefer a supported Stripe or accounting sync. There is no generic customer or invoice CSV wizard in the current web app. Create small missing sets manually, or use a documented integration or API workflow.
Documents
Upload receipts and source documents to Inbox or Vault. Import HTML or Markdown only when you want to insert their content into an editable document.
Forecasts and operations notes
Recreate the current operations assumptions in Eigenn. Retain the source workbook as migration evidence. There is no arbitrary forecast-workbook importer.
Migration Limitations
- Eigenn can authorize a connection before its historical sync is complete.
- Transaction import does not display a downloadable error file.
- The modal does not show an import history or undo action.
- The CSV column map covers amount, date, description, and optional balance. This flow does not persist arbitrary columns as custom transaction fields.
- Workspace export defaults affect transaction exports, not imports.
- A change to the workspace base currency is separate from the import of source-currency records.
Troubleshoot
Eigenn rejects the CSV before the column map step
Confirm that it is a .csv file under 5 MB with a header and at least two data rows. Open the file in a text editor to check that the columns have delimiters.
The proposed column map is wrong
Manually select the source column for Amount, Date, and Description. Do not continue until the first-row previews make sense.
The credits and debits have the wrong sign
Return to the import settings. Turn Inverted amount on or off as the source needs. Check a small sample before you import again.
The destination account is not in the list
Connect or create the bank account first. Then reopen Import/backfill. The importer cannot create a destination account from the CSV.
The job completed but some rows are absent
Check for invalid amounts or dates. Check also for duplicates that are already in the workspace. The current modal does not show row-level errors. Retain the source file. If you cannot explain the gap, contact support with the date range, the destination account, and the page URL.