[MOV] accounting: restructuration of the accounting documentation
This commit improves the structure of the accounting documentation by
- reducing the levels necessary to reach the information
- grouping some docs
- moving content to their parent category page (content in all levels)
- renaming some sections to reflect the structure of the app better
task-3330093
closes odoo/documentation#4478
X-original-commit: 14afa1a1a2
Signed-off-by: Castillo Jonathan (jcs) <jcs@odoo.com>
@@ -0,0 +1,167 @@
|
||||
=================================
|
||||
Inventory average price valuation
|
||||
=================================
|
||||
|
||||
As stated in the :doc:`inventory valuation page
|
||||
</applications/inventory_and_mrp/inventory/management/reporting/inventory_valuation_config>`,
|
||||
one of the possible costing method you can use in perpetual stock
|
||||
valuation, is the average cost.
|
||||
|
||||
This document answers to one recurrent question for companies using that
|
||||
method to make their stock valuation: how does a shipping returned to
|
||||
its supplier impact the average cost and the accounting entries? This
|
||||
document is **only** for the specific use case of a perpetual valuation (as
|
||||
opposed to the periodic one) and in average price costing method (as
|
||||
opposed to standard of FIFO).
|
||||
|
||||
Definition of average cost
|
||||
==========================
|
||||
|
||||
The average cost method calculates the cost of ending inventory and cost
|
||||
of goods sold on the basis of weighted average cost per unit of
|
||||
inventory.
|
||||
|
||||
The weighted average cost per unit is calculated using the following
|
||||
formula:
|
||||
|
||||
- When new products arrive in a warehouse, the new average cost is
|
||||
recomputed as:
|
||||
|
||||
.. image:: avg_price_valuation/avg01.png
|
||||
:align: center
|
||||
|
||||
- When products leave the warehouse: the average cost **does not** change
|
||||
|
||||
Defining the purchase price
|
||||
---------------------------
|
||||
|
||||
The purchase price is estimated at the reception of the products (you
|
||||
might not have received the vendor bill yet) and reevaluated at the
|
||||
reception of the vendor bill. The purchase price includes the cost you
|
||||
pay for the products, but it may also includes additional costs, like
|
||||
landed costs.
|
||||
|
||||
Average cost example
|
||||
====================
|
||||
|
||||
+-----------------------------+---------------+-------------------+---------------+------------+
|
||||
| Operation | Delta Value | Inventory Value | Qty On Hand | Avg Cost |
|
||||
+=============================+===============+===================+===============+============+
|
||||
| | | $0 | 0 | $0 |
|
||||
+-----------------------------+---------------+-------------------+---------------+------------+
|
||||
| Receive 8 Products at $10 | +8\*$10 | $80 | 8 | $10 |
|
||||
+-----------------------------+---------------+-------------------+---------------+------------+
|
||||
| Receive 4 Products at $16 | +4\*$16 | $144 | 12 | $12 |
|
||||
+-----------------------------+---------------+-------------------+---------------+------------+
|
||||
| Deliver 10 Products | -10\*$12 | $24 | 2 | $12 |
|
||||
+-----------------------------+---------------+-------------------+---------------+------------+
|
||||
+-----------------------------+---------------+-------------------+---------------+------------+
|
||||
|
||||
At the beginning, the Avg Cost is set to 0 set as there is no product in
|
||||
the inventory. When the first reception is made, the average cost
|
||||
becomes logically the purchase price.
|
||||
|
||||
At the second reception, the average cost is updated because the total
|
||||
inventory value is now ``$80 + 4*$16 = $144``. As we have 12 units on
|
||||
hand, the average price per unit is ``$144 / 12 = $12``.
|
||||
|
||||
By definition, the delivery of 10 products does not change the average
|
||||
cost. Indeed, the inventory value is now $24 as we have only 2 units
|
||||
remaining of each ``$24 / 2 = $12``.
|
||||
|
||||
Purchase return use case
|
||||
========================
|
||||
|
||||
In case of a product returned to its supplier after reception, the
|
||||
inventory value is reduced using the average cost formulae (not at the
|
||||
initial price of these products!).
|
||||
|
||||
Which means that the above table will be updated as follow:
|
||||
|
||||
+-----------------------------------------------+---------------+-------------------+---------------+------------+
|
||||
| Operation | Delta Value | Inventory Value | Qty On Hand | Avg Cost |
|
||||
+===============================================+===============+===================+===============+============+
|
||||
| | | $24 | 2 | $12 |
|
||||
+-----------------------------------------------+---------------+-------------------+---------------+------------+
|
||||
| Return of 1 Product initially bought at $10 | -1\*$12 | $12 | 1 | $12 |
|
||||
+-----------------------------------------------+---------------+-------------------+---------------+------------+
|
||||
|
||||
Explanation: counter example
|
||||
----------------------------
|
||||
|
||||
Remember the definition of **Average Cost**, saying that we do not update
|
||||
the average cost of a product leaving the inventory. If you break this
|
||||
rule, you may lead to inconsistencies in your inventory.
|
||||
|
||||
As an example, here is the scenario when you deliver one piece to the
|
||||
customer and return the other one to your supplier (at the cost you
|
||||
purchased it). Here is the operation:
|
||||
|
||||
+-----------------------------------------------+---------------+-------------------+---------------+------------+
|
||||
| Operation | Delta Value | Inventory Value | Qty On Hand | Avg Cost |
|
||||
+===============================================+===============+===================+===============+============+
|
||||
| | | $24 | 2 | $12 |
|
||||
+-----------------------------------------------+---------------+-------------------+---------------+------------+
|
||||
| Customer Shipping 1 product | -1\*$12 | $12 | 1 | $12 |
|
||||
+-----------------------------------------------+---------------+-------------------+---------------+------------+
|
||||
| Return of 1 Product initially bought at $10 | -1\*$10 | **$2** | **0** | $12 |
|
||||
+-----------------------------------------------+---------------+-------------------+---------------+------------+
|
||||
|
||||
As you can see in this example, this is not correct: an inventory
|
||||
valuation of $2 for 0 pieces in the warehouse.
|
||||
|
||||
The correct scenario should be to return the goods at the current
|
||||
average cost:
|
||||
|
||||
+-----------------------------------------------+---------------+-------------------+---------------+------------+
|
||||
| Operation | Delta Value | Inventory Value | Qty On Hand | Avg Cost |
|
||||
+===============================================+===============+===================+===============+============+
|
||||
| | | $24 | 2 | $12 |
|
||||
+-----------------------------------------------+---------------+-------------------+---------------+------------+
|
||||
| Customer Shipping 1 product | -1\*$12 | $12 | 1 | $12 |
|
||||
+-----------------------------------------------+---------------+-------------------+---------------+------------+
|
||||
| Return of 1 Product initially bought at $10 | -1\*$12 | **$0** | **0** | $12 |
|
||||
+-----------------------------------------------+---------------+-------------------+---------------+------------+
|
||||
|
||||
On the other hand, using the average cost to value the return ensure a
|
||||
correct inventory value at all times.
|
||||
|
||||
Further thoughts on anglo saxon mode
|
||||
------------------------------------
|
||||
|
||||
For people in using the **anglo saxon accounting** principles, there is
|
||||
another concept to take into account: the stock input account of the
|
||||
product, which is intended to hold at any time the value of vendor bills
|
||||
to receive. So the stock input account will increase on reception of
|
||||
incoming shipments and will decrease when receiving the related vendor
|
||||
bills.
|
||||
|
||||
Back to our example, we see that when the return is valued at the
|
||||
average price, the amount booked in the stock input account is the
|
||||
original purchase price:
|
||||
|
||||
+-----------------------------------------------+---------------+--------------+-------------------+---------------+------------+
|
||||
| Operation | stock input | price diff | Inventory Value | Qty On Hand | Avg Cost |
|
||||
+===============================================+===============+==============+===================+===============+============+
|
||||
| | | | $0 | 0 | $0 |
|
||||
+-----------------------------------------------+---------------+--------------+-------------------+---------------+------------+
|
||||
| Receive 8 Products at $10 | ($80) | | $80 | 8 | $10 |
|
||||
+-----------------------------------------------+---------------+--------------+-------------------+---------------+------------+
|
||||
| Receive vendor bill $80 | $0 | | $80 | 8 | $10 |
|
||||
+-----------------------------------------------+---------------+--------------+-------------------+---------------+------------+
|
||||
| Receive 4 Products at $16 | ($64) | | $144 | 12 | $12 |
|
||||
+-----------------------------------------------+---------------+--------------+-------------------+---------------+------------+
|
||||
| Receive vendor bill $64 | $0 | | $144 | 12 | $12 |
|
||||
+-----------------------------------------------+---------------+--------------+-------------------+---------------+------------+
|
||||
| Deliver 10 Products | $0 | | $24 | 2 | $12 |
|
||||
+-----------------------------------------------+---------------+--------------+-------------------+---------------+------------+
|
||||
| Return of 1 Product initially bought at $10 | **$10** | **$2** | **$12** | 1 | $12 |
|
||||
+-----------------------------------------------+---------------+--------------+-------------------+---------------+------------+
|
||||
| Receive vendor refund $10 | $0 | $2 | $12 | 1 | $12 |
|
||||
+-----------------------------------------------+---------------+--------------+-------------------+---------------+------------+
|
||||
|
||||
This is because the vendor refund will be made using the original
|
||||
purchase price, so to zero out the effect of the return in the stock
|
||||
input in last operation, we need to reuse the original price. The price
|
||||
difference account located on the product category is used to book the
|
||||
difference between the average cost and the original purchase price.
|
||||
|
After Width: | Height: | Size: 3.0 KiB |
@@ -0,0 +1,189 @@
|
||||
=================
|
||||
Chart of accounts
|
||||
=================
|
||||
|
||||
The **chart of accounts (COA)** is the list of all the accounts used to record financial
|
||||
transactions in the general ledger of an organization.
|
||||
|
||||
The accounts are usually listed in the order of appearance in the financial reports. Most of the
|
||||
time, they are listed as follows :
|
||||
|
||||
- Balance Sheet accounts:
|
||||
|
||||
- Assets
|
||||
- Liabilities
|
||||
- Equity
|
||||
|
||||
- Profit & Loss:
|
||||
|
||||
- Income
|
||||
- Expense
|
||||
|
||||
When browsing your chart of accounts, you can filter the accounts by number, in the left column, and
|
||||
also group them by :guilabel:`Account Type`.
|
||||
|
||||
.. image:: chart_of_accounts/chart-of-accounts.png
|
||||
:align: center
|
||||
:alt: Group the accounts by type in Odoo Accounting
|
||||
|
||||
Configuration of an account
|
||||
===========================
|
||||
|
||||
The country you select at the creation of your database (or additional company on your database)
|
||||
determines which **fiscal localization package** is installed by default. This package includes a
|
||||
standard chart of accounts already configured according to the country's regulations. You can use
|
||||
it directly or set it according to your company's needs.
|
||||
|
||||
.. warning::
|
||||
It is not possible to modify the **fiscal localization** of a company once a journal entry has
|
||||
been posted.
|
||||
|
||||
To create a new account, go to :menuselection:`Accounting --> Configuration --> Chart of Accounts`,
|
||||
click on :guilabel:`Create`, and fill out the form.
|
||||
|
||||
Code and name
|
||||
-------------
|
||||
|
||||
Each account is identified by its **code** and **name**, which also indicates the account's purpose.
|
||||
|
||||
.. _chart-of-account/type:
|
||||
|
||||
Type
|
||||
----
|
||||
|
||||
Correctly configuring the **account type** is critical as it serves multiple purposes:
|
||||
|
||||
- Information on the account's purpose and behavior
|
||||
- Generate country-specific legal and financial reports
|
||||
- Set the rules to close a fiscal year
|
||||
- Generate opening entries
|
||||
|
||||
To configure an account type, open the :guilabel:`Type` field's drop-down selector and select the
|
||||
right type among the following list:
|
||||
|
||||
+---------------+--------------+-------------------------+
|
||||
| Report | Category | Account Types |
|
||||
+===============+==============+=========================+
|
||||
| Balance Sheet | Assets | Receivable |
|
||||
| | +-------------------------+
|
||||
| | | Bank and Cash |
|
||||
| | +-------------------------+
|
||||
| | | Current Assets |
|
||||
| | +-------------------------+
|
||||
| | | Non-current Assets |
|
||||
| | +-------------------------+
|
||||
| | | Prepayments |
|
||||
| | +-------------------------+
|
||||
| | | Fixed Assets |
|
||||
| +--------------+-------------------------+
|
||||
| | Liabilities | Payable |
|
||||
| | +-------------------------+
|
||||
| | | Credit Card |
|
||||
| | +-------------------------+
|
||||
| | | Current Liabilities |
|
||||
| | +-------------------------+
|
||||
| | | Non-current Liabilities |
|
||||
| +--------------+-------------------------+
|
||||
| | Equity | Equity |
|
||||
| | +-------------------------+
|
||||
| | | Current Year Earnings |
|
||||
+---------------+--------------+-------------------------+
|
||||
| Profit & Loss | Income | Income |
|
||||
| | +-------------------------+
|
||||
| | | Other Income |
|
||||
| +--------------+-------------------------+
|
||||
| | Expense | Expense |
|
||||
| | +-------------------------+
|
||||
| | | Depreciation |
|
||||
| | +-------------------------+
|
||||
| | | Cost of Revenue |
|
||||
+---------------+--------------+-------------------------+
|
||||
|Other | Other | Off-Balance Sheet |
|
||||
+---------------+--------------+-------------------------+
|
||||
|
||||
Assets, deferred expenses, and deferred revenues automation
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Some **account types** display a new field **to automate** the creation of :ref:`assets
|
||||
<assets-automation>` entries, :ref:`deferred expenses <deferred-expenses-automation>` entries,
|
||||
and :ref:`deferred revenues <deferred-revenues-automation>` entries.
|
||||
|
||||
You have three choices for the :guilabel:`Automation` field:
|
||||
|
||||
#. :guilabel:`No`: this is the default value. Nothing happens.
|
||||
#. :guilabel:`Create in draft`: whenever a transaction is posted on the account, a draft entry is
|
||||
created, but not validated. You must first fill out the corresponding form.
|
||||
#. :guilabel:`Create and validate`: you must also select a **model**. Whenever a transaction is
|
||||
posted on the account, an entry is created and immediately validated.
|
||||
|
||||
Default taxes
|
||||
-------------
|
||||
|
||||
Select a **default tax** that will be applied when this account is chosen for a product sale or
|
||||
purchase.
|
||||
|
||||
Tags
|
||||
----
|
||||
|
||||
Some accounting reports require **tags** to be set on the relevant accounts. By default, you can
|
||||
choose among the tags that are used by the *Cash Flow Statement*.
|
||||
|
||||
Account groups
|
||||
--------------
|
||||
|
||||
**Account groups** are useful to list multiple accounts as *sub-accounts* of a bigger account and
|
||||
thus consolidate reports such as the **Trial Balance**. By default, groups are handled automatically
|
||||
based on the code of the group. For example, a new account `131200` is going to be part of the group
|
||||
`131000`.
|
||||
|
||||
Create account groups manually
|
||||
------------------------------
|
||||
|
||||
.. note::
|
||||
Regular users should not need to create account groups manually. The following section is only
|
||||
intended for rare and advanced use cases.
|
||||
|
||||
To create a new account group, :ref:`developer mode <developer-mode>` and head to
|
||||
:menuselection:`Accounting app --> Configuration --> Account Groups`. Here, create a new group and
|
||||
enter the :guilabel:`name, code prefix, and company` to which that group account should be
|
||||
available. Note that you must enter the same code prefix in both :guilabel:`From` and :guilabel:`to`
|
||||
fields.
|
||||
|
||||
.. image:: chart_of_accounts/account-groups.png
|
||||
:align: center
|
||||
:alt: Account groups creation.
|
||||
|
||||
To display your **Trial Balance** report with your account groups, go to :menuselection:`Accounting
|
||||
app-->Reporting-->Trial Balance`, then open the :guilabel:`Options` menu and select
|
||||
:guilabel:`Hierarchy and Subtotals`.
|
||||
|
||||
.. image:: chart_of_accounts/trial-balance.png
|
||||
:align: center
|
||||
:alt: Account Groups in the Trial Balance in Odoo Accounting
|
||||
|
||||
Allow reconciliation
|
||||
--------------------
|
||||
|
||||
Some accounts, such as accounts made to record the transactions of a payment method, can be used for
|
||||
the reconciliation of journal entries.
|
||||
|
||||
For example, an invoice paid with a credit card can be marked as :guilabel:`paid` if reconciled with
|
||||
its payment. Therefore, the account used to record credit card payments needs to be configured as
|
||||
**allowing reconciliation**.
|
||||
|
||||
To do so, check the :guilabel:`Allow Reconciliation` box in the account's settings, and save.
|
||||
|
||||
Deprecated
|
||||
----------
|
||||
|
||||
It is not possible to delete an account once a transaction has been recorded on it. You can make
|
||||
them unusable by using the **Deprecated** feature.
|
||||
|
||||
To do so, check the :guilabel:`Deprecated` box in the account's settings, and save.
|
||||
|
||||
.. seealso::
|
||||
* :doc:`cheat_sheet`
|
||||
* :doc:`../vendor_bills/assets`
|
||||
* :doc:`../vendor_bills/deferred_expenses`
|
||||
* :doc:`../customer_invoices/deferred_revenues`
|
||||
* :doc:`../../fiscal_localizations`
|
||||
|
After Width: | Height: | Size: 5.9 KiB |
|
After Width: | Height: | Size: 20 KiB |
|
After Width: | Height: | Size: 22 KiB |
@@ -0,0 +1,253 @@
|
||||
:code-column:
|
||||
:custom-css: accounting.css
|
||||
:custom-js: accounts.js,chart-of-accounts.js,entries.js,misc.js,reconciliation.js
|
||||
|
||||
======================
|
||||
Accounting cheat sheet
|
||||
======================
|
||||
|
||||
.. h:div:: intro-list
|
||||
|
||||
.. rst-class:: intro-balance
|
||||
|
||||
The **Balance Sheet** is a snapshot of the company's finances at a specific date (as opposed to
|
||||
the Profit and Loss, which is an analysis over a period).
|
||||
|
||||
* .. rst-class:: intro-assets
|
||||
|
||||
**Assets** represent the company's wealth and the goods it owns. Fixed assets include buildings
|
||||
and offices, while current assets include bank accounts and cash. The money owed by a client is
|
||||
an asset. An employee is not an asset.
|
||||
|
||||
* .. rst-class:: intro-liabilities
|
||||
|
||||
**Liabilities** are obligations from past events that the company will have to pay in the
|
||||
future (utility bills, debts, unpaid suppliers). Liabilities could also be defined as a source
|
||||
of financing which is provided to the company, also called *leverage*.
|
||||
|
||||
* .. rst-class:: intro-equity
|
||||
|
||||
**Equity** is the amount of the funds contributed by the owners of the company (founders or
|
||||
shareholders) plus previously retained earnings (or losses). Each year, net profits (or losses)
|
||||
may be reported as retained earnings or distributed to the shareholders (as a dividend).
|
||||
|
||||
What is owned (an asset) has been financed through debts to reimburse (liabilities) or equity
|
||||
(profits, capital).
|
||||
|
||||
A difference is made between **assets** and **expenses**:
|
||||
- An **asset** is a resource with economic value that an individual, corporation, or country owns
|
||||
or controls with the expectation that it will provide a future benefit. Assets are reported on
|
||||
a company's balance sheet. They are bought or created to increase a firm's value or benefit its
|
||||
operations.
|
||||
- An **expense** is the costs of operations a company bears to generate revenues.
|
||||
|
||||
.. h:div:: intro-list
|
||||
|
||||
.. rst-class:: intro-p-l
|
||||
|
||||
The **profit and loss** (P&L) report shows the company's performance over a specific period of
|
||||
time, usually a quarter or a fiscal year.
|
||||
|
||||
* .. rst-class:: intro-gross-profit
|
||||
|
||||
The **revenue** refers to the money earned by the company by selling goods and/or services.
|
||||
|
||||
* .. rst-class:: intro-gross-profit
|
||||
|
||||
The **cost of goods sold** (COGS, or also known as "Cost of Sale") refers to the sale of
|
||||
goods' costs (e.g., the cost of the materials and labor used to create the goods).
|
||||
|
||||
* .. rst-class:: intro-gross-profit
|
||||
|
||||
The **Gross profit** equals the revenues from sales minus the cost of goods sold.
|
||||
|
||||
* .. rst-class:: intro-opex
|
||||
|
||||
**Operating expenses** (OPEX) include administration, sales and R&D salaries, rent and
|
||||
utilities, miscellaneous costs, insurances, and anything beyond the costs of products sold
|
||||
or the cost of sale.
|
||||
|
||||
.. h:div:: doc-aside accounts-table
|
||||
|
||||
.. placeholder
|
||||
|
||||
.. rst-class:: doc-aside
|
||||
|
||||
.. highlights:: Assets = Liabilities + Equity
|
||||
|
||||
Chart of accounts
|
||||
=================
|
||||
|
||||
The **chart of accounts** lists all the company's accounts: both Balance sheet accounts and P&L
|
||||
accounts. Every transaction is recorded by debiting and crediting multiple accounts in a journal
|
||||
entry. In a way, a chart of accounts is like a company's DNA!
|
||||
|
||||
Every account listed in the chart of accounts belongs to a specific category. In Odoo, each account
|
||||
has a unique code and belongs to one of these categories:
|
||||
|
||||
- **Equity and subordinated debts**
|
||||
- **Equity** is the amount of money invested by a company's shareholders to finance the
|
||||
company's activities.
|
||||
- **Subordinated debts** are the amount of money lent by a third party to a company to finance
|
||||
its activities. In the event of the dissolution of a company, these third parties are
|
||||
reimbursed before the shareholders.
|
||||
- **Fixed assets** are tangible (i.e., physical) items or properties that a company purchases and
|
||||
uses to produce its goods and services. Fixed assets are long-term assets. This means the assets
|
||||
have a useful life of more than one year. They also include properties, plants, and equipments
|
||||
(also known as "PP&E") and are recorded on the balance sheet with that classification.
|
||||
- **Current assets and liabilities**
|
||||
- The **current assets** account is a balance sheet line item listed under the Assets section,
|
||||
which accounts for all company-owned assets that can be converted to cash within one year.
|
||||
Current assets include cash, cash equivalents, accounts receivable, stock inventory,
|
||||
marketable securities, prepaid liabilities, and other liquid assets.
|
||||
- **Current liabilities** are a company's short-term financial obligations due within one year.
|
||||
An example of a current liability is money owed to suppliers in the form of accounts payable.
|
||||
- **Bank and cash accounts**
|
||||
- A **bank account** is a financial account maintained by a bank or other financial institution
|
||||
in which the financial transactions between the bank and a customer are recorded.
|
||||
- A **cash account**, or cash book, may refer to a ledger in which all cash transactions are
|
||||
recorded. The cash account includes both the cash receipts and the cash payment journals.
|
||||
- **Expenses and income**
|
||||
- An **expense** is the costs of operations a company bears to generate revenues. It is simply
|
||||
defined as the cost one is required to spend on obtaining something. Common expenses include
|
||||
supplier payments, employee wages, factory leases, and equipment depreciation.
|
||||
- The term "**income**" generally refers to the amount of money, property, and other transfers
|
||||
of value received over a set period of time in exchange for services or products.
|
||||
|
||||
Example
|
||||
-------
|
||||
|
||||
.. h:div:: example
|
||||
|
||||
\*: Customer Refund and Customer Payment boxes cannot be simultaneously selected as they are contradictory.
|
||||
|
||||
.. h:div:: doc-aside
|
||||
|
||||
.. highlights:: Balance = Debit - Credit
|
||||
|
||||
.. h:div:: chart-of-accounts
|
||||
|
||||
.. placeholder
|
||||
|
||||
Journal entries
|
||||
===============
|
||||
|
||||
Every financial document of the company (e.g., an invoice, a bank statement, a pay slip, a capital
|
||||
increase contract) is recorded as a journal entry, impacting several accounts.
|
||||
|
||||
For a journal entry to be balanced, the sum of all its debits must be equal to the sum of all its
|
||||
credits.
|
||||
|
||||
.. h:div:: doc-aside journal-entries
|
||||
|
||||
examples of accounting entries for various transactions. (see entries.js)
|
||||
|
||||
.. _accounting/reconciliation:
|
||||
|
||||
Reconciliation
|
||||
==============
|
||||
|
||||
:doc:`Reconciliation <../../accounting/bank/reconciliation>` is the process of linking
|
||||
journal items of a specific account and matching credits and debits.
|
||||
|
||||
Its primary purpose is to link payments to their related invoices to mark them as paid. This is done
|
||||
by doing a reconciliation on the accounts receivable account and/or the accounts payable account.
|
||||
|
||||
Reconciliation is performed automatically by the system when:
|
||||
|
||||
- the payment is registered directly on the invoice
|
||||
- the links between the payments and the invoices are detected at the bank matching process
|
||||
|
||||
.. h:div:: doc-aside reconciliation-example
|
||||
|
||||
.. rubric:: Customer Statement Example
|
||||
|
||||
.. rst-class:: table-sm d-c-table
|
||||
|
||||
+-------------------------+-------------------------+-----------------------+
|
||||
|Accounts Receivable |Debit |Credit |
|
||||
+=========================+=========================+=======================+
|
||||
|Invoice 1 |100 | |
|
||||
+-------------------------+-------------------------+-----------------------+
|
||||
|Partial payment 1/2 | |70 |
|
||||
+-------------------------+-------------------------+-----------------------+
|
||||
|Invoice 2 |65 | |
|
||||
+-------------------------+-------------------------+-----------------------+
|
||||
|Partial payment 2/2 | |30 |
|
||||
+-------------------------+-------------------------+-----------------------+
|
||||
|Payment 2 | |65 |
|
||||
+-------------------------+-------------------------+-----------------------+
|
||||
|Invoice 3 |50 | |
|
||||
+-------------------------+-------------------------+-----------------------+
|
||||
| | | |
|
||||
+-------------------------+-------------------------+-----------------------+
|
||||
|Total to pay |50 | |
|
||||
+-------------------------+-------------------------+-----------------------+
|
||||
|
||||
Bank Reconciliation
|
||||
===================
|
||||
|
||||
Bank reconciliation is the matching of bank statement lines (provided by your bank) with
|
||||
transactions recorded internally (payments to suppliers or from customers). For each line in a bank
|
||||
statement, it can be:
|
||||
|
||||
- **matched with a previously recorded payment**: a payment is registered when a check is received
|
||||
from a customer, then matched when checking the bank statement.
|
||||
- **recorded as a new payment**: the payment's journal entry is created and reconciled with the
|
||||
related invoice when processing the bank statement.
|
||||
- **recorded as another transaction**: bank transfer, direct charge, etc.
|
||||
|
||||
Odoo should automatically reconcile most transactions; only a few should need manual review. When
|
||||
the bank reconciliation process is finished, the balance on the bank account in Odoo should match
|
||||
the bank statement's balance.
|
||||
|
||||
.. rst-class:: checks-handling
|
||||
|
||||
Checks Handling
|
||||
===============
|
||||
|
||||
There are two approaches to managing checks and internal wire transfers:
|
||||
|
||||
- Two journal entries and a reconciliation
|
||||
- One journal entry and a bank reconciliation
|
||||
|
||||
.. h:div:: doc-aside
|
||||
|
||||
The first journal entry is created by registering the payment on the
|
||||
invoice. The second one is created when registering the bank statement.
|
||||
|
||||
.. rst-class:: table-sm d-c-table
|
||||
|
||||
+-------------------------+--------------+------------+---------------+
|
||||
|Account |Debit |Credit |Reconciliation |
|
||||
+=========================+==============+============+===============+
|
||||
|Account Receivable | |100 |Invoice ABC |
|
||||
+-------------------------+--------------+------------+---------------+
|
||||
|Undeposited funds |100 | |Check 0123 |
|
||||
+-------------------------+--------------+------------+---------------+
|
||||
|
||||
.. rst-class:: table-sm d-c-table
|
||||
|
||||
+-------------------------+--------------+------------+---------------+
|
||||
|Account |Debit |Credit |Reconciliation |
|
||||
+=========================+==============+============+===============+
|
||||
|Undeposited funds | |100 |Check 0123 |
|
||||
+-------------------------+--------------+------------+---------------+
|
||||
|Bank |100 | | |
|
||||
+-------------------------+--------------+------------+---------------+
|
||||
|
||||
.. h:div:: doc-aside
|
||||
|
||||
A journal entry is created by registering the payment on the invoice. When
|
||||
reconciling the bank statement, the statement line is linked to the
|
||||
existing journal entry.
|
||||
|
||||
.. rst-class:: table-sm d-c-table
|
||||
|
||||
+-------------------------+--------------+------------+---------------+---------------+
|
||||
|Account |Debit |Credit |Reconciliation |Bank Statement |
|
||||
+=========================+==============+============+===============+===============+
|
||||
|Account Receivable | |100 |Invoice ABC | |
|
||||
+-------------------------+--------------+------------+---------------+---------------+
|
||||
|Bank |100 | | |Statement XYZ |
|
||||
+-------------------------+--------------+------------+---------------+---------------+
|
||||
@@ -0,0 +1,167 @@
|
||||
=====================
|
||||
Multi-currency system
|
||||
=====================
|
||||
|
||||
Odoo allows you to issue invoices, receive bills, and record transactions in currencies other than
|
||||
the main currency configured for your company. You can also set up bank accounts in other currencies
|
||||
and run reports on your foreign currency activities.
|
||||
|
||||
.. seealso::
|
||||
- :doc:`../bank/foreign_currency`
|
||||
|
||||
.. _multi-currency/config:
|
||||
|
||||
Configuration
|
||||
=============
|
||||
|
||||
.. _multi-currency/config-main-currency:
|
||||
|
||||
Main currency
|
||||
-------------
|
||||
|
||||
The **main currency** is defined by default according to the company's country. You can change it by
|
||||
going to :menuselection:`Accounting --> Configuration --> Settings --> Currencies` and changing the
|
||||
currency in the :guilabel:`Main Currency` setting.
|
||||
|
||||
.. _multi-currency/config-enable:
|
||||
|
||||
Enable foreign currencies
|
||||
-------------------------
|
||||
|
||||
Go to :menuselection:`Accounting --> Configuration --> Currencies`, and enable the currencies you
|
||||
wish to use by toggling the :guilabel:`Active` button.
|
||||
|
||||
.. image:: multi_currency/enable-foreign-currencies.png
|
||||
:align: center
|
||||
:alt: Enable the currencies you wish to use.
|
||||
|
||||
.. _multi-currency/config-rates:
|
||||
|
||||
Currency rates
|
||||
--------------
|
||||
|
||||
Manual update
|
||||
~~~~~~~~~~~~~
|
||||
|
||||
To manually create and set a currency rate, go to :menuselection:`Accounting --> Configuration -->
|
||||
Currencies`, click on the currency you wish to change the rate of, and under the :guilabel:`Rates`
|
||||
tab, click :guilabel:`Add a line` to create a new rate.
|
||||
|
||||
.. image:: multi_currency/manual-rate-update.png
|
||||
:align: center
|
||||
:alt: Create or modify the currency rate.
|
||||
|
||||
Automatic update
|
||||
~~~~~~~~~~~~~~~~
|
||||
|
||||
When you activate a second currency for the first time, :guilabel:`Automatic Currency Rates` appears
|
||||
under :menuselection:`Accounting Dashboard --> Configuration --> Settings --> Currencies`. By
|
||||
default, you have to click on the **Update now** button (:guilabel:`🗘`) to update the rates.
|
||||
|
||||
Odoo can update the rates at regular intervals. To do so, change the :guilabel:`Interval` from
|
||||
:guilabel:`Manually` to :guilabel:`Daily`, :guilabel:`Weekly`, or :guilabel:`Monthly`. You can also
|
||||
select the web service from which you want to retrieve the latest currency rates by clicking on the
|
||||
:guilabel:`Service` field.
|
||||
|
||||
.. _multi-currency/config-exch-diff:
|
||||
|
||||
Exchange difference entries
|
||||
---------------------------
|
||||
|
||||
Odoo automatically records exchange differences entries on dedicated accounts, in a dedicated
|
||||
journal.
|
||||
|
||||
You can define which journal and accounts to use to **post exchange difference entries** by
|
||||
going to :menuselection:`Accounting --> Configuration --> Settings --> Default Accounts` and editing
|
||||
the :guilabel:`Journal`, :guilabel:`Gain Account`, and :guilabel:`Loss Account`.
|
||||
|
||||
.. example::
|
||||
If you receive a payment for a customer invoice one month after it was issued, the exchange rate
|
||||
has likely changed since. Therefore, this fluctuation implies some profit or loss due to the
|
||||
exchange difference, which Odoo automatically records in the default **Exchange Difference**
|
||||
journal.
|
||||
|
||||
.. _multi-currency/config-coa:
|
||||
|
||||
Chart of accounts
|
||||
-----------------
|
||||
|
||||
Each account can have a set currency. By doing so, all moves relevant to the account are forced to
|
||||
have that account's currency.
|
||||
|
||||
To do so, go to :menuselection:`Accounting --> Configuration --> Charts of Accounts` and select a
|
||||
currency in the field :guilabel:`Account Currency`. If left empty, all active currencies are handled
|
||||
instead of just one.
|
||||
|
||||
.. _multi-currency/config-journals:
|
||||
|
||||
Journals
|
||||
--------
|
||||
|
||||
If a currency is set on a **journal**, that journal only handles transactions in that currency.
|
||||
|
||||
To do so, go to :menuselection:`Accounting --> Configuration --> Journals`, open the journal you
|
||||
want to edit, and select a currency in the field :guilabel:`Currency`. If left empty, all active
|
||||
currencies are handled instead of just one.
|
||||
|
||||
.. image:: multi_currency/journal-currency.png
|
||||
:align: center
|
||||
:alt: Select the currency for the journal to handle.
|
||||
|
||||
.. _multi-currency/mca:
|
||||
|
||||
Multi-currency accounting
|
||||
=========================
|
||||
|
||||
.. _multi-currency/mca-documents:
|
||||
|
||||
Invoices, bills, and other documents
|
||||
------------------------------------
|
||||
|
||||
For all documents, you can select the currency and journal to use for the transaction.
|
||||
|
||||
.. image:: multi_currency/currency-field.png
|
||||
:align: center
|
||||
:alt: Select the currency and journal to use.
|
||||
|
||||
.. _multi-currency/mca-payment:
|
||||
|
||||
Payment registration
|
||||
--------------------
|
||||
|
||||
To register a payment in a currency other than your company's main currency, click on the
|
||||
:guilabel:`Register Payment` payment button of your document and, in the pop-up window, select a
|
||||
**currency** in the :guilabel:`Amount` field.
|
||||
|
||||
.. image:: multi_currency/register-payment.png
|
||||
:align: center
|
||||
:alt: Select the currency and journal to use before registering the payment.
|
||||
|
||||
.. _multi-currency/mca-statements:
|
||||
|
||||
Bank statements
|
||||
---------------
|
||||
|
||||
When creating or importing bank statements, the amount is in the company's main currency. To see
|
||||
additional fields related to foreign currencies, click on the **columns dropdown button**
|
||||
(:guilabel:`⋮`) next to :guilabel:`Amount`, and check :guilabel:`Amount Currency` and
|
||||
:guilabel:`Foreign Currency`.
|
||||
|
||||
.. image:: multi_currency/foreign-fields.png
|
||||
:align: center
|
||||
:alt: The extra fields related to foreign currencies.
|
||||
|
||||
When reconciling, Odoo displays both the foreign currency amount and the equivalent amount in your
|
||||
company's main currency.
|
||||
|
||||
.. _multi-currency/mca-exch-entries:
|
||||
|
||||
Exchange rate journal entries
|
||||
-----------------------------
|
||||
|
||||
To see **exchange difference journal entries**, go to :menuselection:`Accounting Dashboard -->
|
||||
Accounting --> Journals: Miscellaneous`.
|
||||
|
||||
.. image:: multi_currency/exchange-journal-currency.png
|
||||
:align: center
|
||||
:alt: Exchange rate journal entry.
|
||||
|
After Width: | Height: | Size: 4.2 KiB |
|
After Width: | Height: | Size: 3.9 KiB |
|
After Width: | Height: | Size: 19 KiB |
|
After Width: | Height: | Size: 3.1 KiB |
|
After Width: | Height: | Size: 12 KiB |
|
After Width: | Height: | Size: 10 KiB |
|
After Width: | Height: | Size: 6.6 KiB |
|
After Width: | Height: | Size: 13 KiB |
|
After Width: | Height: | Size: 7.2 KiB |
|
After Width: | Height: | Size: 57 KiB |
|
After Width: | Height: | Size: 31 KiB |
|
After Width: | Height: | Size: 20 KiB |
|
After Width: | Height: | Size: 32 KiB |
|
After Width: | Height: | Size: 71 KiB |