Warning
this is a work in progress.
This library provides at the basic level a set of double entry accounting primitives.
Book
- roughly corresponds to a company or organization. A book contains primitive objects such as accounts, transactions, and entries, and also higher level objects such as invoices and payments.
Account
- a ledger accountLedger
- a collection of transactionsChart of Accounts
- a collection of accounts. One and only one per ledger. But a book can have multiple CoA instances.Transaction
- a transaction between two or more ledger accounts, which must balance. Transactions must be associated to accounts in the same CoA.TransactionEntry
- a single entry in a transaction, which is a credit or debit to an account.
Contact
- a contact or entity that can be associated with an invoice. Contacts can be customers, suppliers, or employees.Invoice
- a document that represents a request for payment from a customer. Invoices generate ledger transactions when they are posted.Payment
- a payment made against an invoice. This generates the corresponding ledger transactions when posted. These can be automatically generated by matching bank payments to invoices.
To use the double entry features directly, you can create