O'Reilly Auto
/
Purchase Order Acknowledgment
  • Specification
  • EDI Inspector
Stedi maintains this guide based on public documentation from O'Reilly Auto. Contact O'Reilly Auto for official EDI specifications. To report any errors in this guide, please contact us.
Go to Stedi Network
O'Reilly Auto logo

X12 855 Purchase Order Acknowledgment

X12 Release 4010

This Draft Standard for Trial Use contains the format and establishes the data contents of the Purchase Order Acknowledgment Transaction Set (855) 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 a seller's acknowledgment of a buyer's purchase order. This transaction set can also be used as notification of a vendor generated order. This usage advises a buyer that a vendor has or will ship merchandise as prearranged in their partnership.

Delimiters
  • ~ Segment
  • * Element
  • > Component
EDI samples
  • Sample showing a back ordered item
View the latest version of this implementation guide as an interactive webpage
https://www.stedi.com/app/guides/view/o-reilly-auto/purchase-order-acknowledgment/01HW5QQWYJ8HJ9FYQC8BTR9QT8
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
010
Transaction Set Header
Max use 1
Required
BAK
020
Beginning Segment for Purchase Order Acknowledgment
Max use 1
Required
N1 Loop Buying Party (Purchaser)
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 to identify 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 to identify 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

Qualifier to designate 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

Qualifier to designate 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
I10
Interchange Control Standards Identifier
Required
Identifier (ID)

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
ISA-12
I11
Interchange Control Version Number
Required
Identifier (ID)

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
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 sent by the sender to request an interchange acknowledgment (TA1)

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

Code to indicate 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

PR
Purchase Order Acknowledgement (855)
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

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 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
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

004010
Draft Standards Approved for Publication by ASC X12 Procedures Review Board through October 1997

Heading

ST
010
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) used by the translation routines of the interchange partners to select the appropriate transaction set definition (e.g., 810 selects the Invoice Transaction Set).
855
Purchase Order Acknowledgment
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

BAK
020
Heading > BAK

Beginning Segment for Purchase Order Acknowledgment

RequiredMax use 1

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

Usage notes

If an order is accepted in its entirety, the BAK segment is the only required segment.

Example
BAK-01
353
Transaction Set Purpose Code
Required
Identifier (ID)

Code identifying purpose of transaction set

01
Cancellation
04
Change
06
Confirmation
BAK-02
587
Acknowledgment Type
Required
Identifier (ID)

Code specifying the type of acknowledgment

AC
Acknowledge - With Detail and Change

Detail is required if there are changes to the order.

AT
Accepted
RD
Reject with Detail

Detail is required if there are changes to the order.

BAK-03
324
Purchase Order Number
Required
String (AN)
Min 1Max 22

Identifying number for Purchase Order assigned by the orderer/purchaser

Required
Date (DT)
CCYYMMDD format

Date expressed as CCYYMMDD

  • BAK04 is the date assigned by the purchaser to purchase order.
N1 Loop Buying Party (Purchaser)
OptionalMax 1
Variants (all may be used)
N1 Loop Supplier/Manufacturer
N1
300
Heading > N1 Loop Buying Party (Purchaser) > N1

Name

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

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

BY
Buying Party (Purchaser)
Required
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)

94
Code assigned by the organization that is the ultimate destination of the transaction set
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

O’Reilly Store Number

N1 Loop Buying Party (Purchaser) end
N1 Loop Supplier/Manufacturer
OptionalMax >1
Variants (all may be used)
N1 Loop Buying Party (Purchaser)
N1
300
Heading > N1 Loop Supplier/Manufacturer > N1

Name

RequiredMax use 1

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

Example
N1-01
98
Entity Identifier Code
Required
Identifier (ID)

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

SU
Supplier/Manufacturer
Required
String (AN)
Min 1Max 60

Free-form name

N1 Loop Supplier/Manufacturer end
Heading end

Detail

PO1 Loop
OptionalMax >1
PO1
010
Detail > PO1 Loop > PO1

Baseline Item Data

RequiredMax use 1

To specify basic and most frequently used line item data

  • PO102 is required.
Example
PO1-02
330
Quantity Ordered
Required
Decimal number (R)
Min 1Max 15

Quantity ordered

Usage notes

Quantity Originally Ordered

PO1-03
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

Usage notes

Unit of measure provided on original PO.

PO1-06
235
Product/Service ID Qualifier
Required
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.
BP
Buyer's Part Number
PO1-07
234
Product/Service ID
Required
String (AN)
Min 1Max 48

Identifying number for a product or service

Usage notes

BP as provided on original PO.

PO1-08
235
Product/Service ID Qualifier
Required
Identifier (ID)

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

VP
Vendor's (Seller's) Part Number
PO1-09
234
Product/Service ID
Required
String (AN)
Min 1Max 48

Identifying number for a product or service

Usage notes

VP as provided on original PO (if provided).

PO1-10
235
Product/Service ID Qualifier
Required
Identifier (ID)

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

PO
Purchase Order Number
PO1-11
234
Product/Service ID
Required
String (AN)
Min 1Max 48

Identifying number for a product or service

Usage notes

Original PO number.

LIN
015
Detail > PO1 Loop > LIN

Item Identification

OptionalMax use >1

To specify basic item identification data

Usage notes

If an item is replaced or substituted with a different item, an LIN segment is required showing the new item number and a CTP segment is required showing the price of the new item.

Example
LIN-02
235
Product/Service ID Qualifier
Required
Identifier (ID)

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

  • LIN02 through LIN31 provide for fifteen different product/service IDs for each item. For example: Case, Color, Drawing No., U.P.C. No., ISBN No., Model No., or SKU.
RR
Replacement Product Number
LIN-03
234
Product/Service ID
Required
String (AN)
Min 1Max 48

Identifying number for a product or service

CTP
040
Detail > PO1 Loop > CTP

Pricing Information

OptionalMax use >1

To specify pricing information

Usage notes

If an item is replaced or substituted with a different item, an LIN segment is required showing the new item number and a CTP segment is required showing the price of the new item.

Example
CTP-03
212
Unit Price
Required
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.
Usage notes

Price of replacement item.

DTM
200
Detail > PO1 Loop > DTM

Date/Time Reference

OptionalMax use 10

To specify pertinent dates and times

Example
DTM-01
374
Date/Time Qualifier
Required
Identifier (ID)

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

004
Purchase Order
Required
Date (DT)
CCYYMMDD format

Date expressed as CCYYMMDD

ACK Loop
OptionalMax >1
ACK
270
Detail > PO1 Loop > ACK Loop > ACK

Line Item Acknowledgment

RequiredMax use 1

To acknowledge the ordered quantities and specify the ready date for a specific line item

Example
ACK-01
668
Line Item Status Code
Required
Identifier (ID)

Code specifying the action taken by the seller on a line item requested by the buyer

AR
Item Accepted and Released for Shipment
BP
Item Accepted - Partial Shipment, Balance Backordered

If this code is provided, the following DTM segment is mandatory.

IA
Item Accepted
IB
Item Backordered

If this code is provided, the following DTM segment is mandatory.

IR
Item Rejected
IS
Item Accepted - Substitution Made
R1
Item Rejected, Not a Contract Item
R2
Item Rejected, Invalid Item Product Number
R3
Item Rejected, Invalid Unit of Issue
R4
Item Rejected, Contract Item not Available
SP
Item Accepted - Schedule Date Pending
ACK-02
380
Quantity
Required
Decimal number (R)
Min 1Max 15

Numeric value of quantity

Usage notes

Should be the quantity that will be shipped immediately (if the item is on backorder or has been rejected, this quantity should be zero.

ACK-03
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

DTM
280
Detail > PO1 Loop > ACK Loop > DTM

Date/Time Reference

OptionalMax use 1

To specify pertinent dates and times

Usage notes

If an item is back ordered, you must include a DTM segment showing the expected availability date.

Example
DTM-01
374
Date/Time Qualifier
Required
Identifier (ID)

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

169
Product Availability Date
Required
Date (DT)
CCYYMMDD format

Date expressed as CCYYMMDD

ACK Loop end
PO1 Loop end
Detail end

Summary

CTT Loop
OptionalMax >1
CTT
010
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 Loop end
SE
030
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

Sample showing a back ordered item

ISA*00* *00* *ZZ*SENDER *ZZ*RECEIVER *240430*1608*U*00401*000000001*0*T*>~
GS*PR*SENDERGS*RECEIVERGS*20240430*160855*000000001*X*004010~
ST*855*8650001~
BAK*04*AC*992097S02068*20150601~
N1*SU*Supplier Name~
N1*BY* OReilly 2068~
PO1**1*EA***BP*A12345*VP*A-12345*PO*992097S02068~
DTM*004*20150601~
ACK*IB*0*EA~
DTM*169*20150701~
CTT*1~
SE*10*8650001~
GE*1*000000001~
IEA*1*000000001~

Sample showing a cancelled item

ISA*00* *00* *ZZ*SENDER *ZZ*RECEIVER *240430*1610*U*00401*000000001*0*T*>~
GS*PR*SENDERGS*RECEIVERGS*20240430*161022*000000001*X*004010~
ST*855*8650003~
BAK*01*AC*991825S02201*20150601~
N1*SU*Supplier Name~
N1*BY* OReilly 2201~
PO1**1*EA***BP*662593A*VP*662593-A*PO*991825S02201~
DTM*004*20150601~
ACK*IR*0*EA~
CTT*1~
SE*9*8650003~
GE*1*000000001~
IEA*1*000000001~

Sample showing a replacement/substituted item

ISA*00* *00* *ZZ*SENDER *ZZ*RECEIVER *240430*1616*U*00401*000000001*0*T*>~
GS*PR*SENDERGS*RECEIVERGS*20240430*161609*000000001*X*004010~
ST*855*8650002~
BAK*04*AC*991545S00930*20150601~
N1*SU*Supplier Name~
N1*BY* OReilly 930*94*930~
PO1**1*EA***BP*DW551*VP*DW-551*PO*99145S00930~
LIN**RR*DW-551-1~
CTP***99.99~
DTM*004*20150601~
ACK*IS*0*EA~
CTT*1~
SE*11*8650002~
GE*1*000000001~
IEA*1*000000001~

Sample showing an accepted order

ISA*00* *00* *ZZ*SENDER *ZZ*RECEIVER *240430*1610*U*00401*000000001*0*T*>~
GS*PR*SENDERGS*RECEIVERGS*20240430*161014*000000001*X*004010~
ST*855*8650002~
BAK*06*AT*888888S04444*20150601~
SE*3*8650002~
GE*1*000000001~
IEA*1*000000001~

Sample showing multiple items

ISA*00* *00* *ZZ*SENDER *ZZ*RECEIVER *240430*1619*U*00401*000000001*0*T*>~
GS*PR*SENDERGS*RECEIVERGS*20240430*161922*000000001*X*004010~
ST*855*8650003~
BAK*04*AC*777777S03334*20150101~
N1*SU*Supplier·Name~
N1*BY*·OReilly···3334~
PO1**1*EA***BP*123456*VP*12345-6*PO*777777S03334~
LIN**RR*654321~
CTP***999.99~
DTM*004*20150101~
ACK*IS*0*EA~
PO1**1*EA***BP*6565*VP*656-5*PO*777777S03334~
DTM*004*20150101~
ACK*IA*1*EA~
CTT*2~
SE*14*8650003~
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.