Work

Unstructured Vendor Data Normalizer

An intake agent that reads invoices, packing slips, and shipping notices from a shared inbox, matches them to open POs, and stages clean records for the ERP’s bulk import.

Client
Mid-size manufacturer
Industry
Procurement

Results

  • 75–80%Of incoming vendor documents extracted, matched, and staged with no manual data entry.
  • ~12 hrsStaff time recovered weekly, as manual processing fell from 15+ hours to about 3.
  • Same dayRoutine documents ready for import the day they arrive, down from 2–3 business days.
  • Fewer entry and reconciliation errors, with mismatches caught before import instead of at receiving or AP.

As measured during the implementation.

Agent profile

Watches for
  • A vendor email or attachment arrives in the shared procurement inbox
Runs
As documents arrive
Connects to
  • Shared procurement inbox
  • ERP bulk import
  • Google Sheets review queue
Hands off to a person
Records without a reliable PO match, with unresolved line items, or below the confidence and validation thresholds are held, with the field or rule that failed named. Nothing reaches the import queue silently, and staff approve every batch.

One of 3 agents in the same system

Work moves through them in order, and each agent hands the next one cleaner data.

  1. Step 1Unstructured Vendor Data NormalizerAn intake agent that reads invoices, packing slips, and shipping notices from a shared inbox, matches them to open POs, and stages clean records for the ERP’s bulk import.
  2. Step 2Vendor Performance Drift DetectorA weekly agent that reconciles promised ship dates against actual receipts for every active vendor, scores the trend, and alerts procurement before drift becomes a stockout.
  3. Step 3Supply Chain Exception EscalatorAn agent that catches short shipments, silent vendors, and buried backorder notices, checks approved alternates, and puts a ranked shortlist in front of a buyer.
Vendor Document Intake: incoming documents, extracted fields, validation summary, and ERP import queue

A manufacturer with more than 400 vendors received shipping notices, invoices, packing slips, and PO confirmations by email, much of it from smaller suppliers without EDI. Procurement and receiving staff spent more than 15 hours a week opening attachments, finding the matching purchase order, and re-keying data into the ERP. Transcription errors surfaced later as receiving discrepancies and extra accounts-payable work.

The ERP had no practical API for creating these records, but it did accept structured bulk imports, so the job was to prepare imports the ERP would trust without going around its controls.

What we built

How the system works, step by step.

  1. Read

    Identifies the vendor and document type across native PDFs, scans, multi-page packing slips, spreadsheets, and order details written in the email itself.

  2. Extract

    Pulls PO number, vendor ID, line items, quantities, unit prices, ship dates, carrier, and tracking.

  3. Normalize

    A vendor mapping layer turns each supplier’s terms (“Qty,” “Units,” “No. of Pieces”) into one internal schema.

  4. Validate

    Checks each record against open POs for partial shipments, line-level differences, duplicates, unmatched SKUs, and quantity tolerances. Reading a document correctly isn’t enough to approve it.

  5. Stage for review

    Clean records land in a review queue in ERP-ready form, beside the source document. Staff can correct one field and revalidate without starting over.

  6. Export

    Approved batches become the CSV the ERP’s existing bulk import expects, each record traceable to the original email.

  • Google Sheets
  • ERP bulk import
Contact

Have a workflow like this? Let’s map it.

Bring us the workflow that eats your team's week. We'll show you what an agent or a better system could take off its plate.