runbookify
← All plans
Warehouse & Inventory Management / Lot, Batch, Expiry & Serial Tracking

Expiry Watch & Aging Report: Catch Lots Before They Die on the Shelf

Import lot-tracked on-hand, auto-bucket every lot by days-to-expiry, total the at-risk dollars, recommend an action — and let a manager approve before any markdown, donation, or disposal is exported or scheduled.

BeginnerAn afternoonBuilds onNext.jsSupabaseResend
What you'll build

A web tool where you import lot-tracked on-hand, the tool buckets every lot by days-to-expiry, estimates the at-risk dollar value, recommends an action (sell-through, markdown, donate, dispose), a manager reviews and approves per lot, and the tool emails owners an alert plus a CSV action list.

Gated download

Enter your email — the plan downloads instantly and a copy lands in your inbox.

By submitting your email you'll also receive the weekly runbookify newsletter. You can unsubscribe at any time.

Before you start

  • A Supabase account (free)
  • A Vercel account (free)
  • A Resend account (free)
  • A lot-level on-hand export with expiry dates and cost (CSV or Google Sheet)
  • Your alert windows (e.g. 90/60/30 days)
  • Claude Code or any AI coding agent

The problem this kills

Somewhere in your warehouse, a lot is quietly running out of shelf life. Nobody notices until a customer rejects a short-dated shipment, or quality finds a pallet that expired last month, or finance writes off product that could have been marked down and sold weeks ago. The "system" for catching this is usually one person who remembers to filter a spreadsheet by expiry date — when they have time, which during a busy season is never.

The cost is real money walking out the door: at-risk inventory that nobody acted on in time, emergency markdowns at the worst possible price, donation deadlines missed, and disposal fees on product that was perfectly sellable two months ago. You don't need a warehouse management system upgrade to fix this, and you don't need to be a developer.

What you'll build

A simple internal web tool. You import your lot-tracked on-hand — each lot with its item, quantity, expiry date, and unit cost (a CSV or a Google Sheet works fine). The tool computes days-to-expiry for every lot, drops each into a window bucket (90 / 60 / 30 days, or whatever windows you set), and flags anything already expired for an immediate hold. It estimates the at-risk dollar value per lot and per bucket, then recommends an action — sell-through, markdown, donate, or dispose — tiered by how urgent and how valuable each lot is. A manager opens the watchlist, reviews each expiring lot, adjusts the recommendation if needed, and clicks Approve. Only then does the tool email the lot owners an alert via Resend and export a clean CSV action list in the exact columns your downstream process expects.

What's inside the Implementation Plan

The downloadable plan is a step-by-step file you paste into an AI coding agent. It opens by interviewing you about your business — how you track lots today, what system you export on-hand from, exactly what your columns are named, how you identify items and lots, your typical and peak SKU counts, the alert windows and value thresholds you want, who owns which products, and your messy edge cases — and then it tailors the data model, the bucketing, the value math, and every later step to your answers. This is not a generic template; the agent reflects a short spec back to you and waits for your thumbs-up before it builds anything. From there it walks the agent through the import, the days-to-expiry bucketing and at-risk value math, the recommended-action logic, the manager review-and-approve screen, the Resend alerts, and the CSV action-list export — each step with a ready-to-copy prompt. There's also a fallback so you can build the whole thing today even with no API to your inventory system.

The governance it includes (this is the point)

This touches inventory you'll mark down, give away, or throw out, so it ships with the controls a serious operation needs: login so only your team can use it, row-level security so you only ever see your own organization's lots, a complete audit trail of who reviewed and approved which actions and when, a hard human-approval gate so no markdown, donation, or disposal is exported or scheduled until a manager signs off, and duplicate guards keyed on lot plus alert window so the same lot can't trigger the same alert twice. Already-expired lots are flagged for an immediate hold instead of being quietly bucketed with the rest.

Who it's for

Inventory managers, quality leads, and category or sales managers who own shelf-life and aging and are tired of finding out about dead stock after it's already dead. If you can describe how you decide what to do with a short-dated lot, you can build this.

You've got this — start with the plan, paste the first prompt, answer the interview, and you'll see your at-risk watchlist take shape the same afternoon.

Gated download

Enter your email — the plan downloads instantly and a copy lands in your inbox.

By submitting your email you'll also receive the weekly runbookify newsletter. You can unsubscribe at any time.