Skip to content
Open
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
155 changes: 96 additions & 59 deletions content/applications/sales/sales/invoicing/invoicing_policy.rst
Original file line number Diff line number Diff line change
@@ -1,85 +1,122 @@
================================================
Invoice based on delivered or ordered quantities
================================================
==================
Invoicing policies
==================

Different business policies might require different options for invoicing:
Depending on business needs, it may be advantageous to choose whether to invoice customers based on
the goods and services that they order or when those goods and services are delivered to them. To
allow businesses maximum flexibility to best meet their needs, Odoo offers two invoicing policies
that can be enabled in the **Sales** app: :ref:`Invoice what is ordered <invoice-on-order>` and
:ref:`Invoice what is delivered <invoice-on-delivery>`.

- The *Invoice what is ordered* rule is used as the default mode in Odoo *Sales*, which means
customers are invoiced once the sales order is confirmed.
- The *Invoice what is delivered* rule invoices customers once the delivery is done. This rule is
often used for businesses that sell materials, liquids, or food in large quantities. In these
cases, the ordered quantity may differ slightly from the delivered quantity, making it preferable
to invoice the quantity actually delivered.
Configuring an invoicing policy
===============================

Being able to have different invoicing options provides more flexibility.
To configure an invoicing policy, go to :menuselection:`Sales app --> Configuration --> Settings`,
and under the :guilabel:`Invoicing` heading, select an :guilabel:`Invoicing Policy` option:
:guilabel:`Invoice what is ordered` or :guilabel:`Invoice what is delivered`.

Invoicing policy features
=========================

To activate the necessary invoicing policy features, go to :menuselection:`Sales app -->
Configuration --> Settings`, and under the :guilabel:`Invoicing` heading, select an
:guilabel:`Invoicing Policy` rule: :guilabel:`Invoice what is ordered` or :guilabel:`Invoice what is
delivered`.
Activating an invoicing policy option automatically applies the chosen option to all newly created
products. Existing products **must** have their invoicing policy manually updated on their product
forms.

.. image:: invoicing_policy/invoicing-policy-setting.png
:align: center
:alt: Choosing an invoicing policy on Odoo Sales.
:alt: Choosing an invoicing policy in the Sales app.

.. important::
If the :guilabel:`Invoice what is delivered` rule is chosen, it is **not** possible to activate
.. important:
If the :guilabel:`Invoice what is delivered` option is chosen, it is **not** possible to activate
the :guilabel:`Automatic Invoice` feature, which automatically generates invoices when an online
payment is confirmed.

Invoicing policy on product form
================================
Changing the invoicing policy for existing products
---------------------------------------------------

On any product page, via the :menuselection:`Sales app --> Products --> Products dashboard`, locate
the :guilabel:`Invoicing Policy` option located under the :guilabel:`General Information` tab. It
can be changed manually using the drop-down menu.
After the invoicing policy has been configured in **Settings**, navigate to a product's form through
:menuselection:`Sales app --> Products --> Products` and choosing a product. Locate the
:guilabel:`Invoicing Policy` option located under the :guilabel:`General Information` tab. Use the
drop-down menu to change the policy.

.. image:: invoicing_policy/invoicing-policy-general-info-tab.png
:align: center
:alt: How to change your invoicing policy on a product form on Odoo Sales.
:alt: How to change invoicing policy on a product form in the **Sales** app.

Impact on sales flow
====================
.. _invoice-on-order:

In Odoo *Sales*, the basic sales flow starts with the creation of a quotation. Then, that quotation
is sent to a customer. Next, it needs to be confirmed, which turns the quotation into a sales order.
This, in turn, creates an invoice.
Invoicing what is ordered
=========================

The following is a breakdown of how invoicing policy rules impact the aforementioned sales flow:
The *Invoice what is ordered* option is used as the default mode in the **Sales** app, which means
customers are invoiced once a quotation has been sent to the customer and confirmed. The creation of
a quotation in turn leads to the creation and confirmation of a sales order. An invoice can then be
created as soon as the sales order is confirmed.

- :guilabel:`Invoice what is ordered`: No impact on the basic sales flow. An invoice is created as
soon as a sale is confirmed.
- :guilabel:`Invoice what is delivered`: Minor impact on sales flow, because the delivered quantity
needs to be manually entered on the sales order. Or, the *Inventory* app can be installed and used
to confirm the delivered quantity before creating an invoice with the *Sales* app.
This invoicing policy has no impact on the basic Odoo sales flow.

.. warning::
If a user attempts to create an invoice without validating the delivered quantity, the following
error message appears: :guilabel:`There is no invoiceable line. If a product has a Delivered
quantities invoicing policy, please make sure that a quantity has been delivered.`
Invoice ordered quantity workflow
---------------------------------

.. image:: invoicing_policy/invoicing-policy-error-message.png
:align: center
:alt: If Delivered Quantities invoicing policy is chosen, ensure a quantity has been delivered.
Confirm that the product's invoicing policy is set to :guilabel:`Ordered quantities` in the product
form. :ref:`Create a quotation and sales order <sales/create-quotation>` as normal. After the sales
order has been confirmed, create an invoice by clicking the :guilabel:`Create Invoice` button on the
sales order form. Choose the type of invoice to be sent, click :guilabel:`Create Draft Invoice`,
confirm the invoice when ready, and proceed with the payment flow as normal.

.. example::
A independent artisan with a small business sells handmade jewelery nationwide online. Because
they have direct control over their inventory levels and ship with 3rd party carriers, they
invoice their customers after a sales order has been confirmed.

The artisan receives an order for a necklace. They send their customer a quotation, confirm it,
and create a sales order. After the sales order has been confirmed, an invoice can be created and
sent to the customer for payment without any additional steps be taken. The invoice gets paid,
the necklace is shipped and delivered, and the transaction is complete.

.. _invoice-on-delivery:

.. note::
Once a quotation is confirmed, and the status changes from :guilabel:`Quotation sent` to
:guilabel:`Sales order`, the delivered and invoiced quantities are available to view, directly
from the sales order. This is true for both invoicing policy rule options.
Invoicing what is delivered
===========================

.. image:: invoicing_policy/invoicing-policy-order-lines.png
:align: center
:alt: How to see your delivered and invoiced quantities on Odoo Sales.
The *Invoice what is delivered* option invoices customers as different amounts of the ordered goods
are delivered. This option is often used for businesses that sell large quantities of physical goods
in each sales order, but may not always be able to completely fulfill a given order all at once. In
these cases, the ordered quantity may differ slightly from the delivered quantity based on product
availability. Once a quotation is confirmed, and the status changes from :guilabel:`Quotation sent`
to :guilabel:`Sales order`, Odoo automatically adds both the delivered and invoiced quantities to
the invoice and sales order. Both partial and complete deliveries are tracked.

Odoo automatically adds the quantities to the invoice, both :guilabel:`Delivered` and
:guilabel:`Invoiced`, even if it's a partial delivery, when the quotation is confirmed.
This invoicing policy has a minor impact on the sales flow because the delivered quantity of a
product needs to be manually entered on the sales order.

.. image:: invoicing_policy/invoicing-policy-order-lines.png
:alt: How to see delivered and invoiced quantities on Odoo Sales.

Invoice delivered quantity workflow
-----------------------------------

Confirm that the product's invoicing policy is set to :guilabel:`Delivered quantities` in the
product form. :ref:`Create a quotation and sales order <sales/create-quotation>` as normal. After
the sales order has been confirmed, the product must be delivered before an invoice can be created.

Once the product has been shipped and delivery has been confirmed, click the :guilabel:`Delivery`
smart button on the sales order screen and click :guilabel:`Validate` to validate the delivery
order. Once at least a partial delivery has been confirmed, return to the sales order form. The
:guilabel:`Create Invoice` button is now purple to indicate that an invoice can be created and
confirmed, and that it is possible to proceed with the payment flow as normal.

.. warning::
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Since the warning is only referencing the second bullet point, I woudl have this nexted under that bullet point (just indent it 2 spaces each line)

If a user attempts to create an invoice without validating the delivered quantity, the system
returns an error message alerting them to the issue.

.. image:: invoicing_policy/invoicing-policy-error-message.png
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I find it odd that both the columns display "0"- Is this normal? Wouldn't we want to show a difference, delivered X and ordered Y? Just looks off. Also, remove the arrows.

:alt: If Delivered Quantities invoicing policy is chosen, ensure a quantity has been
delivered.

Finally, there are a few different options to create an invoice: :guilabel:`Regular invoice`,
:guilabel:`Down payment (percentage)` or :guilabel:`Down payment (fixed amount)`.
.. example::
A produce distributor using the invoice what is delivered option sells 50 heads of lettuce to a
local restaurant. At the time the delivery is made, only 40 heads are available. The distributor
delivers the available heads of lettuce and creates an invoice for what was delivered. Later,
when more supply comes in, the distributor delivers the remaning 10 heads of lettuce and creates
a second invoice to complete the order.

.. seealso::
Be sure to check out the documentation explaining down payment options to learn more:
:doc:`/applications/sales/sales/send_quotations/create_quotations`
:doc:`/applications/sales/sales/invoicing/down_payment`
:doc:`/applications/inventory_and_mrp/inventory`
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

For this image, you could crop out the right and lower side, so you just see the important part - example:
image
(I couldnt get the drop down to show, but you get the idea!=) I zoom in to make sure everythign is as big as it can be, before cropping or resizing)

Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Original file line number Diff line number Diff line change
Expand Up @@ -66,6 +66,8 @@ To view and/or modify any listed quotation from the :guilabel:`Quotations` dashb
desired quotation line from the list, and Odoo reveals the specific form for that selected
quotation.

.. _sales/create-quotation:

Create quotation
================

Expand Down