Industrial Raw Material & Consumable Purchasing
Executive Takeaways & Strategic Impact
- Autonomous RFQ Broadcasting: Odoo replenishment thresholds trigger WhatsApp interactive message templates to 5 approved suppliers simultaneously.
- Conversational Quote Parsing: Multi-turn LLM agent interprets unstructured vendor replies (e.g. 'Can supply at ₹142/kg ex-factory Morbi, delivery by Thursday').
- Comparative Decision Matrix: Generates a structured Odoo RFQ comparison matrix ranking landed cost, payment terms, and historical delivery reliability.
- Human Approval Safeguard: Draft Purchase Orders are queued for procurement head one-click sign-off on mobile before ERP confirmation.
1. Why Traditional B2B Procurement Portals Fail with Indian Vendors
Large enterprises frequently attempt to enforce rigid vendor supplier portals, demanding that small and medium raw material suppliers log into a web dashboard, remember complex passwords, and manually type item bids. In the industrial corridors of Rajkot, Morbi, and Ankleshwar, these portals sit empty. Suppliers conduct 95% of their daily trade over WhatsApp, voice calls, and casual chat.
Because procurement managers are bogged down in manual phone calls, comparing hand-scribbled notes, and manually creating RFQs in ERP, procurement cycles stretch across days. Volatile commodity prices (steel coils, virgin plastic granules, kraft paper) fluctuate while quotations sit uncollected.
2. Conversational State Machine Architecture
The conversational procurement agent integrates the official WhatsApp Cloud Business API with an asynchronous Odoo event loop. When raw material levels dip below reorder points, the agent executes the following lifecycle:
- Target Broadcast: Sends structured WhatsApp messages to certified vendors with item code, quantity, technical specs, and required delivery date.
- Conversational Negotiation: Handles vendor queries regarding packing requirements, payment credit days, and delivery terms.
- Structured Extraction: Parses raw messages, PDF quotes, or image snapshots into structured fields:
unit_price,freight_terms,payment_terms,tax_inclusive. - Bid Normalization: Normalizes prices into net landed cost per unit and populates Odoo
purchase.order.linerecords in statussent.
3. Production Odoo 19 Python ORM Quote Ingestion Blueprint
Below is the Odoo ORM model processing incoming conversational quotations and computing the landed ranking:
# -*- coding: utf-8 -*-
from odoo import models, fields, api, _
class PurchaseOrder(models.Model):
_inherit = 'purchase.order'
whatsapp_chat_id = fields.Char(string="WhatsApp Thread ID", readonly=True)
vendor_raw_quote_text = fields.Text(string="Incoming Vendor Narrative", readonly=True)
ai_parsed_confidence = fields.Float(string="AI Extraction Confidence", readonly=True)
landed_cost_estimate = fields.Monetary(string="Calculated Landed Cost", compute="_compute_landed_cost", store=True)
@api.depends('order_line.price_unit', 'order_line.product_qty')
def _compute_landed_cost(self, freight_rate=0.04):
for po in self:
base_total = sum(l.price_subtotal for l in po.order_line)
# Add estimated freight and unloading factor
po.landed_cost_estimate = base_total * (1.0 + freight_rate)
def process_incoming_whatsapp_quote(self, partner_id, unit_price, lead_time_days, raw_text, confidence):
"""
Invoked by WhatsApp Webhook Receiver with extracted quotation details.
Updates or creates draft purchase order lines safely within Odoo ORM.
"""
self.ensure_one()
if self.state not in ('draft', 'sent'):
return False
self.write({
'vendor_raw_quote_text': raw_text,
'ai_parsed_confidence': confidence
})
for line in self.order_line:
line.write({
'price_unit': unit_price,
'date_planned': fields.Datetime.now() + fields.Date.timedelta(days=lead_time_days)
})
self.message_post(
body=f"WhatsApp quote received from {self.partner_id.name}: ₹{unit_price:.2f}/unit, Delivery: {lead_time_days} days. Confidence: {confidence*100:.1f}%",
message_type='comment'
)
return True
4. Anti-Collusion Safeguards & Commercial Governance
To ensure absolute integrity, the negotiation agent operates under strict blind-bidding rules: no vendor is ever told another vendor's quoted rate. Furthermore, the agent is strictly prohibited from confirming purchase orders autonomously; it only stages the comparative analysis for the authorized Chief Commercial Officer.
5. Implementation & Business Value Realization
Deploying conversational procurement typically yields a 4-7% reduction in raw material purchasing costs within 90 days simply by expanding the active vendor quoting pool from 2 to 5+ suppliers per procurement requisition.
Evaluate This Architecture for Your Enterprise
Schedule an architectural feasibility assessment with Lead Architect Jay Shah. On-site audits available across Gujarat manufacturing corridors and Dev Aurum, Prahlad Nagar, Ahmedabad.