← All postsDistribution

How to return damaged or expired stock to a vendor without losing the credit

iotoms team · September 29, 2026 · 5 min read

A frozen and chilled goods distributor running eight vans out of one depot had a standing rule for the receiving dock: if a pallet came in damaged, or a case was past its sell-by window before it even left the truck, it went straight into a bin behind the freezer marked "write-off." Once a week, whoever had time keyed the bin's contents into the inventory system as a shrinkage adjustment, the stock disappeared from the books, and everyone moved on. Nobody called the vendor. Nobody thought there was anything to call about — the stock was ruined, the vendor's invoice was already in the payables queue, and chasing a credit for four dented cases of cheese felt like more trouble than it was worth.

The write-off that was actually a bill nobody sent

That habit held for years because no single write-off ever looked big enough to fight over. Then a new accountant, three months into the job, pulled a full year of inventory adjustments to reconcile against the P&L and found the write-off bin had quietly become one of the largest unexplained cost lines in the business — bigger than fuel for two of the vans. She cross-checked a sample of the entries against the vendor purchase terms sitting in a folder nobody had opened since onboarding, and found that four of the distributor's six major vendors explicitly covered damaged and short-dated stock with a return or credit allowance, spelled out in the same contracts everyone had signed and filed away. The distributor had been paying full price, every time, for stock the vendor's own terms said it didn't have to eat.

The reason wasn't dishonesty or laziness. It was that "return to vendor" wasn't a process — it was a phone call one warehouse supervisor used to remember to make, for one vendor, when he had time. When he left for a better job, the calls stopped, and nobody noticed because the write-off bin still worked fine as a way to get bad stock off the shelf. Getting stock off the shelf and getting paid for it are two different jobs, and only one of them was happening.

Why this gap is easy to miss and expensive to keep

A single damaged case is a rounding error. The problem is that damage and short-dating aren't rare events — they're a routine cost of doing business in perishables, temperature-sensitive goods, and anything with a shelf life, and they happen at a predictable rate across every delivery, every week, for years. When the response to that rate is "write it off" instead of "claim it back," the business isn't absorbing an occasional loss. It's quietly funding its vendors' damage allowances without ever asking for the funding back, month after month, at whatever rate stock gets dented or dated out. And because the write-off and the vendor invoice happen in two different places — one in the warehouse, one in accounts payable — nobody downstream ever sees both halves of the same transaction to notice the mismatch.

Building a return that isn't optional

The fix the distributor put in place didn't require new software or a legal review of every vendor contract. It required treating a damaged or expired case the same way the business already treated a sale: as an event that gets logged the moment it happens, tied to the specific purchase order and vendor it came from, with a reason attached.

Every write-off now gets a reason code at the dock — damaged, expired, wrong item, recalled — and gets logged against the receiving record for that shipment, not batched into a weekly bin count. That single change makes the loss traceable to a vendor and a PO instead of disappearing into a generic "shrinkage" number.

Each logged return then generates a debit memo automatically: a record that reduces what the distributor owes that vendor by the value of the returned goods, dated to when the damage was found, not when someone got around to processing it. The debit memo sits against the vendor's account until it's reconciled — either the vendor issues a credit note that matches it, or the claim gets flagged as outstanding if 30 days pass with no response.

Nothing gets paid on the original invoice until the office checks whether an open debit memo exists for that vendor first. That one sequencing change — match before you pay, not after — is what actually stops distributors from writing a check for stock they already returned.

What to check if this is costing you money

  • Pull a quarter of inventory write-offs and total them by vendor. If nobody has done this in the last year, the number will surprise you.
  • Check your vendor agreements for damage, shortage, or expiry allowance clauses — most distributors have them buried in paperwork they never revisit.
  • Confirm every damaged or expired item gets logged against the specific PO and vendor at the point it's found, not lumped into a generic adjustment later.
  • Track whether a debit memo or credit note actually closes out each claim, and flag any that go unanswered past 30 days.
  • Never let a vendor invoice get paid in full while an open, unresolved return claim exists against that same vendor.

iotoms ties every damaged or expired unit logged at receiving back to its purchase order and vendor, turns it into a debit memo automatically, and holds it against that vendor's payables until it's matched with a credit — so the claim doesn't depend on someone remembering to make a phone call.

See your own routes running on iotoms

Book a demo