[IMP] bank rec: massive update for 18.3 UI
This PR includes updates for multiple pages:
- Reconciliation
- Reconciliation Models
- Transactions
- Internal Transfers
task-4771607
This commit updates the bank reconciliation page and other related
pages to align with the 18.3 changes.
closes odoo/documentation#14250
X-original-commit: 86048fb99d
Signed-off-by: Audrey Vandromme (auva) <auva@odoo.com>
Signed-off-by: Dallas Dean (dade) <dade@odoo.com>
@@ -30,7 +30,7 @@ Connect a bank for automatic synchronization
|
||||
--------------------------------------------
|
||||
|
||||
To connect your bank account to your database, go to :menuselection:`Accounting --> Configuration
|
||||
--> Add a Bank Account`, select your bank in the list, click on :guilabel:`Connect`, and follow the
|
||||
--> Add a Bank Account`, select your bank in the list, click :guilabel:`Connect`, and follow the
|
||||
instructions.
|
||||
|
||||
.. seealso::
|
||||
@@ -45,7 +45,7 @@ If your banking institution is not available in Odoo, or if you don't want to co
|
||||
account to your database, you can configure your bank account manually.
|
||||
|
||||
To manually add a bank account, go to :menuselection:`Accounting --> Configuration --> Add a Bank
|
||||
Account`, click on :guilabel:`Record transactions manually` (at the bottom right), fill out the bank
|
||||
Account`, click :guilabel:`Record transactions manually` (at the bottom right), fill out the bank
|
||||
information, and click :guilabel:`Create`.
|
||||
|
||||
.. note::
|
||||
@@ -59,7 +59,7 @@ Create a cash journal
|
||||
---------------------
|
||||
|
||||
To create a new cash journal, go to :menuselection:`Accounting --> Configuration --> Accounting:
|
||||
Journals`, click on :guilabel:`Create` and select :guilabel:`Cash` in the :guilabel:`Type` field.
|
||||
Journals`, click :guilabel:`Create` and select :guilabel:`Cash` in the :guilabel:`Type` field.
|
||||
|
||||
For more information on the accounting information fields, read the
|
||||
:ref:`accounting/bank/configuration` section of this page.
|
||||
@@ -125,8 +125,8 @@ You can edit the currency used to enter the transactions.
|
||||
Account number
|
||||
--------------
|
||||
|
||||
If you need to **edit your bank account details**, click on the external link arrow next to your
|
||||
:guilabel:`Account Number`. On the account page, click on the external link arrow next to your
|
||||
If you need to **edit your bank account details**, click the external link arrow next to your
|
||||
:guilabel:`Account Number`. On the account page, click the external link arrow next to your
|
||||
:guilabel:`Bank` and update your bank information accordingly. These details are used when
|
||||
registering payments.
|
||||
|
||||
|
||||
@@ -26,7 +26,7 @@ select the :guilabel:`Internal Transfers` :doc:`reconciliation model <reconcilia
|
||||
button. This reconciliation model button writes the transaction off to the :guilabel:`Internal
|
||||
Transfer` account.
|
||||
|
||||
.. tip::
|
||||
.. important::
|
||||
Remember to reconcile the transaction for both the outgoing transaction on the journal that sends
|
||||
the payment and the incoming transaction on the journal that receives the payment.
|
||||
|
||||
|
||||
@@ -2,18 +2,22 @@
|
||||
Bank reconciliation
|
||||
===================
|
||||
|
||||
**Bank reconciliation** is the process of matching your :doc:`bank transactions <transactions>` with
|
||||
your business records, such as :doc:`customer invoices <../customer_invoices>`, :doc:`vendor bills
|
||||
<../vendor_bills>`, and :doc:`payments <../payments>`. Not only is this compulsory for most
|
||||
businesses, but it also offers several benefits, such as reduced risk of errors in financial
|
||||
reports, detection of fraudulent activities, and improved cash flow management.
|
||||
**Bank reconciliation** is the process of validating :doc:`bank transactions <transactions>`. Many
|
||||
of these transactions are matched with counterpart items related to business records such as
|
||||
:doc:`customer invoices <../customer_invoices>`, :doc:`vendor bills <../vendor_bills>`, and
|
||||
:doc:`payments <../payments>`, while others that may not have a matching counterpart item (such as
|
||||
bank fees) can be written off :ref:`manually <accounting/reconciliation/set-account>` or with
|
||||
:ref:`reconciliation models <accounting/reconciliation/model>`. Not only is bank reconciliation
|
||||
compulsory for most businesses, but it also offers several benefits, such as reduced risk of errors
|
||||
in financial reports, detection of fraudulent activities, and improved cash flow management.
|
||||
|
||||
Thanks to the bank :doc:`reconciliation models <reconciliation_models>`, Odoo pre-selects the
|
||||
matching entries automatically.
|
||||
Thanks to the :ref:`default matching rules <accounting/reconciliation/reconcile>` and customizable
|
||||
bank :doc:`reconciliation models <reconciliation_models>`, Odoo selects the matching items
|
||||
automatically when possible.
|
||||
|
||||
.. seealso::
|
||||
- `Odoo Tutorials: Bank reconciliation
|
||||
<https://www.odoo.com/slides/slide/bank-reconciliation-2724>`_
|
||||
<https://www.odoo.com/slides/slide/bank-reconciliation-6562>`_
|
||||
- :doc:`bank_synchronization`
|
||||
- :doc:`transactions`
|
||||
|
||||
@@ -22,123 +26,273 @@ matching entries automatically.
|
||||
Bank reconciliation view
|
||||
========================
|
||||
|
||||
To access a bank journal's **reconciliation view**, go to your :guilabel:`Accounting Dashboard` and
|
||||
To access a journal's :guilabel:`Bank Matching` view, go to the :guilabel:`Accounting Dashboard` and
|
||||
either:
|
||||
|
||||
- click the journal name (e.g., :guilabel:`Bank`) to display all transactions, including those
|
||||
previously reconciled or
|
||||
- click the :guilabel:`Reconcile items` button to display all transactions Odoo pre-selected for
|
||||
reconciliation. You can remove the :guilabel:`Not Matched` filter from the search bar to include
|
||||
previously reconciled transactions.
|
||||
- click the journal name (e.g., :guilabel:`Bank`) or its :guilabel:`Transactions` button to display
|
||||
all transactions, including those previously reconciled, or
|
||||
- click the :guilabel:`x to reconcile` button to display only unreconciled transactions. To include
|
||||
previously reconciled transactions, remove the :guilabel:`Not Matched` filter from the search bar.
|
||||
|
||||
.. image:: reconciliation/bank-card.png
|
||||
:alt: Reaching the bank reconciliation tool from your accounting dashboard
|
||||
:alt: Reaching the bank reconciliation tool from the accounting dashboard
|
||||
|
||||
The bank reconciliation view is structured into three distinct sections: transactions, counterpart
|
||||
entries, and resulting entry.
|
||||
The :guilabel:`Bank Matching` view is composed of lines for each transaction of the journal with the
|
||||
newest displayed first. Each transaction has a date, a label, a partner (if set), :ref:`action
|
||||
buttons <accounting/reconciliation/action-buttons>`, and the transaction amount. Each line can be
|
||||
expanded to show additional information and buttons.
|
||||
|
||||
.. image:: reconciliation/user-interface.png
|
||||
:alt: The user interface of the reconciliation view of a bank journal.
|
||||
:alt: The user interface of the bank matching view of a bank journal.
|
||||
|
||||
.. note::
|
||||
Once a :doc:`transaction <transactions>` is reconciled, the suggested action button(s) is
|
||||
replaced with the counterpart entry/entries it was matched with or the account(s) it was written
|
||||
off to.
|
||||
|
||||
.. _accounting/reconciliation/transactions:
|
||||
|
||||
Transactions
|
||||
The transactions section on the left shows all bank transactions, with the newest displayed
|
||||
first. Click a transaction to select it.
|
||||
------------
|
||||
|
||||
Counterpart entries
|
||||
The counterpart entries section on the bottom right displays the options to match the selected
|
||||
bank transaction. Multiple tabs are available, including
|
||||
:ref:`reconciliation/existing-entries`, :ref:`reconciliation/batch-payments`,
|
||||
:ref:`reconciliation/manual-operations`, and :guilabel:`Discuss`, which contains the chatter for
|
||||
the selected bank transaction.
|
||||
Every :doc:`transaction <transactions>` is linked to a journal entry that debits/credits the
|
||||
journal's main account and its :ref:`suspense account <accounting/bank/suspense>` until it is fully
|
||||
reconciled. At that point, the suspense account is replaced with the account of the counterpart item
|
||||
or, in the case of :ref:`manual matching <accounting/reconciliation/set-account>`, the selected
|
||||
account.
|
||||
|
||||
Resulting entry
|
||||
The resulting entry section on the top right displays the selected bank transaction matched with
|
||||
the counterpart entries and includes any remaining debits or credits. In this section, you can
|
||||
validate the reconciliation or mark it as :guilabel:`To Check`. Any :ref:`reconciliation model
|
||||
buttons <reconciliation/button>` are also available in the resulting entry section.
|
||||
.. _accounting/reconciliation/action-buttons:
|
||||
|
||||
Possible action buttons
|
||||
~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Up to two suggested action buttons are available as primary buttons, but all available action
|
||||
buttons are displayed when the transaction is expanded. The following action buttons are available
|
||||
depending on the details of the transaction:
|
||||
|
||||
- :guilabel:`Set Partner`: Open a search view to add a partner to the transaction.
|
||||
- :guilabel:`Set Account`: Open a search view to manually select an account to write off the full
|
||||
amount of the transaction with this account. If necessary, :ref:`edit the line
|
||||
<accounting/reconciliation/edit>` to change the amount.
|
||||
- :guilabel:`Receivable`: Write off the transaction to the receivable account of the partner.
|
||||
- :guilabel:`Sales`: Open a list view of sales orders belonging to the transaction's
|
||||
:guilabel:`Partner` (or proceed directly to the form view if only one relevant sales order
|
||||
exists). Select the relevant sales order(s) and click :guilabel:`Create Invoices`, then return to
|
||||
the :guilabel:`Bank Matching` view and match the invoice(s) using the :guilabel:`Reconcile` action
|
||||
button.
|
||||
- :guilabel:`Payable`: Write off the transaction to the payable account of the partner.
|
||||
- :guilabel:`Reconcile`: Open a search view of existing items from records such as customer
|
||||
invoices, vendor bills, and payments. Select one or multiple items to add counterpart items with
|
||||
the corresponding accounts of those items.
|
||||
- :guilabel:`Batches`: Open a short list of :doc:`batch payments <../payments/batch>`. To view all
|
||||
batch payments, click :guilabel:`Search More ...`. Select a batch payment to add a counterpart
|
||||
item for each payment of the batch with the corresponding account of each payment.
|
||||
- :doc:`reconciliation_models`: Each manual reconciliation model that could apply to the transaction
|
||||
is displayed. Click the reconciliation model's action button to generate the counterpart items
|
||||
defined on the reconciliation model.
|
||||
|
||||
.. note::
|
||||
To remove the partner from a transaction, click the :icon:`fa-times` :guilabel:`(close)` icon
|
||||
next to the partner's name.
|
||||
|
||||
Click the :icon:`fa-chevron-down` :guilabel:`(chevron down)` button next to the possible action
|
||||
buttons of an expanded line to display any of the above action buttons that are hidden due to space
|
||||
limitations, as well as the following:
|
||||
|
||||
- :guilabel:`Upload bills`: Upload one or more bills to be :doc:`digitized
|
||||
<../vendor_bills/invoice_digitization>`. After digitization, the bills are available for matching
|
||||
via the :guilabel:`Reconcile` action button.
|
||||
- :guilabel:`Manage Models`: Open the list view of :doc:`reconciliation_models`.
|
||||
- :guilabel:`Open Journal Entry`: Open the journal entry of this transaction.
|
||||
- :guilabel:`Delete Transaction`: Delete this transaction.
|
||||
|
||||
.. note::
|
||||
Uploading bills from the :guilabel:`Bank Matching` view does not automatically reconcile them
|
||||
with the active transaction.
|
||||
|
||||
.. seealso::
|
||||
:doc:`../../../essentials/in_app_purchase`
|
||||
|
||||
.. _accounting/reconciliation/reconcile:
|
||||
|
||||
Reconcile transactions
|
||||
======================
|
||||
|
||||
Transactions can be matched automatically with the use of :doc:`reconciliation models
|
||||
<reconciliation_models>`, or they can be matched with :ref:`existing entries
|
||||
<reconciliation/existing-entries>`, :ref:`batch payments <reconciliation/batch-payments>`,
|
||||
:ref:`manual operations <reconciliation/manual-operations>`, and :ref:`reconciliation model buttons
|
||||
<reconciliation/button>`.
|
||||
When possible, Odoo automatically reconciles transactions based on their fields.
|
||||
|
||||
#. Select a transaction among unmatched bank transactions.
|
||||
If no partner is set on the transaction, the transaction's :guilabel:`Label` is compared with the
|
||||
:guilabel:`Number`, :guilabel:`Customer Reference`, :guilabel:`Bill Reference`, and
|
||||
:guilabel:`Payment Reference` of existing invoices, bills, and payments.
|
||||
|
||||
If a partner is set on the transaction, the transaction is instead matched with invoices, bills, and
|
||||
payments of the partner based on the :guilabel:`Amount`. The following rules are used in a
|
||||
sequential order to identify and apply a match:
|
||||
|
||||
- Exact match
|
||||
- Discounted match: for payment terms with discounts for early payments
|
||||
- Tolerance match: within 3% to account for merchant fees, rounding differences, and user errors
|
||||
- Currency match: when the transaction is in a different currency than the invoice, bill, or
|
||||
payment (with a 3% tolerance for exchange rate differences)
|
||||
- Amount in label: if the invoice :guilabel:`Amount` is found in the transaction's
|
||||
:guilabel:`Label`
|
||||
|
||||
In addition to using these fixed matching rules, transactions can be matched automatically with the
|
||||
use of :doc:`reconciliation models <reconciliation_models>`. Otherwise, reconcile transactions
|
||||
manually by following these steps:
|
||||
|
||||
#. Expand the desired line among unmatched bank transactions to display all available action
|
||||
buttons.
|
||||
#. Define the counterpart. There are several options for defining a counterpart, including
|
||||
:ref:`matching existing entries <reconciliation/existing-entries>`, :ref:`manual operations
|
||||
<reconciliation/manual-operations>`, :ref:`batch payments <reconciliation/batch-payments>`, and
|
||||
:ref:`reconciliation model buttons <reconciliation/button>`.
|
||||
#. If the resulting entry is not fully balanced, balance it by adding another existing counterpart
|
||||
entry or writing it off with a :ref:`manual operation <reconciliation/manual-operations>`.
|
||||
#. Click the :guilabel:`Validate` button to confirm the reconciliation and move to the next
|
||||
transaction.
|
||||
:ref:`matching existing items <accounting/reconciliation/existing-items>`, :ref:`manually setting
|
||||
the account <accounting/reconciliation/set-account>`, matching with :doc:`batch payments
|
||||
<../payments/batch>`, and using :ref:`reconciliation model buttons
|
||||
<accounting/reconciliation/model>`.
|
||||
#. If the resulting entry is not fully balanced, add another existing counterpart item or write it
|
||||
off by :ref:`setting the account <accounting/reconciliation/set-account>` of the remaining
|
||||
amount.
|
||||
|
||||
.. tip::
|
||||
If you are not sure how to reconcile a particular transaction and would like to deal with it
|
||||
later, use the :guilabel:`To Check` button instead. All transactions marked as :guilabel:`To
|
||||
Check` can be displayed using the :guilabel:`To Check` filter.
|
||||
.. _accounting/reconciliation/existing-items:
|
||||
|
||||
.. note::
|
||||
Bank transactions are posted on the **journal's suspense account** until reconciliation. At this
|
||||
point, reconciliation modifies the transaction journal entry by replacing the bank suspense
|
||||
account with the corresponding receivable, payable, or outstanding account.
|
||||
|
||||
.. _reconciliation/existing-entries:
|
||||
|
||||
Match existing entries
|
||||
----------------------
|
||||
|
||||
This tab contains matching entries Odoo automatically pre-selects according to the reconciliation
|
||||
models. The entry order is based on :doc:`reconciliation models <reconciliation_models>`, with
|
||||
suggested entries appearing first.
|
||||
|
||||
.. tip::
|
||||
The search bar within the :guilabel:`Match Existing Entries` tab allows you to search for
|
||||
specific journal items.
|
||||
|
||||
.. _reconciliation/batch-payments:
|
||||
|
||||
Batch payments
|
||||
Existing items
|
||||
--------------
|
||||
|
||||
:doc:`Batch payments <../payments/batch>` allow you to group different payments to ease
|
||||
reconciliation. Use the :guilabel:`Batch Payments` tab to find batch payments for customers and
|
||||
vendors. Similarly to the :guilabel:`Match Existing Entries` tab, the :guilabel:`Batch Payments` tab
|
||||
has a search bar that allows you to search for specific batch payments.
|
||||
|
||||
.. _reconciliation/manual-operations:
|
||||
|
||||
Manual operations
|
||||
-----------------
|
||||
|
||||
If there is not an existing entry to match the selected transaction, you may instead wish to
|
||||
reconcile the transaction manually by choosing the correct account and amount. Then, complete any
|
||||
of the relevant optional fields.
|
||||
|
||||
.. tip::
|
||||
You can use the :guilabel:`fully paid` option to reconcile a payment, even in cases where only a
|
||||
partial payment is received. A new line appears in the resulting entry section to reflect the
|
||||
open balance registered on the Account Receivable by default. You can choose another
|
||||
account by clicking on the new line in the resulting entry section and selecting the
|
||||
:guilabel:`Account` to record the open balance.
|
||||
To reconcile transactions with existing items related to records such as customer invoices, vendor
|
||||
bills, and payments, click the :guilabel:`Reconcile` action button, select the matching journal
|
||||
item(s) in the list, and click :guilabel:`Select`.
|
||||
|
||||
.. note::
|
||||
Lines are silently reconciled unless a write-off entry is required, which launches a
|
||||
reconciliation wizard.
|
||||
If the :guilabel:`Partner` is set, this list is automatically filtered to only include items
|
||||
related to that partner.
|
||||
|
||||
.. image:: reconciliation/fully-paid.png
|
||||
:alt: Click on fully paid to manually set an invoice as entirely paid.
|
||||
.. tip::
|
||||
Use the search bar within the :guilabel:`Search: Journal Items to Match` window to search for
|
||||
specific journal items.
|
||||
|
||||
.. _reconciliation/button:
|
||||
If a transaction amount is lower than the invoice or bill it is reconciled with, the transaction is
|
||||
fully reconciled, but the difference remains open on the counterpart item. The remaining amount can
|
||||
be left open to be reconciled later or the invoice or bill can be marked as fully paid. To mark the
|
||||
invoice or bill as fully paid, :ref:`edit <accounting/reconciliation/edit>` the line, click
|
||||
:guilabel:`fully paid`, and :guilabel:`Save`. To reverse this, :ref:`edit
|
||||
<accounting/reconciliation/edit>` the line again, click :guilabel:`partial payment`, and
|
||||
:guilabel:`Save`.
|
||||
|
||||
Reconciliation model buttons
|
||||
----------------------------
|
||||
If a transaction amount is greater than the invoice or bill it is reconciled with, the transaction
|
||||
is only partially reconciled. The remaining balance can be reconciled as any other transaction
|
||||
amount.
|
||||
|
||||
Use a :doc:`reconciliation model <reconciliation_models>` button for manual operations that are
|
||||
frequently used. These custom buttons allow you to quickly reconcile bank transactions manually and
|
||||
can also be used in combination with existing entries.
|
||||
.. note::
|
||||
Existing items of draft entries can be matched. Eventual automatic moves (like currency exchange
|
||||
or cash basis moves) are created in draft simultaneously with the reconciliation. Posting the
|
||||
original entry also posts the automatic move.
|
||||
|
||||
.. _accounting/reconciliation/set-account:
|
||||
|
||||
Set account
|
||||
-----------
|
||||
|
||||
If no existing item matches the selected transaction, you can still write off the transaction
|
||||
manually: Click :guilabel:`Set Account`, then choose the appropriate account. To write off only part
|
||||
of the transaction, :ref:`edit the line <accounting/reconciliation/edit>` to reflect the correct
|
||||
value and reconcile the remaining amount as desired.
|
||||
|
||||
.. tip::
|
||||
If the partner is set, write the amount off to their receivable or payable account directly by
|
||||
clicking the :guilabel:`Receivable` or :guilabel:`Payable` :ref:`action button
|
||||
<accounting/reconciliation/action-buttons>`.
|
||||
|
||||
.. _accounting/reconciliation/model:
|
||||
|
||||
Reconciliation models
|
||||
---------------------
|
||||
|
||||
Use :doc:`reconciliation models <reconciliation_models>` to create custom rules that can be applied
|
||||
automatically or manually via custom buttons for operations that are frequently repeated. These
|
||||
custom buttons allow you to quickly reconcile bank transactions manually and can also be combined
|
||||
with other reconciliation models and with counterpart items when reconciling transactions.
|
||||
|
||||
.. example::
|
||||
An outgoing bank transaction for $103 is partially matched with a vendor bill for $100, leaving
|
||||
$3 of the transaction still unreconciled. Use the :guilabel:`Bank Fees` reconciliation model to
|
||||
create a new counterpart item for $3 and reconcile it with the remaining $3 of the bank
|
||||
transaction.
|
||||
|
||||
.. _accounting/reconciliation/edit:
|
||||
|
||||
Edit lines and unreconcile transactions
|
||||
=======================================
|
||||
|
||||
To edit a counterpart item, expand the line, click the :icon:`fa-pencil` :guilabel:`(pencil)` icon,
|
||||
and edit the necessary fields in :guilabel:`Edit Line` window.
|
||||
|
||||
.. note::
|
||||
When the counterpart item is an existing journal item, some fields are read-only.
|
||||
|
||||
If a transaction is partially matched with a counterpart item, use the link to mark the invoice as
|
||||
:guilabel:`fully paid` or to switch back to a :guilabel:`partial payment`.
|
||||
|
||||
To unreconcile a transaction, delete all counterpart items associated with the transaction by
|
||||
clicking on the :icon:`fa-trash` :guilabel:`(trash)` icon.
|
||||
|
||||
.. _accounting/reconciliation/netting:
|
||||
|
||||
Netting
|
||||
=======
|
||||
|
||||
Netting (also known as AP/AR offsetting) is the process of balancing incoming debts from and
|
||||
outgoing debts to the same partner. Reconciling the incoming and outgoing debts creates a new
|
||||
journal entry that balances the debts. Two main scenarios exist:
|
||||
|
||||
- :ref:`A bank transaction balances <accounting/reconciliation/net-transaction>` (either fully or
|
||||
partially) the incoming and outgoing debts.
|
||||
- :ref:`No bank transaction balances <accounting/reconciliation/net-no-transaction>` the incoming
|
||||
and outgoing debts. This situation can occur either when the debts balance each other completely
|
||||
or when the debts remain unbalanced.
|
||||
|
||||
.. _accounting/reconciliation/net-transaction:
|
||||
|
||||
Netting with bank transactions
|
||||
------------------------------
|
||||
|
||||
When a bank transaction balances (either fully or partially) the incoming and outgoing debts,
|
||||
reconcile the bank transaction from the :guilabel:`Bank Matching` view like any other :ref:`existing
|
||||
items <accounting/reconciliation/existing-items>`:
|
||||
|
||||
#. Click :guilabel:`Reconcile` on the transaction.
|
||||
#. Select all the relevant counterpart items on both the payable and receivable side.
|
||||
#. Click :guilabel:`Select`.
|
||||
#. If a balance remains, depending on the details, the following situations are possible:
|
||||
|
||||
- An invoice, bill, or other item is not fully reconciled, and the remaining balance can be
|
||||
:ref:`reconciled <accounting/reconciliation/reconcile>` with other bank transactions.
|
||||
- The bank transaction itself is not fully reconciled, and the remaining balance can be
|
||||
:ref:`reconciled <accounting/reconciliation/reconcile>` as in any other situation.
|
||||
|
||||
.. _accounting/reconciliation/net-no-transaction:
|
||||
|
||||
Netting without bank transactions
|
||||
---------------------------------
|
||||
|
||||
When no bank transaction balances the incoming and outgoing debts, there is nothing to reconcile
|
||||
from the :guilabel:`Bank Matching` view. However, the debt amount is visible in both the account
|
||||
receivable and the account payable. To balance these debts so that they no longer appear on the
|
||||
partner ledger, follow these steps:
|
||||
|
||||
#. Go to :menuselection:`Accounting --> Accounting --> Reconcile`.
|
||||
#. Select the journal items that debit or credit the account receivable and account payable and
|
||||
represent the debts to be netted.
|
||||
#. Click :guilabel:`Reconcile`.
|
||||
#. If the debts don't balance each other perfectly, a :guilabel:`Write-Off Entry` popup window
|
||||
appears, allowing you to decide how to resolve the remaining balance:
|
||||
|
||||
- Select :guilabel:`Allow partials` to only partially reconcile the account receivable and
|
||||
account payable and leave the remaining balance open.
|
||||
- Use a :doc:`reconciliation model button <reconciliation_models>` to write off the balance.
|
||||
- Manually choose an :guilabel:`Account`, and optionally adjust the :guilabel:`Tax`,
|
||||
:guilabel:`Journal`, :guilabel:`Label`, :guilabel:`Date`, and :guilabel:`To Check` fields.
|
||||
|
||||
The items are then matched, and their balance is removed from the partner ledger, representing that
|
||||
no payment is due for these debts.
|
||||
|
||||
.. note::
|
||||
The workflow is the same whether there are only two equal debts in the receivable and payable
|
||||
accounts or multiple debts in each account.
|
||||
|
||||
|
Before Width: | Height: | Size: 7.6 KiB After Width: | Height: | Size: 6.9 KiB |
|
Before Width: | Height: | Size: 17 KiB |
|
Before Width: | Height: | Size: 67 KiB After Width: | Height: | Size: 44 KiB |
@@ -2,111 +2,158 @@
|
||||
Reconciliation models
|
||||
=====================
|
||||
|
||||
Reconciliation models are used to automate the :doc:`bank reconciliation <reconciliation>` process,
|
||||
which is especially handy when dealing with recurring entries like bank fees. Reconciliation models
|
||||
can also be helpful in handling :doc:`cash discounts <../customer_invoices/cash_discounts>`.
|
||||
|
||||
Each model is created based on a :ref:`model type <models/type>` and :guilabel:`bank transaction
|
||||
conditions`.
|
||||
Reconciliation models are custom rules that complement the :ref:`default set of matching rules
|
||||
<accounting/reconciliation/reconcile>` and enable more advanced automation of the :doc:`bank
|
||||
reconciliation <reconciliation>` process. These models are especially useful when dealing with
|
||||
recurring flows like writing off bank fees or :doc:`cash discounts
|
||||
<../customer_invoices/cash_discounts>`.
|
||||
|
||||
.. seealso::
|
||||
- :doc:`bank_synchronization`
|
||||
- `Odoo Tutorials: Reconciliation models <https://www.odoo.com/slides/slide/reconciliation-models-6858>`_
|
||||
`Odoo Tutorials: Reconciliation models <https://www.odoo.com/slides/slide/reconciliation-models-6858>`_
|
||||
|
||||
.. _models/type:
|
||||
.. _accounting/rec-models/config:
|
||||
|
||||
Reconciliation model types
|
||||
==========================
|
||||
Configuration
|
||||
=============
|
||||
|
||||
To access reconciliation models, go to the :guilabel:`Accounting Dashboard`, click on the
|
||||
:icon:`fa-ellipsis-v` :guilabel:`(vertical ellipsis)` menu on the bank journal and select
|
||||
:guilabel:`Models` under the :guilabel:`Reconciliation` section. For each reconciliation model, a
|
||||
:guilabel:`Type` must be set. Three types of models exist:
|
||||
To access reconciliation models, go to the :guilabel:`Accounting Dashboard`, click the
|
||||
:icon:`fa-ellipsis-v` :guilabel:`(dropdown menu)` menu on the bank journal, and select
|
||||
:guilabel:`Models` under the :guilabel:`Reconciliation` section.
|
||||
|
||||
- :guilabel:`Button to generate counterpart entry`: a button is created in the resulting entry
|
||||
section of the bank reconciliation view. If clicked, this button generates a counterpart entry to
|
||||
reconcile with the active transaction based on the rules set in the model. The rules specified in
|
||||
the model determine the counterpart entry's account(s), amount(s), label(s), and analytic
|
||||
distribution;
|
||||
- :guilabel:`Rule to suggest counterpart entry`: used for recurring transactions to match the
|
||||
transaction to a new entry based on conditions that must match the information on the transaction;
|
||||
- :guilabel:`Rule to match invoices/bills`: used for recurring transactions to match the transaction
|
||||
to existing invoices, bills, or payments based on conditions that must match the information on
|
||||
the transaction.
|
||||
To create a new reconciliation model, click :guilabel:`New`.
|
||||
|
||||
Default reconciliation models
|
||||
=============================
|
||||
Reconciliation models can be either :guilabel:`Manual` or :guilabel:`Automated`. Manual
|
||||
reconciliation models appear as :ref:`possible action buttons
|
||||
<accounting/reconciliation/action-buttons>` when :doc:`reconciling <reconciliation>`. Automatic
|
||||
reconciliation models apply automatically to transactions that meet the reconciliation model's
|
||||
:ref:`matching conditions <accounting/rec-models/conditions>`.
|
||||
|
||||
In Odoo, different models are available by default depending on the company's fiscal localization.
|
||||
These can be updated if needed. Users can also create their own reconciliation models by clicking
|
||||
:guilabel:`New`.
|
||||
Each reconciliation model is configured with :ref:`matching conditions
|
||||
<accounting/rec-models/conditions>` to identify the relevant bank transactions and :ref:`Counterpart
|
||||
Items <accounting/rec-models/counterpart>` to be generated during reconciliation.
|
||||
|
||||
.. tip::
|
||||
To create an activity on the transaction, select which type of activity to create in the
|
||||
:guilabel:`Next Activity` field.
|
||||
|
||||
.. important::
|
||||
If a record matches with several reconciliation models, the first one in the *sequence* of models
|
||||
is applied. You can rearrange the order by dragging and dropping the handle next to the name.
|
||||
is applied. Rearrange the order by dragging and dropping the handle next to the name.
|
||||
|
||||
.. image:: reconciliation_models/list-view.png
|
||||
:alt: Rearrange the sequence of models in the list view.
|
||||
|
||||
Invoices/Bills perfect match
|
||||
----------------------------
|
||||
.. _accounting/rec-models/conditions:
|
||||
|
||||
This model should be at the top of the *sequence* of models, as it enables Odoo to suggest matching
|
||||
existing invoices or bills with a bank transaction based on set conditions.
|
||||
Matching conditions
|
||||
-------------------
|
||||
|
||||
.. image:: reconciliation_models/invoices-bills-perfect-match.png
|
||||
:alt: Set rules to trigger the reconciliation.
|
||||
A reconciliation model's matching conditions determine to which transactions it applies.
|
||||
|
||||
Odoo automatically reconciles the payment when the :guilabel:`Auto-validate` option is selected, and
|
||||
the model conditions are perfectly met. In this case, it expects to find on the bank statement's
|
||||
line the invoice/payment's reference (as :guilabel:`Label` is selected) and the partner's name
|
||||
(as :guilabel:`Partner is set` is selected) to suggest the correct counterpart entry and reconcile
|
||||
the payment automatically.
|
||||
The following fields can be used to restrict the reconciliation model's availability to transactions
|
||||
that meet the conditions:
|
||||
|
||||
Invoices/Bills partial match if underpaid
|
||||
-----------------------------------------
|
||||
- :guilabel:`Journals`
|
||||
- :guilabel:`Partners`
|
||||
- :guilabel:`Amount`: Select :guilabel:`Is lower than or equal to`, :guilabel:`Is greater than or
|
||||
equal to`, or :guilabel:`Is between` and enter the amount(s).
|
||||
- :guilabel:`Label`: Select :guilabel:`Contains`, :guilabel:`Not Contains`, or :guilabel:`Match
|
||||
Regex` and enter the transaction label's matching condition.
|
||||
|
||||
This model suggests a customer invoice or vendor bill that partially matches the payment when the
|
||||
amount received is slightly lower than the invoice amount, for example in the case of
|
||||
**cash discounts**. The difference is reconciled with the account indicated in the
|
||||
:guilabel:`counterpart entries` tab.
|
||||
.. tip::
|
||||
`Regular expressions <https://regexone.com/>`_, often abbreviated as **regex**, can be used in
|
||||
Odoo in various ways to search, validate, and manipulate data. Regex can be powerful but also
|
||||
complex, so it's essential to use it judiciously.
|
||||
|
||||
The reconciliation model :guilabel:`Type` is :guilabel:`Rule to match invoices/bills`, and the
|
||||
:guilabel:`Payment tolerance` should be set.
|
||||
|
||||
.. image:: reconciliation_models/partial-match.png
|
||||
:alt: Set rules to trigger the reconciliation.
|
||||
To use regular expressions in a reconciliation model, set the :guilabel:`Label` to
|
||||
:guilabel:`Match Regex` and add an expression. Odoo automatically retrieves the transactions
|
||||
that match the regex expression and the conditions specified in the reconciliation model.
|
||||
|
||||
.. note::
|
||||
The :guilabel:`Payment tolerance` is only applicable to lower payments. It is disregarded when an
|
||||
overpayment is received.
|
||||
A transaction must meet all conditions for the reconciliation model to be available for it. If no
|
||||
condition is defined (i.e., if all fields are left blank), the reconciliation model will be
|
||||
available for all transactions.
|
||||
|
||||
.. _accounting/rec-models/counterpart:
|
||||
|
||||
Counterpart items
|
||||
-----------------
|
||||
|
||||
Each line in the :guilabel:`Counterpart items` tab creates a journal item with the specified
|
||||
details:
|
||||
|
||||
- :guilabel:`Partner`: Select the partner, if any, to set on the journal item.
|
||||
- :guilabel:`Account`: Select the account, if any, to set on the journal item.
|
||||
- :guilabel:`Amount Type`: Select how the amount of the journal item should be calculated:
|
||||
|
||||
- :guilabel:`Fixed`: Use a fixed amount.
|
||||
- :guilabel:`Percentage of balance`: Use a percentage of the remaining balance of the
|
||||
transaction, regardless of the transaction total.
|
||||
- :guilabel:`Percentage of statement line`: Use a percentage of the transaction total, regardless
|
||||
of the remaining balance of the transaction.
|
||||
- :guilabel:`From label`: Use a percentage from the transaction's label using regex.
|
||||
|
||||
- :guilabel:`Amount`: Enter the amount to be used on the journal item. This field will be either a
|
||||
fixed amount, percentage amount, or regex depending on the :guilabel:`Account Type`.
|
||||
- :guilabel:`Taxes`: Select a tax, if any, to set on the journal item. This field is hidden behind
|
||||
the :icon:`oi-settings-adjust` :guilabel:`(settings adjust)` icon by default.
|
||||
- :guilabel:`Analytic`: Select an analytic distribution, if any, to set on the journal item.
|
||||
- :guilabel:`Label`: Enter a label, if any, to set on the journal item.
|
||||
|
||||
.. note::
|
||||
- While neither the :guilabel:`Partner` nor :guilabel:`Account` fields are mandatory, at least
|
||||
one of the two must be set for the reconciliation model to work correctly.
|
||||
- The reconciliation model can be used for :ref:`partner mapping <accounting/rec-models/partner>`
|
||||
if the :guilabel:`Counterpart Items` include a :guilabel:`Partner` but no :guilabel:`Account`.
|
||||
|
||||
.. _accounting/rec-models/defaults:
|
||||
|
||||
Default reconciliation models
|
||||
=============================
|
||||
|
||||
In Odoo, different models are available by default depending on the company's :doc:`fiscal
|
||||
localization <../../fiscal_localizations>`. These can be updated if needed. The following
|
||||
reconciliation models exist across most fiscal localizations.
|
||||
|
||||
Internal Transfers
|
||||
------------------
|
||||
|
||||
The :guilabel:`Internal Transfers` reconciliation model is used for making :doc:`internal transfers
|
||||
<internal_transfers>` from one bank or cash account to another by moving the entire transaction's
|
||||
balance to a liquidity or internal transfer account. To fully transfer the amount from one account
|
||||
to another, this reconciliation model must be used on both the incoming journal's transaction and
|
||||
the outgoing journal's transaction.
|
||||
|
||||
.. seealso::
|
||||
:doc:`internal_transfers`
|
||||
|
||||
Bank Fees
|
||||
---------
|
||||
|
||||
The :guilabel:`Bank Fees` reconciliation model generates a counterpart item that moves the remaining
|
||||
balance of a transaction to a bank fees account (that varies by :doc:`fiscal localization
|
||||
<../../fiscal_localizations>`) and includes "Bank Fees" in the :guilabel:`Label` of the new item
|
||||
that it creates. This reconciliation model is only applicable to transactions whose label contains
|
||||
"Bank Fees" due to its :ref:`matching conditions <accounting/rec-models/conditions>`.
|
||||
|
||||
.. example::
|
||||
An outgoing bank transaction for $103 is partially matched with a vendor bill for $100, leaving
|
||||
$3 of the transaction still unreconciled. Use the :guilabel:`Bank Fees` reconciliation model to
|
||||
create a new counterpart item for $3 and reconcile it with the remaining $3 of the bank
|
||||
transaction.
|
||||
|
||||
Cash Discount
|
||||
-------------
|
||||
|
||||
The :guilabel:`Cash Discount` reconciliation model generates a counterpart item that moves the
|
||||
remaining balance of a transaction to a cash discount account (that varies by :doc:`fiscal
|
||||
localization <../../fiscal_localizations>`) and includes "Cash Discount" in the :guilabel:`Label` of
|
||||
the new item that it creates.
|
||||
|
||||
.. seealso::
|
||||
:doc:`../customer_invoices/cash_discounts`
|
||||
|
||||
Line with bank fees
|
||||
-------------------
|
||||
|
||||
This model suggests a counterpart entry according to the rules set in the model. In this case, the
|
||||
reconciliation model :guilabel:`Type` is :guilabel:`Rule to suggest counterpart entry`, and the
|
||||
:guilabel:`Label` can be used for example, to identify the information referring to the
|
||||
:guilabel:`Bank fees` in the label of the transaction.
|
||||
|
||||
.. image:: reconciliation_models/bank-fees.png
|
||||
:alt: Set rules to trigger the reconciliation.
|
||||
|
||||
.. note::
|
||||
`Regular expressions <https://regexone.com/>`_, often abbreviated as **Regex**, can be used in
|
||||
Odoo in various ways to search, validate, and manipulate data within the system. Regex can be
|
||||
powerful but also complex, so it's essential to use it judiciously and with a good understanding
|
||||
of the patterns you're working with.
|
||||
|
||||
To use regular expressions in your reconciliation models, set the :guilabel:`Transaction Type`
|
||||
to :guilabel:`Match Regex` and add your expression. Odoo automatically retrieves the
|
||||
transactions that match your Regex expression and the conditions specified in your model.
|
||||
|
||||
.. image:: reconciliation_models/regex.png
|
||||
:alt: Using Regex in Odoo
|
||||
.. _accounting/rec-models/partner:
|
||||
|
||||
Partner mapping
|
||||
===============
|
||||
@@ -117,8 +164,8 @@ reconciliation. For example, you can create a partner mapping rule for incoming
|
||||
specific reference numbers or keywords in the transaction description. When an incoming payment
|
||||
meets these criteria, Odoo automatically maps it to the corresponding customer's account.
|
||||
|
||||
To create a partner mapping rule, go to the :guilabel:`Partner Mapping` tab and enter the
|
||||
:guilabel:`Find Text in Label`, :guilabel:`Find Text in Notes`, and :guilabel:`Partner`.
|
||||
|
||||
.. image:: reconciliation_models/partner-mapping.png
|
||||
:alt: defining partner mapping
|
||||
To create a partner mapping rule, configure any :ref:`matching conditions
|
||||
<accounting/rec-models/conditions>`, such as a specific transaction label, and then configure the
|
||||
:guilabel:`Partner` and any other relevant fields in the :ref:`Counterpart Items
|
||||
<accounting/rec-models/counterpart>` tab. Setting an :guilabel:`Account` is not mandatory for
|
||||
partner mapping.
|
||||
|
||||
|
Before Width: | Height: | Size: 19 KiB |
|
Before Width: | Height: | Size: 19 KiB |
|
Before Width: | Height: | Size: 5.6 KiB After Width: | Height: | Size: 5.1 KiB |
|
Before Width: | Height: | Size: 26 KiB |
|
Before Width: | Height: | Size: 7.1 KiB |
|
Before Width: | Height: | Size: 2.9 KiB |
@@ -8,13 +8,76 @@ and reconciling them with the ones recorded in your accounting.
|
||||
:doc:`Bank synchronization <bank_synchronization>` automates the process. However, if you do not
|
||||
want to use it or if your bank is not yet supported, other options exist:
|
||||
|
||||
- :ref:`Import bank transactions <transactions/import>` delivered by your bank;
|
||||
- :ref:`Register bank transactions <transactions/register>` manually.
|
||||
- :ref:`Import bank transactions <accounting/transactions/import>` delivered by your bank;
|
||||
- :ref:`Register bank transactions <accounting/transactions/register>` manually.
|
||||
|
||||
.. note::
|
||||
:ref:`Grouping transactions by statement <transactions/statements>` is optional.
|
||||
:ref:`Grouping transactions by statement <accounting/transactions/statements>` is optional.
|
||||
|
||||
.. _transactions/import:
|
||||
.. _accounting/transactions/view:
|
||||
|
||||
Transaction view
|
||||
================
|
||||
|
||||
The list of transactions for the bank journal is displayed in the :guilabel:`Bank Matching` view. To
|
||||
access it, go to the :guilabel:`Accounting Dashboard`, then either:
|
||||
|
||||
- click the journal name (e.g., :guilabel:`Bank`) or its :guilabel:`Transactions` button to display
|
||||
all transactions, including those previously reconciled, or
|
||||
- click the :guilabel:`x to reconcile` button to display only unreconciled transactions. To include
|
||||
previously reconciled transactions, remove the :guilabel:`Not Matched` filter from the search bar.
|
||||
|
||||
Unreconciled transactions display the following information while collapsed:
|
||||
|
||||
- The date of the transaction
|
||||
- A button linked to the chatter. The icon of this button can vary:
|
||||
|
||||
- The :icon:`fa-comments-o` :guilabel:`(comments)` icon displays only on hover and indicates that
|
||||
there are no attachments or activities for the transaction.
|
||||
- The :icon:`fa-paperclip` :guilabel:`(attachments)` icon indicates that there is an attachment on
|
||||
the journal entry.
|
||||
- The :icon:`fa-clock-o` :guilabel:`(activities)` icon indicates that there is an activity
|
||||
scheduled on the journal entry.
|
||||
|
||||
- The label of the transaction
|
||||
- The partner of the transaction (if one is set)
|
||||
- Up to two :ref:`action buttons <accounting/reconciliation/action-buttons>`, depending on the
|
||||
details of the transaction
|
||||
- The balance of the transaction
|
||||
|
||||
.. note::
|
||||
- When the chatter of a transaction is open, a blue tag highlights the related transaction.
|
||||
- The chatter can be opened and closed by clicking the :icon:`fa-comments-o`
|
||||
:guilabel:`(comments)` icon and the :icon:`fa-times` :guilabel:`(close)` icon in the top right
|
||||
of the view.
|
||||
- Once a transaction is :doc:`reconciled <reconciliation>`, its action buttons are replaced with
|
||||
the labels of the item(s) it was reconciled with or the account if it was reconciled with the
|
||||
:guilabel:`Set Account` action button.
|
||||
|
||||
.. _accounting/transactions/duplicate:
|
||||
|
||||
Duplicate transactions
|
||||
======================
|
||||
|
||||
Duplicate transactions occur when either by human error or :doc:`bank sync <bank_synchronization>`
|
||||
error, the same transaction is created multiple times. The duplicate transaction view identifies
|
||||
potential duplicate transactions so they can be selected and deleted. To access the duplicate
|
||||
transaction view, first access the :guilabel:`Bank Matching` view by going to the
|
||||
:guilabel:`Accounting Dashboard` and clicking the bank journal's name, then open the :icon:`fa-cog`
|
||||
:guilabel:`Actions` menu and click :guilabel:`Find Duplicate Transactions`.
|
||||
|
||||
Potential duplicate transactions are identified based on their amount, date, and account number, or
|
||||
(if the transaction is created via :doc:`bank sync <bank_synchronization>`) the transaction ID.
|
||||
|
||||
Select a :guilabel:`Starting Date` to view the corresponding potential duplicate transactions, then
|
||||
select the transactions to delete and click :icon:`fa-trash` :guilabel:`Delete Selected`.
|
||||
|
||||
.. note::
|
||||
Any transactions created by :doc:`bank sync <bank_synchronization>` that the bank sync provider
|
||||
determines to be potential duplicates are displayed in the :guilabel:`Provider Duplicates` tab.
|
||||
This tab is only visible if there are any potential duplicates according to the provider.
|
||||
|
||||
.. _accounting/transactions/import:
|
||||
|
||||
Import transactions
|
||||
===================
|
||||
@@ -23,40 +86,39 @@ Odoo supports multiple file formats to import transactions:
|
||||
|
||||
- SEPA recommended Cash Management format (CAMT.053)
|
||||
- Comma-separated values (CSV)
|
||||
- Excel (XLSX)
|
||||
- Open Financial Exchange (OFX)
|
||||
- Quicken Interchange Format (QIF)
|
||||
- Belgium: Coded Statement of Account (CODA)
|
||||
|
||||
To import a file, go to the :guilabel:`Accounting Dashboard`, and in the :guilabel:`Bank` journal,
|
||||
click on :guilabel:`Import File`.
|
||||
|
||||
.. tip::
|
||||
Alternatively, you can also:
|
||||
|
||||
- click the :icon:`fa-ellipsis-v` :guilabel:`(ellipsis)` icon on the :guilabel:`Bank`
|
||||
journal and select :guilabel:`Import file`;
|
||||
- or access the transaction list by clicking the :icon:`fa-ellipsis-v` :guilabel:`(ellipsis)`
|
||||
icon on the :guilabel:`Bank` journal and selecting :guilabel:`Transactions`, then click
|
||||
the :icon:`fa-cog` :guilabel:`(gear)` icon and select :guilabel:`Import records`.
|
||||
|
||||
To import a file, go to the :guilabel:`Accounting Dashboard`, click the :icon:`fa-ellipsis-v`
|
||||
:guilabel:`(ellipsis)` icon on the :guilabel:`Bank` journal, and select :guilabel:`Import file`.
|
||||
Next, select the file and upload it.
|
||||
|
||||
After setting the necessary formatting options and mapping the file columns with their related Odoo
|
||||
fields, you can run a :guilabel:`Test` and :guilabel:`Import` your bank transactions.
|
||||
.. tip::
|
||||
Alternatively, access the transaction list by:
|
||||
- clicking on the :guilabel:`Bank` journal's name, then clicking :guilabel:`Upload`
|
||||
- dragging and dropping a file on the bank journal on the :guilabel:`Accounting Dashboard`
|
||||
- dragging and dropping a file on the :guilabel:`Bank Matching` view
|
||||
|
||||
Certain file types such as CSV and XLSX, then require setting the necessary formatting options and
|
||||
mapping the file columns with their related Odoo fields, after which you can run a :guilabel:`Test`
|
||||
and :guilabel:`Import` your bank transactions. Other file types are mapped automatically.
|
||||
|
||||
.. seealso::
|
||||
:doc:`/applications/essentials/export_import_data`
|
||||
|
||||
.. _transactions/register:
|
||||
.. _accounting/transactions/register:
|
||||
|
||||
Register bank transactions manually
|
||||
===================================
|
||||
|
||||
You can also record your bank transactions manually. To do so, go to :guilabel:`Accounting
|
||||
Dashboard`, click on the :guilabel:`Bank` journal, and then on :guilabel:`New`. Make sure to fill
|
||||
out the :guilabel:`Partner` and :guilabel:`Label` fields to ease the reconciliation process.
|
||||
You can also record your bank transactions manually. To do so, go to the :guilabel:`Accounting
|
||||
Dashboard`, click the :guilabel:`Bank` journal's name, and then on :guilabel:`New`. The
|
||||
:guilabel:`Partner` field is optional to ease the reconciliation process, but the :guilabel:`Label`
|
||||
and :guilabel:`Date` fields are mandatory.
|
||||
|
||||
.. _transactions/statements:
|
||||
.. _accounting/transactions/statements:
|
||||
|
||||
Statements
|
||||
==========
|
||||
@@ -65,74 +127,71 @@ A **bank statement** is a document provided by a bank or financial institution t
|
||||
transactions that have occurred in a particular bank account over a specified period of time.
|
||||
|
||||
In Odoo Accounting, it is optional to group transactions by their related statement, but depending
|
||||
on your business flow, you may want to record them for control purposes.
|
||||
on your business flow, you may want to record them for record-keeping and organizational purposes.
|
||||
|
||||
To access a list of existing statements, go to the :guilabel:`Accounting Dashboard`, click the
|
||||
:icon:`fa-ellipsis-v` :guilabel:`(dropdown menu)` icon next to the bank or cash journal you want to
|
||||
check, then click :guilabel:`Statements`.
|
||||
|
||||
.. important::
|
||||
If you want to compare the ending balances of your bank statements with the ending balances of
|
||||
your financial records, *don't forget to create an opening transaction* to record the bank
|
||||
To ensure the ending balances of your bank statements in Odoo align with the ending balances of
|
||||
the statements that are provided by your bank, create an opening transaction to record the bank
|
||||
account balance as of the date you begin synchronizing or importing transactions. This is
|
||||
necessary to ensure the accuracy of your accounting.
|
||||
|
||||
To access a list of existing statements, go to the :guilabel:`Accounting Dashboard`, click the
|
||||
:icon:`fa-ellipsis-v` :guilabel:`(ellipsis)` icon next to the bank or cash journal you want to
|
||||
check, then click :guilabel:`Statements`.
|
||||
.. tip::
|
||||
To access a statement's transactions, click :guilabel:`Transactions` directly from the
|
||||
:guilabel:`Bank Statements` list view or open a statement and click the :guilabel:`Statement
|
||||
lines` smart button.
|
||||
|
||||
.. _transactions/statement-kanban:
|
||||
.. _accounting/transactions/statement-kanban:
|
||||
|
||||
Statement creation from the kanban view
|
||||
---------------------------------------
|
||||
Statement creation
|
||||
------------------
|
||||
|
||||
Open the bank reconciliation (kanban) view from the :guilabel:`Accounting Dashboard` by clicking on
|
||||
the name of the bank journal and identify the transaction corresponding to the last (most recent)
|
||||
transaction of your bank statement. Click on the :guilabel:`Statement` button when hovering on the
|
||||
upper separator line to create a statement from that transaction down to the oldest transaction that
|
||||
is not yet part of a statement.
|
||||
The :guilabel:`Bank Matching` view displays transactions from most recent to oldest and groups them
|
||||
by statement, with any recent transactions that do not belong to a statement at the top. To add
|
||||
transactions to a statement, hover on the most recent transaction that should be included in the
|
||||
statement, and click the :guilabel:`Statement` button that appears on the upper separator line.
|
||||
Doing so creates a statement from that transaction down to the oldest transaction that is not yet
|
||||
part of a statement.
|
||||
|
||||
.. image:: transactions/statements-kanban.png
|
||||
:alt: A "Statement" button is visible when hovering on the line separating two transactions.
|
||||
:alt: A "Statement" button is visible when hovering on a transaction.
|
||||
|
||||
In the :guilabel:`Create Statement` window, fill out the statement's :guilabel:`Reference`, verify
|
||||
its :guilabel:`Starting Balance` and :guilabel:`Ending Balance`, and click :guilabel:`Save`.
|
||||
its :guilabel:`Starting Balance` and :guilabel:`Ending Balance`, add an attachment such as a PDF
|
||||
of the statement if desired, and click :guilabel:`Save`.
|
||||
|
||||
.. _transactions/statement-list:
|
||||
.. tip::
|
||||
Transactions can also be added to statements from the list view. Select all the transactions
|
||||
corresponding to the bank statement, and, in the :guilabel:`Statement` column, select an existing
|
||||
statement or create a new one by typing its reference, clicking on :guilabel:`Create and
|
||||
edit...`, filling out the statement's details, and saving.
|
||||
|
||||
Statement creation from the list view
|
||||
-------------------------------------
|
||||
|
||||
Open the list of transactions by clicking on the name of the bank journal and switching to the list
|
||||
view. Select all the transactions corresponding to the bank statement, and, in the
|
||||
:guilabel:`Statement` column, select an existing statement or create a new one by typing its
|
||||
reference, clicking on :guilabel:`Create and edit...`, filling out the statement's details, and
|
||||
saving.
|
||||
|
||||
.. _transactions/view-edit-print:
|
||||
.. _accounting/transactions/view-edit-print:
|
||||
|
||||
Statement viewing, editing, and printing
|
||||
----------------------------------------
|
||||
|
||||
To view an existing statement, click on the statement amount in the reconciliation (kanban) view or
|
||||
click on the statement name in the bank transaction list view. From here, you can edit the
|
||||
:guilabel:`Reference`, :guilabel:`Starting Balance`, or :guilabel:`Ending Balance`.
|
||||
To view an existing statement, click the statement amount in the :guilabel:`Bank Matching` view
|
||||
or click the statement name and then the :icon:`fa-arrow-right` :guilabel:`(Internal link)` icon in
|
||||
the :guilabel:`Bank Matching` list view. From here, you can edit the :guilabel:`Reference`,
|
||||
:guilabel:`Starting Balance`, :guilabel:`Ending Balance`, and :guilabel:`Attachments`.
|
||||
|
||||
.. note::
|
||||
Manually updating the :guilabel:`Starting Balance` automatically updates the :guilabel:`Ending
|
||||
Balance` based on the new value of the :guilabel:`Starting Balance` and the value of the
|
||||
statement's transactions.
|
||||
- Manually updating the :guilabel:`Starting Balance` automatically updates the :guilabel:`Ending
|
||||
Balance` based on the new value of the :guilabel:`Starting Balance` and the value of the
|
||||
statement's transactions.
|
||||
- If the :guilabel:`Starting Balance` doesn't equal the previous statement's :guilabel:`Ending
|
||||
Balance`, or if the :guilabel:`Ending Balance` doesn't equal the running balance
|
||||
(:guilabel:`Starting Balance` plus the statement's transactions), a warning appears explaining
|
||||
the issue. To maintain flexibility, it is still possible to save without first resolving the
|
||||
issue.
|
||||
|
||||
.. warning::
|
||||
If the :guilabel:`Starting Balance` doesn't equal the previous statement's :guilabel:`Ending
|
||||
Balance`, or if the :guilabel:`Ending Balance` doesn't equal the running balance
|
||||
(:guilabel:`Starting Balance` plus the statement's transactions), a warning appears explaining
|
||||
the issue. To maintain flexibility, it is still possible to save without first resolving the
|
||||
issue.
|
||||
|
||||
To attach a digital copy (i.e., JPEG, PNG, or PDF) of the bank statement for enhanced recordkeeping,
|
||||
click the :icon:`fa-paperclip` :guilabel:`Attachments` button and select the file to attach.
|
||||
|
||||
To generate and print a PDF of the bank statement, click the :guilabel:`Print` button (if accessed
|
||||
via the reconciliation view) or click on the :icon:`fa-cog`:guilabel:`(gear)` icon and click
|
||||
:icon:`fa-print`:guilabel:`Statement` (if accessed via the list view).
|
||||
To generate and print a PDF of the bank statement, click the :icon:`fa-cog` :guilabel:`(gear)` icon
|
||||
and click :icon:`fa-print` :guilabel:`Statement`.
|
||||
|
||||
.. note::
|
||||
When a bank statement is generated to be printed, it is automatically added to the
|
||||
:guilabel:`Attachments`.
|
||||
:guilabel:`Attachments` if no file was attached when creating the statement.
|
||||
|
||||
|
Before Width: | Height: | Size: 23 KiB After Width: | Height: | Size: 29 KiB |
@@ -49,7 +49,7 @@ Bank reconciliation
|
||||
-------------------
|
||||
|
||||
Once the bank transactions :doc:`have been created <../bank/transactions>` in your database, you can
|
||||
:ref:`reconcile them with the batch payment <reconciliation/batch-payments>`.
|
||||
:ref:`reconcile <accounting/reconciliation/reconcile>` them with the batch payment.
|
||||
|
||||
.. seealso::
|
||||
- :doc:`../payments`
|
||||
|
||||
@@ -224,7 +224,7 @@ your :guilabel:`Bank` journal on your dashboard.
|
||||
:alt: Import CODA files
|
||||
|
||||
.. seealso::
|
||||
:ref:`Import bank files <transactions/import>`
|
||||
:ref:`Import bank files <accounting/transactions/import>`
|
||||
|
||||
.. _belgium/soda:
|
||||
|
||||
|
||||