Purchase Module Overview
Odoo Purchase manages the entire procurement process: vendor selection, request for quotation, purchase order, goods receipt, and vendor bill matching. It integrates with Inventory for automatic reordering and Accounting for bill payment.
Setup Steps
1. Vendors
# Contacts → Create → check 'Is a Company'
# Set as vendor:
# - Purchase tab: vendor pricelist, payment terms
# - Accounting tab: bank account for payments
# - Address: for shipping and billing
# Vendor categories (tags):
# Raw Materials, Packaging, Services, IT, Office Supplies2. Products with Vendor Info
# Product → Purchase tab:
# Vendor Pricelists:
# - Vendor: Acme Corp
# - Price: $12.50/unit
# - Minimum Qty: 100
# - Delivery Lead Time: 5 days
# You can set multiple vendors per product
# Odoo uses the cheapest vendor matching minimum quantity3. Purchase Settings
# Settings → Purchase:
# - Purchase Order Approval: enable for amounts > threshold
# - Lock Confirmed PO: prevent editing after confirmation
# - Vendor Bills: auto-create from PO or manual matching
# - Purchase Agreements: blanket orders, call for tendersPurchase Workflow
# 1. RFQ (Request for Quotation)
# → Create RFQ → send to vendor(s) → receive quotes
# 2. Purchase Order
# → Select best quote → Confirm PO
# → Vendor receives confirmed order
# 3. Receipt
# → Goods arrive → validate receipt in Inventory
# → Quantities checked against PO
# 4. Vendor Bill
# → Vendor sends invoice → match against PO + receipt
# → Three-way match: PO ↔ Receipt ↔ Bill
# 5. Payment
# → Approve bill → schedule payment → pay vendorPurchase Agreements
Blanket Orders
# Long-term agreement with vendor:
# "We will buy 10,000 widgets over 12 months at $10/unit"
# Setup: Purchase → Purchase Agreements → Blanket Order
# - Vendor: Acme Corp
# - Product: Widget
# - Quantity: 10,000
# - Unit Price: $10.00
# - Valid until: 2027-03-22
# Call-off: create individual POs from the blanket order
# Track: ordered vs remaining quantityCall for Tenders
# Send RFQ to multiple vendors, compare quotes:
# Purchase → Purchase Agreements → Call for Tenders
# Add vendors → send RFQ to all
# Receive responses → compare prices
# Select winner → create PO → reject othersThree-Way Matching
# The gold standard for procurement control:
# 1. Purchase Order: ordered 100 widgets at $10 = $1,000
# 2. Receipt: received 95 widgets (5 short)
# 3. Vendor Bill: billed for $1,000
# Match result: bill exceeds receipt by 5 units
# Action: either reject bill or accept with note
# Odoo highlights discrepancies:
# - Quantity mismatch (billed > received)
# - Price mismatch (billed price ≠ PO price)
# - Both → requires manager approvalAutomated Reordering
# Odoo auto-creates RFQs/POs when stock is low:
# Inventory → Reordering Rules:
# Product: Widget
# Min Quantity: 50 (trigger reorder below this)
# Max Quantity: 200 (order up to this)
# Route: Buy
# Vendor: auto-selected from product vendor list
# When stock drops below 50:
# → Odoo creates RFQ for (200 - current stock) units
# → To the preferred vendor
# → Can be auto-confirmed if setting enabledVendor Evaluation
- On-time delivery rate
- Quality pass rate (from incoming inspections)
- Price competitiveness
- Response time to RFQs
- Return/rejection rate
DeployMonkey + Purchasing
Deploy Odoo Purchasing on DeployMonkey. The AI agent configures vendor management, RFQ workflows, reordering rules, and three-way matching. Streamline procurement from day one.