Overview
This module detects purchase order vs bill price mismatch during vendor bill validation, helping Odoo 18 accounts payable teams catch pricing errors before posting.
Supports v 18.0 — available directly on the Odoo Apps Store.
Description
Vendor bills are frequently validated without a line-by-line comparison against the original purchase order, which can allow pricing errors to pass through unnoticed. The Purchase Order vs Bill Mismatch Alert module addresses this gap by checking for a purchase order vs bill price mismatch at the moment a vendor bill is validated in Odoo 18, alerting users before the bill is posted.
Key Features
- Automatic price mismatch detection that alerts users when the bill unit price differs from the PO unit price at validation time
- Configurable tolerance percentage set in Purchase Settings, so alerts are only raised when the deviation exceeds your defined threshold
- Line-level validation that checks each bill line individually against its corresponding PO line for granular control
- Support for partial goods receipts and partial billing scenarios
- Easy activation and deactivation through a checkbox in Purchase Settings
- Detailed alert messages that display the exact price difference identified between the PO and the bill
How It Works
The price mismatch check is configured from Purchase → Configuration → Settings. Here, users enable the price validation checkbox and enter an acceptable tolerance percentage. Once configured, the module compares the unit price on each vendor bill line against the corresponding purchase order line at the time of bill validation. If the difference between the two prices exceeds the configured tolerance, the module raises a purchase order vs bill price mismatch alert with details of the exact price difference, allowing the discrepancy to be reviewed before the bill is posted. The comparison is performed on a line-by-line basis, and the module continues to function correctly in cases involving partial goods receipts and partial billing, where only portions of a purchase order have been received or invoiced.
Business Use Cases
This module is intended for accounts payable teams and purchase managers working in Odoo 18 who need a way to catch vendor pricing errors before bills are confirmed. In organizations that process a high volume of vendor invoices, manually cross-checking every bill line against its purchase order is often impractical. By automating this purchase order vs bill price mismatch check, the module supports businesses that want a consistent, rule-based way to flag price discrepancies as part of the standard bill validation process.
Because the tolerance percentage is configurable, businesses can decide how strict the price comparison should be — allowing for minor, expected variances while still catching larger discrepancies that could indicate a billing error or vendor overcharge. The support for partial goods receipts and partial billing also makes the module applicable to procurement workflows where purchase orders are received or invoiced in multiple stages rather than all at once.
Frequently Asked Questions
Does this module block the bill from being posted if a mismatch is found?
The supplied module information states that an alert is raised at validation time when a price mismatch beyond the configured tolerance is detected, but it does not specify whether posting is blocked outright.
Can the tolerance percentage be different for different vendors or products?
The supplied module information specifies a single configurable tolerance percentage set in Purchase Settings; it does not mention vendor-specific or product-specific tolerance settings.
Does the module work with partially received or partially billed purchase orders?
Yes, the module is designed to correctly handle partial goods receipt and partial billing scenarios when comparing PO and bill line prices.
How is the price mismatch check enabled or disabled?
It can be switched on or off using a checkbox available in Purchase → Configuration → Settings.
What information is shown when a mismatch is detected?
The module displays a detailed alert message that includes the exact price difference identified between the purchase order line and the corresponding bill line.