Inspiration

Every year, the Comptroller and Auditor General of India (CAG) publishes its audit report. And every year, the exact same devastating findings appear:

  • Contracts awarded to vendors with forged experience certificates.
  • Bids accepted after submission deadlines—backdated in the system.
  • Eligibility criteria interpreted entirely differently by different officers in the same department, on the same tender.

This isn't malicious negligence. This is the inevitable bottleneck of a ₹50 lakh crore procurement system—roughly the size of Germany's GDP—being evaluated manually by humans under severe deadline pressure, with zero tooling built for this scale.

The Government e-Marketplace (GeM) processed 75.7 lakh orders worth ₹5 lakh crore in FY 2025–26 alone. Behind every single order is a multi-document tender evaluation that someone had to cross-reference by hand. In one state audit, ₹255 crore in contracts were awarded after eligibility certificates went completely unverified. In another, 6.26 lakh bids were filed before their own tenders even existed in the system—and the legacy software accepted them.

Nobody built this system to be corrupt. They just built it before AI existed. We're building the upgrade.


What It Does

ProcureRocket introduces the world's first AI-powered evaluation engine built specifically for public procurement. It reads every document, checks every legal and financial criterion, and produces a highly explainable, auditable verdict before a human officer even opens the file.

  • 📄 Smart Extraction: A tender is uploaded. AWS Textract automatically processes the unstructured PDF to read and map out complex eligibility requirements.
  • 📦 Automated Verification: Bidders submit their proposals. Our OCR pipeline processes financial sheets, tax filings, and experience certificates, instantly converting them into structured relational data.
  • 🤖 Intelligent Scoring: The AI engine scores each bidder against the exact tender criteria, categorizing them into Eligible, Not Eligible, or Review. It processes a standard 150-page submission against 50+ compliance rules in under 14 seconds—a task that currently takes a human committee an average of 3 days.
  • 👤 Human-in-the-Loop Queue: Every Review flag is routed to an operations queue with a granular, per-criterion rationale. Officers see exactly what triggered the flag (e.g., a 45% confidence score on a smudged date) so they can make rapid, informed overrides.
  • 🔒 Immutable Audit Trail: Every single decision, score, human override, and timestamp is written directly to an append-only ledger. The entire process is completely transparent, tamper-evident, and instantly producible for a CAG audit.

How We Built It

We made one foundational architectural decision on day one: Amazon Aurora PostgreSQL is our immutable system of record. Not a cache, not a temporary log store—the single source of truth.

When an auditor asks, "Why did this vendor win over another?" the answer must come from a relational database, not a person's shifting memory. Aurora provides the relational integrity to guarantee this.

The Tech Stack

Component Technology Used Purpose
Database Amazon Aurora PostgreSQL Relational storage, relational integrity, and append-only audit tracking.
Document Processing AWS Textract High-fidelity extraction of tabular and unstructured data from government PDFs.
Event Pipeline Amazon EventBridge & Amazon SQS Fault-tolerant queue ensuring zero dropped evaluations or silent pipeline failures.
AI Orchestration OpenRouter & Amazon Bedrock Strategic API routing to compute-efficient Large Language Models (LLMs).

Challenges We Ran Into

Government documents are not clean PDFs We tested our pipeline using a real 68-page infrastructure bid pulled from a public CPPP archive. Textract successfully extracted the tables, our AI evaluated the criteria, and the dashboard flashed a green Eligible status. We felt great—until we audited the raw OCR output.

The amount ₹12,40,00,000 (12.4 Crore) had been parsed as ₹12,40,000 (12.4 Lakh). One misread comma meant a bidder cleared a ₹10 crore financial threshold they absolutely should have failed. In production, that is a wrongly awarded multi-million dollar contract. We halted development and built a custom normalization layer specifically for Indian numbering formats (lakh/crore notation), implementing multi-mention cross-validation. That single real-world failure forced us to build a profoundly more trustworthy system.

Three AI providers. One output format. OpenRouter, Bedrock, and our internal rule engine return wildly different response shapes. We caught this early before writing tight couplings by strictly defining a shared EvaluationResult schema first, and building provider adapters second. Now, every single verdict writes identical structured data to Aurora, regardless of the underlying LLM.

Auditability can't be retrofitted We quickly realized that append-only tracking cannot be a logging afterthought. If you allow standard in-place UPDATE operations in your production schema, your audit trail is technically compromised. We had to design schema constraints from the ground up to guarantee data immutability.


Accomplishments That We're Proud Of

  • Reduced evaluation time by 99%: We took a manual verification process that averages 4 to 6 weeks per tender and reduced it to a 45-second automated pipeline, without sacrificing a single layer of auditability.
  • We caught a ₹12 crore misread before it became a decision: Instead of testing with clean synthetic data, we threw real, messy government documents at our pipeline, caught a critical OCR edge case, and engineered a permanent fix for it.
  • Aurora holds the complete, unambiguous truth: Every single evaluation cycle on ProcureRocket can be perfectly reconstructed chronologically from the database alone. No fragmented application logs required.
  • The pipeline never fails silently: Utilizing EventBridge and SQS, every single timeout, API rate limit, or document processing error is strictly captured and retried. In public procurement, a dropped document means an unfairly disqualified bidder; we made that impossible.

What We Learned

  • The database choice IS the architecture: Choosing Aurora over a standard NoSQL document store wasn't about performance metrics; it was about systemic accountability. Enforcing strong relational integrity between tenders, submissions, and verdicts is the only way to build a legally defensible audit trail.
  • Real documents destroy ideal assumptions: Public procurement infrastructure documents span decades of varying scanner qualities, fonts, and linguistic structures. You must always architect your systems to handle the absolute worst-quality document in the archive.
  • Procurement officers don't trust black boxes: We learned that raw AI accuracy matters significantly less to an official than explainability. An officer will not risk their career on an AI's say-so; they need to see the exact document line that triggered a flag before they will trust the system.

What's Next for ProcureRocket

Public procurement reform in India isn't just a massive B2B SaaS market opportunity—it is a critical governance necessity.

  • Vendor Credibility Index: By leveraging the historical data natively stored in Aurora, our next phase is building longitudinal profiles to automatically flag bidders with past histories of forged certificates, shell-company patterns, or missed deliverables across separate departments.
  • Bid Collusion & Cartel Detection: Statistical anomalies and pricing patterns among "competing" bids are virtually invisible to human evaluators. By cross-referencing line-item pricing across thousands of historical bids, we can automatically flag cartel behaviors that historically inflate government project costs by 10% to 15%.
  • Live GeM & CPPP API Integration: Moving past manual PDF uploads by building direct API connectors into India's central e-procurement portals, targeting a slice of the 75.7 lakh annual GeM orders as a real-time, zero-friction evaluation middleware layer.
  • Vernacular OCR Scaling: State-level procurement portals operate across various regional languages. We plan to scale our document processing layer to natively support multi-language OCR and evaluation across all 22 scheduled Indian languages using fine-tuned localized models.

Built With

Share this project:

Updates