Appearance
Chart of Accounts
The Chart of Accounts (COA) is the foundation of your accounting system. It defines every account where transactions are recorded — from bank accounts and receivables to revenue and expense categories.
Viewing the Chart of Accounts
Navigate to Accounting > Chart of Accounts to see your full account structure. The COA is displayed as a tree, with expandable groups and individual ledger accounts nested within them.
- Group accounts (parent nodes) organize related accounts but do not hold transactions directly.
- Ledger accounts (leaf nodes) are the accounts where transactions are actually posted.
Click any account to view its details, including its type, parent group, and balance.
Account Types
Every account belongs to one of five root types:
| Type | Purpose | Examples |
|---|---|---|
| Asset | What you own | Bank accounts, accounts receivable, equipment |
| Liability | What you owe | Accounts payable, loans, credit cards |
| Equity | Owner's stake | Retained earnings, owner's capital |
| Income | Revenue earned | Sales, service revenue, interest income |
| Expense | Costs incurred | Rent, salaries, office supplies, utilities |
Setting Up Your Chart of Accounts
When you create a new client, the setup wizard asks how the chart of accounts should start. You can also change or re-apply the source later from client settings.
1. Use a Kraal Template
Select from a library of industry templates:
| Template | Best for |
|---|---|
| Generic | Most small businesses |
| SaaS | Software and technology companies with subscription revenue |
| Professional Services | Agencies, consultancies, and firms that bill for time |
| E-commerce | Online retail with inventory, fulfillment, and processor fees |
| Holding Company | Investment and holding entities |
Every template ships as a complete, posting-ready chart. In addition to industry-specific income and expense categories, each template includes the structural accounts the accounting engine needs to work out of the box: bank and cash account groups, receivables and payables, an inventory group, rounding and write-off accounts, exchange gain/loss, a depreciation expense account, sales tax and payroll liabilities, and a temporary opening account used when migrating opening balances. You can rename, add, or reorganize accounts after the template is applied.
2. Upload Your Own
Attach a CSV or Excel file (.csv, .xlsx, .xls, up to 5 MB) during client creation, or from the COA view later. Kraal recognizes common export formats:
- QuickBooks-style exports with
Account Number,Account Name, andTypecolumns. Familiar type labels such as Bank, Credit Card, Accounts Receivable, Other Current Asset, COGS, and Other Income are mapped to the correct account classifications automatically. - ERPNext-style files with
Root Type,Account Type,Is Group, andParent Accountcolumns. Hierarchy is preserved when parent references resolve to another row in the file.
The upload preview flags problems before anything is saved — unrecognized account types, duplicate account numbers or names, and parent references that do not resolve — so you can fix the file rather than discover issues later.
3. AI-Assisted Builder
Describe your business and Kraal's AI will generate a recommended chart of accounts tailored to your industry and size, seeded from your transaction or bank statement data. Review the suggested structure, make any adjustments, and confirm to create the accounts.
4. Sync from a Connected System
If you connect an existing ERPNext instance (or QuickBooks Online), Kraal pulls the established account hierarchy directly, so you can start working immediately without re-creating anything. This is the default for clients that already have a live ledger.
Choosing between template and sync
For a brand-new ledger, start from a template — it guarantees the account structure the accounting engine expects. For a client with existing books, sync from the connected system so history and account names match.
Refreshing and Syncing
After initial setup, you can refresh your COA from ERPNext at any time to pull in accounts that were added or modified. Navigate to the COA view and click Sync from ERPNext to update.
TIP
Syncing merges changes from ERPNext into your Kraal COA. It will not delete accounts that exist in Kraal but not in ERPNext.
COA Status Indicators
The COA view displays a status badge showing the current state of your chart of accounts:
| Status | Meaning |
|---|---|
| Ready | The COA is fully set up and available for use. |
| Pending | Setup has been started but is not yet complete. |
| Upload Needed | The COA needs to be pushed to ERPNext before it takes effect. |
| Syncing | A sync operation is currently in progress. |
| Error | Something went wrong during setup or sync. Review the error details and retry. |
Accounting Dimensions
Beyond the standard account structure, Kraal supports accounting dimensions that add extra classification to your transactions:
- Cost Centers — Track profitability by department, branch, or business unit.
- Projects — Allocate income and expenses to specific projects or engagements.
- Departments — Categorize transactions by organizational department.
Dimensions are configured in your accounting settings and become available as optional fields on invoices, journal entries, and payment entries. They allow you to generate detailed reports segmented by any dimension without duplicating accounts.
Using the COA When Categorizing Transactions
When you create invoices, journal entries, or payment entries, you select accounts from the COA for each line item. The account picker shows the tree structure, so you can drill into the correct group and select the appropriate ledger account.
For transaction processing and categorization, the COA determines which accounts are available for mapping bank transactions to your books. Keeping your COA well-organized makes day-to-day transaction categorization faster and more accurate.