ESC
Type to search…
v2026
This documentation is still being improved and may not fully reflect how the application works. Join the forum to ask questions and share feedback →
Docs Getting Started Migration

Migration

How to migrate your financial data from another accounting system into Basis Accounting.

Migration Strategy

There are two approaches:

Approach When to use
Clean cutover Start fresh from a cutover date; import only opening balances
Full historical import Import all historical transactions (requires the Import API)

For most businesses, a clean cutover is simpler and less error-prone. You enter balances as of a specific date and begin recording new transactions in Basis from that date onward.

Step 1 — Prepare Your Data

From your current system, export:

  1. Chart of Accounts — Account codes, names, and types.
  2. Parties list — Customers and vendors with contact info, payment terms, and tax IDs.
  3. Items list — Products and services with default prices and tax categories.
  4. Trial Balance — As of your cutover date (the last day in your old system).
  5. Open AR invoices — Unpaid customer invoices as of cutover.
  6. Open AP invoices — Unpaid vendor bills as of cutover.
  7. Inventory quantities — Stock on hand per item per location as of cutover.

Step 2 — Set Up Master Data in Basis

  1. Enter your Chart of Accounts manually or use the default template as a starting point.
  2. Import parties using the bulk import tool (Parties → Import CSV).
  3. Import items using the bulk import tool (Items → Import CSV).

CSV Format — Parties

code,name,type,email,phone,tax_id,payment_terms_days
C001,PT Maju Jaya,Customer,info@majujaya.com,+62811000001,01.234.567.8-910.000,30
V001,CV Sumber Makmur,Vendor,order@sumbermakmur.com,+62812000002,,45

CSV Format — Items

code,name,type,unit,price_sell,price_buy,tax_category,account_sell,account_buy
INV-001,Laptop 14in,Inventory,pcs,15000000,12000000,VAT 11%,4-1100,5-1100
SVC-001,Installation Service,Service,job,500000,,VAT 11%,4-2100,

Step 3 — Enter Opening Balances

Go to Settings → Opening Balances and enter:

  • GL account balances from your trial balance.
  • Open AR invoices (creates individual invoice records in the AR module).
  • Open AP invoices (creates individual bill records in the AP module).
  • Inventory opening stock quantities and average costs.

See Opening Balances for the detailed procedure.

Step 4 — Verify

Before going live, verify:

  1. Trial balance matches — The sum of all opening balances in Basis equals your old system's trial balance.
  2. AR aging matches — Open invoices in Basis match the AR aging report from your old system.
  3. AP aging matches — Same for vendor bills.
  4. Inventory value matches — Total inventory value in Basis matches your old system.

Warning: Do not start recording new transactions until the verification step is complete. Errors found early are far easier to fix.

Common Issues

Issue Solution
Accounts don't balance Check for missing accounts or data entry errors in GL balances
AR doesn't match Verify all open invoices were entered, including partially paid ones
Inventory value off Ensure you entered the correct average cost per item, not just quantity