Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -6,12 +6,16 @@ Analytic accounting helps you track costs and revenues, as well as analyze the p
project or service. When creating your journal entries, the analytic widget allows the distribution
of costs in one or more analytic accounts.

.. _accounting/analytic_accounting/configuration:

Configuration
=============

Enable the :guilabel:`Analytic Accounting` feature by going to :menuselection:`Accounting -->
Configuration --> Settings --> Analytics`.

.. _accounting/analytic_accounting/analytic_accounts:

Analytic accounts
=================

Expand All @@ -25,14 +29,14 @@ and fill in the required information:
- :guilabel:`Customer`: select the customer related to your project;
- :guilabel:`Reference`: add a reference to make it easier to find the account when you are on your
bill;
- :guilabel:`Plan`: add an :ref:`analytic plan <analytic_accounting/analytic_plans>`;
- :guilabel:`Plan`: add an :ref:`analytic plan <accounting/analytic_accounting/analytic_plans>`;
- :guilabel:`Company`: if you are managing multiple companies, select the company for which the
analytic account will be used;
- :guilabel:`Currency`: select the currency of the analytic account;

Then, fill in your :doc:`budget <budget>` information.

.. _analytic_accounting/analytic_plans:
.. _accounting/analytic_accounting/analytic_plans:

Analytic plans
==============
Expand Down Expand Up @@ -83,6 +87,8 @@ Two smart buttons are available in the top-right corner:
:ref:`Analytic Distribution Models <analytic_distribution_models>`;
- Each analytic plan must have at least one analytic account.

.. _accounting/analytic_accounting/analytic-distribution:

Analytic distribution
=====================

Expand All @@ -98,6 +104,8 @@ accounts by modifying the percentage.

.. _analytic_distribution_models:

.. _accounting/analytic_accounting/analytic-distribution-models:

Analytic distribution models
----------------------------

Expand Down
216 changes: 142 additions & 74 deletions content/applications/finance/accounting/reporting/budget.rst
Original file line number Diff line number Diff line change
@@ -1,102 +1,170 @@
================
Analytic budgets
================
=======
Budgets
=======

Managing budgets is an essential part of running a business. Budgets help people become more
intentional with how money is spent and direct people to organize and prioritize their work to meet
financial goals. They allow the planning of a desired financial outcome and then measure the actual
performance against the plan. Odoo manages budgets using both **general** and **analytic accounts**.
:ref:`Analytic budgets <accounting/budgets/analytic-budgets>` track specific activities and projects
using analytic accounts, helping businesses make informed decisions about specific departments,
projects, or other groups of transactions. In contrast, :ref:`financial budgets
<accounting/budgets/financial>` are tied to the general ledger accounts that appear on the profit
and loss and focus on the company's overall economic position.

Configuration
=============
.. _accounting/budgets/analytic-budgets:

Go to :menuselection:`Accounting --> Configuration --> Settings --> Analytics section`, and enable
:guilabel:`Budget Management`.

Budgetary positions
-------------------
Analytic budgets
================

Budgetary positions are lists of accounts for which you want to keep budgets (typically expense or
income accounts).
Analytic budgets allow for allocating and tracking income and expenses in detail, breaking down
costs and revenues by specific projects, departments, or groups of transactions. Analytic budgets
can be applied across various departments or projects to measure profitability and performance. Odoo
manages analytic budgets using :doc:`analytic accounting <analytic_accounting>`.

To activate the option for creating analytic budgets, go to :menuselection:`Accounting -->
Configuration --> Settings`, and enable :guilabel:`Budget Management` in the :guilabel:`Analytics`
section.

.. important::
Odoo structures budgets using :ref:`plans <accounting/analytic_accounting/analytic_plans>` and
:ref:`accounts <accounting/analytic_accounting/analytic_accounts>`, which must be configured
*before* creating a budget.

.. _accounting/budgets/analytic-budget-set:

Set an analytic budget
----------------------

To create a new budget, go to :menuselection:`Accounting --> Accounting --> Analytic Budgets` and
click :guilabel:`New`. Make sure the following fields are appropriately completed: :guilabel:`Budget
Name`, :guilabel:`Period`, and :guilabel:`Budget Type`.

Click :guilabel:`Add a line` in the :guilabel:`Budget Lines` tab to structure the budget with the
:ref:`analytic plans <accounting/analytic_accounting/analytic_plans>` and :ref:`accounts
<accounting/analytic_accounting/analytic_accounts>` previously created. While the :ref:`analytic
plans <accounting/analytic_accounting/analytic_plans>` correspond to the column names, select the
:ref:`analytic accounts <accounting/analytic_accounting/analytic_accounts>` to define the budget
lines and set the amounts for each in the :guilabel:`Budgeted` column. Once all the budget lines are
settled, click :guilabel:`Open`. If changes need to be made once the budget's status is
:guilabel:`Open`, there are two options:

- :guilabel:`Reset to Draft`: To overwrite the data, then reopen the budget.
- :guilabel:`Revise`: A new budget will be created. Once it is :guilabel:`Open`, a :guilabel:`Rev`
reference is added to the :guilabel:`Budget Name`. The original budget is then
:guilabel:`Revised`.

.. _accounting/budgets/analytic-budget-check:

Check an analytic budget
------------------------

Once the budget is :guilabel:`Open`, two additional columns are available: :guilabel:`Committed` and
:guilabel:`Achieved`. These columns' amounts are automatically calculated based on the related
:ref:`analytic distribution <accounting/analytic_accounting/analytic-distribution>` of journal
items. When the :ref:`analytic distribution <accounting/analytic_accounting/analytic-distribution>`
of a journal item within the budget's period is updated, the budget's columns for the analytic
account(s) selected in the distribution are automatically updated. The :guilabel:`Achieved` amount
reflects the current result according to the items of confirmed journal entries for the associated
:ref:`analytic account <accounting/analytic_accounting/analytic_accounts>`. In contrast, the
:guilabel:`Committed` amount displays the full value of the :guilabel:`Achieved` amount, plus any
confirmed sales or purchase orders that have not yet been invoiced or billed.

To define budgetary positions, go to :menuselection:`Accounting --> Configuration --> Management:
Budgetary Positions` and :guilabel:`New`. Add a :guilabel:`Name` to your budgetary position and
select the :guilabel:`Company` it applies to. Click :guilabel:`Add a line` to add one or more
accounts.
.. note::
- When a line in a request for quotation or purchase order includes an analytic distribution, a
:guilabel:`Budget` smart button appears, providing a link to the :ref:`budget report
<accounting/budgets/analytic-budget-reporting>` for more details.
- For :guilabel:`Open` budgets, if a request for quotation or a purchase order is created using
the associated analytic distribution and exceeds the allocated budget amount, the corresponding
purchase order line is highlighted in red.

To reveal the :guilabel:`Theoretical` amount or percentage, use the :icon:`oi-settings-adjust`
(:guilabel:`adjust settings`) icon in the :guilabel:`Budget Lines`' header. The
:guilabel:`Theoretical` amount represents the amount of money that could theoretically have been
spent or should have been received based on the current date relative to the start/end dates. Click
:guilabel:`Details` to open a filtered view of the :ref:`budget report
<accounting/budgets/analytic-budget-reporting>` related to that specific budget line.

.. image:: budget/budget.png
:alt: open budget with committed, achieved, and theoretical amounts

.. note::
Each budgetary position can have any number of accounts from the chart of accounts, though it
must have at least one.
Deleting a budget is only allowed in the :guilabel:`Draft` and :guilabel:`Cancelled` stages.

To view the budget lines of one or multiple budgets directly from the :guilabel:`Budgets` list view,
select the budget(s) and click :guilabel:`Budget Lines`.

Use case
========
.. _accounting/budgets/analytic-budget-generate:

Let’s illustrate this with an example.
Generate periodic budgets
-------------------------

We just started a project with *Smith & Co*, and we would like to budget the income and expenses of
that project. We plan on having a revenue of 1000, and we don’t want to spend more than 700.
To create periodic budgets (monthly, quarterly, and yearly) for the selected :guilabel:`Analytic
Plans`, click :guilabel:`Generate`. A new budget is created for each :guilabel:`Period` between the
start and end dates:

First, we need to define what accounts relate to our project’s expenses. Go to
:menuselection:`Accounting --> Configuration --> Management: Budgetary positions`, and click
:guilabel:`New` to add a position. Add the accounts wherein expenses will be booked.
- If a single analytic plan is selected, each budget includes a line for each account in that
analytic plan.
- If multiple analytic plans are selected, each budget includes a line for each account/analytic
plan combination.

.. image:: budget/smith-and-co-expenses.png
:align: center
:alt: display the Smith and Co expenses
To generate periodic budgets, follow these steps:

Let's repeat the steps to create a budgetary position that reflects the revenue.
#. In the :guilabel:`Budgets` list view, click :guilabel:`Generate`.
#. In the :guilabel:`Generate Budget` window, set the dates and select the :guilabel:`Period` and
the :guilabel:`Analytic Plans`.

.. image:: budget/smith-and-co-revenue.png
:align: center
:alt: display the Smith and Co revenue
.. image:: budget/generate-budgets.png
:alt: all the options to generate periodical budgets

Analytical accounts
-------------------
#. Click :guilabel:`Split` to create the periodic budgets.
#. Click :guilabel:`Budgets` in the top-left corner to return to the :guilabel:`Budgets` list view.
#. One by one, click on the different periodic budgets with the :guilabel:`Draft` status to open
them and set the amounts in the :guilabel:`Budgeted` column for each analytic account linked to
the chosen analytic plans.
#. Click :guilabel:`Open` for each periodic budget.

Odoo needs to know which costs or expenses are relevant to a specified budget, as the above general
accounts may be used for different projects. Go to :menuselection:`Accounting --> Configuration -->
Analytic Accounting: Analytic Accounts` and click :guilabel:`New` to add a new **Analytic Account**
called *Smith & Co*.
.. _accounting/budgets/analytic-budget-reporting:

The :guilabel:`Plan` field has to be completed. Plans group multiple analytic accounts; they
distribute costs and benefits to analyze business performance. **Analytic Plans** can be created or
configured by going to :menuselection:`Accounting --> Configuration --> Analytic Accounting:
Analytic Plans`.
Reporting
---------

When creating a new customer invoice and/or vendor bill, you have to refer to this analytic account.
To perform various reporting actions, go to :menuselection:`Accounting --> Reporting -->
Budget Report`, then:

.. image:: budget/analytic-accounts.png
:align: center
:alt: add analytic accounts in a new invoice or bill.
- Track, analyze, and compare budget data.
- Filter and group data using the :icon:`fa-plus-square` (:guilabel:`plus-square`) or
:icon:`fa-minus-square` :guilabel:`(minus-square)` icon.
- Drill down into the report to see more details on the actual amounts and transactions.
- Export the data for further analysis or reporting needs.

Define the budget
-----------------
.. _accounting/budgets/financial:

Let’s set our targets. We specified that we expect to gain 1000 with this project, and we would like
not to spend more than 700. Go to :menuselection:`Accounting --> Management: Budgets` and click
:guilabel:`New` to create a new budget for *Smith & Co* project.
Financial budgets
=================

First, fill in your :guilabel:`Budget Name`. Then, select the :guilabel:`Period` wherein the budget
is applicable. Next, add the :guilabel:`Budgetary Position` you want to track, define the related
:guilabel:`Analytic Account`, and add the :guilabel:`Planned Amount`.
Financial budgets are structured around specific income and expense accounts and transactions for
official financial reporting and compliance purposes.

.. image:: budget/define-the-budget.png
:align: center
:alt: budget lines display
.. note::
Financial budgets are available on the :ref:`Profit and Loss
<accounting/reporting/profit-and-loss>` report.

.. Note::
When recording a planned amount related to expenses, the amount must be negative.
.. _accounting/budgets/financial-budget-set:

Check your budget
-----------------
Set a financial budget
----------------------

Go to :menuselection:`Accounting --> Management: Budgets` and find the *Smith & Co* Project to see
how it evolves according to the expenses or income for the related analytic account.
To create a new financial budget, follow these steps:

The :guilabel:`Practical Amount` evolves when a new journal entry related to your analytic account
and an account from your budgetary position is created.
#. Go to :menuselection:`Accounting --> Reporting --> Profit and Loss` to open the
:ref:`Profit and Loss <accounting/reporting/profit-and-loss>` report.
#. Click the :icon:`fa-calendar` :guilabel:`(calendar)` button to use the date selector and choose a
period.
#. Click the :icon:`fa-bar-chart` :guilabel:`Budget` button and name the budget. A new column
labeled with the budget name will appear next to the :guilabel:`Balance` column.
#. Assign amounts to each account requiring analysis.
#. A new :guilabel:`%` column will appear to the right of the new budget column, indicating the
current status.

The :guilabel:`Theoretical Amount` represents the amount of money you theoretically could have spent
or should have received based on the date. For example, suppose your budget is 1200 for 12 months
(January to December), and today is 31 of January. In that case, the theoretical amount will be 100
since this is the actual amount that could have been made.
Different financial budgets can be created using these steps for comparison purposes.

.. note::
The date selector enables the division of periods and navigation between periods, automatically
updating the amounts accordingly.
Binary file not shown.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file not shown.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file not shown.
Binary file not shown.