EDI 846 — Inventory Advice
Supplier → Flxpoint → Retailer · Inventory availability updates
EDI 846 — Inventory Inquiry/Advice
Purpose
Inform the Retailer of inventory availability with accurate inventory levels. Originates with the Supplier, sent to FLX, then Retailer's ecommerce platform is updated.
In Plain English
The 846 is how a supplier tells a retailer "here is what I have in stock right now." Flxpoint receives the file, updates each SKU's quantity, and then pushes the new numbers out to every connected channel (Shopify, Amazon, Walmart, etc.). If the 846 is wrong — missing SKUs, stale quantities, or an unexpected structure — the downstream channels will either oversell items that are not available or hide items that are actually in stock. That is why the 846 is the most frequently sent EDI transaction in a dropship operation: it is the heartbeat of inventory sync.
Frequency
Hourly recommended, daily minimum.
Business Rules
- QTY > 0 = in-stock, can be purchased
- QTY = 0 = out-of-stock OR below safety stock (supplier's discretion)
- Sending QTY=0 does NOT affect existing pending orders
- Suppliers can implement "safety net" algorithms (send 0 when stock is critically low)
- Unique UPC codes at variant level required for accurate tracking
Segment Hierarchy
ISA Interchange Header GS Group Header (GS01 = "IB") ST Transaction Set Header (ST01 = "846") BIA Beginning Segment for Inventory REF Reference Identification ┌─ LIN Loop (repeats per product) │ LIN Item Identification │ PID Product/Item Description (optional) │ QTY Quantity └─ SE Transaction Set Trailer GE Group Trailer IEA Interchange Trailer
Segment Overview
| Segment | Name | FLX Status | Notes |
|---|---|---|---|
| ST | Transaction Set Header | Required | ST01 = 846 |
| BIA | Beginning Segment | Required | Purpose 00, type MM |
| REF | Reference Identification | Required | IA = Internal Vendor # |
| LIN | Item Identification | Required | Repeats per product. SKU as primary ID |
| PID | Product Description | Situational | Product title, freeform |
| QTY | Quantity | Required | 33 = stock available for sale |
| CTP | Pricing Information | Not Used | Generic X12 accepts unit price (UCP/WHL); FLX ignores this segment entirely |
| SE | Transaction Set Trailer | Required |
Segment Specifications
ST - Transaction Set Header
| Element | Name | Length | M/O | Value/Notes |
|---|---|---|---|---|
| ST01 | Transaction Set ID Code | 3 ID | Required | 846 |
| ST02 | Transaction Set Control Number | 9 N | Required | Unique, incremented by 1 |
BIA - Beginning Segment for Inventory Inquiry
| Element | Name | Length | M/O | Value/Notes |
|---|---|---|---|---|
| BIA01 | Transaction Set Purpose Code | 2 ID | Required | 00 (Original) |
| BIA02 | Report Type Code | 2 ID | Required | MM (Manufacturers Inventory Report) |
| BIA03 | Reference Identification | 9 N | Required | Sequential reference number |
| BIA04 | Date | 8 DT | Required | CCYYMMDD format |
REF - Reference Identification
| Element | Name | Length | M/O | Value/Notes |
|---|---|---|---|---|
| REF01 | Reference ID Qualifier | 2 ID | Required | IA (Internal Vendor Number) |
| REF02 | Reference Identification | 30 AN | Required | FLX-assigned vendor number. Max length: 30 — raised from 10 in May 2026 so longer partner-supplied vendor IDs are accepted |
LIN - Item Identification (Repeating Loop)
| Element | Name | Length | M/O | Value/Notes |
|---|---|---|---|---|
| LIN02 | Prod/Serv ID Qualifier | 2 ID | Required | UP (UPC), EN (EAN), or SK (SKU) |
| LIN03 | Prod/Serv ID | 48 AN | Required | Primary identifier in FLX. Send SKU here if you want SKU in 850s. Exact size: UPC=12, EAN=13, SKU=30 max. Must be unique across all items |
| LIN04 | Prod/Serv ID Qualifier | 2 ID | Optional | Same codes as LIN02. Required if LIN05 present |
| LIN05 | Prod/Serv ID | 48 AN | Optional | Additional product identifier. Required if LIN04 present |
| LIN06 | Prod/Serv ID Qualifier | 2 ID | Optional | Same codes as LIN02. Required if LIN07 present |
| LIN07 | Prod/Serv ID | 48 AN | Optional | Additional product identifier. Required if LIN06 present |
Key: LIN03 will serve as the primary identifier in Flxpoint. Send a SKU here if you wish to receive the SKU in 850s.
PID - Product/Item Description (title)
| Element | Name | Length | M/O | Value/Notes |
|---|---|---|---|---|
| PID01 | Item Description Type | 1 ID | Optional | F (Free-form Description) |
| PID02 | Product Characteristic Code | 2 ID | Optional | 08 (Product) |
| PID05 | Description | 80 AN | Optional | Freeform product title |
QTY - Quantity
| Element | Name | Length | M/O | Value/Notes |
|---|---|---|---|---|
| QTY01 | Quantity Qualifier | 2 ID | Required | 33 (Stock quantity available for sale) |
| QTY02 | Quantity | 15 N | Required | Numeric value of available inventory |
| QTY03 | Composite Unit of Measure | 2 ID | Required | EA (Each) |
SE - Transaction Set Trailer
| Element | Name | Length | M/O | Value/Notes |
|---|---|---|---|---|
| SE01 | Number of Included Segments | 6 N | Required | Count including ST and SE |
| SE02 | Transaction Set Control Number | 9 N | Required | Must match ST02 |
Validation Notes
Segments Not Used by FLX
One quantity per item — no per-warehouse breakdown. Flxpoint's 846 parser reads a single available quantity per SKU from the QTY segment (QTY01=33, one QTY per LIN). It does not support a per-warehouse / per-location quantity breakdown — there is no SDQ support and it does not read multiple location-level QTY segments. If a supplier's file splits stock across warehouses, Flxpoint produces one total available quantity per item, not a per-location breakdown. (Confirmed against the production StandardInventory846Parser + engineering, 2026-07.)
CTP — Pricing Information: Generic X12 allows a CTP segment inside the LIN loop. Flxpoint's parser does read it when present — CTP02 must be WHL or UCP and CTP03 must be numeric, otherwise that item is skipped. It is not a reliable price channel (a malformed CTP silently drops the item), so keep pricing in the dedicated price/catalog feed and send only LIN + PID + QTY on the 846.
Known Compatibility Notes
| Field | FLX Behavior | Notes |
|---|---|---|
| QTY03 | Accepts simple EA | Standard X12 expects composite element C001 with sub-components. FLX accepts both formats. |
| Warehouse/location qty | One total quantity per SKU (QTY01=33) | No per-warehouse breakdown / no SDQ — not supported by the parser. |
| CTP segment | Parsed if present (CTP02=WHL/UCP, numeric CTP03) — a malformed CTP drops the item | Keep pricing in the price feed; send LIN + PID + QTY. |
| PID max use | Not specified | Practical limit; FLX uses first PID as title. |
| LIN qualifier set | UP / EA / SK / EN (all LIN qualifier positions) | Validity set in the parser; EA (EAN) is valid in every position. |
Example File
ISA*00* *00* *ZZ*XXXXXX*ZZ*FLXPOINT*120116*0640*U*00401*000000001*0*P*>~GS*IB*XXXXXX*FLXPOINT*20180116*0640*1*X*004010VICS~ST*846*1~BIA*00*MM*1*20180116~REF*IA*99999~LIN**SK*SKU123*EA*1222222222222*UP*222222222222~PID*F*08***Your product title~QTY*33*145*EA~LIN**SK*SKU456*EA*2333333333333*UP*333333333333~PID*F*08***Another product title. Skipping optional title below~QTY*33*0*EA~LIN**SK*SKU789~QTY*33*0*EA~SE*12*1~GE*1*1~IEA*1*000000001~
Scenario: 3 products, all using SKU as primary ID.
- Product 1 (SKU123): 145 in stock, has UPC and EAN
- Product 2 (SKU456): 0 = out-of-stock/backorder, has UPC and EAN
- Product 3 (SKU789): 0 = discontinued, SKU only
Something unclear?
Ask our AI assistant — it knows this spec and can explain any segment, error, or rule in plain English.