← All cases
Industrial parts · inbound RFQ

Thousands of RFQ emails a month, handled without a reading team

A German spare-parts distributor kept five people busy just opening inbound mail. Now every request is qualified, structured and pushed into the ERP before a purchase manager sees it.

Client
Spare parts & industrial equipment · Germany · $15M revenue · 100 staff
Scope
Intake → qualification → matching → ERP
Volume
300–500 emails a day
Role
Solo — design, build, hand-over
RFQ intake queue with parsed requests
The intake queue: every incoming request classified, parsed and scored for confidence before a human sees it.
Time saved
80h
per week, across the team
Volume
300–500
emails processed a day
Detection
99%
accuracy on spam and viruses
Team
5
people no longer reading the inbox
§ 01 / Problem

Five people whose whole job was opening the mailbox

Thousands of RFQ emails a month arrived in one shared inbox — genuine requests mixed in with spam and virus attachments.

The flow was processed entirely by hand. Someone had to open every message, decide whether it was a real request, spam or an infected attachment, then pull out part numbers, quantities and descriptions and look up whether the customer and the brand already existed in the ERP.

At 300–500 emails a day, that meant keeping a team of five on the inbox permanently — and the work scaled linearly with volume.

300–500emails / day
5people on intake
1000sRFQs / month
Raw incoming request text
A typical inbound request — free text, no part structure, several brands mixed into one thread.
§ 02 / Solution

A platform that reads the inbox and fills the ERP

A web interface plus a backend pipeline that takes an inbound lead and returns structured, ERP-ready data.

01

Lead qualification

triage

Each message is classified as a genuine RFQ, spam or a malicious attachment — the filter that removes most of the manual reading.

02

Customer matching

match

The sender is matched against the customer database, or a new customer record is created when there is no match.

03

Brand matching

match

Brands named in the request are resolved against the brand database, with a new record created when the brand is genuinely new.

04

Line-item extraction

parse

Part numbers, quantities and descriptions are pulled out of free-form text and turned into structured lines.

05

Sync to the ERP

erp

The processed request is written to the ERP and handed to the purchase manager, who starts from structured data rather than an email.

Extracted brand and product fields
Step 04 — extracted lines with per-field confidence.
Customer matching screen
Step 02 — customer matching, with the candidates the agent considered.
§ 03 / Result

About eighty hours a week back, and a clean inbox

Measured against the manual intake process it replaced.

~80 h

Saved per week across the team

99%

Accuracy detecting spam and viruses

300–500

Emails a day handled without a reader

§ Built with
PythonLLM pipelineEmail ingestionPostgreSQLERP integrationWeb UI