Walmart FSMA 204 Compliance FAQ

Updated 6 hours ago ​by Merch Transformation Change Management

FAQs

General Scope & Background

1. What is FSMA 204?

FSMA 204 refers to the "Requirements for Additional Traceability Records for Certain Foods" Final Rule published by the FDA on November 21, 2022. This rule implements Section 204(d) of the FDA Food Safety Modernization Act. It requires companies to maintain additional records for specific designated foods (the Food Traceability List) to protect public health. ([FDA FSMA 204 Rule](https://www.fda.gov/food/food-safety-modernization-act-fsma/fsma-final-rule-requirements-additional-traceability-records-certain-foods))

2. Do I need to send FSMA data for all items, or only those on the FTL?

You should send FSMA data for all food items, not just items on the FTL.

3. If I am live with ASNs, do I need to re-test?

If you are currently sending ASNs, you do not need to re-test. However, you must begin sending the new required segments/elements for FSMA compliance. If you are *not* currently sending ASNs, you must contact the EDI Help Desk.

4. Does this apply to Direct Store Delivery (DSD)?

Yes. FSMA 204 applies to all shipments of FTL goods, including DSD, DSDC, Warehouse deliveries, WFS, Marketplace, Consolidation, and Imports.

5. Does the rule apply to international suppliers?

Yes. The Final Rule applies to all entities that manufacture, process, pack, or hold FTL foods, regardless of whether the company is located in the United States or a foreign country.

Critical Tracking Events (CTEs) & Key Data Elements (KDEs)

1. What are CTEs and KDEs?

  • Key Data Elements (KDEs): Specific pieces of information that must be recorded (e.g., Lot Code, Ship From location, quantity).
  • Critical Tracking Events (CTEs): Specific supply chain events where KDEs must be captured.

2. What are the specific CTEs?

The CTEs defined by the FDA are:

CTE

Description

Harvesting

Collection of raw agricultural commodities

Cooling

Initial cooling of produce after harvest

Initial Packing

First packing of a raw agricultural commodity

First Land-Based Receiver

First receipt of seafood from a fishing vessel

Shipping

Sending FTL foods to another location

Receiving

Receiving FTL foods from another location

Transformation

Manufacturing/processing that changes the product

Traceability Lot Code (TLC) Concepts

1. What is a Traceability Lot Code (TLC)?

A TLC is a descriptor used to uniquely identify a traceability lot within the records of the firm that assigned it.

2. When must a TLC be assigned?

A TLC must be assigned when a firm: (1) Initially packs a raw agricultural commodity, (2) Performs the first land-based receiving of food from a fishing vessel, or (3) Transforms a food product.

3. What is the TLC Source?

The TLC Source is the physical location where the TLC was assigned. This is typically the packing house, processor, or manufacturer. TLC source is often referred to as "Manufacturing Plant" within the EDI guide and SQEP.

4. If I am a receiver, do I need to create my own TLC?

No. Receivers must utilize the previously assigned TLC provided by the trading partner rather than establishing a new internal reference.

EDI 856 (ASN) Structure & Segments

1. Which EDI transaction is used for FSMA data?

Use either "Goods for Resale ASN" (standard/ambient) or "Perishable ASN" (variable weight/highly perishable) guides found in Retail Link.

2. What are the valid Hierarchical Structure Codes (BSN05)?

  • 0001: (Shipment, Order, Packaging, Item): Required for DSDC/Store ASNs.
  • 0002: (Shipment, Order, Item, Packaging): For single item per pack.
  • ZZZZ: (Mutually Defined): Required for Perishable ASNs.

3. Can I send multiple Lot Codes for a single item?

Yes. However, the ASN structure must support it.

The lot code sent in the ASN MUST match the GS1-128 barcode and any other markings on the physical freight.

4. Where do I put the Traceability Lot Code?

The Traceability Lot Code must be sent in the LIN segment using qualifier LT. For Perishables, it goes in the Batch (ZZ) loop. Max length: 20 chars.

5. What date/time segments are required?

Date qualifiers other than 011/067 are required at the Batch/Lot level.

Qualifier

Name

Usage

011

Shipped Date

Required at Shipment level

067

Scheduled Delivery

Required for Store ASNs

208

Lot Expiration

For blends / ready-to-use

405

Production Date

Minimally processed animal goods

510

Date Packed

If processing alters life

511

Shelf Life Expiration

Best Before

906

Collection / Harvest Date

Harvested goods

036

Expiration

Inventory management

Country of Origin

1. Is Country of Origin required?

Yes, for Perishable and PTI suppliers. Use CH qualifier in LIN segment (e.g., `LIN*...*CH*US-FL`).

Identification Keys (GLN, GTIN, SSCC)

1. Is a Global Location Number (GLN) required?

Yes, for Ship From, Ship To, and TLC Source (Manufacturing Plant).

2. Where does the GLN go in the ASN?

  • Ship From: `N1*SF` (Shipment level)
  • Ship To: `N1*ST` (Shipment level)
  • TLC Source: `N1*MP` (Pack/Item level)

3. Do I need an SSCC (Serial Shipping Container Code)?

Yes. The SSCC-18 (sent in `MAN*GM` segment) is required to identify the logistic unit (Pallet/Case) and link physical shipment to EDI data.

Administrative Contact Requirements

1. Is a contact phone number required for FSMA shipments?

Admin contact telephone required in 2 places:

  • At the shipment level for the ship from location
  • At the batch/lot level for the manufacturing plant

These 2 telephone contact phone numbers may be different. The ship from location may be different than the manufacturing plant.

Operational & Labeling

1. What are the general labeling requirements?

Every palletized or unitized shipment must carry a clearly visible, physical pallet-level shipping label affixed to each individual pallet. This label should accurately reflect the pallet's contents and the exact quantity of items it holds, ensuring precise identification and streamlined handling throughout the supply chain.

2. Does the physical label need to change?

The physical label must contain:

  • Traceability Lot Code in human-readable format
  • Preferably in a scannable barcode (GS1-128 or GS1 DataMatrix)
Important: The Lot Code on the PHYSICAL label MUST match the Lot Code sent in the ASN exactly.

3. What barcodes are acceptable?

Barcode Type

Description

GS1-128

Required at Pack / Case level. Encodes GTIN, Lot, and Date.

SSCC-18

Required at Pallet level.

4. What happens if the data in the ASN does not match the physical shipment?

This will cause receiving delays, rejections, and SQEP scorecard penalties. Accuracy between the digital ASN and physical product is mandatory.

Common ASN Errors & Resolutions

FSMA/Perishable Specific Errors

Error Message

Type

Resolution

Missing Item Identifier LT Lot Code

Warning

All food items must have Lot numbers in LIN(LT).

Invalid Item Identifier LT Lot Code

Warning

Lot number >20 chars. Truncate to 20.

Missing perishable date time references

Warning

Use qualifiers: 208, 405, 510, 511, or 906 at Batch/Pack level.

Missing item identifier CH

Warning

Perishable ASNs require the Country of Origin (CH) qualifier. Format: Space-separated ISO3166-1 alpha-2 codes (e.g., "US CA"). Subdivisions: Join with hyphen (e.g., "US-FL"). Must match physical label "Product of" exactly.

Missing Ship From GLN

Warning

FTL compliance requires Ship From GLN or Address.

Missing Manf Plant Lot Code Source Ref URL

Warning

FTL requires Mfg Plant address/GLN, FFRN, or URL (N1*MP).

Missing Administrative Contact Telephone

Warning

FSMA FTL requires admin contact phone in PER(TE).

Admin contact telephone required in 2 places: at the shipment level for the ship from location, and at the batch/lot level for the manufacturing plant. These 2 telephone contact phone numbers may be different. The ship from location may be different than the manufacturing plant.

Structure & Hierarchy Errors

Error Message

Type

Resolution

Invalid Hierarchical Structure Code

Error

BSN05 must be 0001, 0002, or ZZZZ.

Missing Hierarchical Structure Code

Error

BSN segment missing or BSN05 empty.

Invalid Hierarchical loop(s)

Error

Parent loop missing expected child loop.

SSCC Errors

Error Message

Type

Resolution

Missing SSCC-18 on Pack loop

Error

On the pack loop, add a Man(GM) segment followed by a 20 digit SSCC barcode number.

Missing SSCC-18 on Tare loop

Error

On the tare loop, add a Man(GM) segment followed by a 20 digit SSCC barcode number. If the TD101 is PLT, then this is ALWAYS Required.

Invalid SSCC-18

Error

Incorrect length or check digit. Must be 20 chars.

Multiple SSCC-18 on Pack Loop

Error

Only 1 SSCC-18 allowed per pack loop.

Item & Quantity Errors

Error Message

Type

Resolution

Missing item identifier UP or EN

Error

LIN must have UP (GTIN-12) or EN (GTIN-13).

Missing LIN for respective Loop

Error

Perishable: LIN at Pack level. Non-perishable: LIN at Item level.

Invalid quantity UOM

Error

SN1 UOM must be EA, CA, or PL.

Food Traceability List (FTL)

The Food Traceability List can be found here: https://www.fda.gov/food/food-safety-modernization-act-fsma/food-traceability-list.

Quick Reference: ASN Segment Summary for FSMA

Data Element

Segment

Location

Required?

Shipment ID

BSN02

Header

Yes

Structure Code

BSN05

Header

Yes

Ship Date

DTM*011

Shipment HL

Yes

Ship From GLN

N1*SF

Shipment HL

Yes

Ship To GLN

N1*ST

Shipment HL

Yes

Contact Phone

PER*PY

Shipment HL

Yes

Pallet SSCC

MAN*GM

Tare HL

Yes (Unitized)

Lot Number

LIN*LT

Pack/Item/Batch

Yes (All Food)

Country of Origin

LIN*CH

Pack/Batch

Yes (Perishable)

Expiration Date

DTM*...

Pack/Batch

Yes (All Food)

Mfg Plant GLN

N1*MP

Pack/Item/Batch

Yes (All Food)

Resources & Support

Resources

Walmart Contacts

  • EDI Help Desk: (479) 273-8888


How did we do?