850X12Order Management

Purchase Order

The X12 850 is the electronic purchase order a buyer sends to a supplier to request goods or services, replacing paper or PDF POs with a structured, machine-readable document.

In this guide

850 Purchase Order moves from Buyer / Retailer / Distributor to Supplier / Manufacturer / Vendor (Buyer → Seller) via AS2, SFTP, VAN. The interactive diagram below traces every business and technical step the message passes through — press Play Flow to watch it travel, or click any step for detail.

How it works

How 850 Purchase Order Works

Sender

Buyer / Retailer / Distributor

Receiver

Supplier / Manufacturer / Vendor

Direction

Buyer → Seller

Standard

ANSI ASC X12

Version

005010

Transport

AS2 / SFTP / VAN

Business Purpose

Order Management

Sender — Buyer / Retailer / Distributor

EDI Transmission

850

Purchase Order

ANSI ASC X12 004010 / 005010

AS2SFTPVAN

Receiver — Supplier / Manufacturer / Vendor

Need help understanding this EDI flow?

Ask EDI AI →
Figure: 850 Purchase Order workflow from Buyer / Retailer / Distributor through EDI transmission to Supplier / Manufacturer / Vendor. Standard: ANSI ASC X12 004010 / 005010 · Transaction: 850 · Direction: Buyer → Seller

850 Purchase Order workflow. Steps: Create Purchase Order, ERP Order Record, Generate X12 850, Validation, AS2 / SFTP / VAN, Supplier EDI Gateway, Translate to ERP, Order Processing. Transmitted from Buyer / Retailer / Distributor to Supplier / Manufacturer / Vendor via AS2, SFTP, VAN, following ANSI ASC X12 004010 / 005010.

Overview

Communicates what the buyer wants to order: items, quantities, prices, ship-to/bill-to locations, and requested delivery dates. It is usually the first transaction in the order-to-cash cycle.

Sender

Buyer / Retailer / Distributor

Receiver

Supplier / Manufacturer / Vendor

Direction

Buyer → Seller

Standard / Version

ANSI ASC X12 004010 / 005010

Segment structure

Key segments that make up this transaction set:

SegmentNamePurpose
BEGBeginning Segment for Purchase OrderPO number, PO type code, and order date.
REFReference IdentificationAdditional references such as contract or department codes.
N1Party IdentificationIdentifies buyer, ship-to, and bill-to parties.
PO1Baseline Item DataOne iteration per line item: quantity, unit price, product/service ID.
CTTTransaction TotalsTotal number of line items for control purposes.

Interactive example

Click any segment below to see its business meaning.

850 Purchase Order — interactive EDI message visualizer

ISA

This is an envelope or control segment. Select a highlighted segment on the left (shown in green) for a full business explanation.

View raw EDI
ISA*00*          *00*          *ZZ*BUYERCORP      *ZZ*ACMESUPPLY     *230914*1230*U*00401*000000101*0*P*>~
GS*PO*BUYERCORP*ACMESUPPLY*20230914*1230*101*X*004010~
ST*850*0001~
BEG*00*NE*PO-2024-88213**20230914~
REF*DP*410~
N1*ST*BuyerCorp Distribution Center 4~
N3*4400 Commerce Pkwy~
N4*Columbus*OH*43215~
PO1*1*100*EA*25.00*PE*VP*SKU-10293*IN*44921~
PID*F****Wireless Barcode Scanner~
PO1*2*250*EA*4.50*PE*VP*SKU-38810*IN*44987~
PID*F****USB-C Charging Cable, 2m~
CTT*2~
SE*12*0001~
GE*1*101~
IEA*1*000000101~

Mapping example

A representative field-level mapping from a common source system into this transaction:

SourceSource FieldTarget Field
SAP IDoc (ORDERS05)E1EDP01-MENGEPO102 (Quantity Ordered)
SAP IDoc (ORDERS05)E1EDP01-VPREIPO104 (Unit Price)
SAP IDoc (ORDERS05)E1EDP01-MATNRPO108 (Product/Service ID)
SAP IDoc (ORDERS05)E1EDT10-NTANFDTM*002 (Requested Delivery Date)

Validation rules

  • BEG03 (PO number) must be unique per trading partner and non-blank.
  • Each PO1 loop must resolve to a valid, active item number in the supplier's catalog.
  • N1 loops must include at least one Ship To (ST) party with a resolvable address.
  • CTT01 must equal the actual count of PO1 loops in the transaction.
  • Quantity (PO102) and Unit Price (PO104) must be numeric and greater than zero.

Common errors & troubleshooting

999/997 rejects with segment count mismatch

Cause: SE01 does not match the actual number of segments between ST and SE.

Fix: Recalculate the segment count in the mapping engine before transmission.

Supplier reports "unknown item" on PO1

Cause: PO108 uses the buyer's internal SKU instead of the agreed vendor part number qualifier.

Fix: Confirm the PO107 qualifier (VP, BP, UP) matches the cross-reference table both parties agreed on.

Ship-to address not found

Cause: N1*ST loop references a location code not yet set up in the supplier's partner master.

Fix: Send new location codes to the supplier ahead of the first order using that ship-to.

Related articles

Frequently asked questions

Conceptually yes — it carries the same business information — but it's structured data designed for system-to-system exchange rather than a human-readable document.

Still have questions about 850?

Ask EDI AI →