Solavel Docs

Data Migration Center

Last updated

The Data Migration Center brings your records and balances from a previous accounting system or spreadsheets into SolaCount. You upload files, match columns and records, review every decision, check that the money balances, and only then import. Nothing is created or posted until you explicitly confirm the import. Use it right after the setup wizard and before you start entering new transactions.

Where to find it

  • Settings → Data management → Data Migration Center (/settings/data-migration).
  • Also listed as a card on Settings Overview: "Upload files, match information and review before importing."

Who can use it

Action Needs
Open the center, review migrations Setup finished, active membership, accounts.view plus view permission for each selected dataset
Start, upload, review and import accounts.add_opening_balance plus create permission for each dataset (customers, suppliers, items, fixed assets…)
Datasets Each dataset needs its feature in your plan (for example inventory for opening stock, fixed assets for the asset register)

If you can only view, the page says: "You can review migrations. Starting or executing one requires migration permissions."

How it works (four stages)

The How it works help panel summarizes it:

  1. Choose the source and data: where the data comes from and whether balances are included.
  2. Upload and match: add files, choose sheets, review the suggested field matches.
  3. Review before importing: resolve duplicates and errors. Financial differences must be zero.
  4. Import safely: SolaCount rechecks access and validation, then imports in dependency order (accounts before customers before balances, and so on).

Inside a migration, Migration steps shows where you are (setup, upload, match, review, import). Each step is marked Done, In progress, Available or Not ready, and Edit setup takes you back to your choices. Changing them requires validation again.

What you can bring in

Data Description Result on import
Chart of accounts, including bank and cash accounts Names, codes, types and parent accounts Accounts created or linked to existing ones
Additional bank/cash details (optional file) Bank name, account number, IBAN, SWIFT, branch, currency Linked bank/cash records. Reuses the chart account and doesn't import its ledger twice.
Customers / Suppliers Contacts, addresses and tax details (VAT number, export/overseas flags, payment terms) Customer/supplier records
Items Products, services, units, income/purchase/inventory accounts, price, tax Items
Trial balance Ledger balances at the end of the cutover date (separate debit and credit columns) Opening journal
Unpaid invoices (receivables) Each unpaid customer invoice and its outstanding amount Opening customer invoices
Unpaid bills (payables) Each unpaid supplier bill and its outstanding amount Opening supplier bills
Opening customer advances / Opening supplier advances Remaining unapplied advances at cutover Opening advances, available for allocation
Opening asset register Cost, acquisition and in-service dates, accumulated depreciation, residual value, method (Straight line / Declining balance), useful life, ledgers Fixed-asset register with its reconciled opening balance. Historical cash, acquisitions and depreciation are not replayed.
Inventory Opening quantities and values per item Opening stock in the chosen warehouse

Step 1: Start a migration

  1. Click Start migration (or Download template first if you want the SolaCount workbook).
  2. File format: choose
    • Zoho exports ("Upload files exported from Zoho."). The page notes: "Zoho export formats are still being verified. Review column mappings and validation results before importing."
    • Excel / CSV ("Use spreadsheets from your previous system.").
    • SolaCount template ("Download a guided workbook and fill it in."). Download XLSX template.
  3. Name your source: enter the Previous business name (for example "Al Noor Trading — previous accounting system"), or Or use a saved source. Reusing the same source for files from the same business prevents duplicates. Keep separate businesses as separate sources.
  4. Import scope:
    • Records only: creates the selected master records without balances (Lists only; no balances posted).
    • Records and opening balances: adds reviewed opening positions at a chosen date.
  5. For balances, set the Opening balance date / Cutover date ("Amounts represent the end of this date."), the Number format (decimal style of your source) and, for stock, the Opening stock warehouse.
  6. Tick the Selected datasets. The Cutover file checklist shows which files are Required for opening positions, which are Supporting schedule, and which are As needed.
  7. Click Continue to upload.

"Your choices are saved automatically." A Saved / Saving… / Unsaved changes indicator shows the state. If you edit the same setup in another tab you're asked to Use saved setup or Keep my choices.

Step 2: Upload

  1. Drag files onto Drop your spreadsheets here, or Add files.
  2. Limits: CSV, XLS, XLSX · 20 MB per file · 20 files · 50,000 rows per migration.
  3. Files upload privately and are inspected automatically ("Inspecting sheets and headings… You can return later."). Uploading does not import anything.
  4. For CSV you can set the CSV separator (or Detect automatically).

Per file you can Download the original, Replace it (only that file is rechecked and unchanged decisions are kept), or Remove it (its unimported rows go too).

Step 3: Match

For each file and sheet:

  1. Confirm the Heading row ("Column headings are on row …").
  2. Choose What data is on this sheet?, or Leave this sheet out.
  3. Review possible repeated headings and report totals. These rows stay included until you choose Exclude report row or Keep as a business record.
  4. Match each Source column to a SolaCount field. Suggestions from recognized headings are marked Suggested · review. Use Exclude this column… for data you don't need (a confirmation appears if the column has data).
  5. For accounts, map each source Account Type value to a native classification (Account Type → native classification). Known export types have suggestions.
  6. Click Save matching and prepare records.

Preparation runs in the background ("Mappings are saved. You can leave and return."). Progress shows rows processed. If progress stalls, use Check and resume saved work. Completed work is kept.

Multi-file review

One migration can hold many files, for example a chart export, a customer list, an aging report and a trial balance. Files and sheets shows each file's state, how many files are left to review, and Next file. Records from different files of the same source are linked by their source IDs.

Step 4: Review

The review workspace lists the prepared records with filters (Filter dataset, Filter review status: All records, Needs correction, Not decided, All exceptions) and search ("Search name or reference").

Decide each record

For each record, open Check this record and choose:

Decision Meaning
Create new Creates a new record in this organization
Use existing Links to an existing SolaCount record. Choose it under Existing record to use.
Exclude Leaves it out. Enter a Reason for excluding.

SolaCount never merges by name alone ("Names may match legitimately. SolaCount never merges by name alone."). Similar names are offered as candidates only. Compare the identifying details before choosing.

To decide many at once, tick them and use Review selected records: apply Create separate records after validation or Exclude with this reason, with an optional shared correction, then Save reviewed decisions. This saves decisions only. It is not an import.

Account matching, including many-to-one

  • Each source account gets a Proposed destination: a compatible existing account ("Recommended: use this compatible existing account.") or a new account with a Destination code prepared when you save.
  • Several source accounts can map to the same SolaCount account (many-to-one), for example three petty-cash accounts into one Cash account. Their balances are combined on that account, and each source keeps its own reference in migration history.
  • A source account group can only map to a group. A posting source needs a postable account ("Account group — cannot receive postings.").
  • Protected control accounts (AR, AP, VAT) must link to your existing accounts. For VAT and other control accounts you answer Account purpose first.
  • If source codes repeat or clash, choose a numbering policy: Use destination numbering; retain source codes as references.
  • Bank and cash accounts: Choose bank/cash treatment. The account can create one linked bank/cash record, or take its details from the linked bank file.

Open questions

Before you can continue, the review lists anything still blocking: Conflicting source account codes, Resolve parent or linked records, Choose bank/cash treatment, Review existing company information, Review unposted source balances, Identical source rows — review, Conflicting source identifiers.

Opening balances and supplier credits

With Records and opening balances:

  • The Pre-import financial check compares Source debit, Source credit and Difference for the trial balance, customer receivables and supplier payables. The difference must be zero. SolaCount never adds a hidden balancing adjustment.
  • Detailed unpaid invoices, bills and stock replace their control totals in the trial balance, so nothing is counted twice.
  • For each supplier payable row, set the Credit origin: Opening supplier credit, Return / price adjustment, Advance / excess payment, or Needs review. Also set the Source payable meaning: Before unused credits or Already net of unused credits.
  • Opening supplier credits become credits you can apply against that supplier's bills (Apply opening supplier credit). Supplier statements show the Remaining opening credit.
  • Opening registers (advances, fixed assets) must match their ledger openings ("Opening registers match their ledger openings").
  • Customer/supplier contact totals are not a financial migration: "These are contact totals, not invoices or a trial balance. No balances, payments or unused credits will be posted or netted."
  • Amounts must be in your base currency. Source currency prefixes are preserved, but there is no foreign-currency conversion.

Step 5: Import

  1. When the review is clean, click Continue to import.
  2. Confirm this import shows the Destination organization, Selected data, Records reviewed (New · Existing · Excluded · Unresolved), the Financial effect ("Reviewed opening positions will post after all checks pass." or "No opening balances will be posted.") and Approvals.
  3. Click Import reviewed data, or Go back and review.

Import runs in the background ("You can leave and return later. Progress and completed work are saved."). Statuses:

Status Meaning
Import in progress Running. Counts reflect committed records.
Awaiting approval Opening records need an authorized approver (approval workflow). Return and Resume saved import afterwards.
Waiting for inventory integration Opening stock is waiting for SolaStock to confirm
Import partially completed / Import failed Use Resume saved import. Committed records are never created twice.
Migration completed "Your reviewed data is in SolaCount"
Migration cancelled Cancel pending work stops safely. Committed records stay, and you fix them with normal corrections or reversals.

After import, Actual posted reconciliation compares the approved source with what actually posted (Before import, Amount posted, After import). Use Download detailed report for a full record-by-record report, Download preserved source evidence for the source files, and Open record to jump to anything created.

What is posted and what isn't

Posted (with Records and opening balances) Not posted
Opening journal from the trial balance (offset: Opening Balance Equity) Historical sales, purchases, payments or depreciation (only balances at cutover)
Opening customer invoices and supplier bills for the outstanding amounts Contact balance totals from customer/supplier lists
Opening supplier credits and customer/supplier advances Anything excluded or unresolved
Opening asset register (cost and accumulated depreciation) Foreign-currency conversion
Opening stock (via SolaStock where connected) Any balancing figure SolaCount would have to invent

With Records only, nothing is posted. You are asked to acknowledge that before continuing.

Historical full-history migration

Some organizations need their full transaction history, not just cutover balances. In October 2026 SolaCount added an assisted historical import that Solavel runs for you from a historical sales workbook (invoices, purchase bills, cash and free sales, sales returns, receipts, supplier payments, expenses, customer discounts and supplier charges).

How it works:

  • Values only: the workbook is read without formulas or macros, and every source row is preserved.
  • Attested snapshots: each document's original totals, VAT and rounding are kept exactly as in the source. Nothing missing is invented. For example, a receipt whose invoice link can't be resolved becomes an unallocated customer advance.
  • Resumable execution: documents are staged, then created and posted through the normal SolaCount services in date order. A stopped run resumes without duplicating anything.
  • The migration is retained permanently as evidence.

Review it in the center

The saved migration appears in Saved migrations as Historical import, "Review preserved events and outcomes". Click View to open Historical migration review:

  • "Read-only historical evidence. Draft and staged events are not posted transactions. Unresolved source evidence remains preserved; this page cannot upload or execute imports."
  • Counts of Posted, Draft, Staged and Failed events, and Original document lines mapped (x / y).
  • Filter by Status and search by source, reference or party.
  • Each event shows type (Sales invoice, Cash sale, Free sale, Purchase bill, Sales return, Customer receipt, Supplier payment, Expense, Customer discount, Supplier charge), number, date, party, amount and currency, status, Outcome / remaining reason, Open destination document, and Original rows and line coverage.

Opening this page needs view permission for the document types involved.

Inventory and cost-of-sales caveat

Some historical lines are brought in as Historical non-inventory treatment. Those documents carry this warning:

Inventory quantities and cost of goods sold were not reconstructed for the identified historical lines. Financial amounts remain preserved; do not use these documents as complete inventory or gross-margin evidence.

For those periods, revenue and VAT are correct. Stock quantities, COGS and gross profit are not reliable and may overstate profit and inventory.

Worked example

Al Noor Trading LLC moves from spreadsheets with a cutover of 30 Sep 2026:

  1. Start migration → Excel / CSV → source "Al Noor — old books" → Records and opening balances, date 30-09-2026.
  2. Upload chart.xlsx, customers.csv, suppliers.csv, trial-balance.xlsx, ar-aging.xlsx, ap-aging.xlsx.
  3. Match: map "Petty Cash 1" and "Petty Cash 2" both to Cash (many-to-one). Link "Sales VAT" to your existing VAT Output account.
  4. Review: Trial balance Dr 245,000 / Cr 245,000, Difference 0. AR detail AED 37,800 replaces the AR control line. Emirates Packaging shows AED 1,050 Opening supplier credit.
  5. Import reviewed data.

Result: 120 customers and 45 suppliers created. The opening journal posts (offset Opening Balance Equity). 14 opening invoices total AED 37,800, 9 opening bills total AED 21,000, and the supplier credit of AED 1,050 is ready to apply to Emirates Packaging's next bill.

Tips

  • Do the migration before entering live transactions. Opening balances lock once activity exists after the opening date.
  • Use one source per previous business. Reuse it when adding more files.
  • Download the detailed report and keep it with your year-end records.

Related