Tags: accredited standards committee, asc x12, data interchange standards association, divisional representative, edi guidelines, edi implementation, edi transactions, edifact standards, electronic commerce service, electronic data interchange, electronic interchange, electronic mail message, functional acknowledgment, hierarchical structure, implementation guide, interchange standards, st segment, transaction set, transaction sets, un edifact,
3M Control Segments and Functional Acknowledgment
Introduction to this Guide
The purpose of this EDI Implementation Guide is to provide, in a standardized format,
information relating to 3M' Electronic Data Interchange (EDI) policies and direction.
s
The guidelines which comprise this guide are based on the uniform standards for
electronic interchange of business transactions as developed by the Accredited Standards
Committee (ASC) X12 of the American National Standards Institute (ANSI) and
published by the Data Interchange Standards Association (DISA).
3M also has the capability to implement business transactions based on the United
Nations rules for Electronic Data Interchange for Administration, Commerce, and
Transport (UN/EDIFACT) published in the United States and Canada by DISA.
For more information on business transactions based on the UN/EDIFACT standards,
please contact your 3M divisional representative or the 3M Electronic Commerce Service
Center at (651) 736-3842. You could also send us an electronic mail message at:
http://www.3m.com/US/about3M/ec/contact.html.
The EDI Guidelines section of this site is composed of:
· The EDI Overview chapter providing general information applicable to all EDI
transactions implemented with 3M.
· Guidelines for specific transaction sets. When used in conjunction with the EDI
Overview chapter, each guideline includes the information necessary to work with
your 3M EDI contact to implement that transaction set.
Control Segments
To allow transaction sets of different types to be transmitted from one party to another in
the same transmission, a hierarchical structure of header and trailer segments segregates
the data logically for easy interpretation by the receiver.
Transaction sets begin with a ST segment and end with a SE segment. A Transaction Set
Identifier Code is assigned in the ASC X12 standard to each transaction set. This code
always appears as the first element of the ST segment.
Similarly, a Functional Identifier Code is assigned in the ASC X12 standard to each
transaction set. Transaction sets with the same Functional Identifier Code may be
grouped together by beginning such a group with a GS segment and ending the group
with a GE segment. The Functional Identifier Code always appears as the first data
element of the functional group header segment (GS).
One or more functional groups are bound together for transmission within an interchange
"envelope" by beginning the envelope with an ISA segment and ending with an IEA
segment.
Overview (Introduction) 1 January, 11, 2000
3M Control Segments and Functional Acknowledgment
The structures of the transaction set and functional group headers and trailers are defined
in the Segment Directory of the ASC X12 Standards manual. The structures of the
interchange control header and trailer are defined in the Interchange Control Structure
standard (dpANS X12.5 - 1989).
ISA Interchange Control Header
GS Functional Group Header
ST Transaction Set Header
Detail Segments
(e.g., Purchase Order)
SE Transaction Set Trailer
ST Transaction Set Header
Detail Segments
(e.g., Purchase Order)
SE Transaction Set Trailer
GE Functional Group Trailer
GS Functional Group Header
ST Transaction Set Header
Detail Segments
(e.g., Forecast Information)
SE Transaction Set Trailer
GE Functional Group Trailer
IEA Interchange Control Trailer
The schematic above illustrates a typical format for electronically transmitting a series of
diverse business transactions. Although the standard allows the combining of any
functional groups within an interchange, common practice is to group together only
functional groups with the same Functional Identifier Code and sender/receiver codes.
The following sections document 3M's practice regarding interchange and functional
group control.
Interchange Control
An important function of the interchange control envelope is to identify the sender and
receiver (normally at the company level) for delivery purposes. To ensure uniqueness,
3M recommends using a corporate 9-digit DUNS number to identify the companies
sending and receiving business transactions.
The ISA/EA envelope also provides key control information such as a control number
and a date/time stamp. 3M recommends a unique incremented control number assigned
by the sender based on the sender/receiver combination.
The ISA specifies both the segment terminator and the data element and sub-element
separators. The segment terminator must be different than the separators and none may
appear as values in any subsequent data element.
Overview (Introduction) 2 January, 11, 2000
3M Control Segments and Functional Acknowledgment
On the following page is a description and technical layout of the ISA/IEA envelope.
The ASC X12 version of this guideline is 004010.
Overview (Introduction) 3 January, 11, 2000
3M Control Segments and Functional Acknowledgment
Segment: ISA Interchange Control Header
Position: 027
Loop:
Level: Heading
Usage: Optional
Max Use: 1
Purpose: To start and identify an interchange of zero or more functional groups and
interchange-related control segments
Syntax Notes:
Semantic Notes:
Comments:
Notes: 3M Comments: This header segment is the only ASC X12 segment which is fixed
length - 106 characters.
The element separator defined in the fourth character of this segment is used to
separate all elements for all segments within this interchange. 3M recommends and
generally uses a printable character other than the asterisk because the asterisk is
commonly used in descriptions, special instructions, etc.
The segment terminator defined in the 106th character of this segment is used to
indicate the end of each segment within this interchange. The segment terminator
must be different than the data element separator.
3M Example(s): ISA*00*3M COMPANY*01*006173082bbbbbb
*01*987654321bbbbbb*001014*1210*U*00200*000000432*0*P*[^
(b=blank character)
Data Element Summary
Ref. Data
Des. Element Name Attributes
Required ISA01 I01 Authorization Information Qualifier M ID 2/2
Code to identify the type of information in the Authorization Information
00 No Authorization Information Present (No
Meaningful Information in I02)
Although not used as authorization, 3M sends
company name in ISA02 as an aid to problem
resolution.
Required ISA02 I02 Authorization Information M AN 10/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)
Required ISA03 I03 Security Information Qualifier M ID 2/2
Code to identify the type of information in the Security Information
00 No Security Information Present (No Meaningful
Information in I04)
Although not used as security information, 3M sends
company name is ISA04 as an aid to problem
resolution.
Required ISA04 I04 Security Information M AN 10/10
Overview (Control Segments) 4 January 11, 2000
3M Control Segments and Functional Acknowledgment
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)
Required ISA05 I05 Interchange ID Qualifier M ID 2/2
Qualifier to designate the system/method of code structure used to
designate the sender or receiver ID element being qualified
01 Duns (Dun & Bradstreet)
3M uses 01.
02 SCAC (Standard Carrier Alpha Code)
08 UCC EDI Communications ID (Comm ID)
14 Duns Plus Suffix
Required ISA06 I06 Interchange Sender ID M AN 15/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
Required ISA07 I05 Interchange ID Qualifier M ID 2/2
Qualifier to designate the system/method of code structure used to
designate the sender or receiver ID element being qualified
01 Duns (Dun & Bradstreet)
3M uses 01.
02 SCAC (Standard Carrier Alpha Code)
08 UCC EDI Communications ID (Comm ID)
14 Duns Plus Suffix
Required ISA08 I07 Interchange Receiver ID M AN 15/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
Required ISA09 I08 Interchange Date M DT 6/6
Date of the interchange
Required ISA10 I09 Interchange Time M TM 4/4
Time of the interchange
Required ISA11 I10 Interchange Control Standards Identifier M ID 1/1
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
Required ISA12 I11 Interchange Control Version Number M ID 5/5
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
Required ISA13 I12 Interchange Control Number M N0 9/9
A control number assigned by the interchange sender
Overview (Control Segments) 5 January 11, 2000
3M Control Segments and Functional Acknowledgment
Sender-assigned sequential number to match control number on the IEA
segment.
Required ISA14 I13 Acknowledgment Requested M ID 1/1
Code sent by the sender to request an interchange acknowledgment (TA1)
0 No Acknowledgment Requested
3M will not send or receive interchange
acknowledgments (TA1 segments). Instead, 3M
follows industry practice in the use of the Functional
Acknowledgment (997).
Required ISA15 I14 Usage Indicator M ID 1/1
Code to indicate whether data enclosed by this interchange envelope is
test, production or information
P Production Data
T Test Data
Required ISA16 I15 Component Element Separator M AN 1/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
Although not currently used, the subelement separator is required.
Choose a character that is different than the segment terminator and
element separator, and is not used elsewhere in the data.
Overview (Control Segments) 6 January 11, 2000
3M Control Segments and Functional Acknowledgment
Segment: IEA Interchange Control Trailer
Position: 025
Loop:
Level: Heading
Usage: Optional
Max Use: 1
Purpose: To define the end of an interchange of zero or more functional groups and
interchange-related control segments
Syntax Notes:
Semantic Notes:
Comments:
Notes: 3M Example(s): IEA*1*000000432^
Data Element Summary
Ref. Data
Des. Element Name Attributes
Required IEA01 I16 Number of Included Functional Groups M N0 1/5
A count of the number of functional groups included in an interchange
Required IEA02 I12 Interchange Control Number M N0 9/9
A control number assigned by the interchange sender
This must match the control number on the ISA segment for this
interchange.
Overview (Control Segments) 7 January 11, 2000
3M Control Segments and Functional Acknowledgment
Functional Group Control
The functional group header/trailer (GS/GE) allows similar transaction sets to be grouped
together. Each GS/GE contains its own control number for audit and error recovery
purposes. 3M recommends that this control number be unique and incremented based on
sender/receiver/functional group combination.
Another important function of the GS header is to group together transaction sets
destined for the same physical location and/or computer system. 3M recommends that, if
needed, the GS02/GS03 sender/receiver codes be used to uniquely identify the final
location, system or application sending and receiving the functional group. In this case,
3M recommends using a 9-digit DUNS number, plus an optional suffix of alphanumeric
characters to identify a more detailed location within the organization identified in the
ISA. If no further identification is needed, 3M recommends using the same
sender/receiver codes sent in the ISA.
Although the standard allows the combining of any functional groups within an
interchange, common practice is to group together only functional groups with the same
Functional Identifier Code and sender/receiver codes.
The functional group envelope also identifies the version/release of the standard to which
the transaction sets conform. By mutual agreement of major industry groups using the
ASC X12 standards, the following convention is used to denote the version/release in the
functional group header (GS08):
POSITION CONTENT
1-3 Major version number
4-6 Release level of version
7-12 Industry-assigned code
ASC X12 assigns the codes in positions 1-6. A major version will change only following
an official public review cycle, leading to re-publication of a new set of American
National Standards. Use of the industry-assigned code in position 7-12 is generally
unnecessary.
On the following page is the description and technical layout of the GS/GE envelope.
The ASC X12 version presented in this guideline is 004010.
Overview (Introduction) 8 January, 11, 2000
3M Control Segments and Functional Acknowledgment
Segment: GS Functional Group Header
Position: 023
Loop:
Level: Heading
Usage: Optional
Max Use: 1
Purpose: To indicate the beginning of a functional group and to provide control information
Syntax Notes:
Semantic Notes: 1 GS04 is the group date.
2 GS05 is the group time.
3 The data interchange control number GS06 in this header must be identical to
the same data element in the associated functional group trailer, GE02.
Comments: 1 A functional group of related transaction sets, within the scope of X12
standards, consists of a collection of similar transaction sets enclosed by a
functional group header and a functional group trailer.
Notes: 3M Example(s):
GS*PO*006173082*987654321*20001014*1210*16789*X*004010^
Data Element Summary
Ref. Data
Des. Element Name Attributes
Required GS01 479 Functional Identifier Code M ID 2/2
Code identifying a group of application related transaction sets
FA Functional Acknowledgment (997)
IM Motor Carrier Freight Details and Invoice (210, 980)
IN Invoice Information (810,819)
PO Purchase Order (850)
RA Payment Order/Remittance Advice (820)
See ASC X12 data dictionary for additional codes.
Required GS02 142 Application Sender's Code M AN 2/15
Code identifying party sending transmission; codes agreed to by trading
partners
3M recommends the use of the same code used in ISA06 unless further
clarification of the sender is required. (e.g., division or application within
a company).
Required GS03 124 Application Receiver's Code M AN 2/15
Code identifying party receiving transmission. Codes agreed to by trading
partners
3M recommends the use of the same code used in ISA08 unless further
clarification of the receiver is required (e.g., division or application within
a company).
Required GS04 373 Date M DT 8/8
Date expressed as CCYYMMDD
Required GS05 337 Time M TM 4/8
Overview (Control Segments) 9 January 11, 2000
3M Control Segments and Functional Acknowledgment
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)
Required GS06 28 Group Control Number M N0 1/9
Assigned number originated and maintained by the sender
Sender-assigned sequential control number to match control number on
GE segment.
Required GS07 455 Responsible Agency Code M ID 1/2
Code used in conjunction with Data Element 480 to identify the issuer of
the standard
X Accredited Standards Committee X12
Required GS08 480 Version / Release / Industry Identifier Code M AN 1/12
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
This code must indicate the version/release of the transaction sets within
the functional group. See individual transaction set guidelines for
recommended version/releases supported by 3M.
Overview (Control Segments) 10 January 11, 2000
3M Control Segments and Functional Acknowledgment
Segment: GE Functional Group Trailer
Position: 022
Loop:
Level: Heading
Usage: Optional
Max Use: 1
Purpose: To indicate the end of a functional group and to provide control information
Syntax Notes:
Semantic Notes: 1 The data interchange control number GE02 in this trailer must be identical to
the same data element in the associated functional group header, GS06.
Comments: 1 The use of identical data interchange control numbers in the associated
functional group header and trailer is designed to maximize functional group
integrity. The control number is the same as that used in the corresponding
header.
Notes: 3M Example(s): GE*8*16789^
Data Element Summary
Ref. Data
Des. Element Name Attributes
Required GE01 97 Number of Transaction Sets Included M N0 1/6
Total number of transaction sets included in the functional group or
interchange (transmission) group terminated by the trailer containing this
data element
Required GE02 28 Group Control Number M N0 1/9
Assigned number originated and maintained by the sender
This must match the control number on the GS segment for this
functional group.
Overview (Control Segments) 11 January 11, 2000
3M Control Segments and Functional Acknowledgment
Functional Acknowledgments
The Functional Acknowledgment (FA) (ASC X12 transaction set 997) provides
confirmation of the receipt of EDI data. The FA is created by the receiving EDI
translator and returned to the sending translator. It acknowledges receipt of each
functional group within an interchange, and optionally each transaction set within the
functional groups. It also indicates whether the EDI translator was able to edit the data
successfully and may optionally return codes indicating errors detected in checking
conformance to the ASC X12 standards.
FAs should be reconciled against the original document sent. The group and transaction
set control numbers sent in the original data are returned in the FA and are the keys to the
reconciliation process. Therefore, the sender is responsible for maintaining uniqueness in
the control numbers to ensure accurate matching.
For critical applications, the sender must monitor the FAs to detect unacknowledged and
rejected groups and transaction sets. Rejected data is rare and generally requires manual
intervention and problem resolution.
Monitoring unacknowledged activity is more cumbersome because all transactions are
unacknowledged for some period of time. Thus it is crucial that both the sender and
receiver understand the timing requirements for sending and picking up the original
transactions, as well as for sending and picking up the resulting FAs. For example, 3M
requires that its suppliers send an FA by 6:00 AM (CST) acknowledging 3M purchase
orders sent by 3:00 PM (CST) the previous day. This not only affects how soon FAs must
be returned but also affects when POs are retrieved. To meet the requirement, suppliers
must pick up EDI data from the VAN at least once per day after 3:00 PM (CST).
Following a pick up of EDI data in one communications session, most EDI translation
software generates FAs automatically for transmission in the following communications
session. Thus to meet 3M's FA requirement, suppliers must connect to their VAN a
second time before the 6:00 A.M. (CST) deadline.
As noted, FAs acknowledge functional groups and can optionally acknowledge
transaction sets. Segments AK1 and AK9 acknowledge functional groups. If used,
segments AK2 and AK5 acknowledge transaction sets. Segments AK3 and AK4 are used
only to report errors.
3M prefers to send and receive FAs only at the functional group level. Experience has
shown this approach to be effective and efficient, and that it is generally safe to assume
that if a functional group is received and accepted, so are the transaction sets contained in
it.
Besides the FA, the ASC X12 standard also defines an interchange acknowledgment. The
interchange acknowledgment is not a transaction set but rather a single control segment
called a TA1. 3M follows industry practice and does not use TA1 acknowledgments.
Overview (Introduction) 12 January, 11, 2000
3M Control Segments and Functional Acknowledgment
On the following page is a description and technical layout of the Functional
Acknowledgment. The ASC X12 version presented in this guideline is 004010
Overview (Introduction) 13 January, 11, 2000
3M Control Segments and Functional Acknowledgment
997 Functional Acknowledgment
Functional Group ID= FA
Introduction:
This Draft Standard for Trial Use contains the format and establishes the data contents of the Functional
Acknowledgment Transaction Set (997) for use within the context of an Electronic Data Interchange (EDI)
environment. The transaction set can be used to define the control structures for a set of acknowledgments
to indicate the results of the syntactical analysis of the electronically encoded documents. The encoded
documents are the transaction sets, which are grouped in functional groups, used in defining transactions for
business data interchange. This standard does not cover the semantic meaning of the information encoded in
the transaction sets.
Page Pos. Seg. Req. Loop Notes and
No. No. ID Name Des. Max.Use Repeat Comments
3 010 ST Transaction Set Header M 1 n1
4 020 AK1 Functional Group Response Header M 1 n2
LOOP ID - AK2 999999
5 030 AK2 Transaction Set Response Header O 1 n3
LOOP ID - AK3 999999
6 040 AK3 Data Segment Note O 1 c1
7 050 AK4 Data Element Note O 99
9 060 AK5 Transaction Set Response Trailer M 1
11 070 AK9 Functional Group Response Trailer M 1
13 080 SE Transaction Set Trailer M 1
Transaction Set Notes
1. These acknowledgments shall not be acknowledged, thereby preventing an endless cycle of
acknowledgments of acknowledgments. Nor shall a Functional Acknowledgment be sent to report
errors in a previous Functional Acknowledgment.
The Functional Group Header Segment (GS) is used to start the envelope for the Functional
Acknowledgment Transaction Sets. In preparing the functional group of acknowledgments, the
application sender's code and the application receiver's code, taken from the functional group being
acknowledged, are exchanged; therefore, one acknowledgment functional group responds to only
those functional groups from one application receiver's code to one application sender's code.
There is only one Functional Acknowledgment Transaction Set per acknowledged functional group.
2. AK1 is used to respond to the functional group header and to start the acknowledgement for a
functional group. There shall be one AK1 segment for the functional group that is being acknowledged.
3. AK2 is used to start the acknowledgement of a transaction set within the received functional group.
The AK2 segments shall appear in the same order as the transaction sets in the functional group that
has been received and is being acknowledged.
Transaction Set Comments
Overview (Functional Acknowledgment) 14 January 11, 2000
3M Control Segments and Functional Acknowledgment
1. The data segments of this standard are used to report the results of the syntactical analysis of the
functional groups of transaction sets; they report the extent to which the syntax complies with the
standards for transaction sets and functional groups. They do not report on the semantic meaning of
the transaction sets (for example, on the ability of the receiver to comply with the request of the
sender).
Overview (Functional Acknowledgment) 15 January 11, 2000
3M Control Segments and Functional Acknowledgment
Segment: ST Transaction Set Header
Position: 010
Loop:
Level:
Usage: Mandatory
Max Use: 1
Purpose: To indicate the start of a transaction set and to assign a control number
Syntax Notes:
Semantic Notes: 1 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).
Comments:
Notes: 3M Example(s): ST*997*000059324^
Data Element Summary
Ref. Data
Des. Element Name Attributes
Required ST01 143 Transaction Set Identifier Code M ID 3/3
Code uniquely identifying a Transaction Set
997 Functional Acknowledgment
Required ST02 329 Transaction Set Control Number M AN 4/9
Identifying control number that must be unique within the transaction set
functional group assigned by the originator for a transaction set
Sender-assigned sequential control number to match control number on
SE segment.
Overview (Functional Acknowledgment) 16 January 11, 2000
3M Control Segments and Functional Acknowledgment
Segment: AK1 Functional Group Response Header
Position: 020
Loop:
Level:
Usage: Mandatory
Max Use: 1
Purpose: To start acknowledgment of a functional group
Syntax Notes:
Semantic Notes: 1 AK101 is the functional ID found in the GS segment (GS01) in the functional
group being acknowledged.
2 AK102 is the functional group control number found in the GS segment in the
functional group being acknowledged.
Comments:
Notes: 3M Example(s): AK1*PO*789^
Data Element Summary
Ref. Data
Des. Element Name Attributes
Required AK101 479 Functional Identifier Code M ID 2/2
Code identifying a group of application related transaction sets
This is the functional group identifier (GS01) of the functional group
being acknowledged.
IM Motor Carrier Freight Details and Invoice (210, 980)
IN Invoice Information (810,819)
PO Purchase Order (850)
RA Payment Order/Remittance Advice (820)
See ASC X12 data dictionary for additional codes.
Required AK102 28 Group Control Number M N0 1/9
Assigned number originated and maintained by the sender
This is the control number (GS06) of the functional group being
acknowledged.
Overview (Functional Acknowledgment) 17 January 11, 2000
3M Control Segments and Functional Acknowledgment
Segment: AK2 Transaction Set Response Header
Position: 030
Loop: AK2 Optional
Level:
Usage: Optional
Max Use: 1
Purpose: To start acknowledgment of a single transaction set
Syntax Notes:
Semantic Notes: 1 AK201 is the transaction set ID found in the ST segment (ST01) in the
transaction set being acknowledged.
2 AK202 is the transaction set control number found in the ST segment in the
transaction set being acknowledged.
Comments:
Notes: 3M Comments: 3M recommends acknowledging at the group level unless errors
are detected. If no errors, AK2 through AK5 segments are not used.
3M Example(s): AK2*810*000000049^
Data Element Summary
Ref. Data
Des. Element Name Attributes
Required AK201 143 Transaction Set Identifier Code M ID 3/3
Code uniquely identifying a Transaction Set
This is the transaction set identifier code (ST01) of the transaction set
being acknowledged.
210 Motor Carrier Freight Details and Invoice
810 Invoice
820 Payment Order/Remittance Advice
850 Purchase Order
See ASC X12 data dictionary for additional codes.
Required AK202 329 Transaction Set Control Number M AN 4/9
Identifying control number that must be unique within the transaction set
functional group assigned by the originator for a transaction set
This is the control number (ST02) of the transaction set being
acknowledged.
Overview (Functional Acknowledgment) 18 January 11, 2000
3M Control Segments and Functional Acknowledgment
Segment: AK3 Data Segment Note
Position: 040
Loop: AK3 Optional
Level:
Usage: Optional
Max Use: 1
Purpose: To report errors in a data segment and identify the location of the data segment
Syntax Notes:
Semantic Notes:
Comments:
Notes: 3M Comments: 3M recommends acknowledging at the group level unless errors
are detected. If no errors, AK2 through AK5 segments are not used.
3M Example(s): AK3*BEG*12**7^
Data Element Summary
Ref. Data
Des. Element Name Attributes
Required AK301 721 Segment ID Code M ID 2/3
Code defining the segment ID of the data segment in error (See Appendix
A - Number 77)
Required AK302 719 Segment Position in Transaction Set M N0 1/6
The numerical count position of this data segment from the start of the
transaction set: the transaction set header is count position 1
AK303 447 Loop Identifier Code O AN 1/6
The loop ID number given on the transaction set diagram is the value for
this data element in segments LS and LE
AK304 720 Segment Syntax Error Code O ID 1/3
Code indicating error found based on the syntax editing of a segment
1 Unrecognized segment ID
2 Unexpected segment
3 Mandatory segment missing
4 Loop Occurs Over Maximum Times
5 Segment Exceeds Maximum Use
6 Segment Not in Defined Transaction Set
7 Segment Not in Proper Sequence
Overview (Functional Acknowledgment) 19 January 11, 2000
3M Control Segments and Functional Acknowledgment
Segment: AK4 Data Element Note
Position: 050
Loop: AK3 Optional
Level:
Usage: Optional
Max Use: 99
Purpose: To report errors in a data element or composite data structure and identify the
location of the data element
Syntax Notes:
Semantic Notes: 1 In no case shall a value be used for AK404 that would generate a syntax error,
e.g., an invalid character.
Comments:
Notes: 3M Comments: 3M recommends acknowledging at the group level unless errors
are detected. If no errors, AK2 through AK5 segments are not used.
3M Example(s): AK4*5*373*8*001301^
Data Element Summary
Ref. Data
Des. Element Name Attributes
Required AK401 C030 Position in Segment M
Code indicating the relative position of a simple data element, or the
relative position of a composite data structure combined with the relative
position of the component data element within the composite data
structure, in error; the count starts with 1 for the simple data element or
composite data structure immediately following the segment ID
Required C03001 722 Element Position in Segment M N0 1/2
This is used to indicate the relative position of a simple data element, or
the relative position of a composite data structure with the relative position
of the component within the composite data structure, in error; in the data
segment the count starts with 1 for the simple data element or composite
data structure immediately following the segment ID
AK402 725 Data Element Reference Number O N0 1/4
Reference number used to locate the data element in the Data Element
Dictionary
Required AK403 723 Data Element Syntax Error Code M ID 1/3
Code indicating the error found after syntax edits of a data element
1 Mandatory data element missing
2 Conditional required data element missing.
3 Too many data elements.
4 Data element too short.
5 Data element too long.
6 Invalid character in data element.
7 Invalid code value.
8 Invalid Date
Overview (Functional Acknowledgment) 20 January 11, 2000
3M Control Segments and Functional Acknowledgment
9 Invalid Time
AK404 724 Copy of Bad Data Element O AN 1/99
This is a copy of the data element in error
Overview (Functional Acknowledgment) 21 January 11, 2000
3M Control Segments and Functional Acknowledgment
Segment: AK5 Transaction Set Response Trailer
Position: 060
Loop: AK2 Optional
Level:
Usage: Mandatory
Max Use: 1
Purpose: To acknowledge acceptance or rejection and report errors in a transaction set
Syntax Notes:
Semantic Notes:
Comments:
Notes: 3M Comments: 3M recommends acknowledging at the group level unless errors
are detected. If no errors, AK2 through AK5 segments are not used.
3M Example(s): AK5*R*3^
Data Element Summary
Ref. Data
Des. Element Name Attributes
Required AK501 717 Transaction Set Acknowledgment Code M ID 1/1
Code indicating accept or reject condition based on the syntax editing of
the transaction set
A Accepted
E Accepted But Errors Were Noted
R Rejected
AK502 718 Transaction Set Syntax Error Code O ID 1/3
Code indicating error found based on the syntax editing of a transaction set
1 Transaction Set Not Supported
2 Transaction Set Trailer Missing
3 Transaction Set Control Number in Header and
Trailer Do Not Match
4 Number of Included Segments Does Not Match
Actual Count
5 One or More Segments in Error
6 Missing or Invalid Transaction Set Identifier
7 Missing or Invalid Transaction Set Control Number
AK503 718 Transaction Set Syntax Error Code O ID 1/3
Code indicating error found based on the syntax editing of a transaction set
See AK502 for code list.
AK504 718 Transaction Set Syntax Error Code O ID 1/3
Code indicating error found based on the syntax editing of a transaction set
See AK502 for code list.
AK505 718 Transaction Set Syntax Error Code O ID 1/3
Code indicating error found based on the syntax editing of a transaction set
See AK502 for code list.
Overview (Functional Acknowledgment) 22 January 11, 2000
3M Control Segments and Functional Acknowledgment
AK506 718 Transaction Set Syntax Error Code O ID 1/3
Code indicating error found based on the syntax editing of a transaction set
See AK502 for code list.
Overview (Functional Acknowledgment) 23 January 11, 2000
3M Control Segments and Functional Acknowledgment
Segment: AK9 Functional Group Response Trailer
Position: 070
Loop:
Level:
Usage: Mandatory
Max Use: 1
Purpose: To acknowledge acceptance or rejection of a functional group and report the
number of included transaction sets from the original trailer, the accepted sets, and
the received sets in this functional group
Syntax Notes:
Semantic Notes:
Comments: 1 If AK901 contains the value "A" or "E", then the transmitted functional group is
accepted.
Notes: 3M Example(s): AK9*A*3*3*3^
Data Element Summary
Ref. Data
Des. Element Name Attributes
Required AK901 715 Functional Group Acknowledge Code M ID 1/1
Code indicating accept or reject condition based on the syntax editing of
the functional group
A Accepted
E Accepted, But Errors Were Noted.
P Partially Accepted, At Least One Transaction Set
Was Rejected
R Rejected
Required AK902 97 Number of Transaction Sets Included M N0 1/6
Total number of transaction sets included in the functional group or
interchange (transmission) group terminated by the trailer containing this
data element
Required AK903 123 Number of Received Transaction Sets M N0 1/6
Number of Transaction Sets received
Required AK904 2 Number of Accepted Transaction Sets M N0 1/6
Number of accepted Transaction Sets in a Functional Group
AK905 716 Functional Group Syntax Error Code O ID 1/3
Code indicating error found based on the syntax editing of the functional
group header and/or trailer
1 Functional Group Not Supported
2 Functional Group Version Not Supported
3 Functional Group Trailer Missing
4 Group Control Number in the Functional Group
Header and Trailer Do Not Agree
5 Number of Included Transaction Sets Does Not
Match Actual Count
Overview (Functional Acknowledgment) 24 January 11, 2000
3M Control Segments and Functional Acknowledgment
AK906 716 Functional Group Syntax Error Code O ID 1/3
Code indicating error found based on the syntax editing of the functional
group header and/or trailer
See AK905 for code list.
AK907 716 Functional Group Syntax Error Code O ID 1/3
Code indicating error found based on the syntax editing of the functional
group header and/or trailer
See AK905 for code list.
AK908 716 Functional Group Syntax Error Code O ID 1/3
Code indicating error found based on the syntax editing of the functional
group header and/or trailer
See AK905 for code list.
AK909 716 Functional Group Syntax Error Code O ID 1/3
Code indicating error found based on the syntax editing of the functional
group header and/or trailer
See AK905 for code list.
Overview (Functional Acknowledgment) 25 January 11, 2000
3M Control Segments and Functional Acknowledgment
Segment: SE Transaction Set Trailer
Position: 080
Loop:
Level:
Usage: Mandatory
Max Use: 1
Purpose: To indicate the end of the transaction set and provide the count of the transmitted
segments (including the beginning (ST) and ending (SE) segments)
Syntax Notes:
Semantic Notes:
Comments: 1 SE is the last segment of each transaction set.
Notes: 3M Example(s): SE*4*000059324^
Data Element Summary
Ref. Data
Des. Element Name Attributes
Required SE01 96 Number of Included Segments M N0 1/10
Total number of segments included in a transaction set including ST and
SE segments
Required SE02 329 Transaction Set Control Number M AN 4/9
Identifying control number that must be unique within the transaction set
functional group assigned by the originator for a transaction set
This must match the control number on the ST segment for this
transaction set.
Overview (Functional Acknowledgment) 26 January 11, 2000
3M Control Segments and Functional Acknowledgment
Functional Acknowledgment Examples
This section contains two examples to illustrate the use of Transaction Set 997.
They are:
· A functional acknowledgment of an accepted purchase order functional group.
Acknowledgment is at the group level.
· A functional acknowledgment of a partially-accepted invoice functional group. Two
invoices were accepted; one was rejected. Acknowledgment is at transaction set level
because of the error detected in one of the transaction sets.
Since there is no paper-copy equivalent of a functional acknowledgment, only the ASC
X12 format and its interpretation are contained in this section.
Example 1
This is an example of a functional acknowledgment of a purchase order functional group
which contained three purchase orders. All were accepted.
ASC X12 FORMAT INTERPRETATION
ST*997*000059324^ ASC X12 Transaction Set: 997
Transaction Set Control Number:
000059324
AK1*PO*789^ Functional Group Acknowledged:
PO=purchase order
Control Number Being
Acknowledged: 789
AK9*A*3*3*3^ Functional Group Accepted
Transaction Sets Included: 3
Transaction Sets Received: 3
Transaction Sets Accepted: 3
SE*4*000059324^ Number of Segments: 4
Transaction Set Control Number:
000059324
Overview (Functional Acknowledgment) 27 January 11, 2000
3M Control Segments and Functional Acknowledgment
Example 2
This is an example of a functional acknowledgment of an invoice functional group which
contained three invoices. Two transaction sets were accepted without errors; one was
rejected because the control number in the header and trailer did not match.
ASC X12 FORMAT INTERPRETATION
ST*997*000032941^ ASC X12 Transaction Set: 997
Transaction Set Control Number:
000032941
AK1*IN*6932^ Functional Group Acknowledged:
IN=invoice
Control Number Acknowledged: 6932
AK2*810*000000049^ Transaction Set Acknowledged:
810=invoice
Control Number Acknowledged:
000000049
AK5*A^ Transaction Set Accepted
AK2*810*000000050^ Transaction Set Acknowledged:
810=invoice
Control Number Acknowledged:
000000050
AK5*R*3^ Transaction Set Rejected
Error code: 3=transaction set control
numbers did not match.
AK2*810*000000051^ Transaction Set Acknowledged:
810=invoice
Control Number Acknowledged:
000000051
AK5*A^ Transaction Set Accepted
AK9*P*3*3*2^ Functional Group Partially Accepted
Transaction Sets Included: 3
Transaction Sets Received: 3
Transaction Sets Accepted: 2
SE*10*000032941^ Number of Segments: 10
Transaction Set Control Number:
000032941
Overview (Functional Acknowledgment) 28 January 11, 2000