Account Naming Standards
Learn how to properly name and organize your accounts in Beancount following Canadian accounting standards and best practices.
Understanding Account Hierarchy
Beancount uses a hierarchical naming system similar to a file path structure. Accounts are organized using colons (:) as separators, creating a tree-like structure that helps organize your financial data logically.
Key Rule: Account names use colons (:) to separate levels, starting from broad categories and becoming more specific.
The Five Main Categories
All accounts must start with one of these five top-level categories, which follow the fundamental accounting equation:
Assets
What you own: bank accounts, investments, property, equipment
Example: Assets:Current:Cash:ChequingAccountLiabilities
What you owe: loans, credit cards, mortgages, accounts payable
Example: Liabilities:Current:CreditCard:VisaIncome
Money coming in: sales, services, interest, dividends
Example: Income:Sales:Products:SoftwareExpenses
Money going out: rent, salaries, supplies, utilities
Example: Expenses:Admin:Office:RentEquity
Owner's stake: capital, retained earnings, dividends
Example: Equity:RetainedEarnings:CurrentRemember: Assets = Liabilities + Equity + (Income - Expenses)
Hierarchy Levels
| Level | Purpose | Example |
|---|---|---|
| Level 1 | Main category (5 types) | Assets |
| Level 2 | Sub-category (CRA/IFRS standard) | Assets:Current |
| Level 3 | Account type | Assets:Current:Cash |
| Level 4+ | Your custom accounts | Assets:Current:Cash:BMO:Checking |
The first three levels follow Canadian accounting standards. You customize from level 4 onwards.
Naming Conventions
Use PascalCase
Capitalize the first letter of each word: ChequingAccount, not chequing_account
No Spaces
Join words directly: OfficeSupplies, not "Office Supplies"
Use Colons Only
Separate levels with colons (:), not slashes or hyphens
Be Specific
Use descriptive names: BMO:Checking is better than Bank1
Stay Consistent
Use the same naming pattern throughout your accounts