The refund now takes seconds. CEVA, Zalando and Sereact have switched on automated, AI-driven returns handling across Germany and Poland, and somewhere in a data hall a decision that used to occupy a returns clerk for twenty minutes – refund, chargeback, restock, scrap – now closes in milliseconds. I have spent enough evenings at returns benches to know what that clerk was doing with those twenty minutes. Four were admin. The other sixteen, if the clerk was any good, were the nearest thing the company had to a failure investigation. The machine wins at everything except the question a good clerk asked by accident: why did this part come back?

The most expensive inspection result you will ever receive

A return is a 100% inspection result performed by the only inspector whose verdict settles the account: the customer. It is brutally expensive. Reverse freight, handling, repack, re-inspection, scrap, refund. In automotive, add sorting, containment freight and the engineering hours the customer expects you to donate to the 8D. I have seen single return events settle above €100,000 once all of that landed.

Yet in most organisations the return is graded exactly once, for money: refund issued, chargeback booked, scrap provisioned, ledger balanced. The failure mode is left to a code field that a warehouse operative fills under time pressure, from a dropdown designed years ago by someone who never saw a part.

A refund closes the transaction. It never closes the failure.

When the codes say surface damage and the bench says otherwise

Early in my automotive supplier life, the monthly Pareto of customer return codes read "surface damage". Scratches. Cosmetic. It sat mid-chart, unglamorous and provisioned, and the commercial team had a budget line for it – the corporate equivalent of a lullaby. Total return volume stayed flat, so nobody looked.

Then one afternoon we pulled eight weeks of returned parts out of the scrap cage and stacked them on the bench in rack orientation. The damage was not random. Every part carried its mark on the same flank, same corner radius, within the same 30-millimetre band – lined up like a signature. That is not handling. That is geometry. A packaging cost-reduction had swapped the retention inserts in the returnable containers, and the new lug kissed every part above it whenever the racks were double-stacked. A saving of €0.04 per trip, quietly manufacturing rejects across two plants.

The signal had been there for months in the one place nobody reads: code drift. The share of "surface damage" crept from roughly 4% of returns to 11% while totals held steady. The money moved inside its budget line, so no alarm fired. Since then I treat return-code drift as a QRQC trigger, full stop. Weekly Pareto. QRQC inside 24 hours when a code moved more than a few points. Parts on the table, not pixels. At SNOP we ran a quarter with zero critical customer escalations and 98% customer satisfaction, and none of that came from charm. It came from reading the returns pile before the customer had to raise a voice.

The machine never frowns

The AI now triaging returns across Zalando's operations, running through CEVA's network on Sereact's perception models, is consistent, tireless and fast, and it will beat a tired clerk on adjudication accuracy. I build multi-model systems myself – 60-plus models running in parallel under a consensus layer – so I am the last person to romanticise the clerk. But I know what the clerk contributed that the classifier does not: the frown. Once a shift, a human holding the part would frown and say "that's odd". That frown was an anomaly detector running outside the schema. A classifier enforces its taxonomy with perfect consistency. It will code every one of those flank marks as "surface damage" at 99% confidence, forever, without once getting curious.

In the systems I build, the most valuable output is not the consensus. It is the dissent. The models that disagree with the majority are pointing at the edge of the schema. But dissent only tells you something is odd, never what it means; that is decided by the failure-mode schema behind the codes. The schema matters more than the model grading against it. Point the best classifier in the world at a money taxonomy and you have industrialised the blindness along with the speed.

Owning the loop before finance does

Finance will own this loop, because refunds are cash and cash gets automated first. Quality should not fight for the adjudication. Fight for what sits upstream of it, and sign it off in writing:

  • Taxonomy ownership. Quality approves the returns code list, and every code maps to a PFMEA failure mode – mode, location, detection point, severity – not to a ledger line.
  • Drift as a trigger. A weekly Pareto on coded returns with explicit thresholds. A code share migrating on flat volume opens a QRQC inside 24 hours.
  • Feedback into the PFMEA. Return codes ranked by frequency and cost feed detection ranking and control-plan updates. The returns pile is your PFMEA's free field test.
  • Parts on the bench. One cross-functional hour a week with physical parts. The dashboard is for pacing; the bench is for truth.

Key takeaways

  • Grade every return twice: once for money, once for the failure mode. The refund decision takes seconds; the coding decision is worth hours.
  • Watch code drift, not just volume. A code share that migrates while totals hold flat is a systemic change in disguise.
  • Map every return code to a PFMEA failure mode. The schema sets the ceiling on what any classifier – human or machine – can notice.
  • Keep one human hour a week on the bench. Machine consistency is not machine curiosity, and model dissent is free anomaly detection only if someone reads it.

Here is the quiet part of the trade. Loud customers get 8Ds, containment teams and my calendar. Quiet customers stop ordering, and their parts pile up coded for money instead of read for signal. Every escalation I ever walked into across two decades in automotive and aerospace had been sitting in the returns pile for a quarter or two beforehand – documented, paid for, ignored. Automate the adjudication; the customer deserves the refund in seconds. Just make sure the same milliseconds buy you the failure mode. Otherwise you have built a machine that pays the customer to bury your evidence.