Basket of Goods (price comparison matrix)¶
The Basket of Goods (BoG) is a like-for-like price-comparison matrix you assemble by hand: rows are the items you care about, columns are suppliers, and each cell shows that supplier's price for the item. It is an analysis tool for comparing suppliers on a common basket — not a purchasing basket. There is no checkout, no order, and nothing is submitted to the platform.
Where a basket lives¶
Baskets are stored in your browser only (local storage), not on the server. You can keep several named baskets. This has direct consequences:
- A basket is per-browser and per-device — it does not follow you to another machine or another browser.
- Clearing browser data removes your baskets.
- You can export a basket to JSON as a backup and import one back — but importing replaces all of your current baskets.
Building a basket¶
- Add products from the catalogue grid (Add to basket) or from a product record. The first product you add auto-creates a basket named after the product's category and registers its supplier as a column.
- Add supplier columns by typeahead search, and add rows (lines) with a common reference, description, range, and unit volume.
- Each cell links a specific product to a specific supplier, so you can compare genuinely equivalent items.
The analysis view¶
Switch from Build to Analysis to turn the basket into a variance matrix:
- For each line, the cheapest invoice price is highlighted.
- Every supplier is shown as a variance % against that cheapest price (price ÷ cheapest × 100).
- Extended figures multiply unit price by unit volume; lines are subtotalled by range with a grand total.
- Export to Excel produces a formatted workbook of the matrix, grouped by range — this is the basket's "output", in place of any submit step.
Which price a cell shows¶
A cell resolves the supplier's price the same way the rest of PIM does: it prefers the basket's default zone, then the product's default zone, then any zone with a usable price; within the zone it takes the entry effective today, or the nearest future-dated entry if none is current, preferring invoice (group) price over list price. So a cell's price can change as prices become effective or expire, and changing the basket's default zone changes every cell.
Why does a cell change or go blank¶
- Price changed with no edit — a future-dated price became effective, or the current one expired (see above).
- Blank price (—) — the product has no usable price in any zone, or is price-on-application.
- A column's products vanished — removing a supplier column strips that supplier's products from every line.
- The whole basket reset — baskets are local-storage only; clearing storage, switching device, or importing a JSON file (which replaces all baskets) wipes them.
What it is not¶
- Not a purchase order or ordering basket. Nothing is sent anywhere; the output is an Excel comparison.
- Not the Price Comparison report, which compares price snapshots over time or an uploaded price file, server-side.