01
Bid Flow
- Project Case Study — 2026
- React
- Base44
- Vite
02
Bid Flow Project Case Study — 2026
- Procurement · SaaS · B2B Platform
- End-to-end
- procurement,
- live bidding.
- A dual-sided sourcing platform that connects enterprise procurement teams with verified suppliers — featuring real-time reverse auctions, compliance-grade audit trails, and intelligent supplier matching.
- 152
- Source files
- 9
- Data entities
- 10
- Backend functions
- 2
- Platform sides
- Built on Base44 · React 18 · Tailwind CSS
- Enterprise Procurement + Supplier Portal
03
Overview
- A marketplace
- built for procurement.
- BidFlow is a full-stack SaaS procurement platform built on Base44, designed to digitise and govern the complete sourcing lifecycle — from purchase requisition through supplier evaluation to contract award.
- What sets it apart is the dual-sided architecture: enterprise buyers and suppliers each get their own authenticated workspace, tailored navigation, and purpose-built workflows. It's not a single-sided admin tool — it's a procurement marketplace.
- The platform enforces Segregation of Duties (SoD) at a code level, automatically routes high-value events through an approval chain, and generates court-admissible audit packs with timeline hash-locking on award.
- Platform
- Web SaaS (React + Base44)
- Account Types
- Enterprise · Supplier
- Event Types
- RFQ · RFP · Reverse Auction
- Approval Model
- Approval Lite ($25K threshold)
- SoD Enforcement
- Hard (creator ≠ approver)
- Audit Trail
- Immutable, hash-chained
- Backend Functions
- 10 serverless functions
- Automations
- 4 active event automations
- Dev Stack
- React 18 · Vite · Tailwind · shadcn/ui
- State Mgmt
- TanStack Query · React Hook Form
- Build Phase
- Phase 2 complete · Phase 3 ready
04
Core Capabilities
- Everything procurement
- actually needs.
- ⚡
- Live Bidding
- Reverse Auction Engine
- Real-time live bidding room with sealed quote management for RFPs. Bid completeness validation ensures every submission is evaluable before closing.
- 🏗
- 5-Step Wizard
- Event Creation Wizard
- Guided sourcing event builder with AI-driven strategy recommendations (RFQ vs reverse auction), intelligent supplier matching, and hard-block launch validation.
- 🔒
- Governance
- SoD & Approval Control
- Segregation of Duties enforced at the function level — event creators cannot approve their own sourcing events. Value-triggered approval routing above $25,000.
- 📋
- Compliance
- Immutable Audit Pack
- One-click PDF audit pack export with event summary, bid list, supplier details, timeline, and award decision. Timeline entries hash-locked on event award.
- 🤝
- Dual Sided
- Supplier Self-Service Portal
- Suppliers manage their own authenticated profile, product catalog, service listings, and document uploads. Profile completion percentage tracked in real-time.
- 🧠
- Intelligence
- Smart Supplier Matching
- Algorithmic supplier recommendations scored by category alignment (+50), geographic proximity (+100), and eligibility status (+25). Geography-filtered broadcast notifications.
- 📊
- Dashboard
- Action-Driven Command Centre
- Four live widgets: events closing today, low participation alerts, pending award queue, and top supplier YTD leaderboard — all clickable with direct navigation.
- 👥
- Access Control
- Role-Based Access (RBAC)
- Enterprise roles: admin, procurement_manager, requester, approver, viewer. User management, team collaboration, and invitation flows within enterprise workspaces.
- 🔄
- Automation
- Event Lifecycle Automation
- Scheduled auto-close of expired events (hourly), automatic bid receipt emails, approval routing triggers, and timeline immutability events — all serverless.
05
Architecture
- Dual-sided routing
- by design.
- A single authenticated user record with an account_type
- enum drives two entirely separate application experiences — enterprise workflow on one side, supplier self-service on the other.
- // App.jsx routing logic
- — account_type determines experience
- Enterprise Routes
- /
- Enterprise Dashboard
- live
- /requisitions
- Purchase Requests
- /events
- Sourcing Events
- /events/create
- 5-Step Event Wizard
- /events/:id
- Event Detail + Bidding
- /suppliers
- Supplier Management
- /timeline
- Activity Timeline
- /users
- Team Management
- admin
- /onboarding/enterprise
- 3-Step Company Wizard
- new
- Supplier Routes
- /supplier
- Supplier Dashboard
- /supplier/profile
- Company Profile + Docs
- /supplier/products
- Product Catalog
- /supplier/services
- Service Listings
- /supplier/invitations
- Received RFQs/RFPs
- /supplier/bids
- Submitted Bids
- /onboarding/supplier
- 4-Step Business Wizard
- /supplier/settings
- Security & Password
06
Data Model
- 9 entities.
- One coherent
- system.
- The data model cleanly separates enterprise-side procurement data from supplier-side account data while connecting them through invite and bid workflows.
- SourcingEvent
- Core
- title, category
- string
- event_type
- RFQ·RFP·Auction
- status
- lifecycle enum
- estimated_value
- currency
- awarded_supplier_id
- FK
- single_source_justification
- text
- approval_required
- boolean
- Bid
- sourcing_event_id
- supplier_id
- total_amount, currency
- decimal
- line_items
- array
- draft·submitted
- delivery_terms
- Requisition
- title, description
- requester_id
- FK→User
- approval enum
- approver_id
- category
- SupplierProfile
- New (Phase 1)
- legal_name, trade_name
- registration_no
- unique
- categories
- documents
- cert array
- profile_completion_pct
- 0–100
- draft→approved
- Enterprise
- legal_name
- business_registration_no
- country_code
- ISO 3166
- admin_email
- email_domain
- verification
- setup·active
- User
- Enhanced
- account_type
- enterprise·supplier
- enterprise_id
- FK (if ent.)
- FK (if sup.)
- is_account_admin
- role
- RBAC enum
- department
- SupplierProduct
- category_code
- price_per_unit
- lead_time_days
- int
- certifications
- is_active
- TimelineEntry
- Audit
- action enum
- actor_id
- description
- is_locked
- immutability_hash
- hash chain
- Supplier
- External (Inv.)
- company_name
- contact_email
- country
- onboarding_status
- enum
- approval_status
07
Serverless Functions
- 10 backend functions.
- Zero infrastructure.
- All business logic runs as serverless Base44 functions — triggered by entity events, schedules, or direct API calls. No servers to manage, no deployment pipelines.
- enforceEventSoD
- Trigger: Approval Workflow
- Hard Segregation of Duties — validates the event approver is not the same user who created it. Raises a blocking error if violated.
- valueTriggeredApproval
- Trigger: SourcingEvent create/update
- Automatically flags sourcing events with estimated_value ≥ $25,000 for mandatory approval, routing them into the approval workflow.
- lockEventTimeline
- Trigger: Status → AWARDED
- Generates a cryptographic hash chain across timeline entries when an event is awarded, making the audit trail tamper-evident and immutable.
- autoCloseEvents
- Trigger: Scheduled hourly
- Scans all LIVE sourcing events, identifies those past their end_date, and transitions them to CLOSED status automatically.
- exportAuditPack
- Trigger: Manual (EventDetail)
- Generates a comprehensive PDF audit pack using jsPDF — including event summary, bid comparison, supplier details, timeline, and award decision.
- bidSubmissionReceipt
- Trigger: Bid entity create
- Sends an automatic email confirmation to the supplier on bid submission, with a unique confirmation number, amount, and event details.
- notifyMatchingSuppliers
- Trigger: Event publish
- Notifies suppliers whose category profile matches the sourcing event. Filters by category alignment and eligibility status.
- geographyMatchedSupplierNotification
- Trigger: Broadcast button
- Geography + category filtered supplier broadcast — notifies suppliers matching both the event's category and geographic region for maximum relevance.
- notifySuppliers
- Trigger: Supplier invite
- Sends targeted event invitations to specifically selected suppliers, including event details, deadline, and participation instructions.
- initializeNewUser
- Trigger: Post-login check
- Detects whether a newly authenticated user has completed onboarding. Returns a flag to redirect unregistered users to the appropriate signup wizard.
08
Tech Stack
- Production-grade
- open source
- tooling.
- Frontend Core
- React 18
- Vite
- React Router DOM
- TanStack Query
- React Hook Form + Zod
- UI / Design System
- Tailwind CSS
- shadcn/ui (Radix)
- Lucide React icons
- Framer Motion
- Recharts
- Platform / Backend
- Base44 SDK
- Base44 Entities
- Base44 Auth
- Base44 Functions
- Serverless Automations
- Utilities & Output
- jsPDF (audit export)
- date-fns / moment
- React Leaflet (geo)
- React Quill (rich text)
- html2canvas
09
Governance & Compliance
- Built for procurement
- integrity.
- $25K
- Value threshold
- for mandatory approval
- SoD
- Hard segregation
- of duties enforced
- SHA
- Hash-chain timeline
- immutability on award
- One-click audit
- pack export
10
Build Roadmap
- Phased delivery,
- clear milestones.
- 01
- ✓ Complete
- Dual-Sided Platform Architecture
- Transformed single-sided enterprise tool into a dual-sided sourcing marketplace. Introduced enterprise and supplier account types, split navigation, landing pages, and the SupplierProfile, Enterprise, SupplierProduct, SupplierService data entities.
- Dual account model
- Post-login routing
- Supplier profile CRUD
- Conditional sidebar nav
- Profile completion %
- 02
- Signup Wizards & Onboarding
- Guided multi-step onboarding wizards for both account types. Enterprise wizard (3 steps: company → contact → review). Supplier wizard (4 steps: business → contact → categories → documents). Auto-creates entities and links users on completion.
- EnterpriseOnboarding wizard
- SupplierOnboarding wizard
- Entity auto-creation
- Account type branching
- initializeNewUser function
- 03
- → Next Up
- Supplier Features & Product Catalog
- Full CRUD for supplier products and services, certificate showcase, supplier invitations page, bid submission interface, bid tracking history, and profile credibility badges.
- Products CRUD
- Services CRUD
- Certificate showcase
- Invitation inbox
- Bid tracking
- 04
- Planned
- Supplier Marketplace & Discovery
- Enterprise-facing supplier discovery and search, product/service filtering by category, supplier credibility badges, approval workflow, and supplier ratings post-engagement.
- Supplier search
- Category filtering
- Credibility badges
- Rating system
- 05
- Advanced Integrations & Analytics
- Webhook integrations for external ERP/SAP systems, supplier performance scorecards, email digests, pricing trend analytics, and multi-stakeholder approval chains.
- ERP webhooks
- Performance scorecards
- Pricing analytics
- Multi-stakeholder approval
11
Get in Touch
- Ready to build
- procurement software
- that governs itself?
- BidFlow demonstrates our capability to build complex, enterprise-grade SaaS platforms
- from the ground up — dual-sided marketplace logic, RBAC, compliance workflows, serverless automation, and intelligent matching — all delivered in a cohesive, production-ready codebase.
- → Request a Demo
- ↗ View Live Project
12
Bid Flow
- Built with React · Base44 · Vite · Tailwind CSS · shadcn/ui
- Project Profile — 2026
Complete original text content
- Bid Flow
- Project Case Study — 2026
- React
- Base44
- Vite
- Bid Flow Project Case Study — 2026
- Procurement · SaaS · B2B Platform
- End-to-end
- procurement,
- live bidding.
- A dual-sided sourcing platform that connects enterprise procurement teams with verified suppliers — featuring real-time reverse auctions, compliance-grade audit trails, and intelligent supplier matching.
- 152
- Source files
- 9
- Data entities
- 10
- Backend functions
- 2
- Platform sides
- Built on Base44 · React 18 · Tailwind CSS
- Enterprise Procurement + Supplier Portal
- Overview
- A marketplace
- built for procurement.
- BidFlow is a full-stack SaaS procurement platform built on Base44, designed to digitise and govern the complete sourcing lifecycle — from purchase requisition through supplier evaluation to contract award.
- What sets it apart is the dual-sided architecture: enterprise buyers and suppliers each get their own authenticated workspace, tailored navigation, and purpose-built workflows. It's not a single-sided admin tool — it's a procurement marketplace.
- The platform enforces Segregation of Duties (SoD) at a code level, automatically routes high-value events through an approval chain, and generates court-admissible audit packs with timeline hash-locking on award.
- Platform
- Web SaaS (React + Base44)
- Account Types
- Enterprise · Supplier
- Event Types
- RFQ · RFP · Reverse Auction
- Approval Model
- Approval Lite ($25K threshold)
- SoD Enforcement
- Hard (creator ≠ approver)
- Audit Trail
- Immutable, hash-chained
- Backend Functions
- 10 serverless functions
- Automations
- 4 active event automations
- Dev Stack
- React 18 · Vite · Tailwind · shadcn/ui
- State Mgmt
- TanStack Query · React Hook Form
- Build Phase
- Phase 2 complete · Phase 3 ready
- Core Capabilities
- Everything procurement
- actually needs.
- ⚡
- Live Bidding
- Reverse Auction Engine
- Real-time live bidding room with sealed quote management for RFPs. Bid completeness validation ensures every submission is evaluable before closing.
- 🏗
- 5-Step Wizard
- Event Creation Wizard
- Guided sourcing event builder with AI-driven strategy recommendations (RFQ vs reverse auction), intelligent supplier matching, and hard-block launch validation.
- 🔒
- Governance
- SoD & Approval Control
- Segregation of Duties enforced at the function level — event creators cannot approve their own sourcing events. Value-triggered approval routing above $25,000.
- 📋
- Compliance
- Immutable Audit Pack
- One-click PDF audit pack export with event summary, bid list, supplier details, timeline, and award decision. Timeline entries hash-locked on event award.
- 🤝
- Dual Sided
- Supplier Self-Service Portal
- Suppliers manage their own authenticated profile, product catalog, service listings, and document uploads. Profile completion percentage tracked in real-time.
- 🧠
- Intelligence
- Smart Supplier Matching
- Algorithmic supplier recommendations scored by category alignment (+50), geographic proximity (+100), and eligibility status (+25). Geography-filtered broadcast notifications.
- 📊
- Dashboard
- Action-Driven Command Centre
- Four live widgets: events closing today, low participation alerts, pending award queue, and top supplier YTD leaderboard — all clickable with direct navigation.
- 👥
- Access Control
- Role-Based Access (RBAC)
- Enterprise roles: admin, procurement_manager, requester, approver, viewer. User management, team collaboration, and invitation flows within enterprise workspaces.
- 🔄
- Automation
- Event Lifecycle Automation
- Scheduled auto-close of expired events (hourly), automatic bid receipt emails, approval routing triggers, and timeline immutability events — all serverless.
- Architecture
- Dual-sided routing
- by design.
- A single authenticated user record with an account_type
- enum drives two entirely separate application experiences — enterprise workflow on one side, supplier self-service on the other.
- // App.jsx routing logic
- — account_type determines experience
- Enterprise Routes
- /
- Enterprise Dashboard
- live
- /requisitions
- Purchase Requests
- /events
- Sourcing Events
- /events/create
- 5-Step Event Wizard
- /events/:id
- Event Detail + Bidding
- /suppliers
- Supplier Management
- /timeline
- Activity Timeline
- /users
- Team Management
- admin
- /onboarding/enterprise
- 3-Step Company Wizard
- new
- Supplier Routes
- /supplier
- Supplier Dashboard
- /supplier/profile
- Company Profile + Docs
- /supplier/products
- Product Catalog
- /supplier/services
- Service Listings
- /supplier/invitations
- Received RFQs/RFPs
- /supplier/bids
- Submitted Bids
- /onboarding/supplier
- 4-Step Business Wizard
- /supplier/settings
- Security & Password
- Data Model
- 9 entities.
- One coherent
- system.
- The data model cleanly separates enterprise-side procurement data from supplier-side account data while connecting them through invite and bid workflows.
- SourcingEvent
- Core
- title, category
- string
- event_type
- RFQ·RFP·Auction
- status
- lifecycle enum
- estimated_value
- currency
- awarded_supplier_id
- FK
- single_source_justification
- text
- approval_required
- boolean
- Bid
- sourcing_event_id
- supplier_id
- total_amount, currency
- decimal
- line_items
- array
- draft·submitted
- delivery_terms
- Requisition
- title, description
- requester_id
- FK→User
- approval enum
- approver_id
- category
- SupplierProfile
- New (Phase 1)
- legal_name, trade_name
- registration_no
- unique
- categories
- documents
- cert array
- profile_completion_pct
- 0–100
- draft→approved
- Enterprise
- legal_name
- business_registration_no
- country_code
- ISO 3166
- admin_email
- email_domain
- verification
- setup·active
- User
- Enhanced
- account_type
- enterprise·supplier
- enterprise_id
- FK (if ent.)
- FK (if sup.)
- is_account_admin
- role
- RBAC enum
- department
- SupplierProduct
- category_code
- price_per_unit
- lead_time_days
- int
- certifications
- is_active
- TimelineEntry
- Audit
- action enum
- actor_id
- description
- is_locked
- immutability_hash
- hash chain
- Supplier
- External (Inv.)
- company_name
- contact_email
- country
- onboarding_status
- enum
- approval_status
- Serverless Functions
- 10 backend functions.
- Zero infrastructure.
- All business logic runs as serverless Base44 functions — triggered by entity events, schedules, or direct API calls. No servers to manage, no deployment pipelines.
- enforceEventSoD
- Trigger: Approval Workflow
- Hard Segregation of Duties — validates the event approver is not the same user who created it. Raises a blocking error if violated.
- valueTriggeredApproval
- Trigger: SourcingEvent create/update
- Automatically flags sourcing events with estimated_value ≥ $25,000 for mandatory approval, routing them into the approval workflow.
- lockEventTimeline
- Trigger: Status → AWARDED
- Generates a cryptographic hash chain across timeline entries when an event is awarded, making the audit trail tamper-evident and immutable.
- autoCloseEvents
- Trigger: Scheduled hourly
- Scans all LIVE sourcing events, identifies those past their end_date, and transitions them to CLOSED status automatically.
- exportAuditPack
- Trigger: Manual (EventDetail)
- Generates a comprehensive PDF audit pack using jsPDF — including event summary, bid comparison, supplier details, timeline, and award decision.
- bidSubmissionReceipt
- Trigger: Bid entity create
- Sends an automatic email confirmation to the supplier on bid submission, with a unique confirmation number, amount, and event details.
- notifyMatchingSuppliers
- Trigger: Event publish
- Notifies suppliers whose category profile matches the sourcing event. Filters by category alignment and eligibility status.
- geographyMatchedSupplierNotification
- Trigger: Broadcast button
- Geography + category filtered supplier broadcast — notifies suppliers matching both the event's category and geographic region for maximum relevance.
- notifySuppliers
- Trigger: Supplier invite
- Sends targeted event invitations to specifically selected suppliers, including event details, deadline, and participation instructions.
- initializeNewUser
- Trigger: Post-login check
- Detects whether a newly authenticated user has completed onboarding. Returns a flag to redirect unregistered users to the appropriate signup wizard.
- Tech Stack
- Production-grade
- open source
- tooling.
- Frontend Core
- React 18
- React Router DOM
- TanStack Query
- React Hook Form + Zod
- UI / Design System
- Tailwind CSS
- shadcn/ui (Radix)
- Lucide React icons
- Framer Motion
- Recharts
- Platform / Backend
- Base44 SDK
- Base44 Entities
- Base44 Auth
- Base44 Functions
- Serverless Automations
- Utilities & Output
- jsPDF (audit export)
- date-fns / moment
- React Leaflet (geo)
- React Quill (rich text)
- html2canvas
- Governance & Compliance
- Built for procurement
- integrity.
- $25K
- Value threshold
- for mandatory approval
- SoD
- Hard segregation
- of duties enforced
- SHA
- Hash-chain timeline
- immutability on award
- One-click audit
- pack export
- Build Roadmap
- Phased delivery,
- clear milestones.
- 01
- ✓ Complete
- Dual-Sided Platform Architecture
- Transformed single-sided enterprise tool into a dual-sided sourcing marketplace. Introduced enterprise and supplier account types, split navigation, landing pages, and the SupplierProfile, Enterprise, SupplierProduct, SupplierService data entities.
- Dual account model
- Post-login routing
- Supplier profile CRUD
- Conditional sidebar nav
- Profile completion %
- 02
- Signup Wizards & Onboarding
- Guided multi-step onboarding wizards for both account types. Enterprise wizard (3 steps: company → contact → review). Supplier wizard (4 steps: business → contact → categories → documents). Auto-creates entities and links users on completion.
- EnterpriseOnboarding wizard
- SupplierOnboarding wizard
- Entity auto-creation
- Account type branching
- initializeNewUser function
- 03
- → Next Up
- Supplier Features & Product Catalog
- Full CRUD for supplier products and services, certificate showcase, supplier invitations page, bid submission interface, bid tracking history, and profile credibility badges.
- Products CRUD
- Services CRUD
- Certificate showcase
- Invitation inbox
- Bid tracking
- 04
- Planned
- Supplier Marketplace & Discovery
- Enterprise-facing supplier discovery and search, product/service filtering by category, supplier credibility badges, approval workflow, and supplier ratings post-engagement.
- Supplier search
- Category filtering
- Credibility badges
- Rating system
- 05
- Advanced Integrations & Analytics
- Webhook integrations for external ERP/SAP systems, supplier performance scorecards, email digests, pricing trend analytics, and multi-stakeholder approval chains.
- ERP webhooks
- Performance scorecards
- Pricing analytics
- Multi-stakeholder approval
- Get in Touch
- Ready to build
- procurement software
- that governs itself?
- BidFlow demonstrates our capability to build complex, enterprise-grade SaaS platforms
- from the ground up — dual-sided marketplace logic, RBAC, compliance workflows, serverless automation, and intelligent matching — all delivered in a cohesive, production-ready codebase.
- → Request a Demo
- ↗ View Live Project
- Built with React · Base44 · Vite · Tailwind CSS · shadcn/ui
- Project Profile — 2026