Tracking Departments, Projects, and Cost Centers
Managing multiple segments within your entity—whether departments, properties, projects, or cost centers—is a common need. You want to track how each segment performs financially while maintaining an organized view of your overall finances.
In Bkper, each Transaction moves an amount from one Account to another. This means you cannot record a single Transaction that splits across multiple departments the way traditional accounting systems might handle multi-line entries. Instead, Bkper offers a flexible approach to track segments, adaptable according to different scales and needs.
This article presents some concepts that can help you organize your Chart of Accounts from very simple to more complex, helping you choose the right method for your situation.
Hashtags (Simplest - Recommended Starting Point)
Record Transactions with hashtags to segment your income and expenses while maintaining a single, clean Chart of Accounts organized by traditional financial categories.
Imagine you manage two rental properties: Lider and Prime. Instead of duplicating your Chart of Accounts for each property, you record Transactions like this:
01/15 2,500 Tenant A >> Rent #Lider 01/20 1,800 Tenant B >> Rent #Prime 01/22 300 Bank >> Maintenance #Lider 01/24 150 Bank >> Maintenance #Prime
Your Rent Account shows total rental income across all properties (4,300), while clicking #Lider instantly filters all Transactions for that property, showing 2,500 in income and 300 in expenses. You can generate balance reports filtered by hashtag to see the financial performance of each segment.
When to Use Hashtags
This approach works best when you have small to medium transaction volumes per segment and want simple, fast implementation. It is ideal when you need to avoid Chart of Accounts complexity and when reporting by segment is occasional rather than continuous.
Advantages
Hashtags are very simple to implement and maintain. The approach scales easily as you add new departments or projects without changing your Chart of Accounts. Your Chart of Accounts remains clean and unified, making it fast to record Transactions. You can view balance totals filtered by hashtag, providing clear segment reporting.
Limitations
The balance reporting for hashtags is limited to queries with up to 30,000 Transactions. Balance values are not automatically tied to hashtags—you need to generate reports to see segment balances. You cannot create sub-hierarchies or nested structures within hashtags.
Learn More
Bkper General Ledger Template (The report has a hashtag sample)
Accounts and Groups per Segment
Create separate Accounts for each segment and use Groups to organize them for both segment-level and category-level views. This approach provides instant balance values for each segment through the Account structure.
For two properties, you create Accounts for each segment:
Incoming Accounts (green):
Rent_Lider
Rent_Prime
Outgoing Accounts (red):
Maintenance_Lider
Maintenance_Prime
You can also create Groups organized by category. Since an Account can belong to different Groups in different hierarchies, the same Accounts can be grouped differently:
Income (Gray Group)
Rent (green Group)
Rent_Lider
Rent_prime
Maintenance (red Group)
Maintenance_Lider
Maintenance_Prime
Important: In Bkper, Account and Group names are unique within a Book. You cannot create multiple "Rent" Accounts that exist independently under different parent Groups. Each Account name must be unique across the entire Book. This is why the example uses names like Rent_Lider and Rent_Prime rather than simply "Rent" in each property context.
Also, a Group can only have one parent Group, meaning it can only exist in one hierarchy. However, Accounts can belong to multiple Groups in different hierarchies, giving you flexibility in how you view your data.
When to Use Accounts and Groups
This approach works well with moderate transaction volumes when you have a few segments that are relatively stable and do not change frequently. It is ideal when you need instant balance values per Category (Expenses, Income) without generating separate reports, and when segment reporting is less relevant and critical to your operations.
Advantages
Balance values are instantly available for each segment through Accounts, and consolidated balance values are instantly available through Groups. There is no transaction limit for balance reporting. The structure works well for stable organizational structures where segments remain consistent over time.
Limitations
This approach creates a more complex Chart of Accounts that requires careful maintenance. Adding new expense or income categories requires creating Accounts for all segments. The Bkper Agent autocomplete may struggle when you have similar Account names like Rent_Lider and Rent_Prime—it may need more context in your Transaction description (than just "rent") to be able to correctly allocate the incoming rent to the right Account.
Remember that you cannot have duplicate Account names, so there is no true namespace isolation. Each Account must have a unique name across the entire Book. Groups can only exist in one hierarchy with one parent Group per Group. Recording Transactions requires unique descriptors to help the Bkper Agent categorize correctly.
Learn More
Separate Hierarchies with Dual Organization
Build several Group hierarchies: ones organized by segment and another organized by traditional financial categories. This hybrid approach balances granular segment tracking with consolidated financial reporting.
Using the property example, you create the same segment-specific Accounts as in Approach 2, but organize them into separate hierarchies.
Hierarchy 1 - Property Lider:
Lider Income (gray Group)
Rent_Lider
Maintenance_Lider
Hierarchy 2 - Property Prime:
Prime Income (gray Group)
Rent_Prime
Maintenance_Prime
Hierarchy 3 - Financial Categories:
Income (gray Group containing Revenue and Expenses)
Revenue (green Group containing Incoming Groups)
Rent (green Group)
Rent_Lider
Rent_Prime
Expenses (Red Group containing Outgoing Groups)
Maintenance (red Group)
Maintenance_Lider
Maintenance_Prime
This structure enables you to view financial performance both by individual property (Lider Income shows all income and expenses for that property) and by category (Rent Group shows total rental income across all properties).
Remember that while Accounts can belong to multiple Groups in different hierarchies, each Group can only have one parent. The Lider Income Group and the Income Group are separate hierarchies, both containing the Rent_Lider Account.
When to Use Separate Hierarchies
This approach works when you need both segment-level and category-level reporting perspectives. It is suited for operations with a moderate number of segments (typically 3-10) that have a stable structure. Use this approach when you have higher transaction volumes where the 30,000 Transaction hashtag limit becomes restrictive.
Advantages
You gain dual reporting perspectives, viewing your finances both by segment and by category. All balance values are instantly available without generating reports. There are no transaction limits. The structure provides flexible reporting across different dimensions of your operation.
Limitations
This approach creates a complex Chart of Accounts. Creating new categories requires updates across all segments. You need careful planning of your hierarchy structure. The Group hierarchy limitations still apply—one parent per Group. Users recording Transactions face higher cognitive overhead in understanding which Account to use. The Bkper Agent autocomplete may struggle when you have similar Account names like Rent_Lider and Rent_Prime—it may need more context in your Transaction description (than just "rent") to be able to correctly allocate the incoming rent to the right Account.
Learn More
Separate Books with Subledger Bot (Most Complex)
Create a separate Book for each segment with its own complete Chart of Accounts, then use the Subledger Bot to consolidate all segment Books into one General Ledger Book. Each segment Book can have its own permissions, access controls, bank connections, language, automations etc.
For the property example, create three Books:
Lider Book - complete Chart of Accounts for this property
Prime Book - complete Chart of Accounts for this property
General Ledger Book - consolidated view of all properties
Record Transactions in each property Book using simple Account names:
Lider Book:
01/15 2,500 Rent >> Tenant A
01/17 2,500 Tenant A >> Bank
01/22 300 Bank >> Maintenance
Prime Book:
01/20 1,800 Rent >> Tenant B
01/23 1,800 Tenant B >> Bank
01/24 150 Bank >> Maintenance
The Subledger Bot automatically records these Transactions in the General Ledger Book. It consolidates segment-level Accounts into aggregated Accounts, so your General Ledger shows Rent as the consolidated amount of the Rent_Lider and Rent_Prime Accounts, giving you the individual property performance per property book and total consolidated results in the general ledger.
Each segment Book operates independently with its own Transaction history and Chart of Accounts. You can share the Lider Book with the property manager for Lider without giving them access to Prime data nor the entire operation data.
The General Ledger provides the consolidated financial view across all operation.
When to Use Separate Books
This approach is designed for operations with a large number of segments (with high transaction volumes). Use it when you need data separation between segments for different teams, confidentiality requirements, different bank connections and slightly different operations per segment. It works well when different people manage different segments and should not see each others segment data. The approach shines when you want to use a template Book to quickly spin up new segments, and when you require advanced access control features.
Advantages
Separate Books provide clean data separation between segments. Each segment operates independently with its own scope. You gain granular access control, sharing each Book with different teams as needed. Adding new segments is easy—copy your template Book and configure it. Balance values are available instantly in all Books with no transaction limits. The approach scales well for larger organizations and where segments are more complex.
Limitations
This approach has the highest maintenance overhead. Changes to your Chart of Accounts structure must be replicated to the General Ledger and other Books. The initial setup is more complex, requiring understanding of custom properties for the Subledger Bot. Reporting requires accessing multiple Books. You face additional overhead in consolidation management as it must be done in more than one book. The approach requires Subledger Bot installation and configuration.
Learn More
Which Approach Should You Choose?
Start by asking yourself these questions:
What is your transaction volume per segment?
If you have under 30,000 total Transactions to report per hashtag at once, hashtags work perfectly. Once you hit that limit, use Accounts with Groups, Separate Hierarchies or Separate Books.
How often do your segments change?
For frequently changing segments, hashtags offer the most flexibility. With stable segments that rarely change, any approach works. For segments that never change, Separate Books provide the best scalability.
Do you need instant balance values per segment?
If occasional reports are sufficient, hashtags work fine. If you need continuous monitoring with instant balance values, use Accounts with Groups, Separate Hierarchies or Separate Books
Do different teams need different access to segment data?
If everyone sees everything, use hashtags, Accounts with Groups, or Separate Hierarchies. If you need confidential separation with different access levels, use Separate Books.
How do you handle different operations between Segments?
If you have segments that operate differently you can best reflect that in Separate Hierarchies or Separate Books.
How important is ease of recording Transactions?
If speed matters greatly, hashtags are fastest. If you are willing to be more careful with Account selection, Accounts with Groups work well. If accuracy matters more than speed, Separate Books provide the clearest structure.
Like mentioned in the Best practices always, start as simple as you can so most likely you can start with hashtags. As your operation grows and you reach the 30,000 Transaction limit or need more sophisticated reporting, you can migrate to Accounts with Groups, separate hierarchies or books and as you scale further or need access control, you can move to Separate Books. Bkper's flexibility allows you to evolve your approach as your needs change.
Summary
Tracking multiple segments within your entity requires choosing the right organizational approach. Hashtags offer simplicity and speed. Accounts and Groups provide instant balance values with moderate complexity. Separate Hierarchies add dual reporting perspectives for growing reporting needs. Separate Books with the Subledger Bot deliver full separation and access control for operations with different peers and operations.
Start simple, measure your needs, and evolve your approach as your understanding and operation grows. Bkper's flexibility ensures you can restructure your organization without losing historical data or disrupting ongoing operations.
