How to Handle Returns and Expiry Management in FMCG Field Sales

By Sufyan · 2026-10-21 · 5 min read

Returns and expiry are where FMCG margins quietly leak. If your reps are logging damaged stock on paper and your near-expiry products are only found when a customer complains, you're losing money you'll never see on a dashboard. The fix is making returns and expiry part of the same visit your rep already does — captured on their phone, tied to the outlet, and flowing straight into your system.

Here's how to actually do that.

What counts as a return in FMCG, and why it gets messy

First, get your categories straight. Most returns in FMCG fall into a few buckets, and mixing them up is where the accounting pain starts.

Each of these hits your books differently. A damaged return might be a supplier cost. An expiry buyback is usually a direct hit to your P&L. So the first rule is simple: don't let a rep log everything as one generic "return." Force a reason code at the point of capture.

And honestly, this is where paper and WhatsApp fall apart. A rep sends a photo of damaged stock to the supervisor, the supervisor forgets, the credit note never gets issued, and the retailer stops trusting you. Multiply that across a few hundred outlets a month.

How a damaged goods return app should actually work

The goal is to capture the return during the visit, with proof, and move it into an approval flow automatically. No double entry back at the office.

A good flow looks like this:

  1. Rep selects the outlet (already in their beat plan).
  2. Rep scans or selects the SKU and enters quantity.
  3. Rep picks a reason code — damaged, expired, near-expiry, wrong delivery.
  4. Rep takes a photo as evidence (this matters for disputes later).
  5. The return goes into an approval queue for the supervisor or credit team.
  6. On approval, it syncs to your ERP so the credit note or stock adjustment is created.

That's it. The photo and GPS stamp are the parts people underrate. When a retailer disputes a credit three weeks later, the timestamped photo ends the argument fast.

Zivni handles this as part of the same visit a rep does for ordering and merchandising — the return capture, the photo evidence, the reason code, and the push into your ERP through our integration. So you're not buying a separate returns tool on top of everything else. One visit, one app.

Expiry tracking in field sales: catch it before it rots on the shelf

Near-expiry is the money you can still save. Expired stock is the money you've already lost.

The practical move is to make expiry visible during the audit your rep is already doing. When a rep checks the shelf, they should be able to flag stock that's within, say, 60 or 90 days of expiry — your threshold, your call — and that flag should trigger an action: a discount push, a return request, or a redistribution to a faster-moving outlet.

Here's a simple way to think about expiry windows and what to do in each:

Time to expiry Typical action
90+ days Normal sell-through, no action
60–90 days Flag it, prioritize in next order, consider promotion
30–60 days Push discount or move to higher-velocity outlet
Under 30 days Arrange return/buyback before it expires
Expired Return, credit note, write-off

Set these thresholds per category, because a soft drink and a shelf-stable snack don't age the same way. A rep photographing the shelf lets you cross-check what's actually out there against what your records say should be moving.

One caveat — proper batch-level expiry tracking depends on how your product barcodes and batch codes are structured, and whether your ERP carries that data. If your batch dates aren't in your system cleanly, no app will magically know them. That's a data housekeeping job you do first.

The common mistakes that make FMCG returns management worse

Look, I've seen the same handful of problems again and again:

Fix the near-expiry blind spot and you'll usually recover more than the software costs you.

What to ask a vendor before you buy

When you're comparing a damaged goods return app or a wider FMCG returns management tool, ask these directly:

That last one trips up a lot of buyers. If the app can't queue a return offline and sync later, your reps will skip logging it when the signal drops.

Start by pulling your last three months of returns and sorting them by reason — even on a spreadsheet. You'll see exactly where the leak is before you change a single tool. Then, if you want to see how expiry flags and return capture work inside a single rep visit, book a Zivni demo and bring that spreadsheet with you.