# Chart of Accounts (All Countries)

# Unified Chart of Accounts Reference

**Last Updated:** 2026-02-20
**Purpose:** Cross-country comparison and implementation guide for Bilko's Chart of Accounts

## Overview

All three target markets (Serbia, Bosnia & Herzegovina, Croatia) use a **class-based Chart of Accounts structure** inherited from the former Yugoslav accounting system. Despite political separation, the accounting frameworks remain structurally similar with 10 main classes (0-9).

```mermaid
graph TD
    subgraph BALKAN["Balkan Chart of Accounts — Universal Classes 0-9"]
        direction LR
        CL0["Class 0<br/>Stalna imovina<br/>Long-term Assets<br/>DEBIT normal"]
        CL1["Class 1<br/>Obrtna imovina<br/>Current Assets<br/>DEBIT normal"]
        CL2["Class 2<br/>Kratkoročne obaveze<br/>Short-term Liabilities<br/>CREDIT normal"]
        CL3["Class 3<br/>Kapital<br/>Equity<br/>CREDIT normal"]
        CL4["Class 4<br/>Dugoročne obaveze<br/>Long-term Liabilities<br/>CREDIT normal"]
        CL5["Class 5<br/>Rashodi<br/>Expenses<br/>DEBIT normal"]
        CL6["Class 6<br/>Prihodi<br/>Revenue<br/>CREDIT normal"]
        CL7["Class 7<br/>RS/BA: Troškovi (Costs)<br/>HR: Dobici i Gubici (Gains/Losses)<br/>MIXED"]
        CL8["Class 8<br/>Vanbilansna evidencija<br/>Off-Balance Sheet<br/>DEBIT memorandum"]
        CL9["Class 9<br/>Interna računovodstva<br/>Internal Accounting<br/>MIXED — enterprise only"]
    end

    BS["Balance Sheet"] --> CL0
    BS --> CL1
    BS --> CL2
    BS --> CL3
    BS --> CL4
    PL["P&L Statement"] --> CL5
    PL --> CL6
    PL --> CL7

    style CL0 fill:#198754,color:#fff
    style CL1 fill:#198754,color:#fff
    style CL2 fill:#dc3545,color:#fff
    style CL3 fill:#6f42c1,color:#fff
    style CL4 fill:#dc3545,color:#fff
    style CL5 fill:#fd7e14,color:#fff
    style CL6 fill:#0d6efd,color:#fff
    style CL7 fill:#6c757d,color:#fff
    style CL8 fill:#adb5bd,color:#fff
    style CL9 fill:#adb5bd,color:#fff
    style BS fill:#0d6efd,color:#fff
    style PL fill:#198754,color:#fff
```

---

## Universal Structure (Classes 0-9)

### Class 0: Long-term Assets (Stalna imovina / Dugotrajna imovina)
**Normal Balance:** Debit
**Examples:**
- 01: Intangible assets (goodwill, patents, software licenses)
- 02: Tangible assets (land, buildings, equipment)
- 03: Long-term financial investments
- 04: Long-term receivables

**Bilko AccountType:** `asset` (debit normal balance)

---

### Class 1: Current Assets (Obrtna imovina / Kratkotrajna imovina)
**Normal Balance:** Debit
**Examples:**
- 10: Material and goods (inventory)
- 11: Work in progress
- 12: Finished goods
- 13: Short-term receivables (accounts receivable)
- 14: Short-term financial assets
- 15: Cash and cash equivalents (bank accounts, cash on hand)

**Bilko AccountType:** `asset` (debit normal balance)

---

### Class 2: Short-term Liabilities (Kratkoročne obaveze)
**Normal Balance:** Credit
**Examples:**
- 20: Short-term financial liabilities (bank loans < 1 year)
- 21: Accounts payable (suppliers)
- 22: Other short-term liabilities
- 23: Wages and salaries payable
- 24: Taxes payable (VAT, income tax, social contributions)

**Bilko AccountType:** `liability` (credit normal balance)

---

### Class 3: Capital and Equity (Kapital / Glavni kapital)
**Normal Balance:** Credit
**Examples:**
- 30: Share capital / Ownership capital
- 31: Reserves (legal, statutory)
- 32: Revaluation reserves
- 33: Retained earnings (accumulated profit/loss)
- 34: Current year profit/loss

**Bilko AccountType:** `equity` (credit normal balance)

---

### Class 4: Long-term Liabilities (Dugoročne obaveze)
**Normal Balance:** Credit
**Examples:**
- 40: Long-term loans (bank loans > 1 year)
- 41: Long-term financial liabilities
- 42: Provisions (for pensions, guarantees)
- 43: Deferred tax liabilities

**Bilko AccountType:** `liability` (credit normal balance)

---

### Class 5: Expenses (Rashodi / Troškovi poslovanja)
**Normal Balance:** Debit
**Examples:**
- 50: Material costs (raw materials consumed)
- 51: Salaries and wages
- 52: Social security contributions (employer's share)
- 53: Depreciation and amortization
- 54: Other operating expenses (rent, utilities, insurance)
- 55: Financial expenses (interest paid)

**Bilko AccountType:** `expense` (debit normal balance)

---

### Class 6: Revenue (Prihodi)
**Normal Balance:** Credit
**Examples:**
- 60: Revenue from sales of goods
- 61: Revenue from sales of services
- 62: Revenue from use of own products
- 63: Subsidies and grants
- 64: Other operating revenue
- 65: Financial revenue (interest received, dividends)

**Bilko AccountType:** `revenue` (credit normal balance)

---

### Class 7: Cost / Gains and Losses (Troškovi / Dobici i gubici)
**Normal Balance:** Mixed (varies by country)

**NOTE:** This class has **different usage** across the three countries:

#### Serbia & BiH: **Costs** (Troškovi)
- 70: Cost of goods sold
- 71: Cost of services sold
- 72: Production costs
- Used for **cost accounting** separate from financial accounting expenses

#### Croatia: **Gains and Losses** (Dobici i gubici)
- 70: Extraordinary gains
- 71: Extraordinary losses
- 72: Prior period adjustments
- Used for **non-operating** items

**Bilko Implementation:**
- **Serbia/BiH:** AccountType = `expense` (cost accounts)
- **Croatia:** Mixed — AccountType depends on sub-account (gain = `revenue`, loss = `expense`)

---

### Class 8: Off-Balance Sheet Items (Vanbilansna evidencija)
**Normal Balance:** Debit (memorandum accounts)
**Examples:**
- 80: Guarantees issued
- 81: Guarantees received
- 82: Leased assets (operating lease)
- 83: Contingent assets and liabilities

**Bilko AccountType:** `asset` (debit memorandum)
**Note:** These accounts do NOT affect the balance sheet totals — they are for tracking only.

---

### Class 9: Internal Accounting (Interna računovodstva)
**Normal Balance:** Mixed (company-specific)
**Examples:**
- 90: Cost centers
- 91: Projects
- 92: Departments
- 93: Internal settlements between divisions

**Bilko AccountType:** Mixed — depends on company's internal structure
**Usage:** Primarily for large multi-division companies. **NOT needed for SMB MVP.**

---

## Account Numbering Hierarchy

```mermaid
graph TD
    CL["1 — Current Assets (Class)"]
    GRP["12 — Short-term Receivables (Group)"]
    ACC1["120 — Trade Receivables Domestic (Account)"]
    ACC2["121 — Trade Receivables Foreign (Account)"]
    SA1["1200 — Trade Rec. — EU (Sub-account)"]
    SA2["1201 — Trade Rec. — Non-EU (Sub-account)"]
    SA3["1210 — Foreign Rec. — EU (Sub-account)"]
    SA4["1211 — Foreign Rec. — Non-EU (Sub-account)"]

    CL --> GRP
    GRP --> ACC1
    GRP --> ACC2
    ACC1 --> SA1
    ACC1 --> SA2
    ACC2 --> SA3
    ACC2 --> SA4

    MVP["MVP Scope<br/>2-3 digit codes<br/>covers 95% of SMBs"]
    PH2["Phase 2<br/>4+ digit analytical accounts<br/>enterprise clients"]

    ACC1 -.->|"MVP"| MVP
    SA1 -.->|"Phase 2"| PH2

    style CL fill:#0d6efd,color:#fff
    style GRP fill:#0d6efd,color:#fff,stroke-dasharray: 5 5
    style ACC1 fill:#198754,color:#fff
    style ACC2 fill:#198754,color:#fff
    style SA1 fill:#6c757d,color:#fff
    style SA2 fill:#6c757d,color:#fff
    style SA3 fill:#6c757d,color:#fff
    style SA4 fill:#6c757d,color:#fff
    style MVP fill:#ffc107,stroke:#e0a800
    style PH2 fill:#adb5bd,color:#fff
```

## Country-Specific Differences

### Serbia
- **Legal Framework:** Law on Accounting (Zakon o računovodstvu), Službeni glasnik RS No. 95/2014 **[HIGH]**
- **Mandatory:** Yes, for all legal entities (Article 14)
- **Language:** Serbian (Cyrillic or Latin script)
- **Class 7:** Cost accounting (Troškovi)
- **Unique Requirement:** All accounts, books, and reports must use Serbian Chart as primary

### Bosnia & Herzegovina
- **Legal Framework:**
  - **FBiH:** Law on Accounting and Auditing in the Federation (2021) — IFRS mandatory
  - **RS:** Law on Accounting and Auditing (Official Gazette RS No. 94/15, 78/20) — IFRS mandatory
- **Standard:** IFRS Accounting Standards (both entities)
- **Language:** Bosnian (FBiH), Serbian (RS — Latin or Cyrillic)
- **Class 7:** Cost accounting (Troškovi)
- **Complexity:** TWO separate frameworks (FBiH vs RS), but structurally similar
- **SME Option:** IFRS for SMEs or full IFRS (company choice for non-PIEs)

### Croatia
- **Legal Framework:** EU Regulation 1606/2002 + Croatian Accounting Act **[HIGH]**
- **Guidance:** RRiF Chart of Accounts for Entrepreneurs (multiple editions)
- **Standard:** IFRS for publicly traded companies, simplified for SMEs
- **Language:** Croatian
- **Class 7:** Gains and Losses (Dobici i gubici) — different from Serbia/BiH
- **EU Alignment:** Stricter compliance due to EU membership

---

## Country Divergence — Class 7

```mermaid
graph LR
    CL7["Class 7"]

    CL7 --> RS7["Serbia RS<br/>Troškovi (Costs)<br/>70: Cost of goods sold<br/>71: Cost of services sold<br/>72: Production costs<br/>AccountType: expense"]

    CL7 --> BA7["Bosnia BA<br/>Troškovi (Costs)<br/>70: Cost of goods sold<br/>71: Cost of services sold<br/>72: Production costs<br/>AccountType: expense"]

    CL7 --> HR7["Croatia HR<br/>Dobici i gubici<br/>(Gains and Losses)<br/>70: Extraordinary gains<br/>71: Extraordinary losses<br/>72: Prior period adjustments<br/>AccountType: revenue/expense mixed"]

    RS7 --> SAME["Serbia + BiH<br/>Identical Class 7 treatment<br/>Cost accounting focus"]
    BA7 --> SAME

    HR7 --> DIFF["Croatia differs<br/>Non-operating items only<br/>Bilko: type depends on sub-account"]

    style CL7 fill:#6c757d,color:#fff
    style RS7 fill:#c0392b,color:#fff
    style BA7 fill:#2c3e50,color:#fff
    style HR7 fill:#e74c3c,color:#fff
    style SAME fill:#198754,color:#fff
    style DIFF fill:#ffc107,stroke:#e0a800
```

## MVP Implementation for Bilko

### Minimum Chart of Accounts for SMBs

A basic SMB in any of the three markets needs **at minimum 30-40 accounts** to operate legally:

#### Assets (Classes 0-1)
- 020: Buildings and structures
- 021: Equipment and machinery
- 022: Vehicles
- 023: Computers and IT equipment
- 024: Furniture and fixtures
- 102: Raw materials inventory
- 103: Finished goods inventory
- 120: Accounts receivable — domestic customers
- 121: Accounts receivable — foreign customers
- 130: Advances paid to suppliers
- 140: Cash in bank (main operating account)
- 141: Cash on hand (petty cash)

#### Liabilities (Classes 2, 4)
- 200: Short-term bank loans
- 210: Accounts payable — domestic suppliers
- 211: Accounts payable — foreign suppliers
- 220: Wages and salaries payable
- 240: VAT/PDV payable
- 241: Income tax payable
- 242: Social security contributions payable
- 400: Long-term bank loans

#### Equity (Class 3)
- 300: Share capital / Owner's capital
- 330: Retained earnings
- 340: Current year profit/loss

#### Revenue (Class 6)
- 600: Sales revenue — goods (domestic)
- 601: Sales revenue — services (domestic)
- 610: Sales revenue — exports (0% VAT)
- 650: Interest income
- 690: Other revenue

#### Expenses (Class 5)
- 500: Cost of goods purchased for resale
- 510: Salaries and wages
- 520: Social security contributions (employer)
- 530: Depreciation expense
- 540: Rent expense
- 541: Utilities (electricity, water, heating)
- 542: Telephone and internet
- 543: Office supplies
- 550: Interest expense
- 560: Bank fees
- 570: Insurance
- 590: Other operating expenses

**Total:** ~40 accounts (covers 90% of SMB transactions)

---

## Seed Data Strategy

### Approach: **Country-Specific Presets**

Bilko should ship with **3 predefined Chart of Accounts templates**:

1. **Serbia — SMB Standard** (Serbian language, Classes 0-6 + 8)
2. **BiH — FBiH SMB Standard** (Bosnian language, IFRS-aligned, Classes 0-6 + 8)
3. **BiH — RS SMB Standard** (Serbian language, IFRS-aligned, Classes 0-6 + 8)
4. **Croatia — SMB Standard** (Croatian language, RRiF-based, Classes 0-6 + 7-gains/losses + 8)

### Installation Process

**On Company Setup:**
1. User selects country: Serbia / BiH-FBiH / BiH-RS / Croatia
2. Bilko seeds database with relevant Chart of Accounts preset
3. User can:
   - Accept preset as-is (recommended for new businesses)
   - Customize (add/edit/hide accounts)
   - Import existing chart (for migrating companies)

### Database Schema

```sql
-- Chart of Accounts Table
CREATE TABLE chart_of_accounts (
  id INTEGER PRIMARY KEY,
  company_id INTEGER NOT NULL,
  code TEXT NOT NULL,           -- e.g., "120", "600"
  name TEXT NOT NULL,            -- e.g., "Potraživanja od kupaca", "Prihodi od prodaje"
  name_en TEXT,                  -- English translation (optional)
  account_type TEXT NOT NULL,    -- 'asset', 'liability', 'equity', 'revenue', 'expense'
  class INTEGER NOT NULL,        -- 0-9
  parent_code TEXT,              -- for hierarchical charts (e.g., "12" parent of "120")
  country TEXT NOT NULL,         -- 'RS' (Serbia), 'BA-FBiH', 'BA-RS', 'HR' (Croatia)
  is_system BOOLEAN DEFAULT 1,  -- system preset vs user-created
  is_active BOOLEAN DEFAULT 1,  -- allow hiding unused accounts
  FOREIGN KEY (company_id) REFERENCES companies(id),
  UNIQUE (company_id, code)
);

-- Example Seed Data (Serbia)
INSERT INTO chart_of_accounts (company_id, code, name, account_type, class, country) VALUES
  (1, '120', 'Potraživanja od kupaca', 'asset', 1, 'RS'),
  (1, '140', 'Novac u banci', 'asset', 1, 'RS'),
  (1, '210', 'Obaveze prema dobavljačima', 'liability', 2, 'RS'),
  (1, '240', 'PDV za uplatu', 'liability', 2, 'RS'),
  (1, '300', 'Osnovni kapital', 'equity', 3, 'RS'),
  (1, '600', 'Prihodi od prodaje robe', 'revenue', 6, 'RS'),
  (1, '510', 'Troškovi zarada', 'expense', 5, 'RS');
```

---

## Multi-Country Handling

### Scenario: Company operates in multiple countries

**Example:** Serbian company (HQ) with BiH branch and Croatian client invoicing

**Approach:**
1. **Primary Chart:** Serbia (company HQ location)
2. **Secondary Charts:** BiH and Croatia (linked, not duplicated)
3. **Mapping Table:** Maps Serbian account codes to BiH/Croatia equivalents

```sql
CREATE TABLE account_mapping (
  id INTEGER PRIMARY KEY,
  company_id INTEGER NOT NULL,
  source_code TEXT NOT NULL,      -- e.g., "120" (Serbia)
  source_country TEXT NOT NULL,   -- 'RS'
  target_code TEXT NOT NULL,      -- e.g., "120" (BiH)
  target_country TEXT NOT NULL,   -- 'BA-FBiH'
  FOREIGN KEY (company_id) REFERENCES companies(id)
);
```

**Usage:**
- Invoices issued in Serbia → Serbian chart
- Invoices issued to Croatian clients → mapped to Croatian chart for their records
- Consolidated reporting → uses primary (Serbian) chart

---

## IFRS Alignment (BiH Requirement)

### Challenge
BiH legally requires IFRS Accounting Standards, but traditional Chart of Accounts is NOT IFRS.

### Solution: **Hybrid Approach**

1. **Internal Recording:** Use traditional Chart of Accounts (Classes 0-9)
   - This is what accountants know
   - Compatible with neighboring Serbia and Croatia
   - Easy for SMBs to understand

2. **Financial Statements:** Generate IFRS-compliant reports via **mapping**
   - Map Class 0-1 → IFRS Statement of Financial Position (Assets)
   - Map Class 2-4 → IFRS Statement of Financial Position (Liabilities)
   - Map Class 3 → IFRS Statement of Financial Position (Equity)
   - Map Class 5-6 → IFRS Statement of Comprehensive Income

3. **IFRS Disclosure Notes:** Auto-generate based on account types
   - Property, Plant & Equipment (Class 02)
   - Inventories (Class 10-12)
   - Trade Receivables (Class 13)
   - etc.

**Benefit:** SMBs can use familiar Chart of Accounts, but produce IFRS-compliant financial statements when needed (e.g., for bank loans, audits).

---

## Account Numbering Schemes

### Standard Practice (All Three Countries)
- **2-digit codes:** Main account (e.g., 12 = Receivables)
- **3-digit codes:** Sub-account (e.g., 120 = Trade receivables, 121 = Receivables from affiliates)
- **4+ digit codes:** Analytical sub-accounts (company-specific)

**Example Hierarchy:**
```
1   — Current Assets (Class)
 12  — Short-term Receivables (Group)
  120 — Trade Receivables - Domestic (Account)
  121 — Trade Receivables - Foreign (Account)
   1210 — Trade Receivables - EU (Sub-account)
   1211 — Trade Receivables - Non-EU (Sub-account)
```

### Bilko Recommendation
- **MVP:** Support 2-3 digit codes (sufficient for 95% of SMBs)
- **Phase 2:** Support 4+ digit analytical accounts (for enterprise clients)

---

## Implementation Checklist for Bilko

### Phase 1 (MVP)
- [ ] Seed 3 Chart of Accounts templates (Serbia, BiH-FBiH, Croatia)
- [ ] Country selector on company setup
- [ ] Support 2-3 digit account codes
- [ ] Account type mapping (asset, liability, equity, revenue, expense)
- [ ] Serbian, Bosnian, Croatian language account names
- [ ] Balance sheet and P&L generation using Chart of Accounts
- [ ] VAT/PDV account integration (Class 24)

### Phase 2
- [ ] 4+ digit analytical sub-accounts
- [ ] User-customizable charts (add/edit/archive accounts)
- [ ] BiH-RS template (separate from FBiH)
- [ ] Multi-country mapping (for cross-border operations)
- [ ] IFRS financial statement generator (BiH requirement)
- [ ] Account import from Excel/CSV
- [ ] Class 9 (Internal Accounting) support for enterprise

### Phase 3
- [ ] Industry-specific templates (retail, manufacturing, services)
- [ ] Class 7 differentiation (Serbia/BiH cost vs Croatia gains/losses)
- [ ] Class 8 off-balance sheet tracking
- [ ] Full IFRS vs IFRS for SMEs selector (BiH)

---

## Sources

- [RRiF's Chart of Accounts for Entrepreneurs | RRiF](https://www.rrif.hr/dok/preuzimanje/RRIF-RP2021-ENG.PDF)
- [Serbian Chart of Accounts | ANA Računovodstvo](https://anaracunovodstvo.rs/en/kontniokvir/)
- [Law on Accounting - Republic of Serbia | Paragraf](https://www.paragraf.rs/propisi/law-on-accounting-republic-of-serbia.html)
- [IFRS in Bosnia and Herzegovina | IFRS Foundation](https://www.ifrs.org/use-around-the-world/use-of-ifrs-standards-by-jurisdiction/view-jurisdiction/bosnia-and-herzegovina/)
- [IFRS in Croatia | IFRS Foundation](https://www.ifrs.org/use-around-the-world/use-of-ifrs-standards-by-jurisdiction/view-jurisdiction/croatia/)
- [Accounting standards in BiH | Diaspora Invest](https://diasporainvest.ba/activities/accounting-standards-in-bih/)