Supplier Price-List Update Reconciliation
Example prompt: "When a supplier emails a new price list attachment, extract the line items, compare them to our master pricing Google Sheet, and post a change summary in #purchasing on Slack with old vs new prices so the buyer can approve before anything is updated."
The Problem
Suppliers send price lists by email a few times a year — sometimes as a clean PDF, sometimes as an Excel attachment, sometimes as three lines of prose in the body and an attachment with everything else. The buyer is meant to compare every line to the master price book, catch the 8% increase on the SKU that turns up on every quote we send, decide whether to push back, and update the master prices before the next PO goes out. Most of the time the email lands in the inbox during goods-in or a chase round and the comparison never happens — the new prices land at the invoice stage three weeks later, the variance is on a paid invoice rather than a draft PO, and the conversation with the supplier is harder.
How GloriaMundo Solves It
We build a workflow that watches the purchasing inbox for inbound mail from known suppliers and routes price-list updates into a proper reconciliation flow. An LLM step classifies the email to filter out quotes, invoices, and marketing. For price-list updates, a second LLM step extracts a structured line table from each attachment — PDF, CSV, or Excel all handled — with an extraction-confidence guard so a low-quality file falls back to a manual-review draft rather than corrupting the master prices. A code step compares each extracted line to the Master Prices tab and labels each as new, removed, unchanged, price increased, price decreased, or a pack-size or price-unit change. An integration step archives the original attachment to a dated Drive folder, writes pending changes to a dedicated tab, and drafts a Gmail to the buyer with the change summary and a decision column. The workflow does not touch the Master Prices tab — buyer-approved changes are picked up by a separate apply workflow once decisions have been filled in. Glass Box preview shows the classification, the extracted line table, the proposed change category per line, and the draft email before anything is saved.
Example Workflow Steps
- Trigger (inbound email): Gmail to purchasing@ourdomain.com with at least one attachment.
- Step 1 (integration + code): Resolve the sender to a supplier_id on the 'Suppliers Master' tab by exact From-address match first, then domain match only when the domain resolves to exactly one supplier_id; log unknown or ambiguous senders to 'Inbound Procurement Mail Log' with the resolution_reason and stop.
- Step 2 (llm): Classify the email as 'Price list update', 'Quote', 'Order confirmation', 'Invoice', 'Marketing', or 'Other'; stop unless 'Price list update'.
- Step 3 (integration): Read the previous_price_list_message_id from the 'Supplier Price List Updates' tab; dedupe on gmail_message_id.
- Step 4 (llm): Extract the line table from each attachment with supplier_sku, description, pack_size, price, price_unit, effective_from and an extraction_confidence score.
- Step 5 (conditional): If extraction_confidence is below 0.7 or zero lines, draft a manual-review Gmail to the buyer with the original attached and log status 'Extraction failed — needs manual review'.
- Step 6 (code): Compare each line to Master Prices on (supplier_id, supplier_sku) and classify the change category; compute removed lines from supplier rows in Master Prices not present in the extraction.
- Step 7 (integration): Save the original attachment to a dated Drive folder; append one row per pending change to the 'Pending Price Changes' tab; do not write to Master Prices.
- Step 8 (integration): Draft a Gmail to the buyer with the change summary table and a decision column ('Accept', 'Reject', 'Negotiate'); post the headline in #purchasing on Slack.
- Step 9 (integration): Every Monday at 08:00, post the open-price-changes summary — drafts older than three working days and per-supplier decision counts from the last 30 days.
Integrations Used
- Gmail — watches the purchasing inbox for supplier mail and drafts the change summary to the buyer
- Google Sheets — the Suppliers Master, Master Prices, Pending Price Changes, and Supplier Price List Updates tabs
- Google Drive — archives the original attachment under '/Procurement/Price Lists/[supplier_name]/[YYYY-MM-DD]/' so the source-of-truth document is retrievable
- Slack — the #purchasing headline and the weekly open-changes summary
Who This Is For
The buyer at a small manufacturer or distributor with a few dozen regular suppliers, a master price book in Google Sheets, and no time to compare a thirty-page price list to two hundred SKUs while the floor is asking where the steel is. This is for the team that wants the changes laid out as a decision rather than a reading exercise.
Time & Cost Saved
A supplier price-list reconciliation done properly is between thirty minutes and two hours of buyer time per supplier, depending on list length, which is why it often does not happen. The workflow does the extraction and comparison in seconds and brings it down to ten minutes of reviewing decisions. The bigger saving is the price increases caught at quote time rather than at invoice time — a single 5% increase on a regularly-purchased SKU that gets pushed back successfully pays for the workflow for the year.