-
Notifications
You must be signed in to change notification settings - Fork 10.7k
[IMP] Sales: Invoicing policy page rewrite #15499
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: 17.0
Are you sure you want to change the base?
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| 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:: | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe 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 | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe 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` | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. |

Uh oh!
There was an error while loading. Please reload this page.