Basics | Plugins | Howtos | Applications
The accounting
plugin¶
The lino_xl.lib.accounting
plugin adds basic notions for accounting:
journals, vouchers, accounts and movements.
Table of contents:
The ledger¶
A ledger is a book in which the monetary transactions of a business are posted in the form of debits and credits (from 1).
In Lino, the ledger is the wholeness of the accounts, journals, vouchers and movements defined in the database of a given Lino site.
- ledger account¶
A named asset, liability, equity, revenue or expense that expresses your business activity. The goal of accounting is to report about the movements of money between your ledger accounts.
- ledger movement¶
An atomic transfer of a given amount of money from (or to) a given ledger account at a given date.
- ledger transaction¶
- numbered voucher¶
A business document that has a registered number in a journal. Examples of vouchers include offers, orders, invoices, bank statements, payment orders, VAT declarations, …
- journal¶
A series of sequentially numbered vouchers.
As a site manager you can configure the list of available journals via .
Moving money from (out of) an account is called “to debit”, moving money to an account is called “to credit”.
A ledger movement can be just a conceptual transfer for which there is no real cash flow or bank transfer.
A ledger account always has a given balance, which can be negative or positive.
A voucher may serve as legal proof for a ledger transaction.
A transaction always happens at a given date and in a given accounting period, which in turn is part of a given fiscal year.
For each transaction there must be at least two movements, and the sum of all debiting movements must equal the sum of all crediting movements.
Accounts¶
You can configure the list of available ledger accounts via .
Vouchers¶
- voucher item¶
An individual row or movement within a numbered voucher.
Voucher types¶
An important property of every journal is its voucher type.
- voucher type¶
The database model and data table used to store individual vouchers.
For example a journal of sales invoices and a journal of bank statements have obviously different voucher types
Lino has a list of voucher types, which you can see when
you edit the voucher_type
field of a journal. Note that the voucher type
of a journal must not change as long as there is at least one voucher in this
journal. The content of this list depends on the installed plugins.
You can configure multiple journals of a same voucher type on a single Lino site
Here is a possible list of voucher types (the exact list depends on your site’s configuration):
value |
text |
ana.InvoicesByJournal |
Analytic invoice |
bevats.DeclarationsByJournal |
Special Belgian VAT declaration |
finan.BankStatementsByJournal |
Bank statement |
finan.JournalEntriesByJournal |
Journal entry |
finan.PaymentOrdersByJournal |
Payment order |
trading.InvoicesByJournal |
Sales invoice |
vat.InvoicesByJournal |
Invoice |
“Draft” and “Registered”, the states of a voucher¶
- voucher state¶
The state of a numbered voucher.
When you create a new numbered voucher, it is in draft
state. It can be modified, but is not yet visible in the
ledger.
You must tell Lino that you have finished editing this voucher by setting its
state to registered
. A registered voucher
cannot be modified, but is visible as movements in the ledger.
You can easily deregister a voucher by setting its state back to draft
. This will remove the ledger movements, and Lino will create new movements when you register the voucher
again.
Trade types¶
The trade type is one of the basic properties of every ledger operation that involves an external partner. Every movement involving a partner is of one and only one trade type.
- trade type¶
The type of a trade operation. For example “sales” and “purchases” are the most common trade types. But we can also have “salaries”, “taxes”, …
Here is the default list of trade types
value |
text |
Main account |
S |
Sales |
|
P |
Purchases |
|
W |
Wages |
|
T |
Taxes |
|
C |
Clearings |
|
B |
Bank payment orders |
|
Your application might have a different list. You can see the actually configured list for your site via
.- payable transaction¶
A transaction that is expected to cause a payment by a partner.
Examples of payable transactions are sales invoices, purchase invoices and VAT declarations.
Invoices¶
In most Lino applications, purchase invoices are implemented as account vouchers while sales invoices are trading vouchers.
- invoice¶
A numbered voucher sent to or received from a business partner, showing a list of goods or services, their price, and the amount due.
- purchase invoice¶
An invoice that you receive from one of your providers
- sales invoice¶
An invoice that you send to one of your customers.
- invoice item¶
An item of an invoice.
Trading vouchers versus account vouchers¶
Lino differentiates between trading voucher and account voucher.
This differentiation is independent of whether it is an invoice or some other trade document (like an offer, an order or whatever).
Account vouchers are typically used to store purchase invoices, and they do no not usually produce a printable document. But exceptions in both directions are possible: (1) purchase invoices can be stored trading vouchers if stock management is important, or (2) sales invoice can be stored as account vouchers because they have been created using some external tool and are entered into Lino just for the general ledger.
In order to use account vouchers, you specify
lino_xl.lib.vat.VatAccountInvoice
as voucher type of the
journal.
If you also want to specify products, quantities and discounts in your invoices,
then specify VatProductInvoice
as
voucher type instead.
- trading voucher¶
A numbered voucher where each item points to a product.
Each product mentioned in the items maps to a ledger account according to configurable rules.
- account voucher¶
A numbered voucher where each item points directly to a given ledger account and doesn’t mention any product.
Other voucher types¶
- paycheck¶
A numbered voucher sent to each employee every month, detailing the amount of the salary or wage and resulting tax and other legal transactions.
- cash book¶
A journal of all transactions in a given cash box.
The transactions are grouped into cash statements, which are similar to a bank statement, but issued internally and potentially to be signed by a responsible person.
- preliminary transactions¶
Transactions that happened before the accounting period they are recorded for. They are part of the opening balance, but not to be considered as part of the actual accounting period’s history.
They are used to enter any relevant account activity of a corporation that has been booked using another software and/or database. You create them in a dedicated journal that has its
preliminary
field checked.Note that opening entries, i.e. transactions made at the start of an organization as part of the foundation process, are are not preliminary.
There are some secondary models and choice lists:
- match rule¶
A rule that specifies that movements into given account can be cleared using a given journal. See Match rules.
- payment term¶
A convention about when an invoice should be paid. See Payment terms.
- payment method¶
A convention on how an invoice should be paid. See Payment methods.
Debit and credit¶
Every movement of a financial transaction “moves” some amount either out of or into a given account.
- booking direction¶
Whether the amount of a transaction is moved out of or into a given account.
Accountants don’t want to express this booking direction of a movement simply by using an either positive or negative number, they want an explicit word for it and call it debit and credit. A debit entry in an account history represents a transfer of value to that account, and a credit entry represents a transfer from the account.
By convention, Lino stores the amount of a debiting movement as a negative number in the database. As an end user you don’t need to know this because amounts are always shown as “debit” or “credit”.
A sales invoice debits the customer’s account (an asset) and credits the turnover account (a revenue). The payment of this invoice credits the customer’s account and debits your bank account (causing its balance to increase because it is an asset).
A purchase invoice credits the supplier’s account (a liability) and debits the costs account (an expense). The payment of this invoice in the bank statement debits the supplier’s account and credits your bank account (causing its balance to decrease because it is an asset). If you use a payment order, then the payment order debits the supplier’s account and credits your pending payment orders account, which the bank statement debits.
Registering a voucher¶
A numbered voucher is always in one of the three states “Draft”, “Registered” or “Cancelled”. Registering a voucher means to change it status from “Draft” to “Registered”.
When a voucher is registered, it receives a sequence number in its journal and Lino generates the movements according to the data in the voucher.
A registered voucher cannot be edited or deleted.
You can deregister a voucher at any moment (except when you lack permission for this actions, or when the voucher is in a fiscal year that has been closed).
When you deregister a voucher, all movements are deleted.
The detail of a purchase invoice¶
Partner: the partner who is your provider for this purchase and acts as the provider.
Entry date: the date of this voucher in the ledger. Usually this is the day where on the invoice. Unless there was a delay and you want to record the document in another accounting period.
No: the number of this voucher within the journal. Lino fills this field automatically and you usually don’t want to change it.
Content: a panel with at least one row. For each row you can say:
Account : the account to be moved
Description : an optional description
VAT class : The VAT class to use. Lino fills this field automatically.
Total to pay : amount VAT included
Total excl. VAT : the base amount (without VAT)
VAT : the amount of VAT
Workflow: : the state of this voucher. See Registering a voucher.
Match rules¶
A match rule specifies that a movement into given account can be cleared using a given journal.
You can configure match rules either in the detail view of a journal or globally via
.Payment terms¶
You can configure the list of available payment terms via .
Payment methods¶
You can configure the list of available payment methods via .
Common accounts¶
Lino has a list of common accounts, which are used to identify the actual database objects referring to certain ledger accounts that have a well-known meaning and internationally recognized designations.
- common account¶
A well-known account for which the site manager must configure a corresponding account in your accounts chart.
The following sections explain these common accounts used in most Lino applications. Your application might add specific items to that list or potentially redefine it completely.
Net income (loss)¶
The net income or loss of the fiscal year.
Used in lino_xl.lib.sheets
for generating demo data.
Customers¶
The credit given to our customers.
Suppliers¶
The debt towards our providers.
Employees¶
The debt towards our employees.
Pending payment orders¶
Where money goes temporarily when we registered a payment order but did not yet register the bank statement that confirms its execution.
Tax offices¶
The debt towards (or the credit received from) a national tax office.
VAT due¶
Due VAT that has not yet been declared to the national tax office.
VAT declared¶
VAT to be paid to the national tax office.
VAT deductible¶
VAT to be refunded from the national tax office.
VAT returnable¶
Internal clearings¶
Where money goes temporarily e.g. during a transfer between two of our bank accounts.
Waiting account¶
Where money goes temporarily and needs an explanation.
Bank¶
The money we have on our main bank account.
Cash¶
The money we have in our cash drawer(s).
Purchase of services¶
Purchase of investments¶
Purchase of goods¶
Wages¶
Net income¶
Sales¶
Net loss¶
Does a new accounting application make sense?¶
Does the world need yet another accounting software? Good question. Here is no answer, just some observations.
Don Watkins names four popular tools in My favorite open source tools for personal finance: GnuCash, Homebank, KMyMoney and Skrooge.
In Estonia it is difficult to convince somebody to use a new accounting application because they have https://www.rik.ee/en/e-financials