Catch-weight billing: charging by actual shipped weight
July 31, 2026
No two cases of ribeye weigh the same. A case of whole brisket, a box of wheels of cheese, a crate of watermelons: the buyer orders a countable unit, but what actually lands on the truck varies by pounds every time. Catch-weight billing is the industry's answer. You sell by the case or by the piece, and you bill by the pound, at the actual weight that shipped.
Generic e-commerce software cannot do this. It assumes the price on the order is the price on the invoice. In food distribution, for anything cut, butchered, or grown, that assumption costs somebody money on every order.
Why actual-weight billing beats a fixed case price
The workaround most distributors start with is a fixed case price built on an average weight. It works until it doesn't. Price the case off a 40 pound average and ship a 44 pound case, and you just gave away four pounds of ribeye. Ship a 36 pound case and your customer is quietly overpaying, which they will eventually notice, and the credit-memo conversation that follows is worse than the margin you protected.
Billing actual weight ends the guesswork in both directions. The buyer pays for exactly what arrived, to the cent. You get paid for every pound that left the cooler. Chefs and store buyers who came up in foodservice expect this; a per-pound rate with an honest weigh-in reads as professional, not complicated.
The catch is that running it takes real machinery: estimates at order time, weigh-ins at packing, and invoices that rebuild themselves from actuals. That is the workflow catch-weight support automates.
How the workflow runs
In Minori Midori, catch-weight is a flag on the product, and the rest follows from it.
Flag the product. Take a product sold by each or case, mark it catch-weight, and give it two numbers: a price per pound and an estimated weight per unit. A whole brisket might be $5.00/lb with an estimated 40 lb per case.
The buyer orders normally. They add two cases to the cart like any other item. Every price they see before weigh-in, on the product page, in the cart, at checkout, on the confirmation, and in their order history, shows the per-pound rate and an estimated line total that is clearly labeled as an estimate. Two cases at an estimated 40 lb each and $5.00/lb shows as an estimated $400.00. Nobody is surprised later, because nothing ever pretended to be final.
The crew weighs at packing. When the order is picked and packed, the packed product goes on the scale. One total weight per line is all the system asks for: "2 cases, 81.3 lb." No per-piece data entry, no math at the packing bench.
Staff enter the actual weight. In the order's admin view, staff key in the actual weight for each catch-weight line. The line recomputes at actual weight times the customer's per-pound rate: 81.3 lb at $5.00/lb becomes exactly $406.50. Fixed-price lines on the same order do not move by a cent. The order cannot be marked shipped while any catch-weight line is still missing its weight, so an estimate can never slip through as a final bill.
The invoice rebuilds from actuals. The invoice and its downloadable PDF regenerate from the actual weights, showing the real pounds and the per-pound rate on each line. Statements and sales reports pick up the final totals too, so the numbers your bookkeeper sees match the scale.
Your price tiers already work
If you run per-customer pricing, nothing changes. A price-tier rate or a per-customer override on a catch-weight product is simply that customer's per-pound rate, applied automatically to both the estimates they see and the final invoice. Your best account's negotiated brisket price flows through the weigh-in without anyone re-entering it.
Guardrails around the scale
Weight entry touches money, so it gets the controls money deserves:
- Fat-finger protection. An actual weight that deviates more than 50% from the line's estimate, say 813 instead of 81.3, requires an explicit confirmation before it is accepted. Zero and negative weights are rejected outright.
- A real audit trail. Every weight entry and correction records who made it and when.
- Corrections, then a lock. Staff can correct a weight as long as the invoice is open, and the invoice regenerates each time. Once the invoice is marked paid, weights lock and the totals stay put.
Where catch-weight fits today
Catch-weight ordering works on wholesale net-terms orders only. Card checkout and guest checkout can never include a catch-weight item, and that is deliberate: a card should never be charged against an estimate, and there is no honest way to settle a weight-based bill with a payment captured before the weigh-in. The invoice-on-terms flow, covered in depth in our B2B ordering guide, is what makes billing actuals possible. If a retail or prepaid buyer ends up with a catch-weight item in the cart, checkout is blocked with a clear explanation before any payment step.
Two more boundaries worth knowing before you flag half your catalog: recurring standing orders and subscription boxes exclude catch-weight items today, so those programs stay on fixed-price products for now.
Catch-weight invoicing is part of Minori Midori's Enterprise plan. The catch-weight capability page covers the feature in full, and if variable-weight product is a big share of your book, it is worth seeing the weigh-in flow end to end on a demo.
See it in your own storefront.
Create your store, pick a subdomain and add a product, or have us walk you through it first.