In this article
- Key takeaway
- Build a clear chain of independent controls
- Understand what Odoo three-way matching actually does
- Check invoice duplicates before posting
- Make Zimbabwe fiscal validation part of accounts payable
- Two practical examples
- A duplicate supplier bill is held before payment
- A partial delivery creates an apparent mismatch
- Measure whether the controls work
- Pre-payment approval checklist
- Frequently Asked Questions
- Does Odoo three-way matching block all wrong payments?
- Should AP reject every duplicate-looking invoice reference?
- What should AP check before claiming Zimbabwe input VAT?
- How long should purchase-to-pay records be retained?
- How SERPA can help
Author’s role: SERPA — Odoo Procurement and Financial Controls Team
Key takeaway
Connect purchasing, receipt, billing and payment evidence with independent approvals, duplicate checks and fiscal-document validation before settlement.
Prevent duplicate supplier bills, strengthen approval accountability and preserve the evidence needed for VAT compliance and audit.
A supplier invoice arrives by email, then again as a scanned attachment. Both look legitimate. If the purchase order, receipt, invoice and approval history are scattered across teams, the same liability can enter a payment run twice. The weakness is not the attachment: it is the absence of a controlled purchase-to-pay process.
For Zimbabwean businesses, the solution must also connect procurement evidence to fiscal tax-invoice validation. An Odoo implementation should show what was requested, authorised, delivered, billed, approved and paid—without allowing one employee to control every stage.
Build a clear chain of independent controls
-
Requisition: identify the operational need and responsible budget owner.
-
Purchase order: obtain approval before placing a commitment with the supplier.
-
Receipt: an independent user confirms goods or services received.
-
Vendor bill: accounts payable checks the supplier document against the order and receipt.
-
Exception approval: a designated reviewer decides how legitimate variances will be treated.
-
Payment approval: a separately authorised person approves settlement.
-
Bank reconciliation: finance matches the approved payment to the bank record.
No single user should be able to create a supplier, authorise their own purchase, record receipt and release payment without independent review. Restrict changes to supplier banking details and verify them through an agreed process before payment.
Understand what Odoo three-way matching actually does
Odoo 19 can be configured to control vendor bills using received quantities, then use three-way matching to assess the purchase order, receipt and bill. The “Should Be Paid” status may show Yes, No or Exception. An exception is a review signal, not a universal payment block: Odoo documentation explains that draft bills can still be edited and that the status can be changed. Effective control therefore also requires permissions, approval rules and documented exception decisions.
| Control point | Evidence to check | Risk reduced |
|---|---|---|
| Purchase request | Business purpose and budget owner | Off-policy commitments |
| Approved PO | Vendor, items, terms and authorisation | Unapproved spending |
| Receipt | Actual quantity and authorised receiver | Payment for undelivered items |
| Vendor bill | PO, goods receipt, supplier invoice and tax evidence | Price, quantity, duplicate and VAT discrepancies |
| Payment | Independent approval and exception record | Unapproved settlement |
| Bank reconciliation | Payment reference and bank transaction | Duplicate or unrecorded outflows |
Check invoice duplicates before posting
Odoo can flag potential duplicate vendor bills. However, the same supplier reference does not always mean that two bills are duplicates: suppliers may send partial invoices, deposits or back-order documents. Compare vendor identity, invoice reference, date, currency, amount, purchase order and receipt history before deciding to approve, hold or reject the bill.
A repeated reference should trigger evidence review, not indiscriminate rejection. Preserve the reviewer’s decision and supporting documents, especially when legitimate partial deliveries create more than one supplier bill.
Make Zimbabwe fiscal validation part of accounts payable
ZIMRA states that a fiscal tax invoice, debit note or credit note should be checked by QR code or through the FDMS Validation Portal. Where valid, the portal displays “VALID”; the invoice details, including buyer details, should correspond to the transmitted FDMS record. A posted Odoo vendor bill alone is not proof that its tax document is valid.
The standard Zimbabwe VAT rate is 15.5%. ZIMRA guidance generally requires input VAT claims within 12 months of the invoice date and with appropriate supporting documents. Its 2026 return notices also describe the role of valid FDMS documents in the TaRMS input-tax process. Review the actual tax treatment and applicable exceptions with the tax lead before claiming input VAT.
Keep purchase orders, receiving records, invoices, credit notes, approvals, payment records and system audit trails together. ZIMRA generally requires relevant accounting and tax records to be retained for at least six years. Your document archive must preserve retrievability and access controls as well as storage.
Two practical examples
A duplicate supplier bill is held before payment
An illustrative Harare distributor receives the same vendor invoice through two channels. The AP clerk checks the supplier and document reference against existing bills and the related purchase order. An exception reviewer confirms the second attachment represents the same liability, records the decision and stops duplicate posting or payment. The benefit is prevention supported by a review trail, not an assumed monetary saving.
A partial delivery creates an apparent mismatch
The same distributor receives a supplier bill when only part of the order has arrived. Three-way matching identifies a difference between order, receipt and billed quantities. The receiver verifies what was actually delivered, the buyer contacts the supplier, and an authorised reviewer determines whether to pay only the supported portion or await corrected documents. The decision should reflect contract terms and the business’s configured controls—not a blanket assumption that every exception can be paid.
Measure whether the controls work
| Measure | What it reveals | Suggested management response |
|---|---|---|
| Repeated bills flagged | How many entries trigger duplicate checks | Investigate recurring sources and scanning practices |
| Bills matched to PO and receipt | Coverage of approved procurement activity | Address uncontrolled off-PO purchases |
| Exception age and rate | Where quantity, price or document gaps persist | Review root cause and responsible approval |
| Supplier bank-detail changes | Potential exposure to unauthorised amendment | Verify changes independently |
| Requisition-to-PO time | Approval friction that may prompt workarounds | Adjust thresholds or delegation |
| Validated fiscal invoices | Completeness of tax evidence for claims | Resolve invalid FDMS documents promptly |
Pre-payment approval checklist
-
The vendor exists in an approved master record and banking details are verified.
-
The purchase order was authorised by the appropriate budget owner.
-
Receiving evidence supports the invoiced goods or services.
-
Repeated references and material variances are independently assessed.
-
FDMS validation and correct buyer details are recorded where applicable.
-
Exceptions are approved with named responsibility and a written reason.
-
Payment instructions are authorised separately and reconciled to the bank.
Frequently Asked Questions
Does Odoo three-way matching block all wrong payments?
No. The matching status identifies discrepancies, but configuration, permissions and exception approval govern whether users can proceed.
Should AP reject every duplicate-looking invoice reference?
No. Review partial deliveries, back-orders and deposits against the order and receipt records before deciding.
What should AP check before claiming Zimbabwe input VAT?
Validate the fiscal document through the ZIMRA FDMS portal or QR code, confirm “VALID” status and the relevant buyer details, and retain other supporting evidence.
How long should purchase-to-pay records be retained?
ZIMRA generally requires relevant accounting and tax records for at least six years. Keep electronic approval and reconciliation history retrievable alongside source documents.
How SERPA can help
SERPA helps Zimbabwean enterprises configure Odoo Purchase and Accounting around segregation of duties, reliable three-way matching, vendor-bill exception workflows and FDMS evidence. Request a consultation to review the controls between procurement and payment.