Understanding these core accounting concepts will help you design your Ledger.
An account is a balance that represent the state of money.
There are four types of Ledger Accounts.
Types
Asset and Liability Accounts track financial relationships between your bank, payment systems and users. Income and Expense Accounts track profits and losses.
Accounts are organized in a tree structure. Most accounts have a parent or a child account. Leaf accounts don’t have children. Root accounts don’t have parents.
An Account's balance is the sum of its own balance and all child account balances.
A Ledger Entry modifies the balance in a group of Accounts. Every money movement should be represented by one or more ledger entries.
An Entry contains multiple Lines. Each Line modifies a specific account's balance.
An Account’s balance is the sum of all Lines ever posted to it.
All entries in a double-entry ledger fulfill the accounting equation.
Equal changes to an Asset and Liability account do not change the net worth of the business.
Profits or losses are recorded by adding income or expense lines.
Entry conditions prevent a balance from passing a certain threshold. For example, a credit card charge should only post if the cardholder has sufficient credit.
If the condition is not met, the entry will not be posted.
Static accounts are created manually during the design of the ledger.
Template accounts define a pattern for creating accounts at runtime. For example, you might want to create a new account for each user that joins.
Linked Accounts represent accounts in external systems, such as at your platform's bank.
A book transfer is a transfer between accounts within the same organization. For example, between two accounts at the same bank.
A money movement is a transfer between two distinct locations, such as two different banks.
Unlike book transfers, money movements typically require multiple days to complete. Funds in transit are tracked using a two-step process:
A "Clearing" account tracks funds in transit.
The Initiate Entry adds funds to a clearing account. The Settle Entry transfers funds back out. Funds held in a clearing account cannot be used by the platform for another purpose.
A receivables account is a clearing account that tracks funds entering your platform. A payables account is a clearing account that tracks funds exiting your platform.
Read our Funds Flows guide to see how these concepts can be applied.