Skip to content
SimpleERP

Help centre · Migrate

Import chart of accounts and opening balances

Two cards on the import page: first the accounts, then the balances on them as of the day before your books start. The result must equal your old trial balance.

Updated · 7 min read

In short

SimpleERP imports your accounts with their type and code, skips the accounts it manages itself, then posts one opening balances journal dated the day before your books start, balanced against Opening Balance Equity.

Open Settings → Import data and import the chart of accounts first, then opening balances. Accounts are created with a type and code; balances are posted as one journal, dated the day before your start date, with any difference going to Opening Balance Equity. Afterwards, the trial balance should match your old system's.

Which columns does the accounts import read?

ColumnWhat goes in it
nameAccount name, required.
typeAsset, liability, equity, income or expense.
subtypeBank, cash, fixed asset, other current liability and so on. Zoho Books account types are understood.
codeYour account code. Kept when it is free; otherwise a free code in the type's range is given.
parentThe account it sits under, for grouping in reports.
Accounts columns. Opening amounts in the same file are carried over to the opening balances card.

Existing accounts are matched by code, then by name ignoring capitals, and are skipped, never changed.

How do account types from other software map?

Zoho Books exports an Account Type on every row, which maps directly. From QuickBooks, Xero or a spreadsheet, the type or kind column is read for the words below, ignoring capitals, spaces and punctuation.

Words in the type or kind columnSimpleERP
BankBank account
CashAsset, cash
Fixed asset, Fixed assetsAsset, fixed asset
Current Asset, Other Current Assets, PrepaymentAsset, other current asset
Non-current Asset, Other AssetsAsset, other asset
Current Liability, Other Current Liabilities, Credit CardLiability, other current liability
Non-current Liability, Long Term LiabilitiesLiability, long-term
EquityEquity
Income, Sales, RevenueIncome, sales
Other incomeIncome, other
Cost of Goods Sold, Direct CostsExpense, cost of goods
Expense, Expenses, Overhead, Other ExpenseExpense
Accounts receivable (A/R), Accounts payable (A/P)Skipped; parties come from the customers and suppliers cards
Stock, InventorySkipped; stock comes from the products card

These cover the account types QuickBooks Online and Xero export. Any other word is a row error that asks what kind of account it is: replace it with one of the words above, or simply asset, liability, equity, income or expense. In India, Tally Prime groups such as Sundry Debtors, Duties & Taxes and Capital Account are understood too, followed up the group tree.

Which accounts does the importer skip?

Five accounts are owned by SimpleERP, so rows that resolve to them are skipped with a note. On the opening balances card, income and expense rows are skipped too, because a new year starts at zero.

  • Accounts receivable: filled party by party from customers.
  • Accounts payable: filled party by party from suppliers.
  • Inventory: filled from opening stock on products.
  • Opening Balance Equity: takes the other side of every opening figure.
  • Retained earnings: past profit; a Retained Earnings or Profit and Loss balance lands here.
  • Income and expenses (opening balances card only): skipped, so put this year's profit or loss into the Retained Earnings row before you upload, or Opening Balance Equity will not come to zero.

What happens to bank accounts?

Every bank account in the file becomes a bank account in SimpleERP, but without the account number or bank codes, because exports do not carry them reliably. Open Settings → Accounting and complete each bank account; the setup checklist keeps asking until you do. The details are needed to print bank details on invoices.

How are opening balances matched and posted?

Each row names an account and an amount in a debit or credit column, or one signed balance with Dr or Cr. The account is matched by code, then by name, then by a list of common names from other software.

  • Synonyms: "Cash" goes to your cash account; "Retained Earnings" or "Profit & Loss A/c" goes to Retained earnings; "Accounts Receivable", "Accounts Payable" and "Inventory" are recognised and skipped. Tax accounts such as VAT Control or Sales Tax Payable get a picker, so you choose your own tax account.
  • Unmatched names are not errors: the card shows a "Choose an account" picker beside each one, and you pick where it belongs.
  • Receivables, payables and stock are skipped: customers, suppliers and products already posted them, so taking them again would double the figure.
  • Balancing line: whatever the lines do not balance goes to Opening Balance Equity.
  • Posting: needs the right to approve journals; without it the journal is saved as a draft for someone who has it.

When customers, suppliers, products and these balances are all in, Opening Balance Equity should be zero and the trial balance should equal the old system's, line for line.

A worked example

Suppose Harbor Supply Co. starts on 1 January 2027. Its customers ($2,640), suppliers ($2,110) and stock ($2,520) are already imported. This is its trial balance from Xero as of 31 December 2026, with the title rows deleted. Xero also listed the year's income and expense accounts; the accountant added the year's profit, shown as Current Year Earnings on Xero's balance sheet, to Retained Earnings and left the income and expense rows in, knowing the card skips them.

AccountDebitCreditWhat the importer does
Cash$490Matched to the cash account
Business current account$4,410Matched to the bank account created from the accounts file
Accounts Receivable$2,640Skipped, already posted by customers
Inventory$2,520Skipped, already posted by products
Plant and machinery$6,860Matched by name
Accumulated depreciation$2,060Matched by name
Accounts Payable$2,110Skipped, already posted by suppliers
Bank loan$4,000Matched by name
VAT payable$325Picked by hand: your tax payable account
Owner's capital$5,700Matched by name
Retained Earnings$2,725Synonym, Retained earnings
Total$16,920$16,920
Trial balance as of 31 December 2026. Both sides agree.
  1. Import the accounts

    Plant and machinery, accumulated depreciation, the bank loan and owner's capital are created. The business current account becomes a bank account. Receivables, payables and inventory rows are skipped with a note.

  2. Check the opening balances

    Eight lines match, one of them after picking the tax account; receivables, payables and inventory are skipped, and so are the income and expense rows. The posted lines total $11,760 debit and $14,810 credit, so $3,050 goes to Opening Balance Equity as a debit.

  3. Import

    One journal is posted, dated 31 December 2026, and appears under Accounting → Opening balances.

  4. Confirm Opening Balance Equity is zero

    Customers credited it $2,640 and stock $2,520; suppliers debited it $2,110 and this journal $3,050. The four cancel out.

  5. Compare the trial balance

    Run Accounting → Reports → Trial balance as of 31 December 2026. It totals $16,920 on each side, the same as Xero.

Where do I see the result, and how do I change it?

The journal shows under Accounting → Opening balances, exactly as if it had been typed there, and is locked once posted. To change it, reverse it first; the import refuses to post a second opening balances journal while one is posted.

FAQ

Questions, answered

Do I have to import the chart of accounts, or can I use SimpleERP's?

You can use ours. SimpleERP starts with a chart of accounts set up for your country. Import only the accounts you need to keep, such as loans, fixed assets and bank accounts, and map the rest to existing accounts on the opening balances card.

Opening Balance Equity is not zero after importing. What went wrong?

A line is missing, entered twice or on the wrong side. Compare the trial balance with the old one line by line. Common causes are a customer or supplier left out of its card, or stock imported at a different value from the trial balance.

Why are accounts receivable and accounts payable skipped?

Because customers and suppliers already posted them, party by party. A lump sum would double the figure and could not be chased in ageing reports or statements.

My accountant has not finalised last year's accounts. Can I start anyway?

Yes. Import with the provisional figures. When the final figures arrive, reverse the opening balances journal and import again, or post an adjustment journal dated the day before your start date.

Will the bank account balance match my bank statement?

It will match the bank account in your old books. Payments issued but not yet cleared make the two differ; they are reconciled in SimpleERP's bank reconciliation as they clear.

Run your whole business from one simple place.

Seven days free. No card. Your first invoice in minutes.