# RFQ/EOI — Overview

Purpose: Define the end-to-end Request for Quotation (RFQ) and Expression of Interest (EOI) capability for procurement teams and vendors, including features, lifecycle, roles, and high-level UX built around modules and orgs.

Terminology
- Org: A tenant/account in the system (previously called tenant).
- Module: Configurable UI surface registered in the  table (previously referred to as ui_modals).
- Vendor: Company invited to respond; has login accounts (Vendor Admin/User).

Key Features
- RFQ and EOI types with per-org numbering formats; default pattern .
- RFQ header with title, category, department/org, currency, incoterms, due/publish dates, status, summary/spec, attachments.
- Templates: reusable sections/attachments; instantiate into an RFQ and edit locally.
- Items/specs: description, qty, UOM, required_specs (JSON), delivery terms/location, optional flag, item attachments.
- Vendor shortlist builder using capability, lifecycle status, rating filters; primary contact selection.
- Vendor login required for submissions; activation flow for non‑existing vendor users.
- Invitations and tracking: invited/delivered/opened/responded/declined with timestamps and counters.
- Vendor submissions: per‑item pricing, taxes, lead time, notes; quote‑level terms, validity, delivery days; attachments; revisions before due.
- Q&A and addenda: threaded questions; broadcast answers/addenda to all invitees; acknowledgment tracking.
- Evaluation and comparison: response tracker and item x vendor compare matrix with best‑value highlighting and optional scoring weights.
- Awarding: header‑level and line‑level awarding; allow multiple vendors to be awarded per RFQ and per item.
- Reminders & notifications: per‑org defaults and per‑RFQ overrides (e.g., N days before due, X days after invite); bulk remind; resend.
- Audit trail: rfq_events timeline for publish, sends, opens, responses, reminders, awards, addenda, clarifications.
- Reporting: invite vs response rate, time‑to‑respond, average price variance, award splits, reminder efficiency.

Lifecycle States
- Draft → Published/Open → Closed → Awarded → Archived
- Optional: Pause/Resume, Reopen.

Primary Roles
- Internal: Requester, Approver (optional), Procurement Admin.
- Vendor: Vendor Admin, Vendor User (respondent). Access limited by org and invitation.

High‑Level UX (Modules)
- RFQs module (internal):
  - Overview tab: table of RFQs with status badges and due chips; actions (Publish, Close, Award, Archive).
  - Build (wizard): Details → Items → Sections → Vendors → Review & Publish.
  - Invitations tab: status timeline, Resend/Remind/Copy link; bulk actions.
  - Responses tab: list vendor quotes; open detail.
  - Compare tab: item x vendor matrix with color highlights and totals.
  - Timeline tab: audit events.
- Vendor Portal (external, login):
  - My RFQs/EOIs list, detail, submit/Revise, Q&A, addenda acknowledgments.

Non‑Goals (initial)
- Complex contract authoring post‑award; integrate later via PO/contract modules.
- Anonymous vendor submissions (public links) — login is required.

Open Configuration
- Numbering formats per org and per type; sequences per year.
- Reminder cadence defaults per org with per‑RFQ overrides.
- Scoring weights (price, lead time, compliance) configurable per RFQ template or RFQ.

