Purchase Management

The SODOO Purchase module manages your company

What You Will Learn in This Guide

  • How to manage Request for Quotation (RFQ) workflows and select the best offer
  • How to create and track purchase orders through the full lifecycle
  • How to implement 3-way matching (PO ↔ Receipt ↔ Invoice)
  • How to monitor and evaluate vendor performance systematically
  • How to set up long-term purchase agreements for cost savings
  • How to configure automatic replenishment rules integrated with Inventory and Manufacturing

Overview

The SODOO Purchase module manages your company's Procure-to-Pay (P2P) process from end to end. It digitizes the entire procurement cycle — from need identification to vendor payment — optimizing costs and strengthening supplier relationships.

15–25%
Cost Savings
40%
Faster Processing
95%+
Order Accuracy
100%
Traceability

RFQ Management

Request quotes from multiple vendors simultaneously, compare offers, and choose the best deal.

Order Tracking

Create, approve, and monitor purchase orders through delivery and invoicing.

Vendor Portal

Give vendors a self-service portal to view, confirm, and update orders.

Cost Analysis

Analyze procurement costs, track budget adherence, and identify savings opportunities.

The Procure-to-Pay (P2P) Flow

1. Need Identified 2. RFQ Sent 3. Quotes Evaluated 4. PO Created 5. Goods Received 6. Invoice Matched 7. Payment

Scenario: Urgent Raw Material Procurement

Situation: Production planning reports a need for 500 kg of aluminum profile next week. Current stock is 50 kg and the normal lead time is 5 business days. Urgent procurement is required to avoid halting production.

  1. Go to Purchase → Requests for Quotation → New and create an urgent RFQ
  2. From your approved vendor list, send the RFQ to 3 vendors simultaneously using Create Alternatives
  3. Set Expected Delivery: 3 days in the RFQ
  4. When quotes come in, evaluate them side-by-side in the Compare view
  5. Select the best combination of price and delivery time
  6. Click Confirm Order to create the PO and auto-send the email to the vendor
  7. Track vendor confirmation through the vendor portal
Result: Urgent need fulfilled in 3 days. Competitive bidding achieved 8% cost savings. The entire process is documented with full audit traceability.
Tip: With Inventory module integration, products that fall below minimum stock levels can automatically trigger purchase requests — reducing the frequency of emergency procurement.
Purchase

The Purchase overview screen

Requests for Quotation

Requests for Quotation — list view

Request for Quotation (RFQ)

A Request for Quotation (RFQ) is the formal document used to solicit pricing from vendors. In SODOO, you can create RFQs, send them to multiple vendors simultaneously, and compare the responses.

Why RFQs Matter

Benefits of Using RFQs
  • Competitive pricing through vendor comparison
  • Transparent, auditable procurement process
  • Stronger negotiating position
  • Reduced risk of single-vendor dependency
  • Documented justification for spend decisions
Risks of Skipping RFQs
  • Overpaying without market comparison
  • Sole-source supplier dependency
  • Lack of transparency — audit risk
  • Missed opportunity costs
  • Compliance violations in regulated industries

Creating an RFQ

Step 1: New RFQ

Navigate to Purchase Requests for Quotation New

Step 2: Select Vendor

Choose from your vendor list or create a new vendor record on the fly

Step 3: Add Products

Add the required products with quantities and any specific product variants

Step 4: Set Dates

Specify the Order Deadline (when vendor must respond) and Expected Arrival

Step 5: Send

Click Send RFQ by Email — the vendor receives a professional email with the quotation request

RFQ Statuses and Workflow

Status Meaning Available Actions
Draft RFQ not yet sent, can still be edited Edit, Send, Delete
Sent Email sent to vendor, awaiting response Confirm Order, Resend, Cancel
To Approve Amount exceeds limit, manager approval required Approve (authorized user), Refuse
Purchase Order RFQ confirmed and converted to a PO View PO, Print, Receive Products
Cancelled RFQ cancelled Reset to Draft, Delete

Alternative Quotes and Comparison

To get quotes from multiple vendors for the same products, use the Create Alternative feature:

Alternative Quote Process

On the RFQ form, click Create Alternative in the top button bar
Select a different vendor — products are automatically copied from the original RFQ
Send all alternative RFQs simultaneously
Update the unit prices as vendor responses arrive
Open the Compare Quotations view to see all alternatives side by side
Select the winning vendor and confirm the purchase order — alternatives are cancelled automatically
Note: When you confirm one alternative, SODOO automatically cancels the others (configurable). All alternatives are grouped together for a complete audit trail of the vendor selection decision.

RFQ Email Templates

The emails sent to vendors are fully customizable:

  • Navigate to Purchase Configuration Email Templates
  • Add your company logo and contact information
  • Include delivery terms and payment conditions
  • Use dynamic fields: {{ object.name }}, {{ object.date_order }}

Managing RFQs in SODOO — Step by Step

Create and Send an RFQ
  1. Go to Purchase Requests for Quotation and click New
  2. Select the Vendor from the dropdown (type to search)
  3. Click Add a Product in the Order Lines tab and select products
  4. Enter Quantity and review the auto-populated unit price from vendor pricelist
  5. Set Expected Arrival date
  6. Click Send RFQ by Email
Compare Alternatives
  1. From an RFQ, click Create Alternative and repeat the process for each vendor
  2. After responses arrive, update unit prices on each alternative RFQ
  3. Click Compare to open the side-by-side comparison view
  4. Click Choose next to the winning line to confirm that vendor's offer
Creating an RFQ

Creating a new request for quotation

🖼️
Vendor RFQThis screenshot is being refreshed. The previous image came from a live system and carried real people and customer data, so it was withdrawn; a replacement from the PORTWARE demo company is on its way.

Choosing a vendor while raising an RFQ

Purchase Orders (PO)

A Purchase Order (PO) is the legally binding order document sent to a vendor. In SODOO, an RFQ automatically becomes a PO when confirmed, or you can create a PO directly.

PO Creation Methods

From Confirmed RFQ

The most common method. Click Confirm Order on an RFQ to convert it to a PO.

Manual Creation

Go to Purchase Orders New for direct PO entry. Useful for recurring known purchases.

Auto Replenishment

When reorder rules trigger (stock below minimum), the system creates draft POs automatically.

MRP Integration

Material Requirements Planning generates POs automatically based on production needs and BOMs.

PO Lifecycle

Status Meaning Stock Impact
Draft RFQ Order not yet confirmed None
To Approve Awaiting manager approval (amount threshold exceeded) None
Purchase Order Confirmed and sent to vendor Expected stock quantity increases
Partial Receipt Some items received, remaining expected On-hand stock partially increases
Done All products received and invoiced All stock levels updated
Cancelled Order cancelled Expected stock reverts to zero

Receiving Goods (Goods Receipt Note)

When a vendor delivers products, record the receipt in SODOO:

  1. Open the PO and click Receive Products
  2. Physically count and inspect incoming goods
  3. Enter the Done quantity for each product line
  4. If lot/serial number tracking is enabled, enter those numbers
  5. Add notes for any damaged or missing items
  6. Click Validate to update stock levels in real time
Important: Validating a goods receipt automatically updates stock levels and creates the accounting entry (if perpetual inventory is configured). Always validate only what you have physically verified.

Scenario: Partial Delivery and Invoice Matching

Situation: You ordered 1,000 units. The vendor shipped 600 in the first delivery and 400 in the second. Each shipment has its own invoice.

  1. When the first shipment arrives, click Receive Products on the PO
  2. Enter Done quantity: 600 → click Validate
  3. SODOO automatically creates a backorder for the remaining 400 units
  4. When the first invoice arrives, click Create Bill or match an existing bill
  5. Verify that the invoiced quantity (600) matches the received quantity
  6. Repeat the process when the second shipment arrives
  7. Once all deliveries and invoices are complete, the PO status automatically becomes "Done"
Result: 3-way matching (PO ↔ Delivery ↔ Invoice) ensures discrepancies are caught automatically. Payment is secure and fully documented.
New Purchase Order

Creating a new purchase order

3-Way Matching

Three-way matching is the critical process of verifying consistency between the purchase order, the goods receipt, and the vendor invoice before authorizing payment. It prevents overpayments, duplicate payments, and fraud.

1. Purchase Order

What you ordered: products, quantities, and agreed unit prices.

2. Goods Receipt (GRN)

What was actually delivered and accepted into your warehouse.

3. Vendor Invoice

What the vendor is billing: products, quantities, and amounts.

Warning: When SODOO detects a discrepancy during 3-way matching, it displays a warning and blocks invoice confirmation until the issue is resolved or explicitly overridden by an authorized user.

Billing Policy Options

Policy When Invoice is Created Best For
Based on Ordered Quantities As soon as PO is confirmed Services, digital goods, trusted vendors
Based on Received Quantities Only after goods are received and validated Physical goods, high-value items (recommended)

Creating and Matching a Vendor Bill in SODOO

  1. Open the confirmed PO with received products
  2. Click the Create Bill button
  3. SODOO pre-fills the bill with quantities from the goods receipt
  4. Compare the pre-filled amounts to the vendor's paper invoice
  5. If quantities or prices differ, investigate before confirming
  6. Click Confirm to post the accounting entry
  7. Process payment from the Accounting module when due

Vendor Management

Maintain vendor information, payment terms, and contact details centrally. Strong vendor relationships are the foundation of a reliable supply chain.

Vendor Record Components

Tab Content Purpose
General Name, address, tax ID, contact persons Core identity information
Purchase Default payment terms, currency, discount rate, lead times Commercial conditions
Accounting Vendor account, bank details, fiscal position Financial integration
Sales Customer info if this vendor is also a customer Bidirectional business relationship
Internal Notes Warnings, special notes, historical issues Institutional memory

Vendor Pricelists

Define product-level pricing for each vendor:

  • Unit price per product: The vendor's agreed price for each SKU
  • Minimum Order Quantity (MOQ): Minimum units per order
  • Validity dates: Start and end date for this pricing
  • Quantity-based price breaks: Discounted price for bulk orders (e.g., 1–99 units: $10; 100+ units: $8.50)
  • Lead Time: Number of days from order to delivery for this vendor
Tip: Import vendor pricelists from Excel in bulk via Purchase Configuration Vendor Pricelists Import. This saves significant time when onboarding a new vendor with a large catalog.

Multi-Vendor Strategy

For critical products, qualify multiple vendors as a risk management strategy:

Advantages
  • Reduced supply disruption risk
  • Competitive pricing through ongoing comparison
  • Stronger negotiating position
  • Quality benchmarking between vendors
Considerations
  • Increased management complexity
  • Potential loss of volume discounts
  • Possible quality inconsistency
  • More coordination effort required

Managing Vendors in SODOO

Add a New Vendor
  1. Go to Purchase Orders Vendors and click New
  2. Select Company type and fill in the company name and address
  3. Under the Purchase tab, set Payment Terms and Currency
  4. Under the Accounting tab, assign the Account Payable account
  5. Add bank account details for payment processing
  6. Save the record
Add Vendor Pricelist
  1. Open the product record and go to the Purchase tab
  2. Click Add a Line in the Vendor section
  3. Select the vendor, enter Price, Min. Qty, and Lead Time
  4. Repeat for each approved vendor of this product
  5. The lowest-cost vendor automatically appears first on RFQs

Vendor Evaluation

Systematically track and evaluate vendor performance. Make data-driven vendor selection, development, and exit decisions based on objective metrics.

Vendor Scorecard

96%
On-Time Delivery
98%
Quality Score
85%
Price Competitiveness
4.2h
Avg. Response Time

Evaluation Criteria

Metric Formula / Measurement Target Weight
On-Time Delivery (OTD) On-time deliveries / Total deliveries × 100 ≥ 95% 30%
Quality Score Accepted / Total received × 100 ≥ 98% 30%
Price Competitiveness Index against market average ≤ 100 25%
Response Time Time from RFQ sent to quote received ≤ 48 hours 10%
Flexibility Urgent order fulfillment rate ≥ 80% 5%

Vendor Classification

Class A — Strategic

Overall score ≥ 90. Long-term partnership, preferred vendor status, joint development programs.

Class B — Approved

Score 75–89. Regular business, development potential, annual review meetings.

Class C — Watch

Score 60–74. Close monitoring, improvement plan required, alternative sourcing begins.

Class D — Exit

Score < 60. Actively seek replacement, phase-out plan, do not issue new POs.

Tip: In SODOO, tag vendors with their classification (A, B, C, D) using the Tags field. Use these tags to filter your vendor list and reports. Schedule quarterly evaluation reviews as recurring activities on each vendor's contact record.

Purchase Agreements

Create long-term vendor agreements to secure price stability and supply continuity. Agreements provide predictability for both buyer and seller, enabling better planning.

Agreement Types

Blanket Order
  • Fixed price guarantee for a defined period
  • No quantity commitment required upfront
  • Order as-needed within the agreement period
  • Protection from price fluctuations
  • Example: $5.00/kg for 12 months
Quantity Contract
  • Commitment to purchase a specific total quantity
  • Discounted price in exchange for volume guarantee
  • Flexible delivery scheduling
  • Volume discount advantage
  • Example: 10,000 units/year at 15% discount

Creating and Managing Agreements

New Agreement

Navigate to Purchase Orders Purchase Agreements New

Select Agreement Type

Choose Blanket Order or Purchase Contract based on your commercial arrangement

Vendor & Dates

Select the vendor and enter validity period (start and end dates)

Products & Prices

Add the products covered by the agreement with their special agreed prices

Confirm

Click Confirm to activate the agreement

Using Purchase Agreements on Orders

When creating an RFQ or PO for a vendor with an active agreement:

  1. SODOO automatically detects the active agreement and shows a banner notification
  2. Click Purchase Agreement at the top of the order form to link it
  3. Products and prices from the agreement are automatically populated
  4. Agreement usage is tracked: remaining quantity / amount is updated after each PO
Important: Set up expiry reminders by creating a scheduled activity on each agreement 30–60 days before the end date. This allows time to renegotiate or source alternatives without supply gaps.

Products & Pricing

Product Configuration for Purchasing

Each product must be configured correctly to work with the Purchase module:

Field Description Impact
Product Type Storable Product, Consumable, or Service Determines if stock levels are tracked
Purchase UoM Unit of measure for purchasing (may differ from sales UoM) Conversion applied automatically on receipt
Cost Default purchase price (can be overridden per vendor) Used in inventory valuation
Lead Time Days from PO confirmation to arrival Used by scheduler and reorder rules
Billing Policy Invoice based on ordered or received quantities Determines when vendor bill can be created

Price Management Strategies

Negotiated Rates

Individual prices agreed with each vendor, stored in the vendor pricelist on the product record.

Volume Discounts

Quantity-tiered pricing: the more you order, the lower the unit price. Configured in vendor pricelist breaks.

Seasonal Pricing

Time-bounded prices for seasonal goods. Use validity dates on vendor pricelist entries.

Multi-Currency

Purchase in any currency; SODOO converts to your company currency using live or fixed exchange rates.

Auto Replenishment

Configure reorder rules so SODOO automatically creates purchase proposals when stock falls below defined thresholds. Reduce manual monitoring and prevent stockouts.

Reorder Rule Types

Min/Max Replenishment

When stock falls below Min Qty, order enough to reach Max Qty. Classic and simple. Best for predictable, steady-demand products.

Make to Order (MTO)

A purchase order is created only when a confirmed sales order or production order creates demand. Zero-inventory strategy for expensive or custom items.

Setting Up a Reorder Rule

Configure Auto Replenishment in SODOO

  1. Go to Inventory Configuration Reorder Rules
  2. Click New
  3. Select the Product and Location (which warehouse)
  4. Set Min Quantity — the stock level that triggers replenishment
  5. Set Max Quantity — the target stock level after replenishment
  6. Set Quantity Multiple — order in multiples of this number (e.g., pallet sizes)
  7. Assign the preferred Vendor for auto-generated POs
  8. Save — the scheduler runs daily and creates draft POs when needed
Note: Click Run Scheduler manually in Inventory Operations Replenishment to trigger it immediately for testing.

MRP Integration

If you use the Manufacturing module, the Material Requirements Planning (MRP) scheduler also generates purchase orders based on production needs:

  • Bills of Materials (BoM): Define the components required for each production run
  • Production Orders: Create a production order; MRP calculates component needs
  • Purchase Proposals: MRP creates draft POs for components sourced externally
  • Lead Times: MRP factors in vendor lead times to ensure materials arrive on time

Reports & KPIs

Measure procurement performance, identify cost-saving opportunities, and monitor vendor reliability with SODOO's built-in purchase analytics.

Key Procurement KPIs

Purchase Price Variance
(Actual Price − Standard Price) × Qty
On-Time Delivery Rate
On-time receipts / Total receipts × 100
Avg. Lead Time
Sum of actual lead times / Number of POs
Purchase Order Cycle Time
PO creation date to receipt date

Standard Reports

Report Location Key Insights
Purchase Analysis Purchase Reporting Purchase Spend by vendor, product, category, and time period
Vendor Performance Purchase Reporting Vendor OTD rate, quality scores, price trends per vendor
Price Variance Purchase Reporting Actual vs. standard prices; procurement savings tracking
Orders to Receive Purchase Orders Purchase Orders Outstanding deliveries expected this week / month
Bills to Pay Accounting Vendors Bills Upcoming and overdue vendor payments

Running Purchase Reports in SODOO

Spend by Vendor Analysis
  1. Go to Purchase Reporting Purchase
  2. Click Group By Vendor
  3. Add a date filter for the period you want to analyze
  4. Switch to pivot view for a tabular breakdown by product category
Export to Excel
  1. From any report view, click the Export button (top right)
  2. Choose XLSX format for full Excel compatibility
  3. The file downloads immediately with all visible data
Save a Favorite Report View
  1. Set up your desired filters, group-by, and measures
  2. Click Favorites Save Current Search
  3. Name it and optionally share it with the whole team
  4. Access it instantly next time from the Favorites dropdown

Configuration

Configure the Purchase module to match your company's procurement policies:

Setting Description Recommendation
Purchase Order Approval Require manager approval for POs over a specified amount Enable with a threshold matching your policy (e.g., $5,000)
Purchase Lock Lock confirmed POs to prevent editing without unlocking Enable for better financial control
Vendor Bills Billing policy: based on ordered or received quantities Use "Based on Received" for physical goods
Purchase Agreements Enable blanket orders and quantity contracts Enable if you have long-term vendor contracts
Warning on Purchase Display warnings when ordering from specific vendors or products Use for blocked vendors or products under quality review

Access all settings at: Purchase Configuration Settings

Tip: Enable Landed Costs in the Inventory settings if you need to allocate shipping, customs, and handling fees to the cost of purchased goods. This gives you accurate product cost valuations including all procurement-related expenses.

Frequently Asked Questions

Can I purchase from a vendor who is also a customer?
Yes. In SODOO, a contact can be both a vendor and a customer simultaneously. The same company record is used for both. Go to the contact record, enable both the Customer and Vendor flags. Separate accounts payable and receivable accounts are maintained automatically.
What happens if the invoice amount differs from the PO amount?
SODOO displays a warning icon and a message explaining the discrepancy. You can either: (a) Investigate with the vendor and request a corrected invoice, (b) Accept the variance and add a note explaining the reason, or (c) Create a credit note if you were overcharged. Never pay a mismatched invoice without investigation — this is the purpose of 3-way matching.
How do I handle a return to vendor?
Open the original goods receipt (stock picking) and click Return. Enter the quantity to return and confirm. SODOO creates a reverse transfer. Then create a vendor credit note (refund) from the original vendor bill by clicking Add Credit Note. The credit note reduces your payable balance with that vendor.
Can I set up different approval levels for different spending amounts?
SODOO's standard Purchase Approval has a single threshold. For multi-level approval, use the Approvals module (available in SODOO Community as a custom module) or configure automated actions that send notifications to additional approvers based on amount ranges. Alternatively, use the Studio module to add a custom approval workflow.
How do I track the landed cost of imported goods?
Enable the Landed Costs feature in Inventory Configuration Settings. After receiving goods, create a Landed Costs record from the receipt. Add cost lines for freight, customs duty, insurance, etc. SODOO allocates these costs to each product proportionally (by quantity, weight, or volume) and updates the product's average cost automatically.
Can vendors see and confirm their own orders through a portal?
Yes. SODOO has a built-in Vendor Portal. Enable it by going to Purchase Configuration Settings Vendor Portal. Then invite vendors as portal users from their contact record. Vendors can log in, view their POs, upload invoices, and confirm delivery dates.

Best Practices

Always use RFQs for new or large purchases: Even if you know which vendor you want, the RFQ creates a formal paper trail and forces a price check. Your finance team and auditors will thank you.
Maintain an approved vendor list: Tag vendors as "Approved" before allowing orders. Use SODOO purchase warnings to block unapproved or suspended vendors automatically.
Never skip goods receipt: Always validate receipts before paying invoices. Paying for goods you haven't received is a common fraud risk. The 3-way match only works if all three documents are in the system.
Review vendor performance quarterly: Pull the Vendor Performance report every quarter. Vendors with declining scores should receive a formal improvement notice. Replace chronic underperformers.
Monitor purchase agreement expiry: An expired blanket order means your next PO will be created at market price instead of the agreed rate. Set activity reminders 45 days before every agreement expires.
Keep vendor bank details secured: Fraudsters sometimes contact companies posing as vendors and request bank account changes. Always verify bank detail changes with a phone call to a known contact before updating the system.