Accounting

Chart of Accounts for Indian Companies (2026): Free ERPNext Template + Schedule III Mapping

A complete chart of accounts for Indian companies — 118 accounts, importer-ready for ERPNext, with every ledger mapped to its Schedule III head. GST…

MManojAugust 6, 202611 min read
ERPNext#\\\\\\\"accounting\\\\\\\#\\\\\\\"erpnext\\\\\\\#\\\\\\\"templates\\\\\\\#\\\\\\\"compliance\\\\\\\
Share

This guide covers chart of accounts for production Indian teams — recipes, decision frameworks, and step-by-step fixes you can copy into a real project. Every messy audit we get called into shares one root cause: a the rollout invented ledger-by-ledger, in a hurry, by whoever needed the next account. Schedule III then demands a balance sheet the chart cannot produce. This post ships the fix — a 118-account this option for Indian companies, importer-ready for ERPNext, with every ledger pre-mapped to its Schedule III head. GST ledgers carry the exact names india_compliance expects. The MSME payables split is built in. And the import recipe covers the one sequencing rule that locks people out.

A this setup is the one thing in an ERP you cannot quietly fix later — every posted entry hardens it. I am Manoj, ERPNext and Frappe implementation lead at MithTech in Bengaluru. The tree below is the starting chart we deploy for Indian trading and manufacturing clients.

Where do you get the chart?

Two files, same 118-account tree. The CSV is in ERPNext's exact importer format; the Excel adds the Schedule III mapping column and the Read-Me.

DownloadTemplate Downloadslink

The India Schedule III this workflow — ERPNext this setup Importer CSV plus an Excel workbook with per-ledger Schedule III mapping.

What does the structure look like?

Five roots, Schedule III groupings under each, and the ERPNext account types where the system needs them. Click through:

InteractiveAccount Tree Explorerlink

The chart's structure as a clickable tree — every node shows its Schedule III head and, where relevant, the ERPNext account type it must carry.

1000 · Assets

Schedule III head: Balance Sheet — Assets

Condensed view — the downloadable files carry all 118 accounts with the full mapping column.

How does Schedule III work in reverse?

A the process succeeds when the statutory statements fall out of it untouched. Schedule III of the Companies Act 2013 fixes the presentation; the chart's job is to feed it. The mapping at group level:

12 rows · click a column to sort

Chart block
3100 Share Capital · 3200 Reserves & SurplusShareholders' fundsRetained Earnings receives the P&L close
2110 Long-term Borrowings · 2120 DTL · 2130 LT ProvisionsNon-current liabilitiesGratuity sits in 2130
2211 CC/ODShort-term borrowings
2221 / 2222 Sundry CreditorsTrade payables — MSME / othersThe split Schedule III demands
2230 Duties and Taxes · 2240 Other CL · 2250 ST ProvisionsOther current liabilities & provisions2246 holds current maturities of LT debt
1110 PPE · 1120 Acc. Dep. · 1130 CWIP · 1140 IntangiblesNon-current assetsClasses align with depreciation schedules
1210 Inventories (RM/WIP/FG/Stores/Traded)InventoriesStock-type ledgers, warehouse-mapped
1221 Sundry Debtors · 1229 ProvisionTrade receivablesAgeing disclosures read from here
1231 Cash · 1232 BankCash and cash equivalents
1240 GST Input · 1250 ST Advances · 1260 Other CAOther current assetsITC cluster lives at 1240
4100 Revenue from Operations · 4200 Other IncomeP&L income headsScrap sales = other operating revenue
5100 COGS · 5200 Employee · 5300 Finance · 5400 Dep. · 5500 OtherP&L expense headsRound Off and FX Gain/Loss under 5500

Pick any head and see its ledgers with the reasoning:

InteractiveSchedule III Mapperlink

Six Schedule III lines that trip up chart design — trade payables, inventories, statutory dues, borrowings, PPE, GST credits — each mapped to its ledgers.

2221 Sundry Creditors — MSME · 2222 Sundry Creditors — Others

Schedule III requires the MSME/others split on the face of the balance sheet — two ledgers make the disclosure automatic. Tag each supplier's group accordingly.

Three design decisions worth defending to your CA. Current maturities of long-term debt get their own ledger (2246) under other current liabilities — Schedule III explicitly keeps them out of short-term borrowings. Statutory dues cluster under one group (2230) — CARO reporting and auditor requests become a single drill-down. And the provision for doubtful debts sits as a contra under trade receivables (1229), so the net receivable reads straight off the trial balance.

Where the standards agree — and where India is specific

No major regime prescribes a the platform. They prescribe presentation, and the chart is how you get there efficiently.

  • India — Schedule III, Companies Act 2013: fixed statement formats. Division I for AS companies, Division II for Ind AS companies. Division II reshuffles some heads (financial assets/liabilities replace the loans-and-advances style) — Ind AS filers relabel the mapping column, not the ledgers.
  • IFRS — IAS 1: requires current/non-current classification and minimum line items, but no mandated format. This chart's current/non-current spine satisfies it directly.
  • UK GAAP — FRS 102 (Sections 4–5): statement formats derived from the Companies Act 2006 — again presentation-level, not chart-level.
  • US GAAP: no statutory chart or format for private companies; classified balance sheets are convention. The same tree works; only the mapping column changes.

The convergence is the point: build the chart once around classified presentation, and only the mapping labels change per regime. Confirm Division I vs II applicability with your CA before adopting the mapping column as-is.

What numbering survives growth?

The numbering rules in this chart are boring on purpose:

  1. Four-digit blocks per root — 1000 assets, 2000 liabilities, 3000 equity, 4000 income, 5000 expenses.
  2. Groups end in zero, leaves don't — the number tells you at a glance whether postings belong there.
  3. Leave gaps everywhere — 1250 and 1260 exist so 1255 never has to be invented under pressure.
  4. Never renumber a posted ledger — ERPNext prints the number in statements, so a renumber ripples through every historical report.
  5. Never reuse a retired number — old reports keep referring to it. Add inside the gaps instead.

How does The ERPNext import work, step by step?

ERPNext ships a standard India chart (in_standard_chart_of_accounts.json), and it is fine. This one earns its keep through the Schedule III mapping, the MSME split and the GST alignment. Getting it in cleanly is a sequencing exercise:

Code recipeImport Recipelink

The import sequence, the exact CSV column spec, a post-import health-check script, and an n8n drift watch for multi-company groups.

The sequence — importer works only on a ledger-less company

Import sequence (15 minutes on a fresh company)

1. Create the Company in ERPNext WITHOUT chart setup, or pick
   "Standard Template" and plan to replace it before any entry.
   The Chart of Accounts Importer refuses companies that already
   have ledger entries - sequence matters.
2. Settings > Chart of Accounts Importer > select the company.
3. Upload erpnext-coa-india-schedule3.csv > Preview.
   Fix any red rows (usually a renamed parent) > Import.
4. Set Company defaults (Company master > Accounts tab):
   - Round Off Account............ 5591 Round Off
   - Exchange Gain/Loss Account... 5590 Exchange Gain / Loss
   - Stock Adjustment Account..... 5160 Stock Adjustment
   - Stock Received But Not Billed 2245 SRBNB
   - Depreciation Expense......... 5400 Depreciation & Amortisation
   - Accumulated Depreciation..... 1120 Accumulated Depreciation
5. india_compliance: if GST accounts already exist (the app creates
   them on company creation), keep ONE set - merge or delete
   duplicates before the first transaction, not after.
6. Map warehouses to the 121x inventory ledgers if you use
   perpetual inventory per warehouse.
7. Only then: opening balances via Journal Entry / Opening Invoice
   Creation Tool.

Importer format and GST names verified against ERPNext v16.28.0 / india_compliance v16.6.0. Everything runs on your own infrastructure — bench, Server Scripts, or a self-hosted n8n.

The CSV columns match ERPNext's own template generator exactly: Account Name, Parent Account, Account Number, Parent Account Number, Is Group, Account Type, Root Type, Account Currency. That spec comes from chart_of_accounts_importer.pyget_template at line 325, checked at v16.28.0. Account types are set only where ERPNext's machinery depends on them: Bank, Cash, Receivable, Payable, Stock, Fixed Asset, Accumulated Depreciation, Depreciation, Cost of Goods Sold, Round Off, Stock Received But Not Billed, Stock Adjustment.

Pre-flight: three things before you import

First — the company must have no ledger entries. The importer refuses otherwise, and people discover this after posting one test invoice. Import first, transact later. Second — india_compliance creates GST accounts on company creation (overrides/company.py:102–112 creates "Input Tax CGST", "Output Tax IGST" and the RCM variants). This chart uses identical names so the sets align — but check for duplicates before the first transaction, and keep exactly one set. Third — company defaults don't set themselves. Point Round Off, Exchange Gain/Loss, Stock Adjustment and SRBNB at the imported ledgers. Skip that, and the first stock transaction fails with an opaque missing-account error.

Accounts designs, everyone else requests

Charts decay through casual ledger creation. The controls that keep this one clean:

  • One owner. The finance controller owns the tree. Everyone else raises a request naming the Schedule III head the new ledger feeds — if they can't name it, the ledger doesn't exist yet for a reason.
  • Role permissions enforce it. Account creation is restricted to the accounts manager role in ERPNext — casual ledgers are a permissions bug, not a culture problem.
  • Group companies share the tree. Identical charts across entities are what make ERPNext's consolidated statements usable — our multi-company guide covers the setup. The n8n drift watch above catches subsidiaries quietly forking it.
  • Masters carry the compliance load. Supplier groups drive the MSME/others split, item masters drive HSN reporting, and the GST ledgers reconcile monthly against returns. The chart holds it together; the masters do the work.

A chart policy you can lift into your SOP

the system Policy (draft — for CA / auditor review): The chart is owned by the finance controller; Account-creation permission is restricted to the accounts manager role. New ledgers require a named Schedule III head and are created inside the numbering gaps — posted ledgers are never renumbered, retired numbers are never reused. Trade payables are maintained as MSME and Others; supplier MSME status is verified at onboarding against the Udyam registration and reviewed annually. GST ledgers exist as exactly one set, named per india_compliance convention, reconciled to returns monthly. Group companies run the identical chart; drift is reviewed monthly and consolidation is blocked until resolved. The chart is fixture-exported quarterly so its history lives in version control. Ratify with your CA — Division II (Ind AS) filers and regulated industries need additional heads.

Should you choose Import now or inherit the mess?

Fix at go-live (cheap)Fix after a year of postings (expensive)
Import a Schedule III-shaped chart on day oneRe-map hundreds of ledgers to heads at audit time
Two creditor ledgers for the MSME splitVendor-by-vendor MSME classification each March
One GST ledger set, india_compliance-alignedMerge duplicate tax ledgers with live balances
Numbering gaps left for growthRenumber — and break every saved report and comparison

FAQ

+What is a this guide in accounting?

The complete, structured list of every ledger a company posts to — assets, liabilities, equity, income and expenses — organised as a tree. Every transaction lands in exactly one leaf ledger, and financial statements are produced by rolling the tree up. Design it around your reporting format and the statements assemble themselves.

+Is there a standard this workflow for Indian companies?

No statute prescribes one. Schedule III of the Companies Act prescribes the financial-statement format, and a good chart is that format worked backwards into ledgers. That is exactly how the template in this post is built. ERPNext also ships a generic India chart; this one adds the Schedule III mapping, MSME split and india_compliance-aligned GST ledgers.

+How many ledgers should a chart have?

This template's 118 accounts cover a typical trading or manufacturing SME. Under ~80 usually means statutory detail is missing. Several hundred usually means customers or projects were created as ledgers — those belong in ERPNext's party and dimension features, not the chart. Grow inside the numbering gaps as needed.

+Is the MSME trade payables split mandatory?

Yes — Schedule III requires trade payables to be disclosed separately for micro and small enterprises versus others, and MSME payment-delay reporting has its own consequences. Two creditor ledgers plus supplier tagging at onboarding make the disclosure a report instead of a year-end investigation.

+Can I import this chart into an existing ERPNext company?

Only if that company has no ledger entries yet — the Chart of Accounts Importer refuses otherwise. For a live company, the path is a new company with the clean chart plus opening balances, or incremental restructuring with your accountant. The importer lockout is why the chart decision belongs at go-live.

+Should group companies use the same chart of accounts?

Yes. ERPNext's consolidated financial statements and inter-company workflows assume aligned charts — differing trees make consolidation a spreadsheet job. Import the same chart into every entity and watch for drift; the n8n recipe in this post automates the watch.

What happens if my chart doesn't match Schedule III?. The books still balance — the pain arrives at reporting. Statement preparation becomes a manual re-mapping exercise each year, auditors bill for the archaeology, and disclosures like the MSME split or statutory dues need transaction-level digging. A misaligned chart costs a few days every year, forever.

Which ERPNext version does this template apply to?. The CSV matches the Chart of Accounts Importer format in ERPNext v16.28.0, and GST ledger names match india_compliance v16.6.0 — both also hold for v15. Schedule III itself is software-independent; the Excel mapping works whatever system you post in.

What is the bottom line?

A chart of accounts is infrastructure: invisible when right, expensive forever when wrong. This one is Schedule III worked backwards, GST-aligned, MSME-ready, and importable in fifteen minutes. Import it before the first transaction, set the defaults, run the validator — and statutory reporting becomes something your ERPNext instance prints rather than something your CA reconstructs.

Want the chart adapted and imported for you?

We adapt this chart to your industry with your CA, import it across group companies, wire the defaults and dimensions, and hand over books that produce Schedule III statements on demand — one fixed-scope engagement.

Now work out what this would cost you

Tell us what you're running now and we'll come back with a fixed scope, a timeline and a price. You own every line of what we build.

M

Written by

Manoj

Founder of Mith Tech, an open-source ERP & automation studio. Hands-on ERPNext/Frappe implementation across multi-branch, multi-warehouse Indian operations — GST/TDS/PT compliance, branch-level permissions, and custom Frappe apps that give management real-time visibility.

Free · By email

Get practical ERPNext & automation guides

New implementation guides, cost breakdowns and open-source tips for Indian businesses — occasionally, straight to your inbox. No spam.

Already a Mith Tech client?

Help the next operator choose.

Most teams evaluating ERPNext have no way to tell who actually delivers. If we’ve run an implementation for you, two lines on Google count for more than anything we can write about ourselves.

Leave a Google review

Only if we’ve actually worked together — Google filters reviews from non-customers, so an honest one is worth more than ten polite ones.

Keep reading

See what this looks like for your business

A 30-minute working session with a principal consultant. We pressure-test the architecture and outline the engagement model that fits your governance and procurement posture. You leave with a written brief.

0
Published on 6 August 2026

Manoj

Comments & ratings

No comments yet. Start a new discussion.