846 - Inventory Advice
STEDI Guide: Inventory Advice Guide
Purpose: To inform the retailer of inventory availability with accurate inventory levels.
Frequency: Inventory information should be processed hourly. If not feasible, at least daily.
- FLX recommends providing a valid quantity level, although any value above 0 means the item is in stock.
- An inventory quantity > 0 means the item is in stock and can be purchased.
- The supplier can implement any “safety net” algorithm they choose, such as sending a stock quantity of 0 when the item is in critically low stock.
- Sending a ‘1’ or greater in the QTY 02 segment indicates that the supplier has sufficient stock to fulfill orders. Sending a ‘0’ indicates that the vendor is either out of stock or the stock is low.
Note: Sending a ‘0’ quantity 846 record does not affect any pending orders for the item.
LIN Segments (Line Item Identification)
-
Primary Identifier / Qualifier
- LIN02 - Qualifier must be SK (SKU)
- LIN03 - Primary Identifier should ideally be a SKU or whatever you want to treat as the SKU.
-
Optional Identifiers
- LIN04 - LIN07 - Other identifiers can be passed via the Optional Additional Identifiers field, though only one identifier can be mapped into Flxpoint for use.
- Additional optional qualifiers include: UP - UPC, EN - EAN
-
Example: LIN**SK*XXX***UP*X***VP*XX~
PID Segments (Product / Item Description)
-
Optional Elements
- PID01 - Must always be “F” for Free-form Description
- PID02 - Must always be “08” for Product
- PID03 - Product Title
-
Example: PID*F***08***XX~
QTY Segments (Quantity)
-
Mandatory Elements
- QTY01 - Must always be “33” for stock quantity available for sale
- QTY02 - Value of quantity available for sale
- QTY03 - Must always be “EA” for Each
-
Example: QTY*33***000*EA~
850 - Purchase Order
STEDI Guide: Purchase Order Guide
Purpose: To transmit new orders
Frequency: Purchase Orders should be processed hourly. If hourly is not feasible, at least daily.
The supplier must adhere to the shipping service level indicated in the TD5 segment of the PO.
BEG Segment (Beginning of Purchase Order)
- BEG01 - Transaction Set Purpose will always be "00" for “Original”
- BEG02 - Purchase Order Code will always be “SA” for Stand-Alone Order
- BEG03 - Max length 22
- BEG05 - Date format CCYYMMDD
PO1 Segment (Baseline Item Data)
- PO101 - Line Item starts at 1, incrementing
- PO102 - Qty Ordered, will be 1 or more
- PO103 - Unit of Measure will always be “EA”
- PO104 - Unit Price Format ##.##
- PO105 - Qualifier will always be “SK” for SKU
- Example: PO1*XXXXX***000000*EA***00000000000**SK*XXXX*UP*XXXXXXXXXXXX~
TD5 Segment (Carrier Details)
The Carrier Name is optional, but the Shipping Method is required.
- TD512 - Service Level Code (Shipping Method)
- Default Values: D3 - 3 Day Select, ND - Next Day Air Saver, SI - Standard Ground, SP - SurePost
- Example: TD5*****XXXXX*******XX~
856 - Advanced Ship Notice (ASN)
STEDI Guide: Advanced Ship Notice Guide
Purpose: To inform the customer of tracking number information to track the progress of the order shipped to them.
Frequency: Shipment information should be processed hourly. If hourly is not feasible, at least daily.
LIN Segments (Line Item Identification)
- LIN01 - Line Item # should start at 1 and increment up
- LIN02 - Qualifier can be one of the following: UP - UPC, EN - EAN, SK - SKU, BP - Buyer’s Part Number
- LIN03 - Product ID must match the value sent in the 850
- Example: LIN*0001*SK*ABC12345~
Shipment Level vs Pack Level
Tracking can be provided in an 856 in two methods: Shipment Level or Pack Level
Shipment Level:
One or more orders in a single box, needing only a single tracking number.
Pack Level:
An order containing one or more packages, requiring tracking numbers for each.
810 - Invoice
STEDI Guide: Invoice Guide
Purpose: To inform the Retailer of the cost that they must pay the supplier for the given order.
Frequency: Invoice information should be processed hourly. If hourly is not feasible, at least daily.
Suppliers must ensure that they invoice properly, following their Retailers' guidelines. Payment terms are agreed upon between Retailers and Suppliers.
Line Items
- IT106 - Qualifier can be UP, SK, or VP
- IT107 - Product ID must match the SKU sent from the 850
- Example: IT1*XXXXX*0000*EA*000*QT*SK*XXXX~
REF Segments
3 Optional REF segment variants are defined in our spec: Internal Vendor Number, Department Number, Invoice Number
- REF01 - Value can be “IA” (Internal Vendor Number), “DP” (Department Number), or “IV” (Invoice Number)
- REF02 - This will be the unique number provided by FLX or your invoice number
- Examples: REF*DP***0000~, REF*IA***XXXXX~, REF*IV***XXXXX~
SAC Segment (Service, Promotion, Allowance, Charge)
If shipping cost is provided, it must be sent in a SAC segment. It cannot be provided as a line item.
- SAC Codes we accept in SAC02 include: AFEE - Fee, C310 - Discount, D240 - Freight, G821 - Shipping, H750 - Tax
- Example: SAC*A***XXXX***000000~
855 - Purchase Order Acknowledgement
STEDI Guide: Purchase Order Acknowledgement Guide
Purpose: To inform the customer which line items on a Purchase Order will be processed and shipped.
Frequency: Acknowledgments should be processed hourly. If hourly is not feasible, at least daily.
BAK Segment (Beginning Segment for Purchase Order Acknowledgment)
- BAK01 - Must be “00” for “Original”
- BAK02 - Acknowledgment Type can be:
- AC - Acknowledge - With Detail and Change
- AD - Acknowledge - With Detail, No Change
- RD - Reject with Detail
- RJ - Rejected - No Detail
- BAK03 - Purchase Order Number must match the PO# sent in the 850
- Date format: CCYYMMDD
- Example: BAK*00*RJ*XX***20230210~
PO1 Segments (Baseline Item Data)
- PO101 - Line Item Number
- PO102 - Qty Ordered
- PO103 - Unit of Measure must be “EA” for “Each”
- PO104 - Unit Price
- PO106 - Product Qualifier must be “SK” for SKU
- Example: PO1*0001***000000 *EA***00000000000**SK*XXXXX***UP*XXXXXX~
ACK Segments (Line Item Acknowledgment)
- ACK01 - Line Item Status Code can be IA, IQ, IR, R2, R4
- ACK02 - Quantity Accepted must be less than or equal to the value in PO102
- ACK03 - Unit of Measure must be “EA” for Each
- Example: ACK*R4***00000000000*EA~