GSA (General Services Administration)
/
Purchase Order 5010 (GSA OMS)
  • Specification
  • EDI Inspector
Stedi maintains this guide based on public documentation from GSA (General Services Administration). Contact GSA (General Services Administration) for official EDI specifications. To report any errors in this guide, please contact us.
Go to Stedi Network
GSA (General Services Administration) logo

X12 850 Purchase Order 5010 (GSA OMS)

X12 Release 5010

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
  • EDI_850_1.txt
View the latest version of this implementation guide as an interactive webpage
https://www.stedi.com/app/guides/view/gsa/purchase-order-5010-gsa-oms/01HH1285205751DFBH8H67AJCA
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
Max use 1
Optional
FOB
0800
F.O.B. Related Instructions
Max use 1
Optional
PKG
2200
Marking, Packaging, Loading
Max use 200
Optional
MAN
2700
Marks and Numbers Information
Max use 10
Optional
N9 Loop
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
Identifier (ID)

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
Identifier (ID)

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
Identifier (ID)
Min 2Max 2

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

Codes
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
Identifier (ID)
Min 2Max 2

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

Codes
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
Date (DT)
YYMMDD format

Date of the interchange

ISA-10
I09
Interchange Time
Required
Time (TM)
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
Identifier (ID)

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
Identifier (ID)
Min 1Max 1

Code indicating sender's request for an interchange acknowledgment

0
No Interchange Acknowledgment Requested
1
Interchange Acknowledgment Requested (TA1)
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
Identifier (ID)

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

Required
Date (DT)
CCYYMMDD format

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

Required
Time (TM)
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
Identifier (ID)
Min 1Max 2

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
String (AN)

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
Identifier (ID)

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
Numeric (N)
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
Identifier (ID)

Code identifying purpose of transaction set

Usage notes

Use to indicate that this is an information copy of an original procurement instrument. This information copy is sent to addresses other than the selling party, e.g., the Contract Administration Office. Used for designation of Emergency Orders. Do not Ship Indicator.

00
Original
22
Information Copy
BEG-02
92
Purchase Order Type Code
Required
Identifier (ID)

Code specifying the type of Purchase Order

CN
Consigned Order
RL
Release or Delivery Order
BEG-03
324
Purchase Order Number
Required
String (AN)
Min 1Max 22

Identifying number for Purchase Order assigned by the orderer/purchaser

BEG-04
328
Release Number
Required
String (AN)
Min 1Max 30

Number identifying a release against a Purchase Order previously placed by the parties involved in the transaction

Required
Date (DT)
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

OptionalMax use >1

To specify identifying information

Example
At least one of Reference Identification (REF-02) or Description (REF-03) is required
REF-01
128
Reference Identification Qualifier
Required
Identifier (ID)

Code qualifying the Reference Identification

BB
Authorization Number
REF-02
127
Reference Identification
Optional
String (AN)
Min 1Max 50

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

REF-03
352
Description
Optional
String (AN)
Min 1Max 80

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

FOB
0800
Heading > FOB

F.O.B. Related Instructions

OptionalMax use >1

To specify transportation instructions relating to shipment

Example
If Description (FOB-03) is present, then Location Qualifier (FOB-02) is required
FOB-01
146
Shipment Method of Payment
Required
Identifier (ID)

Code identifying payment terms for transportation charges

  • FOB01 indicates which party will pay the carrier.
BP
Paid by Buyer
PP
Prepaid (by Seller)
FOB-02
309
Location Qualifier
Optional
Identifier (ID)

Code identifying type of location

  • FOB02 is the code specifying transportation responsibility location.
Usage notes

FOB02 value of ‘DE’
if:
E - FOB destination $0
F - FAS Vessel $0
G - Other $0
FV: Free alongside Vessel (Free on board [F.O.B] point)
OR: Origin (Shipping Point)
FOB02 value of ‘OR’
if:
A - FOB origin, contractors’ facility 5% of sales value if it's over $35,000 otherwise 10%
B - FOB origin, freight allowed 5% of sales value if it's over $35,000 otherwise 10%
C - FOB origin, freight prepaid 5% of sales value if it's over $35,000 otherwise 10%
D - FOB origin 5% of sales value if it's over $35,000 otherwise 10%
H - Pre-pay and add the actual cost that FAS was billed

DE
Destination (Shipping)
FV
Free Alongside Vessel (Free On Board [F.O.B.] Point)
OR
Origin (Shipping Point)
FOB-03
352
Description
Optional
String (AN)
Min 1Max 80

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

PKG
2200
Heading > PKG

Marking, Packaging, Loading

OptionalMax use 200

To describe marking, packaging, loading, and unloading requirements

Example
If Description (PKG-05) is present, then Item Description Type (PKG-01) is required
If Packaging Description Code (PKG-04) is present, then Agency Qualifier Code (PKG-03) is required
At least one of Packaging Description Code (PKG-04), Description (PKG-05) or Unit Load Option Code (PKG-06) is required
PKG-01
349
Item Description Type
Optional
Identifier (ID)

Code indicating the format of a description

  • If PKG01 equals "F", then PKG05 is used. If PKG01 equals "S", then PKG04 is used. If PKG01 equals "X", then both PKG04 and PKG05 are used.
F
Free-form
PKG-02
753
Packaging Characteristic Code
Optional
Identifier (ID)

Code specifying the marking, packaging, loading and related characteristics being described

DD
ZZ
PKG-03
559
Agency Qualifier Code
Optional
Identifier (ID)
Min 2Max 2

Code identifying the agency assigning the code values

  • Use PKG03 to indicate the organization that publishes the code list being referred to.
Usage notes

Use to identify a string of MIL-STD 2073-2C packaging codes or to provide packaging information in free-form text. The MIL-STD 2073-2C code string uses a positional and sequential system. Coded data must appear in the sequence and the number of positions specified in Appendix F of MIL-STD 2073-1. Zeros shall be inserted in the code string for data that is not being provided. A comma (,) will be used as a delimiter between the data in the code string. Use of this data element is discouraged. Place text either “MILITARY” or “COMMERCIAL”

PKG-04
754
Packaging Description Code
Optional
String (AN)
Min 1Max 7

A code from an industry code list which provides specific data about the marking, packaging or loading and unloading of a product

  • PKG04 should be used for industry-specific packaging description codes.
PKG-05
352
Description
Optional
String (AN)
Min 1Max 80

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

  • Special marking or tagging data can be given in PKG05 (description).
PKG-06
400
Unit Load Option Code
Optional
Identifier (ID)
Min 2Max 2

Code identifying loading or unloading a shipment

MAN
2700
Heading > MAN

Marks and Numbers Information

OptionalMax use 10

To indicate identifying marks and numbers for shipping containers

Example
MAN-01
88
Marks and Numbers Qualifier
Required
Identifier (ID)
Min 1Max 2

Code specifying the application or source of Marks and Numbers (87)

  • MAN01/MAN02 and MAN04/MAN05 may be used to identify two different marks and numbers assigned to the same physical container.
  • When MAN01 contains code "UC" (U.P.C. Shipping Container Code) and MAN05/MAN06 contain a range of ID numbers, MAN03 is not used. The reason for this is that the U.P.C. Shipping Container code is the same on every carton that is represented in the range in MAN05/MAN06.
MAN-02
87
Marks and Numbers
Required
String (AN)
Min 1Max 48

Marks and numbers used to identify a shipment or parts of a shipment

  • When both MAN02 and MAN03 are used, MAN02 is the starting number of a sequential range and MAN03 is the ending number of that range.
N9 Loop
OptionalMax 1000
N9
2950
Heading > N9 Loop > N9

Extended Reference Information

RequiredMax use 1

To transmit identifying information as specified by the Reference Identification Qualifier

Example
At least one of Reference Identification (N9-02) or Free-form Description (N9-03) is required
N9-01
128
Reference Identification Qualifier
Required
Identifier (ID)
Min 2Max 3

Code qualifying the Reference Identification

N9-02
127
Reference Identification
Optional
String (AN)
Min 1Max 50

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

N9-03
369
Free-form Description
Optional
String (AN)
Min 1Max 45

Free-form descriptive text

MTX
3000
Heading > N9 Loop > MTX

Text

OptionalMax use 1

To specify textual data

Example
If Note Reference Code (MTX-01) is present, then Textual Data (MTX-02) is required
MTX-01
363
Note Reference Code
Optional
Identifier (ID)

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

ADD
Additional Information
MTX-02
1551
Textual Data
Optional
String (AN)
Min 1Max 4096

To transmit large volumes of message text

N9 Loop end
N1 Loop
RequiredMax 200
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
At least one of Name (N1-02) or Identification Code Qualifier (N1-03) is required
N1-01
98
Entity Identifier Code
Required
Identifier (ID)

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

Usage notes

BY: Buying Party (Purchaser) Use to indicate the purchasing office or activity
IC: Intermediate Consignee Use to indicate a freight forwarder. CRP If Freight Forwarder address receiving code is not available, then set N101 as “IC” and N102 as default “00000”
SE: Selling Party
ST: Ship To Use to indicate the address to which an item must be shipped. If the ship-to-address is an FPO or APO, identify the FPO or APO in the N4 segment using N401 and N403 Use to indicate a location where a service, e.g., grass cutting will be performed
Z7: Mark-for-Party The Party for whom the needed material is intended in country address for overseas orders.
RC: Receiving Location Qualifier for Retail Operations (RO) orders only

BY
Buying Party (Purchaser)
IC
Intermediate Consignee
RC
Receiving Location
SE
Selling Party
ST
Ship To
SU
Supplier/Manufacturer
Z7
Mark-for Party
Optional
String (AN)
Min 1Max 60

Free-form name

N1-03
66
Identification Code Qualifier
Optional
Identifier (ID)

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

Usage notes

9: DUNS+4
10: Department of Defense Activity Address code (DODACC) Use to indicate either a Department of Defense Activity Address Code or a Civilian Agency Activity Address Code
92: Address Code Assigned by Buyer. Used to identify code in N104. For Retail Operations (RO only) Use to populate when N101=RC, N104=Store Code

9
D-U-N-S+4, D-U-N-S Number with Four Character Suffix
10
Department of Defense Activity Address Code (DODAAC)
92
Assigned by Buyer or Buyer's Agent
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.
Usage notes

Possible store codes:

MN: Camp LeJeune, NC
AG: Albany, GA
BC: Barstow, CA
AA: Alaska, AK
BJ: Butler, Japan
BN: Burlington, NJ (USMC Servmart)
CC: Carson, CO
CM: Curtis Bay, MD
CP: Cherry Point, NC
DA: Djibouti, AF
EF: Jacksonville, NC
GA: Guan, Anderson
GU: Guam, Santa R
HH: Hickam, HI
IJ: Iwakuni, Japan
KH: Kaneohe, HI
KJ: Kadena, JA
KK: Kunsan, KO
MA: Mid-Atlantic, VA
MJ: Misawa, JA
NN: New River, NC
OK: Osan, KO
PC: Pendleton, CA
PM: 29 Palms, CA
QV: Quantico, VA
RR: Red River, TX
SF: Jacksonville, Megacenter
SW: North Island, CA
TK: Tinker, OK
WH: White House, DC WR: Robins AFB
XJ: Yokota, JA
ZJ: Zama, JA
BN00: Burlington, NJ (USMC Servmart)
ZJ00: Zama, JA
XJ00: Yokota, JA
WR00: Robins AFB
WH00: White House, DC
TK00: Tinker, OK
SW00: North Island, CA
SW01: Lemoore, CA
SF00: Jacksonville, Megacenter
RR00: Red River, TX
QV00: Quantico, VA
PM00: 29 Palms, CA
PC00: Pendleton, CA
OK00: Osan, KO
OK01: Camp Humphrey, KO
NN00: New River, NC
MJ00: Misawa, JA
MA00: Oceana, Virginia Beach, VA
MA01: Norfolk, VA KK00: Kunsan, KO
KJ00: Kadena, JA
KH00: Kaneohe, HI
IJ00: Iwakuni, Japan
HH00: Hickam, HI
GU00: Guam, Santa R
GA00: Guam, Anderson
DA00: Djibouti, AF
CM00: Curtis Bay, MD
CC00: Carson, CO
BJ00: Butler, Japan
AA00: Alaska, AK
BC00: Barstow, CA
BC01: HAZMAT, Barstow, CA
AG00: Albany, GA
MN00: Camp LeJeune, NC
YA00: Yuma, AZ
PB00: JMPB-PWC, AR
JM00: GSA Store, IL
EF00: Jacksonville, FL
EF08: MC-08
EF10: MC-10
EF12: MC-12
EF15: MC-15
EF18: MC-18
EF19: MC-19
EF11: Aixa Desktop-whse 110
EF33: MC-33
EF16: MC16
EF17: MC17
EF03: TC3
EF01: Elaine's Office MC1
CP00: Cherry Point, NC
CP01: TC1 stock area
CP02: Safety store
CP12: TC 12
CP18: TC 18
CP03: TC3
CP04: TC4
CP05: TC5
CP07: TC7
CP23: TC23
CP25: TC25
CP35: TC35
CP84: Maintenance office 84
CP14: Maintenance 148
CP15: Maintenance 154 CP83: Maintenance 83
CP10: Maintenance 1006
CP13: 131 S

N2
3200
Heading > N1 Loop > N2

Additional Name Information

OptionalMax use 2

To specify additional names

Example
Required
String (AN)
Min 1Max 60

Free-form name

N3
3300
Heading > N1 Loop > N3

Party Location

OptionalMax 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

OptionalMax use >1

To specify the geographic place of the named party

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.
Usage notes

If blank, default to ‘XX;

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)

Usage notes

If blank, default to ‘00000’

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

Code identifying the country

Usage notes

If blank, default to ‘US’

REF
3500
Heading > N1 Loop > REF

Reference Information

OptionalMax use 12

To specify identifying information

Example
At least one of Reference Identification (REF-02) or Description (REF-03) is required
REF-01
128
Reference Identification Qualifier
Required
Identifier (ID)
Min 2Max 3

Code qualifying the Reference Identification

REF-02
127
Reference Identification
Optional
String (AN)
Min 1Max 50

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

REF-03
352
Description
Optional
String (AN)
Min 1Max 80

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

PER
3600
Heading > N1 Loop > 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-03) or Communication Number (PER-04) is present, then the other is required
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
Identifier (ID)

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

Usage notes

BD: Buyer Name or Department
CN: General Contact When N101=’ST’, use to indicate the accepting official at destination
SU: Supplier Contact Use to indicate the selling party’s point of contact

BD
Buyer Name or Department
CN
General Contact
SU
Supplier Contact
Optional
String (AN)
Min 1Max 60

Free-form name

PER-03
365
Communication Number Qualifier
Optional
Identifier (ID)

Code identifying the type of communication number

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

Complete communications number including country or area code when applicable

Usage notes

Complete communication number including country or area code when applicable

PER-05
365
Communication Number Qualifier
Optional
Identifier (ID)

Code identifying the type of communication number

Usage notes

TE: Telephone Use to indicate the commercial telephone number of the individual cited in PER02

TE
Telephone
PER-06
364
Communication Number
Optional
String (AN)
Min 1Max 256

Complete communications number including country or area code when applicable

N1 Loop end
Heading end

Detail

PO1 Loop
OptionalMax 100000
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 Unit or Basis for Measurement Code (PO1-03) is present, then Quantity (PO1-02) is required
If Basis of Unit Price Code (PO1-05) is present, then Unit Price (PO1-04) is required
If either Product/Service ID Qualifier (PO1-06) or Product/Service ID (PO1-07) is present, then the other is required
If either Product/Service ID Qualifier (PO1-08) or Product/Service ID (PO1-09) is present, then the other is required
If either Product/Service ID Qualifier (PO1-10) or Product/Service ID (PO1-11) is present, then the other is required
If either Product/Service ID Qualifier (PO1-12) or Product/Service ID (PO1-13) is present, then the other is required
If either Product/Service ID Qualifier (PO1-14) or Product/Service ID (PO1-15) is present, then the other is required
If either Product/Service ID Qualifier (PO1-16) or Product/Service ID (PO1-17) is present, then the other is required
If either Product/Service ID Qualifier (PO1-18) or Product/Service ID (PO1-19) is present, then the other is required
If either Product/Service ID Qualifier (PO1-20) or Product/Service ID (PO1-21) is present, then the other is required
If either Product/Service ID Qualifier (PO1-22) or Product/Service ID (PO1-23) is present, then the other is required
If either Product/Service ID Qualifier (PO1-24) or Product/Service ID (PO1-25) 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.
Usage notes

Alphanumeric characters assigned for differentiation within a transaction set Use to identify the CLIN, SUBCLIN or ELIN or other number identifying the line item

PO1-02
380
Quantity
Optional
Decimal number (R)
Min 1Max 15

Numeric value of quantity

  • PO102 is quantity ordered.
PO1-03
355
Unit or Basis for Measurement Code
Optional
Identifier (ID)
Min 2Max 2

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

PO1-04
212
Unit Price
Optional
Decimal number (R)
Min 1Max 15

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

PO1-05
639
Basis of Unit Price Code
Optional
Identifier (ID)
Min 2Max 2

Code identifying the type of unit price for an item

PO1-06
235
Product/Service ID Qualifier
Optional
Identifier (ID)

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.
CL
Color
CN
Commodity Name
FS
National Stock Number
FT
Federal Supply Classification
MF
Manufacturer
MG
Manufacturer's Part Number
PD
Part Number Description
VP
Vendor's (Seller's) Part Number
PO1-07
234
Product/Service ID
Optional
String (AN)
Min 1Max 48

Identifying number for a product or service

PO1-08
235
Product/Service ID Qualifier
Optional
Identifier (ID)
Min 2Max 2

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

PO1-09
234
Product/Service ID
Optional
String (AN)
Min 1Max 48

Identifying number for a product or service

PO1-10
235
Product/Service ID Qualifier
Optional
Identifier (ID)
Min 2Max 2

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

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

Identifying number for a product or service

PO1-12
235
Product/Service ID Qualifier
Optional
Identifier (ID)
Min 2Max 2

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

PO1-13
234
Product/Service ID
Optional
String (AN)
Min 1Max 48

Identifying number for a product or service

PO1-14
235
Product/Service ID Qualifier
Optional
Identifier (ID)
Min 2Max 2

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

PO1-15
234
Product/Service ID
Optional
String (AN)
Min 1Max 48

Identifying number for a product or service

PO1-16
235
Product/Service ID Qualifier
Optional
Identifier (ID)
Min 2Max 2

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

PO1-17
234
Product/Service ID
Optional
String (AN)
Min 1Max 48

Identifying number for a product or service

PO1-18
235
Product/Service ID Qualifier
Optional
Identifier (ID)
Min 2Max 2

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

PO1-19
234
Product/Service ID
Optional
String (AN)
Min 1Max 48

Identifying number for a product or service

PO1-20
235
Product/Service ID Qualifier
Optional
Identifier (ID)
Min 2Max 2

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

PO1-21
234
Product/Service ID
Optional
String (AN)
Min 1Max 48

Identifying number for a product or service

PO1-22
235
Product/Service ID Qualifier
Optional
Identifier (ID)
Min 2Max 2

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

PO1-23
234
Product/Service ID
Optional
String (AN)
Min 1Max 48

Identifying number for a product or service

PO1-24
235
Product/Service ID Qualifier
Optional
Identifier (ID)
Min 2Max 2

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

PO1-25
234
Product/Service ID
Optional
String (AN)
Min 1Max 48

Identifying number for a product or service

CTP Loop
OptionalMax 999999
CTP
0400
Detail > PO1 Loop > CTP Loop > CTP

Pricing Information

RequiredMax use 1

To specify pricing information

Example
If either Quantity (CTP-04) or Composite Unit of Measure (CTP-05) is present, then the other is required
CTP-01
687
Class of Trade Code
Optional
Identifier (ID)
Min 2Max 2

Code indicating class of trade

CTP-02
236
Price Identifier Code
Optional
Identifier (ID)

Code identifying pricing specification

GOV
Government Price
CTP-03
212
Unit Price
Optional
Decimal number (R)
Min 1Max 15

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

  • See Figures Appendix for an example detailing the use of CTP03 and CTP04.
  • See Figures Appendix for an example detailing the use of CTP03, CTP04 and CTP07.
CTP-04
380
Quantity
Optional
Decimal number (R)
Min 1Max 15

Numeric value of quantity

CTP-05
C001
Composite Unit of Measure
OptionalMax use 1
To identify a composite unit of measure (See Figures Appendix for examples of use)
C001-01
355
Unit or Basis for Measurement Code
Required
Identifier (ID)
Min 2Max 2

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

CTP Loop end
PID Loop
OptionalMax 1000
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
At least one of Product Description Code (PID-04) or Description (PID-05) is required
PID-01
349
Item Description Type
Required
Identifier (ID)

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
Z
PID-02
750
Product/Process Characteristic Code
Optional
Identifier (ID)
Min 2Max 3

Code identifying the general class of a product or process characteristic

PID-04
751
Product Description Code
Optional
String (AN)
Min 1Max 12

A code from an industry code list which provides specific data about a product characteristic

  • PID04 should be used for industry-specific product description codes.
PID-05
352
Description
Optional
String (AN)
Min 1Max 80

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

PID Loop end
PO4
0900
Detail > PO1 Loop > PO4

Item Physical Details

OptionalMax use >1

To specify the physical qualities, packaging, weights, and dimensions relating to the item

Example
If either Gross Weight per Pack (PO4-06) or Unit or Basis for Measurement Code (PO4-07) is present, then the other is required
If either Gross Volume per Pack (PO4-08) or Unit or Basis for Measurement Code (PO4-09) is present, then the other is required
PO4-06
384
Gross Weight per Pack
Optional
Decimal number (R)
Min 1Max 9

Numeric value of gross weight per pack

PO4-07
355
Unit or Basis for Measurement Code
Optional
Identifier (ID)

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

LB
Pound
PO4-08
385
Gross Volume per Pack
Optional
Decimal number (R)
Min 1Max 9

Numeric value of gross volume per pack

PO4-09
355
Unit or Basis for Measurement Code
Optional
Identifier (ID)

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

CF
Cubic Feet
REF
1000
Detail > PO1 Loop > REF

Reference Information

OptionalMax use >1

To specify identifying information

Example
At least one of Reference Identification (REF-02) or Description (REF-03) is required
REF-01
128
Reference Identification Qualifier
Required
Identifier (ID)

Code qualifying the Reference Identification

2E
Foreign Military Sales Case Number
CO
Customer Order Number
IL
Internal Order Number
P4
Project Code
PH
Priority Rating
TG
Transportation Control Number (TCN)
TH
Transportation Account Code (TAC)
ZZ
Mutually Defined
REF-02
127
Reference Identification
Optional
String (AN)
Min 1Max 50

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

REF-03
352
Description
Optional
String (AN)
Min 1Max 80

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

PER
1100
Detail > PO1 Loop > PER

Administrative Communications Contact

OptionalMax use 3

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

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

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

AA
Authorized Representative
IC
Information Contact
Optional
String (AN)
Min 1Max 60

Free-form name

PER-03
365
Communication Number Qualifier
Optional
Identifier (ID)

Code identifying the type of communication number

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

Complete communications number including country or area code when applicable

PER-05
365
Communication Number Qualifier
Optional
Identifier (ID)

Code identifying the type of communication number

TE
Telephone
PER-06
364
Communication Number
Optional
String (AN)
Min 1Max 256

Complete communications number including country or area code when applicable

PER-07
365
Communication Number Qualifier
Optional
Identifier (ID)
Min 2Max 2

Code identifying the type of communication number

PER-08
364
Communication Number
Optional
String (AN)
Min 1Max 256

Complete communications number including country or area code when applicable

SAC Loop
OptionalMax 25
SAC
1300
Detail > PO1 Loop > 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
If either Agency Qualifier Code (SAC-03) or Agency Service, Promotion, Allowance, or Charge Code (SAC-04) is present, then the other is required
At least one of Service, Promotion, Allowance, or Charge Code (SAC-02) or Agency Qualifier Code (SAC-03) is required
SAC-01
248
Allowance or Charge Indicator
Required
Identifier (ID)

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.
C
Charge
SAC-02
1300
Service, Promotion, Allowance, or Charge Code
Optional
Identifier (ID)

Code identifying the service, promotion, allowance, or charge

D230
Freight Surcharge
F040
Order-Flat
F050
Other (See related description)
F180
Pallet
H650
Tax - Excise Tax - Origin
SAC-03
559
Agency Qualifier Code
Optional
Identifier (ID)
Min 2Max 2

Code identifying the agency assigning the code values

SAC-04
1301
Agency Service, Promotion, Allowance, or Charge Code
Optional
String (AN)
Min 1Max 10

Agency maintained code identifying the service, promotion, allowance, or charge

  • SAC04 may be used to uniquely identify the service, promotion, allowance, or charge. In addition, it may be used in conjunction with SAC03 to further define SAC02.
SAC Loop end
DTM
2100
Detail > PO1 Loop > DTM

Date/Time Reference

OptionalMax use 10

To specify pertinent dates and times

Example
If either Date Time Period Format Qualifier (DTM-05) or Date Time Period (DTM-06) is present, then the other is required
At least one of Date (DTM-02), Time (DTM-03) or Date Time Period Format Qualifier (DTM-05) is required
DTM-01
374
Date/Time Qualifier
Required
Identifier (ID)

Code specifying type of date or time, or both date and time

996
Required Delivery
Optional
Date (DT)
CCYYMMDD format

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

Optional
Time (TM)
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)

DTM-05
1250
Date Time Period Format Qualifier
Optional
Identifier (ID)
Min 2Max 3

Code indicating the date format, time format, or date and time format

DTM-06
1251
Date Time Period
Optional
String (AN)
Min 1Max 35

Expression of a date, a time, or range of dates, times or dates and times

N9 Loop
OptionalMax >1
N9
3300
Detail > PO1 Loop > N9 Loop > N9

Extended Reference Information

RequiredMax use 1

To transmit identifying information as specified by the Reference Identification Qualifier

Example
At least one of Reference Identification (N9-02) or Free-form Description (N9-03) is required
N9-01
128
Reference Identification Qualifier
Required
Identifier (ID)

Code qualifying the Reference Identification

SU
Special Processing Code
N9-02
127
Reference Identification
Optional
String (AN)
Min 1Max 50

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

N9-03
369
Free-form Description
Optional
String (AN)
Min 1Max 45

Free-form descriptive text

MTX
3400
Detail > PO1 Loop > N9 Loop > MTX

Text

RequiredMax use >1

To specify textual data

Example
If Note Reference Code (MTX-01) is present, then Textual Data (MTX-02) is required
MTX-01
363
Note Reference Code
Optional
Identifier (ID)

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

ADD
Additional Information
MTX-02
1551
Textual Data
Optional
String (AN)
Min 1Max 4096

To transmit large volumes of message text

N9 Loop end
AMT Loop
OptionalMax 999999
AMT
6000
Detail > PO1 Loop > AMT Loop > AMT

Monetary Amount Information

RequiredMax use 1

To indicate the total monetary amount

Example
AMT-01
522
Amount Qualifier Code
Required
Identifier (ID)

Code to qualify amount

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

Monetary amount

AMT Loop end
PO1 Loop end
Detail end

Summary

CTT Loop
OptionalMax >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

CTT-02
347
Hash Total
Optional
Decimal number (R)
Min 1Max 10

Sum of values of the specified data element. All values in the data element will be summed without regard to decimal points (explicit or implicit) or signs. Truncation will occur on the left most digits if the sum is greater than the maximum size of the hash total of the data element.

## Example:
-.0018 First occurrence of value being hashed.
.18 Second occurrence of value being hashed.
1.8 Third occurrence of value being hashed.
18.01 Fourth occurrence of value being hashed.
18E2 Fifth occurrence of value being hashed.

1873 Hash Total

Usage notes

Sum of values of the specified data element. All values in the data element will be summed without regard to decimal points (explicit or implicit) or signs. Truncation will occur on the left most digits if the sum is greater than the maximum size of the hash total of the data element. CTT02 is the sum of the value of quantities ordered (PO102) for each PO1 segment. Never use to carry an operational amount.

AMT
0200
Summary > CTT Loop > AMT

Monetary Amount Information

OptionalMax 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
Identifier (ID)

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
Numeric (N)
Min 4Max 9

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

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

EDI_850_1.txt

ISA*00* *00* *ZZ*SENDERID *ZZ*RECEIVERID *200318*1257*^*00501*000635641*0*T*>~
GS*PO*SENDERID*RECEIVERID*20200318*1257*87224*X*005010~
ST*850*0001~
BEG*00*RL*CONTRACT NUMBER*PO NUMBER*20030118~
FOB*PP*DE*DESTINATION TAILGATE DELIVERY~
PKG*F**DD**MILITARY~
N9*SU*Instructions to Follow~
MTX*ADD*FREE FORM TEXT GOES HERE~
N1*BY*BUYING PARTY~
N3*ADDRESS*ADDRESS LINE~
N3*ADDRESS INFORMATION~
PER*BD*BUYER NAME*EM*BUYER EMAIL*TE*BUYER PHONE NUMBER~
N1*ST*SHIP TO*10*STORE CODE~
N2*ADDTIONAL NAME INFORMATION~
N3*ADDRESS INFORMATION~
N4*CITY*PA*ZIP*US~
N1*Z7*MARK FOR PARTY*10*CP15~
N2*ADDITIONAL NAME INFORMATION~
N3*ADDRESS INFORMATION*ADDRESS INFORMATION~
N3*ADDRESS INFORMATION~
N4*CITY*PA*ZIP*US~
N1*SE*SELLING PARTY*9*DUNS~
N2*DUNS~
N4*CITY*PA*ZIP*US~
PER*SU*SUPPLIER*EM*EMAIL*TE*PHONE NUMBER~
N1*IC*INTERMEDIATE CONSIGNEE~
N3*DLA DEFENSE DIST DEPOT TRACY DEPOT*PHONE NUMBER~
N3*ADDRESS~
N4*CITY*PA*ZIP*US~
PO1*1*1*EA*1.17******FS*NATIONAL STOCK NUMBER*FT*FEDERAL SUPPLY*****PD*PART NUMBER DESCRIPTION~
CTP**GOV*1.02*1*EA~
PID*F****KEY, SOCKET HEAD SCREW SECM P/N: AW028D~
PO4******0.001*LB*0.01*CF~
REF*P4*9GJ~
REF*PH*05~
REF*IL*REQUISITION NUMBER~
REF*TG*TRANSPORTAION CONTROL NUMBER~
REF*TH*TRANSPORTAION ACCOUNT NUMBER~
REF*ZZ*999~
DTM*996*20230125~
N9*SU*Instructions to Follow~
MTX*ADD*FREE FORM TEXT GOES HERE~
AMT*1*1.02~
CTT*1*1.02~
AMT*TT*1.02~
SE*44*0001~
GE*1*87224~
IEA*1*000635641~

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.