Introduction
Picture the classic scene: sales confirms delivery Friday, the planner finds out Thursday night, and Odoo Purchase was never part of the conversation. That is the gap this guide addresses.
We ranked ten scenarios from creating a BOM for a simple table to running a deliberately exaggerated level-10 production puzzle, each with a click-by-click Odoo checklist.
Odoo Purchase is where physical reality (stock, batches, pickings, production) meets what customers and finance expect. When it works, nobody retypes quantities. When it does not, everyone blames the ERP.
Plenty of factories and warehouses run on experience, WhatsApp, and Excel tabs called FINAL_v3. It holds until you scale, add a second site, or audit traceability.
Purchase is part of Odoo's modular ERP. Teams adopt it when they want clear responsibilities, repeatable workflows, and searchable history instead of isolated messages and offline spreadsheets. Odoo Purchase: Requests, RFQs, Vendor Bills, and Receipts states the storyline for stakeholders approving budgets.
With Purchase, you model how goods actually move: receive, store, pick, manufacture, ship, scrap, replenish. Each step leaves a record your future self will thank you for.
You will read ten use cases with concrete company examples, from first BOM to barcode on the shop floor.
Operations directors, warehouse leads, and production planners are the primary audience. Developers can join later; this is business language first.
This article is a ranked Top 10 from Level 1 (easy) to Level 10 (expert). Every level includes numbered steps: what you would actually click in Odoo Purchase.
Start where you are comfortable, not at level 10 because it sounds impressive.
Read the challenge section next, then open the level that matches your team today.
In this guide, you will see:
- What Odoo Purchase is responsible for in a typical company stack
- Where teams feel the most friction today (and why)
- Ten ranked use cases from beginner discipline to advanced strategy
- When automation or integrations justify bringing in an Odoo partner
The Challenge
Sales promises delivery Friday. The planner learns Thursday evening because the order lived in email, not in Odoo Purchase. Expedite fees eat the margin, and finance discovers the stock gap at month-end, not on Tuesday.
Warehouses and factories run on experience, yet stock and production data often live outside Odoo. That gap creates stockouts, urgent purchases, and month-end surprises.
Sound familiar? Teams usually hit these walls:
- Stock files that do not match what sales promises
- Production or purchasing plans made without live quantities
- Traceability gaps when customers or auditors ask questions
The good news: you do not need a big-bang project to fix everything. Pick one use case below, run it for 30 days in Odoo Purchase, and measure what changes.
Top 10 Purchase Use Cases
10 use cases for Odoo Purchase, ranked from Level 1 (easy, do it this afternoon) to Level 10 (expert). Each one answers: what would we build, and what are the clicks in Odoo?
Level 1 is the easy daily win. The last level is intentionally over the top so you see how far the same app can scale when architecture and data stay clean.
Pick your level, follow the numbered steps in a test database, then move up when the previous level feels boring.
1. Send your first RFQ to a single vendor Level 1 — Easy
Level 1 is the simplest possible Purchase action: one buyer, one vendor, one product. No agreements, no approvals, no inventory rules, just a clean Request for Quotation sent by email.
Here's how you'd do it in Odoo:
- Install the Purchase app, then go to Purchase, Vendors, New, and create the vendor with name, contact email, and payment terms.
- Open Purchase, Requests for Quotation, New, pick the vendor, and add one product line with the quantity you need.
- Set the Order Deadline, check the Delivery Address, and click Send by Email so the vendor receives the RFQ PDF.
- When the vendor confirms the price, edit the line if needed and click Confirm Order to turn the RFQ into a Purchase Order.
- Open the chatter to see the full timeline: who sent the RFQ, who confirmed, and when the PO was created.
What you get: Every purchase now has a number, a date, a vendor confirmation, and a traceable email trail, so finance never asks again where an order came from.
2. Confirm the PO and receive the goods at the dock Level 2 — Easy
Level 2 introduces the second pillar of the blog title: Receipts. The buyer hands off to the warehouse, who validates actual quantities received against the Purchase Order in one click.
Here's how you'd do it in Odoo:
- Open the confirmed Purchase Order and click the Receipt smart button to land on the linked inbound transfer.
- At the dock, the warehouse user opens Inventory, Operations, Transfers, To Process, and picks the transfer.
- Enter the Done quantity per line; if 78 arrived instead of 80, fill 78 and add an internal note on the chatter.
- Click Validate; Odoo updates stock on hand and back-links the receipt to the PO automatically.
- Open the PO again to see the Received quantity update on each line, ready for the vendor bill check next.
What you get: The warehouse and the buyer always read the same numbers, so missing or partial deliveries surface immediately instead of at month-end.
3. Post your first Vendor Bill straight from a Purchase Order Level 3 — Easy
Level 3 covers the third pillar: Vendor Bills. Finance reuses the PO data instead of retyping it, so the bill is posted in seconds with the exact same lines, prices, and taxes.
Here's how you'd do it in Odoo:
- Open the confirmed Purchase Order and click Create Bill at the top of the form.
- Odoo opens a draft Vendor Bill with all lines pre-filled from the PO: product, quantity, unit price, taxes.
- Set the Bill Date, Bill Reference (vendor invoice number), and Due Date, then attach the PDF received by email.
- Click Confirm to post the bill; the journal entry hits Accounts Payable and the right expense or stock account.
- From the bill, click Register Payment when due to record the bank transfer and close the loop with Accounting.
What you get: Vendor bills are entered in a minute, never retyped from a PDF, and every euro is linked back to a PO line that someone approved.
4. Build a vendor pricelist with quantity breaks on each product Level 4 — Medium
Level 4 introduces a feature unique to Purchase: prices that travel with the product and the vendor, not in someone's head or in a forgotten spreadsheet on a shared drive.
Here's how you'd do it in Odoo:
- Open a product, go to the Purchase tab, Vendors, Add, and add a vendor with price, MOQ, lead time, and currency.
- Add quantity breaks on the same vendor line: 1+ at price A, 50+ at price B, 100+ at price C.
- Repeat for the two or three vendors who can supply this product, in the order you prefer them.
- Open a new RFQ for that product; the unit price auto-fills based on the chosen vendor and the ordered quantity.
- Go to Purchase, Reporting, Purchase Analysis, Group By Vendor and Product, to compare actual paid versus negotiated.
What you get: The negotiated price is the price on every RFQ, automatically, and annual renegotiations start with real volume data instead of estimates.
5. Capture employee Purchase Requests via the Approvals app Level 5 — Medium
Level 5 covers the first pillar of the blog title: Purchase Requests. Anyone in the company asks for what they need; the buyer decides what becomes a real RFQ, with the full audit trail kept in Odoo.
Here's how you'd do it in Odoo:
- Install Approvals, then go to Approvals, Configuration, Approval Types, New, and create a Purchase Request type.
- Enable Has Product and Has Quantity on the type so requesters describe exactly what they need with a desired delivery date.
- Set the approver: direct manager first, then the Purchasing Manager, with a threshold above which Finance also approves.
- An employee opens Approvals, New, picks Purchase Request, fills the form, and submits; activities ping the right managers.
- Once approved, the buyer opens Purchase, Requests for Quotation, New, and pastes the request lines to launch the actual RFQ.
What you get: Random Slack messages and email requests to the buyer stop; every demand is logged, prioritized, and converted into a real PO with no rework.
6. Compare three vendor quotes with a Call for Tenders agreement Level 6 — Medium
Level 6 uses Purchase Agreements to document procurement decisions. Three RFQs go out, three answers come back, and the buyer picks the winner with the data side by side instead of from memory.
Here's how you'd do it in Odoo:
- Open Purchase, Orders, Purchase Agreements, New, and set Type to Call for Tenders with the deadline.
- Add one or more product lines with the target quantities for which you want competitive quotes.
- Click New Quotation; pick a vendor and Odoo generates a draft RFQ linked back to the agreement.
- Repeat for vendors two and three; once the prices come back, the agreement displays them line by line, side by side.
- Pick the winner, confirm its RFQ into a PO; the others are archived with a Lost Reason kept on the agreement.
What you get: Procurement decisions become defendable: anyone reopening the agreement six months later sees who quoted what and why one vendor won.
7. Block vendor overbilling with a three-way match Level 7 — Hard
Level 7 wires the four pillars together: PO, Receipt, and Vendor Bill must agree before payment. This is where Odoo Purchase saves real money for finance teams.
Here's how you'd do it in Odoo:
- Go to Purchase, Configuration, Settings, and set Bill Control to Received Quantities; save.
- Confirm a PO of 80 units; the warehouse receives 78 at the dock and validates the partial transfer.
- Finance creates the Vendor Bill from the PO; Odoo pre-fills 78 instead of 80, matching the actual receipt.
- If the vendor sends a bill for 80, the mismatch is visible immediately; the buyer asks for a credit note before posting.
- Only after the bill matches the receipt is Confirm enabled; the payment scheduler then picks it up at maturity.
What you get: Vendor overbilling stops being absorbed silently; every euro paid is backed by a PO line and a receipt, audit-ready.
8. Run demand-driven procurement with reordering rules, MTO and the scheduler Level 8 — Hard
Level 8 connects Purchase to real demand signals across Sales and Inventory. Buyers stop firefighting because Odoo proposes the right RFQs before stock runs out.
Here's how you'd do it in Odoo:
- On bestseller products, open Inventory, Operations, Reordering Rules, New, and set Min, Max, Vendor, and Lead Time.
- On engineered-to-order products, open the product Purchase tab and set Route to Make To Order so a confirmed sale triggers an RFQ.
- Open Inventory, Operations, Run Scheduler daily, or schedule it via a server action so proposals appear every morning.
- Open Purchase, Orders, Requests for Quotation, filter Draft Auto, and convert the suggested RFQs into real orders in batch.
- Use Purchase, Reporting, Vendor On-Time Delivery to adjust lead times each quarter based on real performance.
What you get: Stockouts on key SKUs drop sharply, buyers spend their time on negotiation, and sales rarely promise dates that operations cannot honor.
9. Lock yearly Blanket Orders and open a Vendor Portal for strategic suppliers Level 9 — Hard
Level 9 scales procurement: annual commitments are negotiated once, then drawn weekly, and top vendors confirm their own RFQs and upload bills through a dedicated portal.
Here's how you'd do it in Odoo:
- Open Purchase, Orders, Purchase Agreements, New, set Type to Blanket Order with annual validity, the negotiated price, and the total committed quantity.
- Each week, open the agreement and click New Purchase Order to call off the quantity needed; Odoo decrements the remaining commitment.
- Go to Settings, General Settings, and enable Customer and Vendor Portal access; from each strategic vendor, grant portal access.
- Vendors log in to /my/purchase, confirm or decline RFQs themselves, upload signed bills, and follow payment status without emailing the buyer.
- Build a Vendor Performance Scorecard in Purchase Reporting: on-time delivery, price drift, defect rate, refreshed each quarter for QBRs.
- Set a server action to email procurement when consumption on a blanket order passes 80% of the annual target.
What you get: Routine procurement runs itself for the top 20% of vendors; buyers regain time for sourcing, negotiation, and supply-risk work.
Designing the blanket order rules, the vendor portal access rights, and the cross-app scorecards is exactly the kind of cross-functional setup Dasolo runs as a partner-led engagement.
10. Build an AI procurement OS with OCR bills, EDI, anomaly detection and live dashboards Level 10 — Expert
Level 10 is the full operating system: AI reads bills, EDI links top vendors machine-to-machine, anomaly detection flags risky orders, and a live dashboard tracks every commitment across the company in real time.
Here's how you'd do it in Odoo:
- Enable Bill Digitization in Accounting so vendor invoice PDFs are auto-parsed by OCR; lines, tax, and PO link are pre-filled before finance reviews.
- On the top five vendors, set up EDI exchange (XML, EDIFACT, or Peppol): PO, ASN, and Invoice flow directly between Odoo and the vendor ERP.
- Train an AI procurement assistant on the Knowledge base of supplier contracts, blanket orders, and catalog so it answers buyer questions in any language.
- Use Studio Automations and AI anomaly rules to flag unusual orders: price drift above 8%, lead time spikes, single-source dependencies, or unexpected MOQ jumps.
- Connect Purchase to Sales, Inventory, Accounting, and Project to propagate every change: vendor bill paid triggers project cost update and dashboard refresh.
- Build a Spreadsheet Procurement Cockpit: open RFQs, late POs, three-way mismatches, savings versus baseline, on-time delivery per vendor, refreshed live.
- Plug Slack or Teams alerts on critical events: late delivery on a top-10 customer order, vendor bill mismatch above threshold, blanket order exhaustion.
What you get: Procurement stops being a back-office cost and becomes a strategic function with live data, predictive alerts, and AI co-pilots for every buyer.
Wiring AI procurement copilots, EDI links, anomaly detection rules, and the live cockpit dashboards is the architecture Dasolo assembles as a partner-led engagement, so teams skip the multi-quarter trial-and-error phase.
When Expert Help Makes Sense
If levels 1 to 6 fit your world, you can often succeed with standard Odoo Purchase, a patient internal owner, and a sandbox where people are allowed to break things safely.
From level 7 upward, the stakes rise: automated workflows that email the wrong customer, Studio fields that block upgrades, APIs that silently stop syncing stock at 2 a.m.
That is not a failure of your team. It is a signal that architecture, testing, and governance matter.
Bring in a partner when you need multi-app design, country-specific compliance, complex integrations, or a go-live date the board already put in the calendar.
Work With Dasolo
Dasolo helps companies implement Odoo the way they actually work: custom apps, clean integrations, and training people will remember after the consultants leave.
If your roadmap for Purchase includes the advanced use cases in this guide, we can map a phased plan: quick wins first, then automation and integrations with clear owners and test scripts.
You keep control of scope and budget. We bring the Odoo depth so your team does not learn expensive lessons in production.
Book a free consultation: