Skip to content

The retail purchasing process, end to end

Where the retail purchasing process actually spends its time

The retail purchasing process is usually drawn as a tidy loop of five equal boxes. In a real chain the boxes are wildly unequal: of the 28 working days in a cycle at our 62-store grocery operator, receiving takes 10 and reviewing supplier performance gets 2. That inequality is the most useful thing about the diagram.

3dDemandreview8dSuppliernegotiation5dPOissue & confirm10dReceive& reconcile2dPerformancereview28 working days, one purchasing cycle
A 28-working-day purchasing cycle. Performance review gets two days at the end, which is why supplier problems are re-discovered rather than tracked.

Ten days on receiving and reconciliation, two on performance review. That ratio explains most of what goes wrong downstream. The step that would tell you whether the last cycle worked is the smallest one, it sits at the end where overruns land, and it is the first thing sacrificed when a reset or a holiday compresses the calendar. Skipped often enough, the cycle becomes a machine that places orders competently and never learns anything.

Step 1: demand review (3 days)

The cycle opens by deciding what the stores actually need, which is a forecasting question before it is a buying question. Three days is genuinely tight, and it is tight because most of the work is assembling rather than deciding: pulling rate of sale by store, checking what is already on order, flagging items whose velocity has moved enough to change the order quantity.

The trap here is treating on-hand as the input and ignoring on-order. An item with four weeks of supply on hand and two more weeks already inbound does not need an order, but if the review only reads on-hand against a target it will generate one. This is the same arithmetic that produces over-ordering, and it is invisible in most order screens because the recommendation is shown as a net number after the on-order is already subtracted.

What good looks like at this step: every line carries rate of sale, on-hand, on-order, and weeks of supply, and the review touches only the lines where weeks-of-supply falls outside the band. At store 1046's dairy department, 246 of 290 lines have nothing on order at all in a typical cycle, so the exception set is small when the data is arranged to show it.

Step 2: supplier negotiation (8 days)

Eight days is the second-largest block and the one with the widest variance. Negotiation covers cost changes, promotional commitments, new-item decisions, and allocation when supply is tight.

The structural observation worth making: this step consumes almost a third of the cycle and is conducted, in most chains, with no reference to the performance data from the previous cycle, because that data lives in step 5 which nobody completed. A buyer negotiating promotional support with a supplier running 82.3% on-time in-full should be trading that service gap for something. Without the number in the room, they trade nothing, and the supplier's service problem becomes free.

Sequencing fix that costs nothing: move the scorecard read to the front of negotiation rather than the end of the cycle. The data is from the last cycle either way; the only change is which meeting it informs.

Step 3: PO issue and confirmation (5 days)

Five days covers raising the order, transmitting it, and getting confirmation back. The mechanical part is fast; the five days exist because confirmation is where suppliers cut.

This is the measurement point most chains miss. The gap between what you ordered and what the supplier confirmed is the earliest available signal of a service problem, and it arrives weeks before the shelf goes empty. Harbor Provisions' service failure was 61% concentrated at confirmation, which means it was fully visible at step 3 of every cycle and was not being captured, because the receiving system recorded what arrived against what was confirmed rather than against what was ordered.

Capture confirmation against the original order, not against the revised one. The revision is the failure.

Step 4: receive and reconcile (10 days)

The largest block, and largely irreducible: product arrives across the window, gets checked, discrepancies get raised, invoices get matched. The cost here is mostly labor, and the labor scales with discrepancy rate rather than volume.

Three discrepancy classes, and they need different handling:

ClassTypical rateWhere it is caughtCost driver
Quantity short4-8% of linesReceiving dockRecount, credit request, re-order
Price mismatch1-3% of linesInvoice matchAP research time, often days later
Case pack / UOM errorUnder 1%Receiving or shelfWorst per incident: corrupts on-hand

The case-pack error deserves the attention its frequency does not earn. When a supplier changes from 24-count to 30-count without the item file being updated, every subsequent on-hand number for that item is wrong by 25%, which then feeds step 1 of the next cycle and produces a wrong order. A rare error that corrupts the input to the next cycle costs more than a common error that is caught and credited.

Step 5: performance review (2 days, usually 0)

The step that closes the loop, scheduled last, sized smallest, and skipped first.

What it should produce: the scorecard lines for each supplier touched this cycle, the discrepancy summary, and the short list of items whose velocity moved enough to change next cycle's order. That is the entire input to step 1 of the next cycle, which is why skipping it does not feel expensive in the moment and compounds badly. A cycle that skips review starts the next demand review with stale assumptions about rate of sale and no view of which supplier is degrading.

The honest fix is not "spend more time on review." It is to make review a read rather than a build. Two days is enough to interpret numbers that already exist and nowhere near enough to assemble them from exports, which is why the step collapses: it is budgeted as interpretation and executed as construction.

Who owns each step

Cycle problems are frequently ownership problems wearing a process costume. When a step has two owners it runs late, and when it has none it gets skipped, which is most of the explanation for why step 5 disappears.

StepDecidesExecutesConsultedCommon failure
Demand reviewBuyerBuyerStore ops, categoryNobody consults store ops on local demand
Supplier negotiationCategory leadBuyerFinanceBuyer negotiates without the scorecard
PO issue & confirmBuyerPurchasing adminSupplierConfirmation cuts recorded as the new order
Receive & reconcileStore / DC receivingReceiving, APBuyerDiscrepancies never routed back to the buyer
Performance reviewUnassignedUnassignedEveryoneSkipped

The unassigned row is not a joke, it is the finding. In most chains, no single role is accountable for closing the loop, because the buyer has already moved to the next cycle and receiving considers their job done at the dock. Assigning step 5 to the buyer with a fixed calendar slot before the next negotiation is a one-line organizational change that does more for supplier performance than any new report.

The other row worth attention is receiving. Discrepancies get resolved locally as credits and never aggregate back to the buyer, so a supplier with a persistent short-ship pattern looks fine at the category level while costing real labor at 62 receiving docks. Routing the discrepancy summary to the buyer weekly is what turns a store-level annoyance into a negotiable fact.

The compression problem

Cycles do not run at 28 days uniformly. Holiday periods, resets, and system changes compress them, and compression is not proportional. Negotiation holds because it is calendared with an external party. Receiving holds because product physically arrives. Demand review and performance review absorb the whole compression, which means the two analytical steps are exactly the ones that disappear under pressure.

Structurally, that argues for making both steps cheap rather than for defending their time. A demand review that reads an exception list survives compression. A demand review that requires four exports does not.

What one skipped review costs

It is worth putting a number on the skipped step, because "we should close the loop" loses every argument against "we need to place the order."

Take the Harbor relationship. Their service degradation was visible at confirmation from the first cycle it started. Eleven weeks passed before it was raised. During those eleven weeks the gap ran about 42 cases a week that did not reach shelf, concentrated in the 28 stores carrying the full set.

Consequence of the 11-week delayEstimate
Cases not delivered~460
Lost sell-through at shelfThe share of those cases that would have sold through
Store labor absorbing gapsRe-facing and substitution across 28 stores, weekly
Negotiating leverage forfeitedTwo cycles of promotional talks held with no service data

The last row is the one that compounds and the one nobody counts. Two rounds of promotional negotiation happened while Harbor was running 82.3%, and in both rounds their service cost them nothing, because the number was not in the room. Whatever the shelf loss was, the forfeited leverage was probably larger, and it was entirely free to avoid: the data existed at step 3 of every cycle.

That is the argument for step 5. Not that measurement is virtuous, but that the cycle hands you a negotiating position every 28 days and throws it away.

Doing this in Scout

Scout targets the two steps that get squeezed, because they are the two that are expensive for the wrong reason.

For demand review, the exception set is a standing view: rate of sale, on-hand, on-order, and weeks of supply per line, filtered to the lines outside band. The order-screen arithmetic that hides over-ordered lines behind a net ask is exactly the problem the over-ordering guide walks through, and the view is built to surface both directions rather than only the under-ordered one.

For performance review, the supplier scorecard and the confirmation-versus-order gap are already computed when the cycle ends, so two days is spent reading rather than assembling. That also puts the number in front of negotiation, where it is worth something commercially.

To be clear about the boundary: Scout is the analytics layer across the cycle. It does not raise or transmit purchase orders, hold supplier contracts, or perform invoice matching. Your ERP and purchasing system keep doing that; Scout tells you what the cycle is producing.

Instrumenting the cycle

If you change one thing about the retail purchasing process, capture two timestamps that most chains do not: order transmission and supplier confirmation. Almost everything useful about supplier service is derivable from those two plus the receipt, and almost no purchasing system reports on them by default because they are treated as plumbing rather than as measurement.

With those captured, realized lead time becomes a distribution rather than a stored field, confirmation cuts become visible in the cycle they occur, and the performance review at step 5 becomes a five-minute read. Without them, every service conversation runs on the supplier's own numbers.

Summary

  • A 28-day purchasing cycle spends 10 days receiving and 2 reviewing, and the review step is both the smallest and the first to be cut, which is why chains re-discover supplier problems instead of tracking them.
  • Capture supplier confirmation against the original order. Cuts at confirmation are the earliest service signal available and most receiving systems measure past them.
  • Make demand review and performance review reads rather than builds, because compression always lands on those two steps.

Further reading: supplier performance metrics defines what step 5 should produce, and replenishment guidance covers the order-quantity math that step 1 depends on.

Want this as a Google Sheet?

Drop your email and we'll send the worked example.

Book a demo with your data