The 850 Purchase Order is the starting point for almost every retail EDI relationship. Your trading partner sends you an 850 and your system needs to turn it into an actual order. Here’s how that works.
What Is an EDI 850?
An 850 is the electronic equivalent of a paper purchase order. It contains everything a buyer is telling you about an order:
- What they want (items, quantities, UPCs/GTINs)
- Where to ship it (store number or DC address)
- When they need it (ship dates, delivery windows)
- How to bill them (PO number, department, payment terms)
The 850 initiates the order. You respond with an 855 (acknowledgment) and eventually send an 856 (ship notice) and 810 (invoice).
Key Segments
Every 850 follows the same X12 envelope structure, but the segments inside vary by trading partner. The ones you’ll always see:
BEG — Beginning Segment
- BEG01: Transaction Set Purpose Code (usually
00for original) - BEG02: Purchase Order Type Code (e.g.,
SAfor stand-alone) - BEG03: Purchase Order Number — this is your order reference
- BEG05: Purchase Order Date
PO1 — Baseline Item Data One loop per ordered item. Contains:
- Quantity ordered
- Unit of measure
- Unit price
- Product identifiers (UPC, GTIN, buyer’s part number)
DTM — Date/Time Reference Shipping window, required delivery date, cancel date. Retailers use this to hold you to delivery compliance.
N1 — Name Ship-to and bill-to addresses. You’ll see multiple N1 loops — one for each party. The qualifier tells you which is which:
ST= Ship ToBT= Bill ToBY= Buying Party
CTT — Transaction Totals Line item count. Some retailers require this to match the actual number of PO1 loops.
Common Mapping Challenges
Product identifier mismatches — Retailers reference products by their internal buyer part number, UPC, GTIN, or some combination. Your 850 map needs to handle all of them and translate to whatever your ERP uses internally.
Multiple ship-to addresses — A single 850 can contain multiple N1 ST loops for different store destinations. Some retailers use 850s this way; others send separate POs per store. Know which way your partner works before you build the map.
Price discrepancies — The price in the 850 is the buyer’s expected price. If it doesn’t match your price file, you need a business rule about whether to accept, reject, or hold the order for review.
Date qualifiers — DTM segments use qualifier codes to identify what kind of date they represent. 010 is requested ship date. 038 is cancel date. If you read the wrong qualifier, you’ll ship to the wrong window.
Responding with an 855
Once you process an 850, you owe the buyer an 855 Purchase Order Acknowledgment. The 855 mirrors the 850 structure and tells the buyer:
- You received the PO
- Whether you can fulfill it as-is, partially, or not at all
- Any substitutions or quantity changes
Most retailers require the 855 within 24 hours. Some have tighter windows.
Testing Your Map
The fastest way to validate a new 850 map is to run test transactions through the trading partner’s certification portal. Send real-looking test data — don’t use placeholder values — and read the rejection messages carefully. Most rejections tell you exactly which segment and element failed.
If you’re building a new 850 map or fighting an existing one that keeps failing, reach out to TebcoForge. We’ve mapped 850s for Walmart, Target, Costco, and most major retail trading partners.
Need help with EDI?
TebcoForge handles mapping, trading partner setup, and go-live. Tell us what you're working on.
Get a Free Quote