AI Integration · Composite-rebar manufacturer

Procurement bot: quotes read from messages, prices compared

A procurement bot that reads supplier quotes out of messages and documents, normalizes the line items and compares purchase options side by side.

Client
Composite-rebar manufacturer
Timeline
2026
Role
Full cycle
Status
Industry project and standalone sellable module
3 input formats
handled by one intake
Free-text chat messages, attached price-list documents and photographed tables all enter through the same Telegram bot and parsing pipeline.
4-stage pipeline
intake → parse → normalize → compare
Every offer passes the same path from raw supplier message to a comparable option; the human enters only at the comparison stage.
1 canonical shape
for every normalized line item
Position, specification, unit, quantity and price are reduced to one record structure, so offers from different suppliers align field by field.
Full offer history
kept per supplier
Every parsed quote lands in the supplier database, giving procurement a price history and analytics per supplier instead of a chat scrollback.

Context

Supplier quotes arrive as whatever the supplier felt like sending — a paragraph in a chat, a PDF price list, a photographed table. Comparing them means a human retyping numbers into a spreadsheet, which is slow and error-prone exactly where money is decided, and the retyped spreadsheet dies the moment the next round of offers arrives.

The bot takes over the retyping: it reads the quote wherever it lives and reduces it to comparable line items.

Approach

The intake is deliberately permissive: procurement staff forward supplier messages and attachments to a Telegram bot exactly as received, with no format requirements imposed on suppliers. Three input classes — free text, structured price-list documents and photographed tables — are handled by one pipeline, with OCR covering the scanned and photographed material.

AI parsing then does the extraction a human used to: identifying positions, specifications, units, quantities and prices inside unstructured text and tables.

How it works

Each offer moves through four stages. Intake: the message or document arrives in the bot. Parsing: AI extraction and OCR pull line items out of the raw material. Normalization: every position is mapped to one canonical record shape, so a quote written as prose and a quote sent as a table become the same kind of data. Comparison: normalized options line up side by side, and the supplier database supplies the price history behind each one.

The human is left with the decision — which offer to take — instead of the data entry.

Key engineering details

Normalization is the load-bearing stage. Suppliers name the same product differently, quote in different units and bundle terms unpredictably; mapping all of that onto one line-item schema is what makes automatic comparison honest rather than superficial. The parsing layer is built to flag low-confidence extractions for human review instead of silently guessing at a number that money depends on.

The supplier database turns individual quotes into an asset: each parsed offer is stored against its supplier, so internal analytics can surface price movement and past terms at the moment of the next purchasing decision.

Outcome & what shipped

What shipped is the full cycle for the manufacturer: the Telegram bot, the AI-parsing and OCR pipeline over three input formats, line-item normalization, side-by-side comparison, and the supplier database with internal analytics.

The result is both an industry deployment and a standalone, sellable module — a digital procurement desk that collects commercial offers, compares prices automatically and keeps purchasing under control. Planned next: broader document-format coverage and price-history trend alerts.

What we built

  • Offer intake

    Supplier quotes forwarded to a Telegram bot as messages, documents or photos — no format demands on suppliers.

  • AI parsing & OCR

    Positions, units, quantities and prices extracted from free text, price lists and photographed tables.

  • Normalization

    Every line item mapped to one canonical shape so options compare field by field; low-confidence extractions flagged for review.

  • Supplier DB & analytics

    Every parsed offer stored per supplier; internal analytics surface price history at decision time.