OdooWiki OCA HUB

Purchase Fully Invoiced

purchase_fully_invoiced folder_open OCA/purchase-workflow open_in_new
Purchase License: AGPL-3

The standard invoice_status field shows information about the status of the invoices related to a Purchase Order.

However, it can happen that the field invoice status can be "invoiced" while the invoices are still in draft. Many times that makes the difference for considering the Purchase Order as closed or not. Because of this, this module introduces a new field, Fully Invoiced, taking the state into account.

auto_awesome What this module does

AI-generated from the code · Odoo 16.0

Adds a "Posted Billing Status" field on purchase orders that only shows "Fully Billed" when all related bills are actually posted, plus a search filter to find those orders.

Standard Odoo marks a purchase order as "Fully Billed" as soon as the bills exist, even if they are still in draft. This module adds a second, stricter status on the purchase order called "Posted Billing Status" (invoice_status_validated) that takes the state of the bills into account.

The new status has the same three values as the usual billing status: "Nothing to Bill", "Waiting Bills" and "Fully Billed". It is computed automatically from the standard billing status and the state of the linked bills. If the order is not yet fully billed, the new status simply follows the standard one. If the standard status says "Fully Billed" but at least one related bill is still in draft, the new status stays at "Waiting Bills" instead. Only when no draft bill remains does it show "Fully Billed".

On the purchase order form the field is added but kept hidden, so it is mainly used for searching and filtering. In the Purchase Orders search view, a new filter called "Bills Received and Validated" is available after the standard "Invoiced" filter. It lists purchase orders whose posted billing status is "Fully Billed", i.e. orders that are fully invoiced and whose bills have all been validated.

This helps purchasing and accounting users distinguish orders that are truly closed from those still waiting for draft bills to be posted.

Depends on

purchase
Models and fields (1)
  • purchase.order · extends an existing modelinvoice_status_validated (Posted Billing Status)

Text generated by AI (DeepSeek) from reading the Odoo 16.0 code on GitHub; it may contain mistakes, so check the code before deciding. View the code on GitHub

Availability by version

Reviewed: 2026-11-03
Confirmed (verified in repository and branch) Estimated (unverified) No information

Confirmation status: 2 confirmed, 7 with no information of 9 versions.

Sources · Odoo 16.0

Confirmed on 2026-11-03 in branch 16.0 of OCA/purchase-workflow.

terminal Installation and usage

OCA documentation · Odoo 16.0
  • Filter the list of Purchase Orders by Fully Received and Fully Invoice Validated

No verified information in OCA: Installation, Configuration.

info

Data imported from GitHub: this sheet reflects the latest catalog review, not a live lookup. Always check the module documentation and staging before installing in production.