Control policies¶
In Odoo’s Purchase app, the Control Policy determines the quantities billed by vendors on every purchase order (PO). For example, choosing On ordered quantities means the bill is based on ordered items, even if they have not been received yet.
The control policy is selected on the Product record.
Configuration¶
To configure the control policy for a product, navigate to Purchase tab. Scroll to the Vendor Bills section. Under Control Policy, tick the radio button for either On ordered quantities or On recieved quantities.
, then click on a product record to open it. Click to theOn ordered quantities: Creates a vendor bill as soon as a PO is confirmed. The products and quantities in the PO are used to generate a draft bill.
On received quantities: A bill is created only after part of the total order has been received. The products and quantities received are used to generate a draft bill. An error message appears if creation of a vendor bill is attempted without receiving anything.
The default control policy for a product is determined by the Product Type:
Services: The default control policy is On ordered quantities.
Goods: The default control policy is On delivered quantities
Pay vendor bills with 3-way matching¶
The 3-way matching feature ensures vendor bills are only paid once some, or all, of the products included in the PO have been received.
To activate 3-way matching, navigate to Invoicing section. Then, tick the checkbox for 3-way matching to enable the feature, and click Save.
, and scroll down to the
When 3-way matching is enabled, vendor bills display a Should Be Paid field under the Other Info tab. When a new vendor bill is created, the field is set to Yes, since a bill cannot be created until at least some of the products included in a PO have been received.
To create a vendor bill from a PO, navigate to Purchase Orders page, select the desired PO from the list. Then, click Create Bill. Doing so opens a new draft Vendor Bill form, in the Draft stage. Click the Other Info tab, and locate the Should Be Paid field.
. From theImportant
The PO selected from the list must not be billed yet, or an Invalid Operation pop-up window appears.

Click the drop-down menu next to Should Be Paid to view the available options: Yes, No, and Exception.

Note
If the total quantity of products from a PO has not been received, Odoo only includes the products that have been received in the draft vendor bill.
Draft vendor bills can be edited to increase the billed quantity, change the price of the products in the bill, and add additional products to the bill.
If the draft bill’s information is changed, the Should Be Paid field status is set to Exception. This means that Odoo notices the discrepancy, but does not block the changes or display an error message, since there might be a valid reason for making changes to the draft bill.
To process the vendor bill, select a date in the Bill Date field, and click Confirm, followed by Register Payment.
This opens a Register Payment pop-up window. From this window, accounting information is pre-populated based on the database’s accounting settings. Click Create Payment to process the vendor bill.
Once payment has been registered for a vendor bill, and the bill displays the green Paid banner, the Should Be Paid field status is set to No.
Tip
The Should Be Paid status on bills is automatically set by Odoo. However, the status can be manually changed by clicking the field’s drop-down menu inside the Other Info tab.
View a purchase order’s billing status¶
Once a PO is confirmed, its Billing Status can be viewed under the Other Information tab on the PO form.
To view the Billing Status of a PO, navigate to , and select a PO to view.
Click the Other Information tab, and locate the Billing Status field.

The table below details the different values the Billing Status field could read, and when they are displayed, depending on the Bill Control policy used.
Billing Status |
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 |
See also