Beginner reading guide

How to Read an EDI 850 Purchase Order

Follow separators, controls, order identity, parties, line items, schedules, and sublines without assuming every partner uses the same qualifiers.

Read an 850 from the outside inward. Identify its separators and ISA/GS/ST boundaries, find the BEG order number and date, establish N1 party roles, then read each PO1 with its owned descriptions, references, dates, schedules, and SLN children. Finish by checking CTT and the SE/GE/IEA controls.

Start with separators and transaction boundaries

In the example below, an asterisk separates elements, a tilde ends each segment, and a colon is the component separator. Real interchanges can use other valid characters. The fixed-width ISA communicates those delimiters; do not blindly split every file on * and ~.

ISA/IEA enclose an interchange, GS/GE enclose a functional group, and ST/SE enclose the 850 transaction set. Control numbers and reported counts help connect each opening segment with its trailer.

Short synthetic EDI 850 example

This illustrative order uses invented names, identifiers, products, and control numbers. It is not a trading-partner implementation guide.

ISA*00*          *00*          *ZZ*DEMO850BUYER   *ZZ*DEMO850SUPPLIER*260830*1200*U*00401*000000850*0*T*:~
GS*PO*DEMO850BUYER*DEMO850SUPPLIER*20260830*1200*850*X*004010~
ST*850*0001~
BEG*00*SA*PO-DEMO-1001**20260830~
REF*DP*042~
DTM*002*20260915~
N1*BY*DEMO BUYER*92*BUYER01~
N1*SU*DEMO SUPPLIER*92*SUPPLIER01~
N1*ST*DEMO RECEIVING*92*STORE042~
PO1*1*12*EA*4.25*PE*BP*DEMO-BP-100*VP*DEMO-VP-55~
PID*F****Blue sample widget~
SCH*12*EA***002*20260915~
SLN*1**I*2*EA*1.25*PE*BP*DEMO-COMP-1~
CTT*1~
SE*13*0001~
GE*1*850~
IEA*1*000000850~

Walk through the purchase order in plain English

ST and BEG: identify the order

ST01=850 identifies the transaction type. BEG03 is the source purchase-order number PO-DEMO-1001; BEG05 is the transmitted purchase-order date.

REF and DTM: qualify context

The REF qualifier says what its value means, and the DTM qualifier says what kind of date follows. Do not treat every REF as the PO number or every DTM as delivery.

N1: establish party roles

BY, SU, and ST identify buyer, supplier, and Ship-To roles in this example. Names and IDs belong to those separate occurrences.

PO1: read the line

PO101 is line 1, PO102=12 is the ordered quantity, PO103=EA is its unit, and PO104=4.25 is the transmitted unit price. The later pairs carry BP and VP identifiers.

PID and SCH: read owned detail

PID supplies the illustrative description. SCH reports a scheduled quantity and qualified date owned by the current PO1 line.

SLN: recognize a child row

The SLN is a child of PO1 line 1. Its quantity, price, and product identifier are child-native facts; they are not another parent PO1.

CTT and trailers: close the source

CTT01=1 is the source-reported line-item count. It is not a purchase-order amount. SE01 reports 13 segments from ST through SE, and the control numbers close their scopes.

Keep repeated structures with the correct owner

A REF after an N1 can belong to that party. A REF immediately following an SCH can also be represented with that schedule. A PID after a PO1 describes the active line, while a structure following an SLN can belong to the child. Correct reading therefore depends on sequence and loop context, not only segment tags.

Smart Mapping reflects that model as one canonical row per PO1 plus one additional row per SLN child. Twenty-three collection fields preserve repeated physical occurrences as deterministic JSON strings without creating a row for every combination of REF, PID, SAC, SCH, or other repeats.

Qualifiers are meanings, not decoration

Codes such as BP and VP identify the meaning of product values. Party codes such as ST, BT, and SU identify Ship-To, Bill-To, and supplier roles. Partner usage varies: a code that is common in one relationship is not necessarily mandatory in another.

Use the applicable X12 release and trading-partner guide when deciding whether a qualifier is required. This guide explains product semantics; it does not certify partner compliance.

Read mapped rows or physical segments

Use the EDI Viewer for quick inspection, the EDI Parser to compare Smart Mapping with Raw Mode, or continue to the field reference. The browser performs EDI-content parsing and conversion; application servers do not receive those contents as conversion input. Ordinary account and quota metadata can still use server endpoints.