Matching purchase, stock and shipment files for supply chain teams
By the Analistable team · Updated · 2 min read
Supply chain and procurement work is a chain of documents that should agree: purchase order, goods received, supplier invoice, stock record, shipment. Most checks are joins on PO number, SKU or supplier code, often across three files at once. This page lists those checks and where to learn each method.
The checks that keep stock and spend honest
| Job | Files | Join key |
|---|---|---|
| Three-way match | Purchase orders + goods received notes + supplier invoices | PO number + line |
| Price changes | Supplier price list (old) + price list (new) | Supplier SKU |
| Stock accuracy | Physical count + system inventory | SKU + location |
| Supplier performance | Orders with promised date + shipment receipts | PO number |
| Stock turn | Stock snapshot + sales or usage file | SKU |
Two problems recur. Supplier and internal SKUs differ, so a cross-reference sheet is needed. And one PO can have several deliveries and invoices, so a naive join repeats lines and inflates quantities.
How Analistable helps
Load the PO, receipt and invoice exports and ask "PO lines where invoiced quantity is more than received quantity". The AI aggregates each side by PO line before joining, which avoids the duplicate-row trap, and shows the SQL so you can confirm it. You can then ask follow-ups such as which supplier accounts for most of the variance.
Analistable reads your ERP or WMS exports; it does not connect to the ERP itself or change any records.
Before loading, check that PO numbers are stored the same way in every export. Leading zeros dropped by a CSV, or a prefix such as PO- in one system only, are the most common reasons a three-way match reports false gaps.
Start here
- Three-way match: purchase orders, receipts, invoices
- Find late deliveries by supplier
- Combine supplier price lists
- Price comparison template
- Reconcile stock count with inventory records
- Stock reconciliation template
- Calculate inventory turnover from stock and sales
- Duplicate rows after joining two tables
- Compare two quotes line by line
Frequently asked questions
- Can it match supplier SKUs to our internal codes?
- Yes, if you load a cross-reference sheet. Without one, exact matching is not possible; fuzzy name matching can suggest candidates but needs review.
- How does it handle partial deliveries?
- Ask for totals per PO line on each side before comparing. The generated SQL sums receipts and invoices separately, then joins them.
- Can it read large ERP exports?
- Files are processed by DuckDB in your browser, which handles hundreds of thousands of rows on a typical laptop. Very large files depend on your device's memory.