View Source API Reference bookk v0.1.2

Modules

An account is pretty much like a bucked. It has a single purpose: holding a measurable amount of something (currency).

An account class properties that are inherited by accounts and also work as a way of grouping account's balances.

Account head is a struct contained all the values necessary to either fetch or create a Bookk.Account from/into a Bookk.Ledger.

A Chart of Accounts (abbrv.: CoA) is a mapping of all the ledgers and all accounts that can exist in your system.

An interledger entry is a collection of journal entries affecting multiple ledgers that must be transacted under the same accounting transaction. It's somewhat analogous to an Ecto.Multi or a git commit that affect multiple files.

A Journal Entry is a set of operations that must be transacted under the same accounting transaction. Those operations describe a change in balance for an account. Operations are analogous to git commits, they represent a diff on a account's balance.

A ledger is a book that holds accounts. Traditionally, ledgers would also hold the journal entries that changed the accounts but, in this library, persisting those journal entries is considered off its scope -- you can persistem them on your own though.

A state struct that holds multiple ledgers. It's considered "naive" because it doesn't hold any information regarding the journal entries that put the state into its current value.

DSL notation for describing an interledger entries (Bookk.InterledgerEntry).

An operation describe a change in balance on a single account (Bookk.Account).

An error representing that something (a journal entry, a ledger, a state...) isn't balanced.