Skip to main content

Returns & stock

A catch-weight line is returned by weight: the supplier enters the weight of each box that came back, marked Reshelf or Discard. The credit is returned weight × the line's price per pound, and it can never be more than the line was charged. Stock tracks catch-weight products twice: by box count and by weight on hand.

Who uses it​

  • Supplier staff record returns in the returns dialog and check stock and weight on hand on the product.
  • Restaurants see the credit on the invoice ("Subtotal After Return").

How it works​

Returning a catch-weight line​

In the returns dialog, each catch-weight line asks for the returned quantity and the weight of each returned box, split between Reshelf (back into stock) and Discard (thrown away).

Original lineWeight needed for the return?Why
Was weighed (e.g. 12 LB)YesThe credit is priced on the returned weight
Was never weighed (billed $0.00)NoThere's nothing to price, and the line charged nothing

Validation​

SituationMessage in the returns dialogServer message
Weighed line, quantity entered but no weight"Please enter the individual weights for all catch weight items."(none: see Known limitations)
Returned weight more than the line weight (+0.01 LB allowance)"Total reshelf + discard weight cannot exceed the original line weight.""Returned weight (13) exceeds available weight (12) for item …"
Returned boxes more than were sold"Returned quantity (4) exceeds the ordered quantity (3) for Whole Fish.""item … returned quantity (…) exceeds the quantity sold (…)"
A returned box of 0 LB"Must be > 0""…must each be greater than zero."

Calculations​

Return credit = returned weight × the line's unit price, rounded to the cent, capped so a line's returns never credit more than the line was charged. Reshelved and discarded weight on one line print as one return row, and a line returned in full credits exactly what it was charged. See Money & rounding.

Worked examples​

Whole Fish, 3 boxes weighed 4 + 5 + 3 = 12 LB at $6.00 / LB = $72.00.

ReturnCreditLine nets
1 box, 5 LB, Reshelf5 × 6.00 = $30.00$42.00
1 box 5 LB Reshelf + 1 box 3 LB Discard8 × 6.00 = $48.00$24.00
All 3 boxes, 12 LB$72.00$0.00
13 LBRefused: more than the line weight
12.01 LBAllowed (within 0.01 LB), credit capped at $72.00$0.00

Chicken thigh, 10 LB at $2.599 / LB = $25.99, returned as two 5 LB returns on different days:

ExactCredited
First return, 5 LB12.995$13.00
Second return, 5 LB12.995$12.99 (capped)
Total$25.99, exactly what the line charged

Knock-on effects: returning 5 LB of fish to the shelf​

Order ICE-000042: Whole Fish 12 LB ($72.00) and 4 Canned Tomatoes ($8.00). Delivered and unpaid. One 5 LB fish comes back and is reshelved.

BeforeAfter
Subtotal on the invoiceSubtotal $80.00Subtotal After Return $50.00
Return row on the invoiceWhole Fish, 1 EA, 5.00 LB, $6.00/LB, -$30.00
Balance Due$80.00$50.00
Whole Fish stock(as before)+1 box, weight on hand up by the line's average box weight, 4 LB (12 LB ÷ 3 boxes). See Known limitations
If it had been DiscardedSame credit. No stock change
If the invoice was already paidThe credit becomes refundable or store credit. See Returns & cancellations and Store credit

Stock and weight on hand​

A catch-weight product has two stock figures: quantity (boxes) and On hand total weight.

EventBoxesWeight on hand
New product created with "Weight (LB)" filled inas typedas typed
Order confirmed (Packing)− boxes ordered− weight, once weighed
Weight entered or changed on a packed orderunchanged− the difference
Return marked Reshelf+ boxes returned+ the line's average box weight × boxes returned
Return marked Discardno changeno change
Order canceled after Packing (stock restored)+ boxes+ weight
Order canceled while still Pendingno changeno change (nothing was taken)
Purchase order marked Delivered+ boxes received+ received weight
  • Stock movements for catch-weight products are valued per weight unit: 12 LB at $6.00/LB is a $72.00 movement, not 3 × $6.00. (#2152)
  • Weight on hand never shows below 0, even if more weight left than was recorded.
  • Weight on hand can only be typed when the product is created. After that, only stock movements change it.

Where it shows up​

Returns dialog · Invoice ("Subtotal After Return", return rows) · Product detail (On hand total weight) · Stock history.

Permissions​

Anyone who can record returns on the order (see the returns pages under Orders). Weight on hand can't be edited directly after the product is created.

Decisions​

  • A return needs a weight only if the line was weighed. An unweighed line billed $0.00, so there's nothing to credit. (#2115)
  • Returned weight can't exceed the line weight, with a 0.01 LB allowance for rounding.
  • Credits are capped at the line. Rounding alone can't credit more than the charge. (#2150, #2341)
  • Stock is valued per weight unit. (#2152)

Known limitations​

  • The server doesn't always insist on a return weight. A return of a weighed line without box weights is priced from the line's own box weights in order (or an average). Only the returns dialog insists.
  • Reshelved weight uses the line's average box weight, not the returned boxes' actual weights, while the credit uses the actual ones. Weight on hand can then drift from the weight that really came back.
  • The returns dialog's over-weight warning was reported cut off on narrow screens (QA observations, May 2026).

FAQ​

Why does the returns dialog ask for weights on one line but not another? It asks only for lines that were weighed. A line billed at $0.00 because it was never weighed can be returned without a weight.

The customer returned 5 LB but the credit is $12.99, not $13.00. The line had already credited $13.00 on an earlier return, and returns can't credit more than the line's $25.99. See Money & rounding.

Why didn't weight on hand go up? The return was marked Discard. Only Reshelf puts the boxes and the weight back into stock.

Specs​

Scenarios CWO-011 to CWO-013 cover returns. They're on Ordering & weighing.