The list has to be today's list
A produce catalogue is not a fixed set of products. It is what is in season, what came in this morning, and what is off until Thursday, and a portal showing last month's list generates calls rather than saving them.
Wholesale Handler narrows it three separate ways. A season is a start and end date with no year, so it repeats annually without being re-entered, wraps the New Year where it needs to, and a product can carry more than one. An unavailability window is an absolute-dated exception carved inside the season, with a stated reason and an optional line of your own wording - and no end date at all where the answer is until further notice. Stock counting is per product, so the lines you count are counted and the rest report Not tracked rather than claiming a number you did not give.
The chef sees the result grouped rather than filtered away: Wholesale Handler splits the order form into available, out of stock, out of season with the date it returns, and unavailable. A product they wanted has a reason attached to it, and they can ask to be told when it comes back.
The cutoff can land on the delivery day
Produce ordering closes late by the standards of most trades. A restaurant that decides its specials at service is not ordering three days out, and a market buy happens the same morning it is delivered.
In Wholesale Handler each delivery day carries its own deadline, stored as notice before that day begins. The figure is signed, so a negative one puts the deadline on the delivery day itself - orders for Tuesday closing at 04:00 on Tuesday rather than the night before. Days that need the longer run-up keep it on the same profile, so a Monday after a weekend market closes on Friday while the rest of the week stays open overnight.
A price change has to reach the buyer
Produce prices move with the market, which makes the weekly repricing the job rather than the exception.
Wholesale Handler holds prices as price lists that derive from one Default catalogue by percentage. Repricing after a market move is an update to the Default, and every list that derives from it follows - a customer on 90% of Default stays on 90% of Default without being touched. Anything typed in by hand is marked as an override and stops deriving, so the deals you negotiated hold still while the rest move.
For thirty days after a price changes, Wholesale Handler shows the old price struck through beside the new one on the order form. The buyer sees the rise while they are ordering rather than finding it on the invoice.
Boxes that are not the same weight twice
Wholesale Handler prices a product per unit, by catch weight, or by exact weight, and the difference between the last two is when the weight is known.
Catch weight is the one produce needs most: the box is priced by the kilo but nobody knows what it weighs until it is picked, so the buyer is shown a typical price up front, marked as typical, and the line is settled on the actual weight. Charge by weight covers the case where the buyer names the weight when they order, so there is no estimate to reconcile.
Wholesale Handler



