Shopify Recall Batch Tracking After Halawa Pistachio Salmonella Alert
This article is based on FDA/openFDA enforcement record H-0950-2026, which lists an ongoing Class I recall for Al Yaman Halawa Extra Pistachio 907g jars after possible Salmonella contamination. FDA openFDA enforcement record[1]
Quick answer
Shopify merchants who sell food, supplements, cosmetics, or any lot-controlled product need a fast way to answer four recall questions: which batch is affected, where it is now, which customers received it, and what evidence proves the response was completed. The latest FDA/openFDA enforcement record for Al Yaman Halawa Extra Pistachio shows why that matters: the listed product is a 907g jar, UPC 5 287000 098083, lot 13286, recalled because it may be contaminated with Salmonella. The record is classified as Class I and marked ongoing in FDA enforcement data. FDA openFDA enforcement record[1]
For a Shopify store, the operational takeaway is not "write a recall statement and hope." It is to keep batch, lot, expiry, supplier, and order history connected before the recall happens. That lets the merchant isolate only the affected inventory, contact the right buyers, document the response, and keep unrelated inventory moving.
ShelfLife is built for this kind of product-level operational recordkeeping: expiry dates, batch fields, stock rotation, and evidence trails that help teams respond without digging through spreadsheets during a safety incident. For merchants building the process now, start with a simple recall map: product variant, lot code, received quantity, available quantity, order/customer list, customer notice status, disposal or return status, and close-out notes.
What happened in the FDA record
The FDA/openFDA enforcement entry lists recall number H-0950-2026 for Al Yaman Halawa Extra Pistachio 907g plastic jars, UPC 5 287000 098083, with 12 retail units per case. The record says the reason for recall is possible Salmonella contamination, identifies the recall as Class I, lists the recalling firm as GREENWORLD FOOD EXPRESS (USA) LLC, and gives distribution as Michigan and New York. The code information in the record is lot 13286, with recall initiation date 20260609 and report date 20260624. FDA openFDA enforcement record[1]
That is enough detail for a merchant to see the practical problem. A customer-facing product page usually does not carry all of that recall logic. The Shopify product might be "Halawa Extra Pistachio," but the recall is not every pistachio product, every jar size, every supplier, or every order. It is tied to a specific item, UPC, and lot. A merchant that cannot connect a Shopify order to the lot shipped has to choose between over-notifying every buyer, under-notifying affected buyers, or spending hours reconstructing records from purchase orders, packing slips, and warehouse messages.
The FDA also explains that food recalls are actions taken to remove products from commerce when there is reason to believe the products may be unsafe, mislabeled, or otherwise in violation. FDA recalls, market withdrawals, and safety alerts[2] For a small ecommerce merchant, that means the operational standard is not only "know about the recall." The store needs a response workflow that can be followed and documented.
Why lot-level data matters for Shopify stores
Shopify is strong at products, variants, orders, customers, inventory locations, and fulfillment workflows. It is not, by itself, a complete food recall traceability system. Shopify's Admin API order object shows how order records can identify what was purchased and fulfilled, while product and variant records can identify the SKU sold. Shopify Admin API order object[3] The missing layer is often the batch or lot that sat behind that SKU at the time of fulfillment.
That missing layer becomes expensive during a recall. If the affected lot is 13286, the merchant needs to answer:
- Which Shopify product or variant maps to the recalled item?
- Which purchase order or supplier receipt brought lot 13286 into inventory?
- Which inventory locations held that lot?
- Which orders were fulfilled from that lot?
- Which customers need to be contacted?
- Which units remain in stock, in transfer, in returns, or on hold?
- Which actions have already been completed?
Without batch tracking, a team may only know that it sold "pistachio halawa." That is not precise enough. With batch tracking, a team can say, "These 46 units came from lot 13286, 31 were sold, 9 remain at location A, 4 are in returns, and 2 are unresolved." That turns a stressful safety event into a finite checklist.
For food products, the safety context is serious. CDC guidance describes Salmonella as bacteria that can make people sick, with higher risk for some groups. CDC Salmonella information[4] Merchants should not turn that into medical advice, but they should treat lot isolation, buyer notification, and recordkeeping as urgent operational work.
A practical Shopify recall checklist
The safest recall response starts before the recall. Merchants can still use this checklist after a notice lands, but it works better when the data already exists.
| Step | What to capture | Why it matters |
|---|---|---|
| Identify the affected product | Product title, SKU, variant, UPC, supplier, lot, expiry date | Prevents confusing a recalled lot with similar products |
| Freeze available inventory | Current units by location and lot | Stops more affected units from shipping |
| Reconcile fulfilled orders | Order IDs, customer emails, fulfillment dates, shipping status | Builds the contact list |
| Contact customers | Message sent, date sent, response status, refund/replacement action | Documents customer outreach |
| Close out inventory | Destroyed, returned, held, or released units | Shows the final disposition |
| Save evidence | FDA record, supplier notice, internal decisions, customer notices | Supports audit and postmortem review |
The FDA enforcement record for this recall identifies a specific UPC and lot, so the first filter should be narrow: variant plus lot. FDA openFDA enforcement record[1] A merchant should resist the instinct to search only by product title. Titles change, duplicate products exist, bundles can hide components, and fulfillment teams often substitute equivalent SKUs. Lot and UPC are more reliable anchors.
Once the affected lot is identified, inventory should be put on hold before customer messaging begins. That reduces the risk of contacting yesterday's buyers while today's orders keep shipping. If the store uses multiple locations, the hold should be location-specific and documented. If it uses bundles, kits, gift boxes, or subscription packs, the product-component relationship needs to be checked too.
For stores that sell perishable goods, this recall workflow overlaps with expiry management. The same operational discipline that lets a team rotate stock by FEFO also lets it find a lot quickly when a safety notice arrives. A deeper expiry workflow is covered in the related guide on product expiry date management for Shopify.
Customer notification without overexposing data
Recall messaging should be accurate, narrow, and calm. It should explain what product is affected, what identifying information the customer can check, what action the customer should take, and where to find official recall information. It should not speculate beyond the official record. The FDA record states possible Salmonella contamination and gives the product, lot, UPC, firm, and distribution details; the merchant's message should stay grounded in those facts. FDA openFDA enforcement record[1]
A simple customer notice can include:
- Product name and size.
- UPC and lot code.
- Order number or purchase date, if available.
- Clear instruction to stop using or consuming the affected product.
- Refund, replacement, return, or disposal instructions.
- Link to the official recall source.
- Merchant support contact.
The customer list should come from order history, but the recall tracking file does not need to expose full customer data to every staff member. Keep the working list as limited as possible: order ID, contact status, action needed, and assigned owner. If a support agent needs full order details, they can use the normal Shopify order record under the store's access controls. Shopify's order data is the right place to view customer and fulfillment details; the recall tracker should be the response control sheet. Shopify Admin API order object[3]
This is where ShelfLife can reduce the scramble. If lot, expiry, and product movement are already attached to inventory records, the merchant can generate a tighter response list and keep notes in one place instead of building a new spreadsheet during the incident.
Batch tracking for bundles, subscriptions, and retail cases
The Al Yaman recall record says the case pack contains 12 retail units per case. FDA openFDA enforcement record[1] That detail matters because ecommerce inventory is not always sold exactly as it was received. A merchant might receive cases, store jars individually, include one jar in a gift box, or offer the same product through a subscription.
That creates three recall traps:
- Case-level receiving but unit-level selling. The purchase record may mention cases, while Shopify orders show individual units.
- Bundle components. A recalled jar might be inside a gift set with a different Shopify SKU.
- Subscription repeat orders. The same customer may have received multiple shipments from different lots.
The fix is to keep lot data at the lowest practical sellable unit. If the store sells jars, the jar-level record needs the lot. If it sells a bundle containing a jar, the bundle fulfillment record needs to know which component lot was packed. If that is too much to automate at first, start with a receiving log and packing rule: fulfillment staff must record the lot used when a lot-controlled item ships.
For small teams, a minimum viable batch tracking setup can be surprisingly simple:
- Add lot and expiry fields to product receiving.
- Record location and available quantity by lot.
- Make fulfillment choose or confirm the lot before shipment.
- Keep bundle component lots when packing kits.
- Store a recall status for each lot: active, held, recalled, released, destroyed, returned, or closed.
That is not a substitute for legal or food safety advice, but it creates the operational memory a Shopify team needs when time matters.
What to document after the immediate response
After the first customer notices go out, merchants should treat the recall as an operational incident with a close-out packet. The FDA recall ecosystem distinguishes recalls and safety alerts from ordinary product updates; merchants should preserve the official record they relied on. FDA recalls, market withdrawals, and safety alerts[2]
The close-out packet should include:
- The official recall source and the date it was checked.
- Product identifiers: product name, size, UPC, lot, supplier, and internal SKU.
- Inventory reconciliation: received, sold, remaining, returned, destroyed, and unresolved units.
- Customer contact log: who was contacted, when, and what action was taken.
- Internal action log: holds, refunds, replacements, disposal, supplier communication, and staff owner.
- Postmortem notes: where the traceability process worked and where it failed.
The postmortem is important. If the team had to manually search orders, ask the warehouse for photos, or infer lots from dates, that is a process gap. Fix it before the next safety alert. Merchants selling products with expiry dates, batch codes, ingredient risk, cosmetics compliance, or supplier-lot variation should not wait for a recall to test traceability.
Where ShelfLife fits
ShelfLife is for merchants that need more than a product title and a stock count. It helps teams track expiry dates, batches, lot status, and rotation workflows so perishable and lot-sensitive inventory can be managed before it becomes a crisis.
For recall readiness, the useful pattern is:
- Keep lot and expiry details beside each stocked product.
- Use FEFO discipline so older or earlier-expiring stock is visible.
- Track which lots are active, held, recalled, or closed.
- Keep notes that explain why inventory was held or released.
- Use batch records to narrow customer/order review instead of searching the whole catalog.
If a store sells food, supplements, cosmetics, or any product where "which batch was this?" matters, ShelfLife can become the operational layer between Shopify's product/order data and the safety records the team needs during a recall. Start with one category, one supplier, or one high-risk product line. Build the habit before the next alert.
FAQ
What is Shopify recall batch tracking?
Shopify recall batch tracking is the process of connecting a Shopify product, variant, order, and fulfillment to a specific lot or batch code. That lets a merchant identify which customers and inventory units are affected by a recall rather than treating every sale of a product as equally affected.
Why does the Halawa Pistachio recall matter for Shopify merchants?
It is a clear example of a recall tied to specific product identifiers: product name, jar size, UPC, lot, firm, classification, and distribution. The FDA/openFDA record lists lot 13286 and possible Salmonella contamination, which is exactly the kind of detail a merchant needs to map against inventory and orders. FDA openFDA enforcement record[1]
Does Shopify track lots or batches by default?
Shopify tracks products, variants, inventory, orders, customers, and fulfillment data, but merchants often need an additional process or app layer for lot-level traceability. Shopify order records are still essential because they hold the customer and fulfillment history. Shopify Admin API order object[3]
What should a merchant do first after a recall notice?
First, verify the official recall source. Then identify the affected product, UPC, lot, and supplier. Put remaining inventory from the affected lot on hold before contacting customers. After that, reconcile fulfilled orders and create a customer notification log.
Should merchants notify every customer who bought a similar product?
Not if the affected lot can be identified. Over-notification may create confusion and unnecessary refunds, while under-notification creates safety and trust risk. The goal is to notify the customers connected to the affected lot and keep a record of how that list was built.
How does batch tracking help with bundles?
Bundles can hide recalled components under a different Shopify SKU. Batch tracking helps a merchant see that a gift box, subscription pack, or kit contained one unit from a specific lot, even if the customer did not buy the component as a standalone product.
Is this legal advice?
No. Recall obligations can depend on product category, jurisdiction, supply-chain role, and regulator instructions. Merchants should rely on official sources and qualified counsel for legal decisions, and use operational tools to keep accurate records. The FDA's recall and safety alert resources are a better starting point than informal summaries when a merchant is deciding what facts to rely on. FDA recalls, market withdrawals, and safety alerts[2]
Disclaimer
This article is operational guidance for Shopify merchants and is not legal, medical, or food safety advice. Always verify recall details against official sources, follow regulator and supplier instructions, and work with qualified counsel or food safety professionals when a recall affects your store.