X12 850 B2B Purchase Order
This Draft Standard for Trial Use contains the format and establishes the data contents of the Purchase Order Transaction Set (850) for use within the context of an Electronic Data Interchange (EDI) environment. The transaction set can be used to provide for customary and established business and industry practice relative to the placement of purchase orders for goods and services. This transaction set should not be used to convey purchase order changes or purchase order acknowledgment information.
- ~ Segment
- * Element
- > Component
Interchange Control Header
To start and identify an interchange of zero or more functional groups and interchange-related control segments
Code to identify the type of information in the Authorization Information
- 00
- No Authorization Information Present (No Meaningful Information in I02)
Information used for additional identification or authorization of the interchange sender or the data in the interchange; the type of information is set by the Authorization Information Qualifier (I01)
Code to identify the type of information in the Security Information
- 00
- No Security Information Present (No Meaningful Information in I04)
This is used for identifying the security information about the interchange sender or the data in the interchange; the type of information is set by the Security Information Qualifier (I03)
Qualifier to designate the system/method of code structure used to designate the sender or receiver ID element being qualified
Identification code published by the sender for other parties to use as the receiver ID to route data to them; the sender always codes this value in the sender ID element
Qualifier to designate the system/method of code structure used to designate the sender or receiver ID element being qualified
Identification code published by the receiver of the data; When sending, it is used by the sender as their sending ID, thus other parties sending to them will use this as a receiving ID to route data to them
Code to identify the agency responsible for the control standard used by the message that is enclosed by the interchange header and trailer
- U
- U.S. EDI Community of ASC X12, TDCC, and UCS
This version number covers the interchange control segments
- 00401
- Draft Standards for Trial Use Approved for Publication by ASC X12 Procedures Review Board through October 1997
A control number assigned by the interchange sender
Code sent by the sender to request an interchange acknowledgment (TA1)
- 0
- No Acknowledgment Requested
- 1
- Interchange Acknowledgment Requested
Code to indicate whether data enclosed by this interchange envelope is test, production or information
- I
- Information
- P
- Production Data
- T
- Test Data
Type is not applicable; the component element separator is a delimiter and not a data element; this field provides the delimiter used to separate component data elements within a composite data structure; this value must be different than the data element separator and the segment terminator
- >
- Component Element Separator
Functional Group Header
To indicate the beginning of a functional group and to provide control information
Code identifying a group of application related transaction sets
- PO
- Purchase Order (850)
Code identifying party sending transmission; codes agreed to by trading partners
Code identifying party receiving transmission. Codes agreed to by trading partners
Time expressed in 24-hour clock time as follows: HHMM, or HHMMSS, or HHMMSSD, or HHMMSSDD, where H = hours (00-23), M = minutes (00-59), S = integer seconds (00-59) and DD = decimal seconds; decimal seconds are expressed as follows: D = tenths (0-9) and DD = hundredths (00-99)
Assigned number originated and maintained by the sender
Code used in conjunction with Data Element 480 to identify the issuer of the standard
- T
- Transportation Data Coordinating Committee (TDCC)
- X
- Accredited Standards Committee X12
Code indicating the version, release, subrelease, and industry identifier of the EDI standard being used, including the GS and GE segments; if code in DE455 in GS segment is X, then in DE 480 positions 1-3 are the version number; positions 4-6 are the release and subrelease, level of the version; and positions 7-12 are the industry or trade association identifiers (optionally assigned by user); if code in DE455 in GS segment is T, then other formats are allowed
- 004010
- Draft Standards Approved for Publication by ASC X12 Procedures Review Board through October 1997
Heading
Transaction Set Header
To indicate the start of a transaction set and to assign a control number
Code uniquely identifying a Transaction Set
- The transaction set identifier (ST01) used by the translation routines of the interchange partners to select the appropriate transaction set definition (e.g., 810 selects the Invoice Transaction Set).
- 850
- Purchase Order
Beginning Segment for Purchase Order
To indicate the beginning of the Purchase Order Transaction Set and transmit identifying numbers and dates
Code identifying purpose of transaction set
- 00
- Original
Code specifying the type of Purchase Order
- SA
- Stand-alone Order
Identifying number for Purchase Order assigned by the orderer/purchaser
This will be used as the main key and needs to be returned on all corresponding documents.
Currency
To specify the currency (dollars, pounds, francs, etc.) used in a transaction
Reference Identification
To specify identifying information
CO (Customer Order Number) - Indicates the end user's order number, typically provided on the packing slip.
ST (Store Number) - used to identify the store where the order will get shipped for customer pickup. Will also be used to differentiate between D2S and D2C.
IA (Internal Vendor Number) - this is the number assigned by the merchant to identify the supplier.
PD (Promotion/Deal Number) - this is used to show the end users discount code for the order; typically required on the packing slip.
X9 (Internal Control Number) - this is the internal order number within the merchant's system; typically required on the packing slip.
IT (Internal Customer Number) - End User's customer ID; typically used on the packing slip.
ZZ (Mutually Defined) - will be used to indicate gift wrap. "1" will be entered in REF02 to indicate the wrapping.
Code qualifying the Reference Identification
- CO
- Customer Order Number
- IA
- Internal Vendor Number
- IT
- Internal Customer Number
- PD
- Promotion/Deal Number
- ST
- Store Number
- X9
- Internal Control Number
- ZZ
- Mutually Defined
Service, Promotion, Allowance, or Charge Information
To request or identify a service, promotion, allowance, or charge; to specify the amount or percentage for the service, promotion, allowance, or charge
A (Allowance) = used to indicate an allowance to be applied to the purchase order total.
C (Charge) = used to indicate a charge to be applied to the purchase order total.
N (No Allowance or Charge) = used to show the end customer's charges or allowances. These will typically be used on the packing slip.
**C310 (Discount) will be the only code using "A" (Allowance) in SAC01.
**ZZZZ (Mutually Defined) will be used as a miscellaneous charge.
Code which indicates an allowance or charge for the service specified
- If SAC01 is "A" or "C", then at least one of SAC05, SAC07, or SAC08 is required.
- A
- Allowance
- C
- Charge
- N
- No Allowance or Charge
Code identifying the service, promotion, allowance, or charge
- C310
- Discount
- G821
- Shipping
- H850
- Tax
- ZZZZ
- Mutually Defined
Terms of Sale/Deferred Terms of Sale
To specify terms of sale
Code identifying type of payment terms
- If the code in ITD01 is "04", then ITD07 or ITD09 is required and either ITD10 or ITD11 is required; if the code in ITD01 is "05", then ITD06 or ITD07 is required.
- 14
- Previously agreed upon
Code identifying the beginning of the terms period
- ZZ
- Mutually Defined
Terms discount percentage, expressed as a percent, available to the purchaser if an invoice is paid on or before the Terms Discount Due Date
Number of days in the terms discount period by which payment is due if terms discount is earned
Number of days until total invoice amount is due (discount not applicable)
Customer Order
To specify pertinent dates and times
806 (Customer Order) - Will be used to show date when customer placed order; typically used on the packing slip.
Delivery Requested
To specify pertinent dates and times
002 (Delivery Requested) - Will be used to show the date the purchase order is to be delivered in full.
Requested Ship
To specify pertinent dates and times
010 (Requested Ship Date) - will be used to show the latest the date an order can be shipped.
Requested Ship
To specify pertinent dates and times
010 (Requested Ship Date) - will be used to show the latest the date an order can be shipped.
Carrier Details (Routing Sequence/Transit Time)
To specify the carrier and sequence of routing and provide transit time information
TD503 Identification (Carrier Code) - this is the Standard Carrier Alpha Code (SCAC). If you are using your own custom shipping methods, these are set-up on the "Shipment Settings" page in the portal, the Carrier Code will automatically populate based on the Class Code (TD505) submitted.
TD505 Routing (Class code) - This is the field that will be a combination of both SCAC and Service Level. If you map this to your partner's, the Carrier Code (TD503) and the Service Level Code (TD512) will automatically populate accordingly. This will allow you to only keep track of one code (Class Code) rather then 3. This should always be returned on the Shipment (856).
TD512 Service Level Code (Service Level Code) - If you are using your own custom shipping methods, these are set-up on the "Shipment Settings" page in the portal, the Service Level Code (TD512) will automatically populate based on the Class Code (TD505) submitted.
Code designating the system/method of code structure used for Identification Code (67)
- When specifying a routing sequence to be used for the shipment movement in lieu of specifying each carrier within the movement, use TD502 to identify the party responsible for defining the routing sequence, and use TD503 to identify the actual routing sequence, specified by the party identified in TD502.
- 2
- Standard Carrier Alpha Code (SCAC)
Free-form description of the routing or requested routing for shipment, or the originating carrier's identity
Reference Identification
To transmit identifying information as specified by the Reference Identification Qualifier
N902 (Reference Identification) - "GFT" will be submitted to identify that a gift message will be supplied in the MSG segment.
MSG01 (Message Text) - Header gift message, will be used on the packing slip if one is required.
Code qualifying the Reference Identification
- L1
- Letters or Notes
Message Text
To provide a free-form format that allows the transmission of text information
Name
To identify a party by type of organization, name, and code
Code identifying an organizational entity, a physical location, property or an individual
- BT
- Bill-to-Party
Code designating the system/method of code structure used for Identification Code (67)
- 92
- Assigned by Buyer or Buyer's Agent
Code identifying a party or other code
- This segment, used alone, provides the most efficient method of providing organizational identification. To obtain this efficiency the "ID Code" (N104) must provide a key to the table maintained by the transaction processing party.
Additional Name Information
To specify additional names or those longer than 35 characters in length
Address Information
To specify the location of the named party
Geographic Location
To specify the geographic place of the named party
Free-form text for city name
- A combination of either N401 through N404, or N405 and N406 may be adequate to specify a location.
Code (Standard State/Province) as defined by appropriate government agency
- N402 is required only if city name (N401) is in the U.S. or Canada.
Code defining international postal zone code excluding punctuation and blanks (zip code for United States)
Administrative Communications Contact
To identify a person or office to whom administrative communications should be directed
Code identifying the major duty or responsibility of the person or group named
Code identifying the type of communication number
Name
To identify a party by type of organization, name, and code
Code identifying an organizational entity, a physical location, property or an individual
- OB
- Ordered By
Code designating the system/method of code structure used for Identification Code (67)
- 92
- Assigned by Buyer or Buyer's Agent
Code identifying a party or other code
- This segment, used alone, provides the most efficient method of providing organizational identification. To obtain this efficiency the "ID Code" (N104) must provide a key to the table maintained by the transaction processing party.
Additional Name Information
To specify additional names or those longer than 35 characters in length
Address Information
To specify the location of the named party
Geographic Location
To specify the geographic place of the named party
Free-form text for city name
- A combination of either N401 through N404, or N405 and N406 may be adequate to specify a location.
Code (Standard State/Province) as defined by appropriate government agency
- N402 is required only if city name (N401) is in the U.S. or Canada.
Code defining international postal zone code excluding punctuation and blanks (zip code for United States)
Administrative Communications Contact
To identify a person or office to whom administrative communications should be directed
Code identifying the major duty or responsibility of the person or group named
Code identifying the type of communication number
Name
To identify a party by type of organization, name, and code
Code identifying an organizational entity, a physical location, property or an individual
- ST
- Ship To
Code designating the system/method of code structure used for Identification Code (67)
- 92
- Assigned by Buyer or Buyer's Agent
Code identifying a party or other code
- This segment, used alone, provides the most efficient method of providing organizational identification. To obtain this efficiency the "ID Code" (N104) must provide a key to the table maintained by the transaction processing party.
Additional Name Information
To specify additional names or those longer than 35 characters in length
Address Information
To specify the location of the named party
Geographic Location
To specify the geographic place of the named party
Free-form text for city name
- A combination of either N401 through N404, or N405 and N406 may be adequate to specify a location.
Code (Standard State/Province) as defined by appropriate government agency
- N402 is required only if city name (N401) is in the U.S. or Canada.
Code defining international postal zone code excluding punctuation and blanks (zip code for United States)
Administrative Communications Contact
To identify a person or office to whom administrative communications should be directed
Code identifying the major duty or responsibility of the person or group named
Code identifying the type of communication number
Detail
Baseline Item Data
To specify basic and most frequently used line item data
- PO102 is required.
Alphanumeric characters assigned for differentiation within a transaction set
- PO101 is the line item identification.
Code specifying the units in which a value is being expressed, or manner in which a measurement has been taken
- EA
- Each
Price per unit of product, service, commodity, etc.
Code identifying the type of unit price for an item
- TE
- Contract Price per Each
Code identifying the type/source of the descriptive number used in Product/Service ID (234)
- PO106 through PO125 provide for ten different product/service IDs per each item. For example: Case, Color, Drawing No., U.P.C. No., ISBN No., Model No., or SKU.
- SK
- Stock Keeping Unit (SKU)
Identifying number for a product or service
Code identifying the type/source of the descriptive number used in Product/Service ID (234)
- VN
- Vendor's (Seller's) Item Number
Identifying number for a product or service
Code identifying the type/source of the descriptive number used in Product/Service ID (234)
- UP
- U.P.C. Consumer Package Code (1-5-5-1)
Pricing Information
To specify pricing information
RTL (Retail Price) - this will be the price paid by the end customer. Will be used on the packing slip if mandatory.
Code identifying pricing specification
- RTL
- Retail
Product/Item Description
To describe a product or process in coded or free-form format
08 (Product) - General Product description. Will be used on the packing slip if mandatory.
SIZ (Sizing) - Size attribute of the product. Will be used on the packing slip if mandatory.
35 (Color) - Color attribute of the product. Will be used on the packing slip if mandatory.
ZZ (Mutually Defined) - Any additional product attributes will be submitted here.
Code indicating the format of a description
- If PID01 equals "F", then PID05 is used. If PID01 equals "S", then PID04 is used. If PID01 equals "X", then both PID04 and PID05 are used.
- F
- Free-form
Code identifying the general class of a product or process characteristic
- 08
- Product
- 35
- Color
- SIZ
- Sizing
- ZZ
- Mutually Defined
Item Physical Details
To specify the physical qualities, packaging, weights, and dimensions relating to the item
PO406 (Weight) - Weight of 1 unit of product.
Reference Identification
To specify identifying information
ZZ (Mutually Defined) - will be used to indicate gift wrap. "1" will be entered in REF02 to indicate the wrapping.
Code qualifying the Reference Identification
- ZZ
- Mutually Defined
Service, Promotion, Allowance, or Charge Information
To request or identify a service, promotion, allowance, or charge; to specify the amount or percentage for the service, promotion, allowance, or charge
A (Allowance) = used to indicate an allowance to be applied to the purchase order total.
C (Charge) = used to indicate a charge to be applied to the purchase order total.
N (No Allowance or Charge) = used to show the end customer's charges or allowances. These will typically be used on the packing slip.
**C310 (Discount) will be the only code using "A" (Allowance) in SAC01.
**ZZZZ (Mutually Defined) will be used as a miscellaneous charge.
Code which indicates an allowance or charge for the service specified
- If SAC01 is "A" or "C", then at least one of SAC05, SAC07, or SAC08 is required.
- A
- Allowance
- C
- Charge
- N
- No Allowance or Charge
Code identifying the service, promotion, allowance, or charge
- C310
- Discount
- G821
- Shipping
- H850
- Tax
- ZZZZ
- Mutually Defined
Reference Identification
To transmit identifying information as specified by the Reference Identification Qualifier
N902 (Reference Identification) - "Special Instructions" will be entered here to identify that there are special customizations or notes required for the product. These notes will be entered in the MSG segment.
N902 (Reference Identification) - "GFT" will be submitted to identify that an item level gift message will be supplied in the MSG segment.
Code qualifying the Reference Identification
- L1
- Letters or Notes
- ZZ
- Mutually Defined
Message Text
To provide a free-form format that allows the transmission of text information
MSG01 (Message Text) - Free form text describing special notes or customizations for the product.
Summary
Transaction Totals
To transmit a hash total for a specific element in the transaction set
- The number of line items (CTT01) is the accumulation of the number of PO1 segments. If used, hash total (CTT02) is the sum of the value of quantities ordered (PO102) for each PO1 segment.
Transaction Set Trailer
To indicate the end of the transaction set and provide the count of the transmitted segments (including the beginning (ST) and ending (SE) segments)
Total number of segments included in a transaction set including ST and SE segments
Functional Group Trailer
To indicate the end of a functional group and to provide control information
Total number of transaction sets included in the functional group or interchange (transmission) group terminated by the trailer containing this data element
Interchange Control Trailer
To define the end of an interchange of zero or more functional groups and interchange-related control segments
Sample 1
GS*PO*SENDERGS*RECEIVERGS*20231009*223936*000000001*X*004010
ST*850*0001
BEG*00*SA*Order12345**20220712
CUR*SE*USD
REF*CO*Order12345
DTM*002*20220725
DTM*010*20220715
DTM*806*20220712
TD5**2*UNSP**UNSP
N1*BT*Babylist
N3*1625 Clay Street*Suite 500
N4*Oakland*CA*94612*US
PER*BD*Babylist*TE*1-888-827-7856
N1*ST*Babylist Inc. (EWR1)
N3*1050 Amboy Ave
N4*Perth Amboy*NJ*08861*US
N1*OB*Babylist
N3*1625 Clay Street*Suite 500
N4*Oakland*CA*94612*US
PER*BD**TE*1-888-827-7856
PO1*1*10*EA*155.99*TE*SK*2000801*VN*2000801
PID*F*08***4moms mamaRoo - Black Classic
PO1*2*40*EA*20.99*TE*SK*2000862*VN*2000862
PID*F*08***4moms Newborn Insert - Multi Plush
CTT*2
SE*25*0001
GE*1*000000001
IEA*1*000000001
Stedi is a registered trademark of Stedi, Inc. All names, logos, and brands of third parties listed on this page are trademarks of their respective owners (including “X12”, which is a trademark of X12 Incorporated). Stedi, Inc. and its products and services are not endorsed by, sponsored by, or affiliated with these third parties. Use of these names, logos, and brands is for identification purposes only, and does not imply any such endorsement, sponsorship, or affiliation.