Why regulated-DTC needs batch records
Perishable and regulated products need more inventory context than quantity on hand. Supplements, cosmetics, food, CBD, and medical-adjacent goods may have lot numbers, manufacture dates, expiration dates, retest dates, or batch-specific documents. If a customer reports a problem, the lot number is how you connect the complaint to a production run.
Expiry dates matter because inventory that technically exists may no longer be sellable. A warehouse can show ten units on hand while five are too close to expiry for your sales channel. Without a batch view, teams often discover the issue when a picker sees the label or a customer receives old stock.
Shopify inventory stops at the variant
Shopify tracks products, variants, locations, and inventory quantities, but Shopify doesn't track lots or expiry dates natively. It does not automatically enforce first-expired-first-out picking, preserve a detailed batch record for every shipped unit, or give you a customer list for a specific lot.
Some brands work around this with variant names, SKU suffixes, tags, notes, or spreadsheets. Those can work at low volume, but they are fragile. Staff may forget to update a spreadsheet, a batch tag may not follow the order, and a variant-per-lot catalog can become messy fast.
FEFO versus FIFO in plain English
FEFO means first-expired-first-out: ship the acceptable batch with the earliest expiry date. FIFO means first-in-first-out: ship the inventory received earliest. FIFO assumes receiving order roughly matches shelf-life order. FEFO uses the date that actually determines staleness, so it is usually the better rule for expiring products.
A basic FEFO process needs three pieces: record the lot and expiry when inventory arrives, make the picker aware of which lot should ship first, and keep enough order history to know which lots went to which customers. The process does not have to be complicated, but it does need to be consistent.
Recall readiness is the real test
The hard question is not can we store a lot number. It is can we act quickly if a batch has a problem. If a supplier notifies you that lot A123 should not be sold, you need to know whether it is still in stock, which orders received it, and which customers may need notification.
That requires batch-to-customer traceability. At fulfillment, record which lot supplied each order; at returns, preserve or correct that association; and during a mock recall, export affected inventory, orders, and customer contact records. Test the procedure before an actual incident exposes missing data.
BatchGuard is built for Shopify brands that need lot numbers, expiry dates, FEFO visibility, and recall-readiness lists. It helps track batches and surface expiring stock, but it does not replace your warehouse procedures, supplier quality program, or legal obligations. You still need staff to receive inventory correctly and follow the process.
Per-product expiry is not per-batch expiry
A product metafield holding one expiry date is only correct if all sellable units share that date. Most real inventory contains overlapping lots. Store quantity, received date, expiry, status, and documents at the batch level, then roll up warnings to the product and location. Do not overwrite an old lot merely because a new one arrives.
Connect batches to shopper trust
Lot tracking also supports the customer-facing trust layer. COAs make more sense when they are tied to a batch. Product documents may vary by product generation. Facts panels and claims review keep the page accurate while batch records keep operations accountable.
If spreadsheets are starting to hide expiry risk or recall work, use BatchGuard to add lot and expiry tracking to Shopify without turning every batch into a separate product.
Operational habits make the data useful
Lot tracking starts at receiving, not during a recall. When stock arrives, record the lot number and expiry date before it is mixed with existing inventory. If multiple lots are stored in the same location, label shelves or bins clearly enough that a picker can choose the intended batch without guessing. The software record and the physical warehouse need to match.
Set rules for short-dated stock before the problem appears. Some brands stop selling a product online when it has fewer than 90 days of shelf life; others route it to wholesale, samples, or disposal. Whatever the rule is, write it down. FEFO works best when the team knows both which batch expires first and the minimum remaining shelf life customers should receive.
Other lot and expiry tools exist, from spreadsheets to warehouse and ERP systems. Choose against actual requirements: locations, receiving, FEFO pick guidance, batch-to-order assignment, alerts, exports, and recall drills. BatchGuard is the focused Shopify option for regulated-DTC teams that need those records without pretending one inventory tool answers every operation.
Next step: View BatchGuard on the Shopify App Store, or read how the app fits into the broader BatchGuard product page.