diff --git a/purchase/advanced.rst b/purchase/advanced.rst index 7cbafa6ce..ea4a7250c 100644 --- a/purchase/advanced.rst +++ b/purchase/advanced.rst @@ -5,6 +5,5 @@ Advanced .. toctree:: :titlesonly: - advanced/3_way_matching advanced/dropshipping advanced/analyze \ No newline at end of file diff --git a/purchase/advanced/3_way_matching.rst b/purchase/advanced/3_way_matching.rst deleted file mode 100644 index 4f4b916db..000000000 --- a/purchase/advanced/3_way_matching.rst +++ /dev/null @@ -1,42 +0,0 @@ -======================================================= -Determine when to pay a vendor bill with 3-way matching -======================================================= - -In some industries, you may receive a bill from a vendor before -receiving the ordered products. However, you might not want to pay it -until the products have been received. - -To define whether the vendor bill should be paid or not, you can use -what we call *3-way matching*. It refers to the comparison of the -information appearing on the *Purchase Order*, the *Vendor Bill* -and the *Receipt*. - -The 3-way matching helps you avoid paying incorrect or fraudulent -vendor bills. - -Configuration -============= - -For this feature to work, go to :menuselection:`Purchases --> -Configuration --> Settings` and activate the *3-way matching* feature - -.. image:: media/3_way_matching01.png - :align: center - -Should I pay the vendor bill? -============================= - -With the feature activated you will have a new *Should be paid* line -appear on the vendor bill under the *Other info* tab. - -That way Odoo let's you easily know if you should pay the vendor bill or -not. - -.. image:: media/3_way_matching02.png - :align: center - -.. tip:: - The status is defined automatically by Odoo. However, if you want to - define this status manually, you can tick the box Force Status and then - you will be able to set manually whether the vendor bill should be paid - or not. diff --git a/purchase/manage_deals.rst b/purchase/manage_deals.rst index e7352bf7f..05b3cc913 100644 --- a/purchase/manage_deals.rst +++ b/purchase/manage_deals.rst @@ -6,3 +6,4 @@ Manage deals :titlesonly: manage_deals/agreements + manage_deals/control_bills diff --git a/purchase/manage_deals/control_bills.rst b/purchase/manage_deals/control_bills.rst new file mode 100644 index 000000000..cc3f9a246 --- /dev/null +++ b/purchase/manage_deals/control_bills.rst @@ -0,0 +1,110 @@ +================================================= +Control and know when vendor bills should be paid +================================================= + +With Odoo, you can define how your vendor bills are controlled. For each purchase order, you can +decide when the related vendor bill should be paid: either before or after you have received your +products. You can also check at a glance what is the billing status of each purchase order. + +With the 3-way matching feature, Odoo compares the information appearing on the *Purchase Order*, +the *Vendor Bill* and the *Receipt*, and lets you know if you should pay the bill. This way you can +avoid paying incorrect or fraudulent vendor bills. + +Vendor bills default control policy +=================================== + +As a first step, open your Purchase app and go to :menuselection:`Configuration --> Settings` to set +the default bill control policy for all the products created onwards. + +.. image:: media/control-bills-quantities-default-setting.png + :align: center + :alt: Vendor bills default control setting for new products in Odoo Purchase + +By selecting *On ordered quantities*, you can create a vendor bill as soon as you confirm an order. +The quantities mentioned in the purchase order are used to generate the draft bill. + +If you choose *On received quantities* instead, you can only create one once you have at least +received some of the products you have ordered. The quantities you have received are used to +generate the draft bill. If you try to create one without having received any product, you get an +error message. + +.. image:: media/control-bills-no-invoiceable-line.png + :align: center + :alt: No invoiceable line error message in Odoo Purchase + +Change a specific product's control policy +------------------------------------------ + +If you want to modify a specific product's control policy, go to :menuselection:`Products --> +Products`, open it, click on *Edit* and go to the *Purchase tab*. There you can change a product's +default bill control policy. + +.. image:: media/control-bills-quantities-on-product.png + :align: center + :alt: Vendor bills default control setting for new products in Odoo Purchase + +View a purchase order's billing status +====================================== + +Once you confirm an order, you can view its *Billing Status* by going to the *Other Information* +tab. + +.. image:: media/control-bills-billing-status.png + :align: center + :alt: Purchase order billing status in Odoo Purchase + +Below you can find a list of the different *Billing Status*, and when they are displayed, depending +on the products' bill control policy. + ++--------------------+--------------------------------------------------------------------------+ +| **Billing status** | **Conditions** | +| +------------------------------------------------+-------------------------+ +| | *On received quantities* | *On ordered quantities* | ++--------------------+------------------------------------------------+-------------------------+ +| *Nothing to Bill* | PO confirmed; no products received | *(Not applicable)* | ++--------------------+------------------------------------------------+-------------------------+ +| *Waiting Bills* | All/some products received; bill not created | PO confirmed | ++--------------------+------------------------------------------------+-------------------------+ +| *Fully Billed* | All/some products received; draft bill created | Draft bill created | ++--------------------+------------------------------------------------+-------------------------+ + +Determine when to pay with 3-way matching +========================================= + +First, go to :menuselection:`Configuration --> Settings` and activate *3-way matching*. + +.. image:: media/control-bills-3-way-matching-setting.png + :align: center + :alt: 3-way-matching setting in Odoo Purchase + +.. note:: + 3-way matching is intended to work with the bill control policy set to *On received quantities*. + +Should I pay the vendor bill? +----------------------------- + +With the feature activated, your vendor bills now display the *Should Be Paid* field under the +*Other info* tab. + +.. image:: media/control-bills-should-be-paid.png + :align: center + :alt: Should Be Paid field under a vendor bill in Odoo Purchase + +As you can't create a bill until you have received your products - and if you haven't received all +of them, Odoo only includes the products you have received in the draft bill - the *Should Be Paid* +status is set to *Yes* when you create one. + +If you edit a draft bill to increase the billed quantity, change the price, or add other products, +the *Should Be Paid* status is set to *Exception*. It means Odoo notices the discrepancy, but that +you might have a valid reason to have done so. + +Once the payment has been registered and mentions *Paid*, the *Should Be Paid* status is set to +*No*. + +.. image:: media/control-bills-paid-status.png + :align: center + :alt: Paid bill in Odoo Purchase + +.. tip:: + The *Should Be Paid* status is set automatically by Odoo. However, you can change the status + manually when you are viewing a bill in edit mode. \ No newline at end of file diff --git a/purchase/manage_deals/media/control-bills-3-way-matching-setting.png b/purchase/manage_deals/media/control-bills-3-way-matching-setting.png new file mode 100644 index 000000000..c63eccd0e Binary files /dev/null and b/purchase/manage_deals/media/control-bills-3-way-matching-setting.png differ diff --git a/purchase/manage_deals/media/control-bills-billing-status.png b/purchase/manage_deals/media/control-bills-billing-status.png new file mode 100644 index 000000000..2370c2812 Binary files /dev/null and b/purchase/manage_deals/media/control-bills-billing-status.png differ diff --git a/purchase/manage_deals/media/control-bills-no-invoiceable-line.png b/purchase/manage_deals/media/control-bills-no-invoiceable-line.png new file mode 100644 index 000000000..db22f1481 Binary files /dev/null and b/purchase/manage_deals/media/control-bills-no-invoiceable-line.png differ diff --git a/purchase/manage_deals/media/control-bills-paid-status.png b/purchase/manage_deals/media/control-bills-paid-status.png new file mode 100644 index 000000000..a7dd4e705 Binary files /dev/null and b/purchase/manage_deals/media/control-bills-paid-status.png differ diff --git a/purchase/manage_deals/media/control-bills-quantities-default-setting.png b/purchase/manage_deals/media/control-bills-quantities-default-setting.png new file mode 100644 index 000000000..869d52ca4 Binary files /dev/null and b/purchase/manage_deals/media/control-bills-quantities-default-setting.png differ diff --git a/purchase/manage_deals/media/control-bills-quantities-on-product.png b/purchase/manage_deals/media/control-bills-quantities-on-product.png new file mode 100644 index 000000000..9cd50510e Binary files /dev/null and b/purchase/manage_deals/media/control-bills-quantities-on-product.png differ diff --git a/purchase/manage_deals/media/control-bills-should-be-paid.png b/purchase/manage_deals/media/control-bills-should-be-paid.png new file mode 100644 index 000000000..080b38271 Binary files /dev/null and b/purchase/manage_deals/media/control-bills-should-be-paid.png differ diff --git a/purchase/products/reordering.rst b/purchase/products/reordering.rst index 9fd267f27..fe1929cae 100644 --- a/purchase/products/reordering.rst +++ b/purchase/products/reordering.rst @@ -36,7 +36,7 @@ must order to benefit from that price. .. tip:: By default, a draft purchase order is created. However, if you have enabled *Purchase Agreements*, you can *Propose a call for tenders* instead as shown in the image above. For more - information, see :doc:`../agreements/call_for_tender` + information, see :doc:`../manage_deals/agreements` Next, make sure the correct route is selected under the Inventory tab of your product. If you created your product within the Purchase app, the *Buy* route is selected by default. If you are diff --git a/redirects.txt b/redirects.txt index 20179337c..631d8778f 100644 --- a/redirects.txt +++ b/redirects.txt @@ -182,4 +182,7 @@ crm/optimize/mail_client_extension.rst crm/optimize/outlook_extension.rst crm/optimize/google_calendar_credentials.rst general/calendars/google/google_calendar_credentials.rst # (#765) purchase/purchases/tender/blanket_orders.rst purchase/manage_deals/agreements.rst # (#823) -purchase/purchases/tender/call_for_tender.rst purchase/manage_deals/agreements.rst # (#823) \ No newline at end of file +purchase/purchases/tender/call_for_tender.rst purchase/manage_deals/agreements.rst # (#823) + +purchase/purchases/rfq/3_way_matching.rst purchase/manage_deals/control_bills.rst # (#829) +purchase/purchases/rfq/bills.rst purchase/manage_deals/control_bills.rst # (#829) \ No newline at end of file