Skip to Content
Odoo Menu
  • Sign in
  • Try it free
  • Apps
    Finance
    • Accounting
    • Invoicing
    • Expenses
    • Spreadsheet (BI)
    • Documents
    • Sign
    Sales
    • CRM
    • Sales
    • POS Shop
    • POS Restaurant
    • Subscriptions
    • Rental
    Websites
    • Website Builder
    • eCommerce
    • Blog
    • Forum
    • Live Chat
    • eLearning
    Supply Chain
    • Inventory
    • Manufacturing
    • PLM
    • Purchase
    • Maintenance
    • Quality
    Human Resources
    • Employees
    • Recruitment
    • Time Off
    • Appraisals
    • Referrals
    • Fleet
    Marketing
    • Social Marketing
    • Email Marketing
    • SMS Marketing
    • Events
    • Marketing Automation
    • Surveys
    Services
    • Project
    • Timesheets
    • Field Service
    • Helpdesk
    • Planning
    • Appointments
    Productivity
    • Discuss
    • Approvals
    • IoT
    • VoIP
    • Knowledge
    • WhatsApp
    Third party apps Odoo Studio Odoo Cloud Platform
  • Industries
    Retail
    • Book Store
    • Clothing Store
    • Furniture Store
    • Grocery Store
    • Hardware Store
    • Toy Store
    Food & Hospitality
    • Bar and Pub
    • Restaurant
    • Fast Food
    • Guest House
    • Beverage Distributor
    • Hotel
    Real Estate
    • Real Estate Agency
    • Architecture Firm
    • Construction
    • Property Management
    • Gardening
    • Property Owner Association
    Consulting
    • Accounting Firm
    • Odoo Partner
    • Marketing Agency
    • Law firm
    • Talent Acquisition
    • Audit & Certification
    Manufacturing
    • Textile
    • Metal
    • Furnitures
    • Food
    • Brewery
    • Corporate Gifts
    Health & Fitness
    • Sports Club
    • Eyewear Store
    • Fitness Center
    • Wellness Practitioners
    • Pharmacy
    • Hair Salon
    Trades
    • Handyman
    • IT Hardware & Support
    • Solar Energy Systems
    • Shoe Maker
    • Cleaning Services
    • HVAC Services
    Others
    • Nonprofit Organization
    • Environmental Agency
    • Billboard Rental
    • Photography
    • Bike Leasing
    • Software Reseller
    Browse all Industries
  • Community
    Learn
    • Tutorials
    • Documentation
    • Certifications
    • Training
    • Blog
    • Podcast
    Empower Education
    • Education Program
    • Scale Up! Business Game
    • Visit Odoo
    Get the Software
    • Download
    • Compare Editions
    • Releases
    Collaborate
    • Github
    • Forum
    • Events
    • Translations
    • Become a Partner
    • Services for Partners
    • Register your Accounting Firm
    Get Services
    • Find a Partner
    • Find an Accountant
      • Get a Tailored Demo
    • Implementation Services
    • Customer References
    • Support
    • Upgrades
    Github Youtube Twitter Linkedin Instagram Facebook Spotify
    +32 2 290 34 90
    • Get a Tailored Demo
  • Pricing
  • Help
  1. APPS
  2. Purchasing
  3. Purchase eSourcing v 19.0
  4. Sales Conditions FAQ

Purchase eSourcing

by Grevlin Global Corp. https://www.grevlin.com
Odoo

$ 248.04

v 19.0 Third Party
Apps purchases are linked to your Odoo account, please sign in or sign up first.
Availability
Odoo Online
Odoo.sh
On Premise
Odoo Apps Dependencies • Discuss (mail)
• Inventory (stock)
• Purchase (purchase)
• Invoicing (account)
• Project (project)
• Surveys (survey)
• Employees (hr)
Community Apps Dependencies Show
Tender Management Suite
Lines of code 5879
Technical Name grev_od_purchase_esourcing
LicenseOPL-1
Websitehttps://www.grevlin.com
You bought this module and need support? Click here!
Availability
Odoo Online
Odoo.sh
On Premise
Odoo Apps Dependencies • Discuss (mail)
• Inventory (stock)
• Purchase (purchase)
• Invoicing (account)
• Project (project)
• Surveys (survey)
• Employees (hr)
Community Apps Dependencies Show
Tender Management Suite
Lines of code 5879
Technical Name grev_od_purchase_esourcing
LicenseOPL-1
Websitehttps://www.grevlin.com
  • Description
  • Documentation
  • License

Purchase eSourcing

Structured, transparent, and auditable electronic sourcing for RFQs, tenders, and competitive bidding — built natively on Odoo 19.0.

✓ Odoo 19.0 ✓ OPL-1 License ✓ v2.1.0

Purchase eSourcing is the unified orchestration layer for all sourcing activities. Run parallel RFQ campaigns, enforce blind bidding, score supplier offers with configurable weighted criteria, and award with a full justification audit trail — all within Odoo. For complex multi-lot tenders, it seamlessly delegates to the Tender Management engine.

Core Features

📄

Parallel RFQ Execution

Publishing an event auto-generates one native Odoo RFQ per invited supplier. Confirming the winner cascades cancellation of all sibling RFQs instantly.

🔒

Blind Bidding

Prices remain hidden on the comparison matrix until the event closes. Suppliers bid independently, eliminating collusion and ensuring fair competition.

🔄

Multi-Round Bidding

Shortlist suppliers between rounds, freeze previous bids, and set new deadlines. Buyer retains full control over which suppliers advance.

🎯

Weighted Scoring

Min-max normalization across price, MOQ, lead time, quality, and reliability. Configurable weights (default: 40/20/20/10/10). Bids auto-ranked on scoring.

✍

Award Justification Wizard

Mandatory rationale selection and written justification (min. 20 chars) before any award. Full decision record posted to chatter as an immutable audit trail.

💳

Savings Analytics

Every bid shows savings amount and savings % vs your internal target prices. See total event savings at a glance directly on the comparison matrix.

📋

Tender Integration

Switch to Complex Tender mode to hand off to the Tender Management engine for multi-lot, project-based, or survey-driven tenders without leaving the event form.

⏱

Automated Closure

A scheduled cron runs hourly and automatically closes any event past its deadline. No manual follow-up required — events close on time, every time.

Event Lifecycle

State Description
Draft Internal preparation; not visible to suppliers
Published Suppliers invited; email notifications sent
Open Bidding in progress
Closed Bidding locked; auto-triggered at deadline
Evaluated Scoring complete; bids ranked
Awarded Winner confirmed with justification audit
Negotiation Handed off to Negotiation module
Cancelled Aborted; all linked RFQs cancelled

📄 Simple RFQ Mode

One Odoo purchase.order RFQ per supplier is created on publish. Confirming the winner auto-cancels all sibling RFQs and sets the event to Awarded.

📋 Complex Tender Mode

Delegates to the Tender Management engine. Creates a grev.tender.call for multi-lot, project-based, or survey-driven tenders.

🔐 Role-Based Access

User (read-only) → Officer (create/edit/score) → Manager (full CRUD). Multi-company record rules applied on all models.

How It Works

1

Create & Publish Event

Define products, quantities, and target prices. Select Simple RFQ or Complex Tender mode. Invite suppliers from the approved vendor list and publish — automated invitations sent immediately.

2

Receive & Score Bids

Suppliers submit bids with unit prices, MOQ, lead time, and validity. Blind bidding protects fairness. After closing, run the Score & Rank wizard to compute weighted scores and auto-rank all bids.

3

Award with Full Audit

Open the Award Wizard, select the winning bid, choose a rationale, and write your justification. The full decision — approver, rationale, and text — is posted to the event chatter permanently.

Changelog

v2.1.0 — March 2026

  • Added Savings Analytics: savings amount and % vs target price per bid and event
  • Added Award Justification Wizard with mandatory rationale and 20-char minimum justification
  • Added Multi-Round Bidding with New Round wizard and supplier shortlisting
  • Added Bid freeze: previous-round bids immutable once round advances
  • Added Automated event closure cron (hourly check on deadline)
  • Added Bid sync on RFQ confirm: bid records auto-created from confirmed purchase orders
  • Added RFQ cancellation undo: resetting awarded RFQ reverts event to Closed
  • Improved comparison matrix: blind bidding enforcement with computed bid_prices_visible

v2.0.0 — January 2026

  • Introduced Complex Tender mode with grev_od_tender_management integration
  • Min-max normalization scoring engine with configurable weight wizard
  • Score Weights Wizard (price 40%, MOQ 20%, lead time 20%, quality 10%, reliability 10%)
  • Three-tier security groups: User, Officer, Manager with multi-company record rules
  • Automated email templates: invitation, award notification, cancellation
  • Kanban, calendar, graph, and pivot views

v1.0.0 — October 2025

  • Initial release: eSourcing event model with RFQ type support
  • Parallel RFQ execution with supplier cascade on confirmation
  • Basic blind bidding toggle
  • Offer comparison matrix (price, MOQ, lead time)
  • Send to Negotiation workflow integration

Need Help?

For support, contact us at support@grevlin.com

Follow us on X: @GrevlinGlobal

✓ 30 days free support included

Purchase eSourcing

Unified eSourcing orchestration for RFQs, tenders, and competitive bidding on Odoo 19.0.

The Purchase eSourcing module provides a structured, transparent, and auditable sourcing layer for managing Request for Quotations, tenders, and multi-round supplier bidding processes. It acts as the upstream data provider for the negotiation and comparison modules.

Overview

Key capabilities:

  1. Parallel RFQ execution — one native Odoo RFQ per supplier, auto-cancelled on award
  2. Blind bidding — prices hidden on comparison matrix until event closes
  3. Multi-round bidding — shortlist suppliers between rounds; previous bids frozen
  4. Min-max scoring — configurable weighted criteria (price, MOQ, lead time, quality, reliability)
  5. Award justification wizard — mandatory rationale and audit trail on every award decision
  6. Savings analytics — savings amount and % vs target price per bid and event
  7. Complex tender mode — delegates to grev_od_tender_management for multi-lot tenders
  8. Automated event closure — hourly cron closes events past their deadline

Note

This module depends on grev_od_tender_management. The negotiation handoff (grev_od_purchase_negotiation) and supplier portal (grev_od_purchase_supplier_portal) are optional downstream dependencies.

Configuration

Security Groups

The module provides a three-tier role model:

Group Permissions
eSourcing User Read-only access to all events, lines, bids, and bid lines
eSourcing Officer Create and edit events; invite suppliers; manage bids; run Score, Round, and Award wizards
eSourcing Manager Full CRUD including delete; accesses configuration menu

Assign users via :menuselection:`Settings --> Users & Companies --> Users`, then select the appropriate group under the Purchase eSourcing category.

Usage

Creating a Sourcing Event

  1. Navigate to :menuselection:`Purchase --> eSourcing --> eSourcing Events`
  2. Click :guilabel:`New`
  3. Set the Sourcing Type:
    • :guilabel:`Simple RFQ` — generates one native Odoo RFQ per supplier on publish
    • :guilabel:`Complex Tender` — delegates to the Tender Management engine on publish
  4. Add products on the Products tab with quantity and an internal target price (used for savings calculation)
  5. Set the Deadline and optionally configure Max Rounds
  6. Enable Blind Bidding (on by default) to hide prices until the event closes
  7. Add invited suppliers on the Suppliers tab
  8. Click :guilabel:`Save`

Tip

Target prices are never shown to suppliers. They are used internally to compute savings amount and savings % on the Comparison Matrix after the event closes.

Publishing and Receiving Bids

  1. Click :guilabel:`Publish` — supplier invitation emails are sent automatically
  2. In Simple RFQ mode, one purchase.order RFQ is created per supplier and linked to the event
  3. Click :guilabel:`Open` to mark bidding as active
  4. Bids are received as grev.purchase.esourcing.bid records on the Bids tab
  5. The event auto-closes when the deadline passes (hourly cron) or click :guilabel:`Close`

Multi-Round Bidding

To run a second (or subsequent) round:

  1. Ensure :guilabel:`Max Rounds` > 1 on the event form
  2. After the current round closes or is evaluated, click :guilabel:`New Round`
  3. In the wizard:
    • Select the shortlisted suppliers for the next round (must be a subset of current)
    • Set a new deadline
    • Add optional round notes for suppliers
  4. Click :guilabel:`Start Round` — current_round increments, event reverts to Open, and supplier notifications are sent

Important

Bids from previous rounds are immutable once a new round starts. Only scoring fields can be updated on older-round bids.

Scoring and Evaluation

  1. After closing the event, click :guilabel:`Score & Rank`

  2. In the Score Weights Wizard, adjust the percentage weights for each dimension (must total 100%):

    Dimension Default Weight Direction
    Price 40% Lower is better
    MOQ 20% Lower is better
    Lead Time 20% Lower is better
    Quality 10% Higher is better
    Reliability 10% Higher is better
  3. Click :guilabel:`Score & Rank` — min-max normalization runs across all submitted bids; each bid receives a total_score (0–100) and a rank (1 = best)

  4. The event transitions to Evaluated and a scoring summary is posted to the chatter

  5. Review per-dimension scores on the Scoring Details tab

Awarding the Event

Simple RFQ mode — confirm the winning purchase.order RFQ directly:

  • The system creates or updates the bid record from the RFQ lines
  • All sibling RFQs are cancelled automatically
  • The event transitions to Awarded

Complex Tender mode — use the Award Wizard:

  1. Click :guilabel:`Award`
  2. In the Award Justification Wizard:
    • Select the winning bid
    • Choose a rationale: Lowest Price, Best Score, Best Quality, Lead Time, Strategic, or Other
    • Enter a written justification (minimum 20 characters)
    • Confirm the Approver (defaults to current user)
  3. Click :guilabel:`Confirm Award`
    • Winner bid transitions to accepted; all others to rejected
    • Event transitions to Awarded
    • Full decision record (approver, rationale, justification) posted to chatter

Note

The justification text is posted as a permanent chatter message and cannot be deleted. This provides a compliance-grade audit trail for every award decision.

Sending to Negotiation

  1. From an Evaluated or Awarded event, click :guilabel:`Send to Negotiation`
  2. The event transitions to Negotiation state
  3. Full traceability is maintained: eSourcing Event → Negotiation Session

Event Lifecycle

State Description
Draft Internal preparation; not visible to suppliers
Published Suppliers invited; invitation emails sent
Open Bidding in progress
Closed Bidding locked; triggered automatically at deadline or manually
Evaluated Scoring completed; bids ranked
Awarded Winner confirmed with justification audit record
Negotiation Handed off to the Negotiation module
Cancelled Aborted; linked RFQs cancelled; suppliers notified

Technical Details

Models

Model Description
grev.purchase.esourcing.event Main sourcing event: type, sourcing mode, state, rounds, partners, lines, bids
grev.purchase.esourcing.line Product line: product, quantity, target price, UOM (related from product)
grev.purchase.esourcing.bid Supplier bid: partner, round, MOQ, lead time, scoring fields, savings analytics
grev.purchase.esourcing.bid.line Individual price per event line: unit price, extended price (computed)
purchase.order (extended) Adds esourcing_event_id foreign key; overrides button_confirm() for cascade award

Key Fields

Sourcing Event (grev.purchase.esourcing.event)

  • name — auto-generated reference (ESO-00001)
  • event_type — rfq | tender | auction
  • sourcing_type — rfq (Simple) | tender (Complex)
  • state — lifecycle state (see table above)
  • blind_bidding — hide prices until closed (default True)
  • bid_prices_visible — computed; True when state in closed/evaluated/awarded/negotiation/cancelled or blind_bidding=False
  • deadline_date — submission deadline (required)
  • current_round / max_rounds — round counters
  • total_target_value — sum of target_price × quantity across all lines (stored computed)
  • purchase_order_ids — linked Odoo RFQs (Simple RFQ mode)
  • awarded_purchase_order_id — the confirmed Purchase Order
  • tender_call_id — linked grev.tender.call (Complex Tender mode)

Supplier Bid (grev.purchase.esourcing.bid)

  • name — auto-generated reference (BID-00001)
  • partner_id — supplier
  • round_number — bidding round this bid belongs to
  • state — draft | submitted | accepted | rejected
  • moq — minimum order quantity
  • lead_time — days
  • validity_date — offer expiry
  • total_score — weighted composite score (0–100)
  • rank — rank within event (1 = best)
  • savings_amount — total savings vs target prices
  • savings_pct — savings as % of event total target value

Scheduled Actions

Action Interval Purpose
eSourcing: Close Expired Events 1 hour Closes any open event with deadline_date in the past

Integration Points

Upstream (optional):

  • grev_od_purchase_intel — supplier recommendations and performance scores
  • grev_od_spend_analytics — historical spend data

Downstream (optional):

  • grev_od_purchase_negotiation — price negotiation after award
  • grev_od_purchase_supplier_portal — portal bid submission by suppliers

Required dependency:

  • grev_od_tender_management — provides grev.tender.call for Complex Tender mode

See Also

  • :doc:`../../grev_od_tender_management/doc/index` — Tender Management engine
  • :doc:`../../grev_od_purchase_negotiation/doc/index` — Negotiation Dashboard
  • :doc:`../../grev_od_purchase_intel/doc/index` — Supplier Intelligence
  • :doc:`../../grev_od_purchase_supplier_portal/doc/index` — Supplier Portal
Odoo Proprietary License v1.0

This software and associated files (the "Software") may only be used (executed,
modified, executed after modifications) if you have purchased a valid license
from the authors, typically via Odoo Apps, or if you have received a written
agreement from the authors of the Software (see the COPYRIGHT file).

You may develop Odoo modules that use the Software as a library (typically
by depending on it, importing it and using its resources), but without copying
any source code or material from the Software. You may distribute those
modules under the license of your choice, provided that this license is
compatible with the terms of the Odoo Proprietary License (For example:
LGPL, MIT, or proprietary licenses similar to this one).

It is forbidden to publish, distribute, sublicense, or sell copies of the Software
or modified copies of the Software.

The above copyright notice and this permission notice must be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
DEALINGS IN THE SOFTWARE.

Please log in to comment on this module

  • The author can leave a single reply to each comment.
  • This section is meant to ask simple questions or leave a rating. Every report of a problem experienced while using the module should be addressed to the author directly (refer to the following point).
  • If you want to start a discussion with the author or have a question related to your purchase, please use the support page.
Community
  • Tutorials
  • Documentation
  • Forum
Open Source
  • Download
  • Github
  • Runbot
  • Translations
Services
  • Odoo.sh Hosting
  • Support
  • Upgrade
  • Custom Developments
  • Education
  • Find an Accountant
  • Find a Partner
  • Become a Partner
About us
  • Our company
  • Brand Assets
  • Contact us
  • Jobs
  • Events
  • Podcast
  • Blog
  • Customers
  • Legal • Privacy
  • Security

Odoo is a suite of open source business apps that cover all your company needs: CRM, eCommerce, accounting, inventory, point of sale, project management, etc.

Odoo's unique value proposition is to be at the same time very easy to use and fully integrated.

Website made with