RealTruck
/
Purchase Order
  • Specification
  • EDI Inspector
Import guide into your account
RealTruck logo

X12 850 Purchase Order

X12 Release 5010
Back to RealTruck.com

This X12 Transaction Set 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.

Delimiters
  • ~ Segment
  • * Element
  • > Component
  • ^ Repetition
EDI sample
  • Test PO
View the latest version of this implementation guide as an interactive webpage
https://www.stedi.com/app/guides/view/real-truck/purchase-order/01GG3GZNR40E5N9XT5Y9H6K8CB
Powered by
Build EDI implementation guides at stedi.com
Overview
ISA
-
Interchange Control Header
Max use 1
Required
GS
-
Functional Group Header
Max use 1
Required
heading
ST
0100
Transaction Set Header
Max use 1
Required
BEG
0200
Beginning Segment for Purchase Order
Max use 1
Required
REF
0500
Reference Information - Customer Order
Max use 1
Optional
REF
0500
Reference Information - Division Code
Max use 1
Optional
REF
0500
Reference Information - Division Code
Max use 1
Optional
REF
0500
Reference Information - Memo Field
Max use 1
Optional
PER
0600
Administrative Communications Contact
Max use 1
Optional
SAC Loop
TD5
2400
Carrier Details (Routing Sequence/Transit Time)
Max use 1
Optional
N1 Loop
GE
-
Functional Group Trailer
Max use 1
Required
IEA
-
Interchange Control Trailer
Max use 1
Required
ISA

Interchange Control Header

RequiredMax use 1

To start and identify an interchange of zero or more functional groups and interchange-related control segments

Example
ISA-01
I01
Authorization Information Qualifier
Required

Code identifying the type of information in the Authorization Information

00
No Authorization Information Present (No Meaningful Information in I02)
ISA-02
I02
Authorization Information
Required
String (AN)
Min 10Max 10

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)

ISA-03
I03
Security Information Qualifier
Required

Code identifying the type of information in the Security Information

00
No Security Information Present (No Meaningful Information in I04)
ISA-04
I04
Security Information
Required
String (AN)
Min 10Max 10

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)

ISA-05
I05
Interchange ID Qualifier
Required

Code indicating the system/method of code structure used to designate the sender or receiver ID element being qualified

01
Duns (Dun & Bradstreet)
ISA-06
I06
Interchange Sender ID
Required
String (AN)
Min 15Max 15

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

ISA-07
I05
Interchange ID Qualifier
Required

Code indicating the system/method of code structure used to designate the sender or receiver ID element being qualified

01
Duns (Dun & Bradstreet)
12
Phone (Telephone Companies)
ZZ
Mutually Defined
ISA-08
I07
Interchange Receiver ID
Required
String (AN)
Min 15Max 15

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

ISA-09
I08
Interchange Date
Required
YYMMDD format

Date of the interchange

ISA-10
I09
Interchange Time
Required
HHMM format

Time of the interchange

ISA-11
I65
Repetition Separator
Required
String (AN)
Min 1Max 1

Type is not applicable; the repetition separator is a delimiter and not a data element; this field provides the delimiter used to separate repeated occurrences of a simple data element or a composite data structure; this value must be different than the data element separator, component element separator, and the segment terminator

^
Repetition Separator
ISA-12
I11
Interchange Control Version Number
Required

Code specifying the version number of the interchange control segments

00501
Standards Approved for Publication by ASC X12 Procedures Review Board through October 2003
ISA-13
I12
Interchange Control Number
Required
Numeric (N0)
Min 9Max 9

A control number assigned by the interchange sender

ISA-14
I13
Acknowledgment Requested
Required

Code indicating sender's request for an interchange acknowledgment

0
No Interchange Acknowledgment Requested
ISA-15
I14
Interchange Usage Indicator
Required
Identifier (ID)
Min 1Max 1

Code indicating whether data enclosed by this interchange envelope is test, production or information

I
Information
P
Production Data
T
Test Data
ISA-16
I15
Component Element Separator
Required
String (AN)
Min 1Max 1

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

RequiredMax use 1

To indicate the beginning of a functional group and to provide control information

Example
GS-01
479
Functional Identifier Code
Required

Code identifying a group of application related transaction sets

PO
Purchase Order (850)
GS-02
142
Application Sender's Code
Required
String (AN)
Min 2Max 15

Code identifying party sending transmission; codes agreed to by trading partners

GS-03
124
Application Receiver's Code
Required
String (AN)
Min 2Max 15

Code identifying party receiving transmission; codes agreed to by trading partners

GS-04
373
Date
Required
CCYYMMDD format

Date expressed as CCYYMMDD where CC represents the first two digits of the calendar year

GS-05
337
Time
Required
HHMM, HHMMSS, HHMMSSD, or HHMMSSDD format

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)

GS-06
28
Group Control Number
Required
Numeric (N0)
Min 1Max 9

Assigned number originated and maintained by the sender

GS-07
455
Responsible Agency Code
Required

Code identifying the issuer of the standard; this code is used in conjunction with Data Element 480

T
Transportation Data Coordinating Committee (TDCC)
X
Accredited Standards Committee X12
GS-08
480
Version / Release / Industry Identifier Code
Required

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

005010
Standards Approved for Publication by ASC X12 Procedures Review Board through October 2003

Heading

ST
0100
Heading > ST

Transaction Set Header

RequiredMax use 1

To indicate the start of a transaction set and to assign a control number

Example
ST-01
143
Transaction Set Identifier Code
Required

Code uniquely identifying a Transaction Set

  • The transaction set identifier (ST01) is 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
ST-02
329
Transaction Set Control Number
Required
String (AN)
Min 4Max 9

Identifying control number that must be unique within the transaction set functional group assigned by the originator for a transaction set

BEG
0200
Heading > BEG

Beginning Segment for Purchase Order

RequiredMax use 1

To indicate the beginning of the Purchase Order Transaction Set and transmit identifying numbers and dates

Example
BEG-01
353
Transaction Set Purpose Code
Required

Code identifying purpose of transaction set

00
Original
BEG-02
92
Purchase Order Type Code
Required

Code specifying the type of Purchase Order.

Note: NE or SS will be for stocking orders.

DS
Dropship
NE
New Order
SS
Supply or Service Order
BEG-03
324
Purchase Order Number
Required
String (AN)
Min 1Max 22

Identifying number for Purchase Order assigned by the orderer/purchaser

BEG-05
373
Date
Required
CCYYMMDD format

Date expressed as CCYYMMDD where CC represents the first two digits of the calendar year

  • BEG05 is the date assigned by the purchaser to purchase order.
REF
0500
Heading > REF

Reference Information - Customer Order

OptionalMax use >1

Indicates RealTruck's internal sales order number, available upon request.

Example
Variants (all may be used)
REFReference Information - Division CodeREFReference Information - Division CodeREFReference Information - Memo Field
REF-01
128
Reference Identification Qualifier
Required

Code qualifying the Reference Identification

CO
Customer Order Number
REF-02
127
Reference Identification
Required
String (AN)
Min 1Max 50

Reference information as defined for a particular Transaction Set or as specified by the Reference Identification Qualifier

REF
0500
Heading > REF

Reference Information - Division Code

OptionalMax use >1

To add any additional routing information for Trading Partner divisions. Please reach out to RealTruck if you need this populated.

Example
REF-01
128
Reference Identification Qualifier
Required

Code qualifying the Reference Identification

CC
Contract Co-op Number
REF-02
127
Reference Identification
Required
String (AN)
Min 1Max 50

Reference information as defined for a particular Transaction Set or as specified by the Reference Identification Qualifier

REF
0500
Heading > REF

Reference Information - Division Code

OptionalMax use >1

To add any additional routing information for Trading Partner divisions. Please reach out to RealTruck if you need this populated.

Example
REF-01
128
Reference Identification Qualifier
Required

Code qualifying the Reference Identification

19
Division Identifier
REF-02
127
Reference Identification
Required
String (AN)
Min 1Max 50

Reference information as defined for a particular Transaction Set or as specified by the Reference Identification Qualifier

REF
0500
Heading > REF

Reference Information - Memo Field

OptionalMax use >1

Optional memo field, available upon request

Example
REF-01
128
Reference Identification Qualifier
Required

Code qualifying the Reference Identification

ZZ
Mutually Defined
REF-02
127
Reference Identification
Required
String (AN)
Min 1Max 50

Reference information as defined for a particular Transaction Set or as specified by the Reference Identification Qualifier

PER
0600
Heading > PER

Administrative Communications Contact

OptionalMax use 1

To identify a person or office to whom administrative communications should be directed

Example
If either Communication Number Qualifier (PER-05) or Communication Number (PER-06) is present, then the other is required
PER-01
366
Contact Function Code
Required

Code identifying the major duty or responsibility of the person or group named

OC
Order Contact
PER-02
93
Name
Required
String (AN)
Min 1Max 60

Free-form name

PER-03
365
Communication Number Qualifier
Required

Code identifying the type of communication number

TE
Telephone
PER-04
364
Communication Number
Required
String (AN)
Min 1Max 256

Complete communications number including country or area code when applicable

PER-05
365
Communication Number Qualifier
Optional

Code identifying the type of communication number

EM
Electronic Mail
PER-06
364
Communication Number
Optional
String (AN)
Min 1Max 256

Complete communications number including country or area code when applicable

SAC Loop
OptionalMax >1

Note: the SAC only applies to the entire order, so it is only in the heading.

SAC
1200
Heading > SAC Loop > SAC

Service, Promotion, Allowance, or Charge Information

RequiredMax use 1

To request or identify a service, promotion, allowance, or charge; to specify the amount or percentage for the service, promotion, allowance, or charge

Example
SAC-01
248
Allowance or Charge Indicator
Required

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
P
Promotion
S
Service
SAC-02
1300
Service, Promotion, Allowance, or Charge Code
Required

Code identifying the service, promotion, allowance, or charge

B870
Customs Charge
C310
Discount
D240
Freight
D500
Handling
E380
Lift Gate (Truck) or Forklift Service at Pickup/Delivery
G821
Shipping
H750
Tax - Sales Tax (State and Local)
SAC-05
610
Amount
Required
Numeric (N2)
Min 1Max 15

Monetary amount

  • SAC05 is the total amount for the service, promotion, allowance, or charge.
  • If SAC05 is present with SAC07 or SAC08, then SAC05 takes precedence.
SAC-07
332
Percent, Decimal Format
Optional
String (AN)
Min 1Max 6

Percent given in decimal format (e.g., 0.0 through 100.0 represents 0% through 100%)

SAC-15
352
Description
Optional
String (AN)
Min 1Max 80

A free-form description to clarify the related data elements and their content

SAC Loop end
TD5
2400
Heading > TD5

Carrier Details (Routing Sequence/Transit Time)

OptionalMax use 1

To specify the carrier and sequence of routing and provide transit time information.

Note: Dropship orders will always have the TD5, but stocking orders will not.

Example
TD5-04
91
Transportation Method/Type Code
Required

Code specifying the method or type of transportation for the shipment

ZZ
Mutually defined
TD5-05
387
Routing
Required
String (AN)
Min 1Max 35

Free-form description of the routing or requested routing for shipment, or the originating carrier's identity.

FHD - FedEx Home Delivery
FR - FedEx Freight

Example values
  • FHD
  • FR
N1 Loop
RequiredMax 1
N1
3100
Heading > N1 Loop > N1

Party Identification

RequiredMax use 1

To identify a party by type of organization, name, and code.

Example
If either Identification Code Qualifier (N1-03) or Identification Code (N1-04) is present, then the other is required
N1-01
98
Entity Identifier Code
Required

Code identifying an organizational entity, a physical location, property or an individual

ST
Ship To
N1-02
93
Name
Required
String (AN)
Min 1Max 60

Free-form name

N1-03
66
Identification Code Qualifier
Optional

Code designating the system/method of code structure used for Identification Code (67)

92
Assigned by Buyer or Buyer's Agent
ZZ
Mutually Defined
N1-04
67
Identification Code
Optional
String (AN)
Min 2Max 80

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.
N2
3200
Heading > N1 Loop > N2

Additional Name Information

OptionalMax use 2

To specify additional names

Example
N2-01
93
Name
Required
String (AN)
Min 1Max 60

Free-form name

N3
3300
Heading > N1 Loop > N3

Party Location

RequiredMax use 2

To specify the location of the named party

Example
N3-01
166
Address Information
Required
String (AN)
Min 1Max 55

Address information

N3-02
166
Address Information
Optional
String (AN)
Min 1Max 55

Address information

N4
3400
Heading > N1 Loop > N4

Geographic Location

RequiredMax use >1

To specify the geographic place of the named party.

A combination of N401 through N403 may be adequate to specify location
N402 is required only if the city name (N401) is in the U.S. or Canada

Example
N4-01
19
City Name
Optional
String (AN)
Min 2Max 30

Free-form text for city name

  • A combination of either N401 through N404, or N405 and N406 may be adequate to specify a location.
N4-02
156
State or Province Code
Optional
Identifier (ID)
Min 2Max 2

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.
N4-03
116
Postal Code
Optional
Identifier (ID)
Min 3Max 15

Code defining international postal zone code excluding punctuation and blanks (zip code for United States)

N4-04
26
Country Code
Optional
Identifier (ID)
Min 2Max 3

Code identifying the country

N1 Loop end
Heading end

Detail

PO1 Loop
RequiredMax >1
PO1
0100
Detail > PO1 Loop > PO1

Baseline Item Data

RequiredMax use 1

To specify basic and most frequently used line item data

  • PO102 is required.
Example
If either Product/Service ID Qualifier (PO1-10) or Product/Service ID (PO1-11) is present, then the other is required
PO1-01
350
Assigned Identification
Optional
String (AN)
Min 1Max 20

Alphanumeric characters assigned for differentiation within a transaction set

  • PO101 is the line item identification.
PO1-02
380
Quantity
Required
String (AN)
Min 4Max 100

Numeric value of quantity

  • PO102 is quantity ordered.
PO1-03
355
Unit or Basis for Measurement Code
Required

Code specifying the units in which a value is being expressed, or manner in which a measurement has been taken

EA
Each
PO1-04
212
Unit Price
Required
String (AN)
Min 4Max 17

Price per unit of product, service, commodity, etc.

PO1-06
235
Product/Service ID Qualifier
Required

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.
VC
Vendor's (Seller's) Catalog Number
PO1-07
234
Product/Service ID
Required
String (AN)
Min 1Max 48

Identifying number for a product or service. Vendor's code.

PO1-08
235
Product/Service ID Qualifier
Required

Code identifying the type/source of the descriptive number used in Product/Service ID (234)

SK
Stock Keeping Unit (SKU)
PO1-09
234
Product/Service ID
Required
String (AN)
Min 1Max 48

Identifying number for a product or service. RealTruck's item SKU

PO1-10
235
Product/Service ID Qualifier
Optional

Code identifying the type/source of the descriptive number used in Product/Service ID (234)

ZZ
Mutually Defined
PO1-11
234
Product/Service ID
Optional
String (AN)
Min 1Max 48

Identifying number for a product or service

PID Loop
RequiredMax >1
PID
0500
Detail > PO1 Loop > PID Loop > PID

Product/Item Description

RequiredMax use 1

To describe a product or process in coded or free-form format

Example
PID-01
349
Item Description Type
Required

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
PID-05
352
Description
Required
String (AN)
Min 1Max 80

A free-form description to clarify the related data elements and their content. This contains RealTruck's description of the product.

PID Loop end
MTX
2890
Detail > PO1 Loop > MTX

Text

OptionalMax use >1

Note: To provide additional descriptions of the order. Available upon request.

Example
MTX-01
363
Note Reference Code
Required
Identifier (ID)
Min 3Max 3

Code identifying the functional area or purpose for which the note applies

MTX-02
1551
Textual Data
Required
String (AN)
Min 1Max 4096

To transmit large volumes of message text

PO1 Loop end
Detail end

Summary

CTT Loop
RequiredMax >1
CTT
0100
Summary > CTT Loop > CTT

Transaction Totals

RequiredMax use 1

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.
Example
CTT-01
354
Number of Line Items
Required
Numeric (N0)
Min 1Max 6

Total number of line items in the transaction set

AMT
0200
Summary > CTT Loop > AMT

Monetary Amount Information

RequiredMax use 1

To indicate the total monetary amount

  • If AMT is used in the summary area, then AMT01 will = TT and AMT02 will indicate total transaction amount as calculated by the sender.
Example
AMT-01
522
Amount Qualifier Code
Required

Code to qualify amount

TT
Total Transaction Amount
AMT-02
782
Monetary Amount
Required
Decimal number (R)
Min 1Max 15

Monetary amount

CTT Loop end
SE
0300
Summary > SE

Transaction Set Trailer

RequiredMax use 1

To indicate the end of the transaction set and provide the count of the transmitted segments (including the beginning (ST) and ending (SE) segments)

Example
SE-01
96
Number of Included Segments
Required
Numeric (N0)
Min 1Max 10

Total number of segments included in a transaction set including ST and SE segments

SE-02
329
Transaction Set Control Number
Required
String (AN)
Min 4Max 9

Identifying control number that must be unique within the transaction set functional group assigned by the originator for a transaction set.

Since AMT is in Summary TT must be used stating Transaction Total

Summary end

Functional Group Trailer

RequiredMax use 1

To indicate the end of a functional group and to provide control information

Example
GE-01
97
Number of Transaction Sets Included
Required
Numeric (N0)
Min 1Max 6

Total number of transaction sets included in the functional group or interchange (transmission) group terminated by the trailer containing this data element

GE-02
28
Group Control Number
Required
Numeric (N0)
Min 1Max 9

Assigned number originated and maintained by the sender

Interchange Control Trailer

RequiredMax use 1

To define the end of an interchange of zero or more functional groups and interchange-related control segments

Example
IEA-01
I16
Number of Included Functional Groups
Required
Numeric (N0)
Min 1Max 5

A count of the number of functional groups included in an interchange

IEA-02
I12
Interchange Control Number
Required
Numeric (N0)
Min 9Max 9

A control number assigned by the interchange sender

EDI Samples

Test PO

ISA*00* *00* *01*040132628 *ZZ*012550194U *230920*1804*U*00501*000037741*0*P*>~
GS*PO*040132628*012550194U*20230920*1804*000037741*X*005010~
ST*850*0001~
BEG*00*DS*4461852**20230920~
PER*OC*David K*TE*1 (201) 352-9258*EM*dkanter@yahoo.com~
TD5****ZZ*FHD~
N1*ST*David K*92*DROPSHIP CUSTOMER~
N3*7057 Turnpike~
N4*Novis Hill*NJ*24092*US~
PO1*1*2.00*EA*11.40**VC*VC-143243*SK*SK-143243~
PID*F****Descriptions~
PO1*2*1.00*EA*8.55**VC*VC-1424242323*SK*1424344323~
PID*F****Descriptions~
CTT*2~
AMT*TT*31.35~
SE*14*0001~
GE*1*000037741~
IEA*1*000037741~

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.