Accounting, tax and ERP for the Gulf · Sun–Thu, Gulf time
Home / Learn / How to create a chart of accounts, with an example
Beginner guide · Accounting

How to create a chart of accounts, with an example

Your chart of accounts is the list of 'boxes' every transaction goes into. Get it right once and every report, tax return and audit becomes easier.

Beginner guide · 7 min read

A chart of accounts (CoA) is the numbered list of all the accounts in your general ledger: cash, customers, stock, VAT, salaries, sales and so on. Every invoice, bill, payment and journal entry is posted to these accounts, and your financial statements are built from their balances.

The standard structure

RangeGroupStatementNormal balance
1000–1999AssetsBalance sheetDebit
2000–2999LiabilitiesBalance sheetCredit
3000–3999EquityBalance sheetCredit
4000–4999RevenueIncome statementCredit
5000–5999Cost of salesIncome statementDebit
6000–6999Operating expensesIncome statementDebit
7000–7999Other income, finance costs and taxIncome statementMixed

How to build yours in 6 steps

  1. Start from the reports you need. List the lines you want in your P&L and balance sheet, plus what your tax returns ask for.
  2. Use a numbering system with gaps (1110, 1120, 1130…) so you can add accounts later without renumbering.
  3. Separate tax accounts: input VAT, output VAT, withholding tax, zakat or income tax. Returns then reconcile in minutes.
  4. Keep it lean. 60–120 accounts is plenty for most SMEs. Track customers, vendors, branches, projects and departments with sub-ledgers and analytic accounts, not new GL accounts.
  5. Follow IFRS headings, so your accounts map straight to audited financial statements (for example, right-of-use assets and lease liabilities under IFRS 16).
  6. Document and lock it. Write down what goes where, and limit who can create new accounts.

In Odoo

Odoo installs a country chart of accounts with the Saudi, UAE or Egyptian localisation, already linked to the right taxes and tax reports. Start from it, rename or add accounts to match your needs, and keep each account's type correct, because Odoo builds the balance sheet and P&L from those types.

Download the free Excel template (English + Arabic)

Full example chart of accounts

A ready-to-adapt example for a trading or services SME in Saudi Arabia, the UAE or Egypt:

CodeAccountTypeOdoo type
1000ASSETSHeader
1100Cash and cash equivalentsHeader
1110Cash on handCurrent assetBank and Cash
1120Bank – current accountCurrent assetBank and Cash
1130Payment gateway clearing (Tabby, Tamara, Stripe)Current assetCurrent Assets
1200Accounts receivable – tradeCurrent assetReceivable
1210Allowance for expected credit lossesCurrent asset (contra)Current Assets
1300Inventory – goods for resaleCurrent assetCurrent Assets
1310Inventory – raw materialsCurrent assetCurrent Assets
1320Goods in transitCurrent assetCurrent Assets
1400Prepaid expensesCurrent assetPrepayments
1410Advances to suppliersCurrent assetCurrent Assets
1420Input VAT recoverableCurrent assetCurrent Assets
1430Withholding tax receivable (Egypt)Current assetCurrent Assets
1500Property, plant and equipmentHeader
1510Furniture and fixturesNon-current assetFixed Assets
1520Computers and IT equipmentNon-current assetFixed Assets
1530VehiclesNon-current assetFixed Assets
1590Accumulated depreciationNon-current asset (contra)Fixed Assets
1600Intangible assets (software, licences)Non-current assetNon-current Assets
1700Right-of-use assets (IFRS 16)Non-current assetNon-current Assets
2000LIABILITIESHeader
2100Accounts payable – tradeCurrent liabilityPayable
2110Accrued expensesCurrent liabilityCurrent Liabilities
2120Customer advances and depositsCurrent liabilityCurrent Liabilities
2200Output VAT payableCurrent liabilityCurrent Liabilities
2210VAT settlement (net payable)Current liabilityCurrent Liabilities
2220Withholding tax payableCurrent liabilityCurrent Liabilities
2230Zakat / corporate tax payableCurrent liabilityCurrent Liabilities
2300Salaries payableCurrent liabilityCurrent Liabilities
2310Social insurance / GOSI payableCurrent liabilityCurrent Liabilities
2320Payroll tax payable (Egypt)Current liabilityCurrent Liabilities
2400Short-term loans and overdraftCurrent liabilityCurrent Liabilities
2500Lease liabilities (IFRS 16)Non-current liabilityNon-current Liabilities
2600Long-term loansNon-current liabilityNon-current Liabilities
2700End-of-service benefits provisionNon-current liabilityNon-current Liabilities
3000EQUITYHeader
3100Share capitalEquityEquity
3200Statutory reserveEquityEquity
3300Retained earningsEquityEquity
3400Owner / partner current accountsEquityEquity
3900Current year earningsEquityCurrent Year Earnings
4000REVENUEHeader
4100Sales – productsRevenueIncome
4200Revenue – servicesRevenueIncome
4300Export sales (zero-rated)RevenueIncome
4900Sales returns and discountsRevenue (contra)Income
5000COST OF SALESHeader
5100Cost of goods soldCost of revenueCost of Revenue
5200Freight-in and customs (landed costs)Cost of revenueCost of Revenue
5300Inventory adjustments and write-offsCost of revenueCost of Revenue
6000OPERATING EXPENSESHeader
6100Salaries and wagesExpenseExpenses
6110Social insurance / GOSI – employerExpenseExpenses
6120End-of-service benefits expenseExpenseExpenses
6130Medical insurance and staff benefitsExpenseExpenses
6200Rent (short-term) and service chargesExpenseExpenses
6210Utilities and internetExpenseExpenses
6300Marketing and advertisingExpenseExpenses
6400Professional fees (audit, legal, consulting)ExpenseExpenses
6500Software subscriptionsExpenseExpenses
6600Government fees, licences and visasExpenseExpenses
6700Travel and transportExpenseExpenses
6800Depreciation and amortisationExpenseDepreciation
6900Bank charges and gateway feesExpenseExpenses
7000OTHER INCOME AND EXPENSESHeader
7100Other incomeOther incomeOther Income
7200Foreign exchange gains / lossesOtherOther Income
7300Finance costs (interest, lease interest)ExpenseExpenses
7900Zakat / income tax expenseExpenseExpenses

Need a chart of accounts designed for your business, or migrated into Odoo? See our accounting services. Terms you don't know? Check the glossary.

Need professional assistance?

KasemCPA can review your numbers, build the model properly or set it up in Odoo.

Get a free 15-minute review of your books and system.

No cost, no obligation. Replies within one hour.

Book a callWhatsApp