NATL INST. OF STAND & TECH R.I.C mm ;§tl

A1110S 13Qakfi

NtST

PUBLICATIONS

NIST Special Publication 881-17

NET

QC

100

.157

NO.881-17

1997

Federal Implementation Guideline

for Electronic Data Interchange

ASC X12 003050 Transaction Set 997

Functional Acknowledgment

Implementation Convention

U.S. DEPARTMENT OF COMMERCE

Technology Administration

National Institute of

Standards and Technology

NIST Special Publication 881-17

Federal Implementation Guideline

for Electronic Data Interchange

ASC X12 003050 Transaction Set 997

Functional Acknowledgment

Implementation Convention

Electronic Commerce Acquisition Program Management Office

Standard Management Committee - Secretariat

National Institute of Standards and Technology

Gaithersburg, MD 20899-0001

Editor: Dr. Jean-Philippe Favreau

March 1997

U.S. DEPARTMENT OF COMMERCE

William M. Daley, Secretary

Technology Administration

Mary L. Good, Under Secretary for Technology

National Institute of Standards and Technology

Arati Prabhakar, Director
Reports on Information Technology

The National Institute of Standards and Technology (NIST)'s Information Technology Laboratory (ITL)

develops standards and guidelines, provides technical assistance, and conducts research for computers

and resources. As part of the overall federal effort to establish a single face to industry for conducting

electronic commerce, ITL has been designated as the organization responsible for coordinating the

development of Federal Implementation Conventions (ICs) for Electronic Data Interchange (EDI). ICs are defined by functional-area experts who create and select options from standard EDI Transaction Sets to yield the implementations to be used for practical EDI. These ICs are made available to federal agencies

and industry by electronic means and this Special Publication Series.

National Institute of Standards and Technology Special Publication 881-17

Natl. Inst. Stand. Technol. Spec. Publ. 881-17, 14 pages (March 1997)

CODEN: NSPUE2

U.S. GOVERNMENT PRINTING OFFICE

WASHINGTON: 1997

For sale by the Superintendent of Documents, U.S. Government Printing Office, Washington, DC 20402
FOREWORD

In a memorandum of October 26, 1993, the President sought to stimulate the Federal Government's deployment of

Electronic Commerce in order to simplify and streamline the acquisition process. In this regard, the President set forth the following objectives:

o Exchange acquisition information electronically between the private sector and the Federal Government to the

maximum extent practicable.

o Provide businesses, including small, small disadvantaged, and woman-owned businesses, with greater access to Federal acquisition opportunities.

o Ensure that potential suppliers are provided simplified access to the Federal Government's EC system.

o Employ nationally and internationally recognized data formats that serve to broaden and ease the interchange of

data.

o Use agency and industry systems and networks to enable the government and potential suppliers to exchange

information and access Federal acquisition data.

As part of the Federal Government wide effort to implement EC, NIST has been given the responsibility of coordinating

the development and promulgation of Implementation Conventions for the functional areas of EC which will be deployed

across the Agencies.

Various Agencies have been actively pursuing Electronic Data Interchange (EDI) for several years - the DoD, GSA

Customs and HHS, for instance, have been particularly active in adopting ANSI X12 standards, and looking ahead to EDIFACT. There became a danger that with fragmentation of usage across the Federal Government a significant burden

would be placed on many small businesses to support an unnecessary profusion offormats and conventions.

In the Presidential Memorandum, President Clinton required Federal agencies to implement the use of electronic commerce in Federal purchases as quickly as possible. As the initial step, the President's Management Council (PMC)

Electronic Commerce Task Force (ECTF), chaired by the Administrator, Office of Federal Procurement Policy (OFPP),

chartered the Federal Electronic Commerce Acquisition Team (ECAT) to complete the first milestone of the President's

memorandum. The PMC assigned the Electronic Commerce Acquisition Team, composed of representatives from

various Federal departments and agencies, the task of defining the architecture for the government electronic commerce

acquisition system and identifying the executive departments or agencies responsible for developing, implementing,

operating, and maintaining the Federal electronic system.

Another key step in the implementation of EDI in the Federal Government relies on the definition of

Implementation Conventions (ICs). EDI syntax standards, both ASC X12 and UN/EDIFACT, accommodate a full range of business activities for all industries. A standard is the result of a consensus among a large number of

users, each with its own set of needs. It is a superset intended to meet the diverse requirements of all users. Standards commonly contain more data elements and structure options than any one user or industry needs. Far

too many opportunities exist for inefficient, or ambiguous transactions. Therefore, actual EDI business processes

require implementation conventions (ICs) to fully define transactions. ICs do that by tailoring the use of the

standards' segments, data elements, and code values and providing a subset menu of those distinct parts. This

Special Publication defines a Federal IC based on ASC X12 Version 3050 and is the result of coordinated

development and adoption within the Federal Government.

997 - Functional Acknowledgement

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.

Notes:

1. Use this implementation convention to acknowledge receipt, and acceptance or rejection ofafunctional group

and the transaction set(s) contained within it based upon EDI translation software syntax edits.

2. Trading partners should limit the scope ofthe data provided in the case oftransaction set receipt and rejection

notification to the transaction set level, i.e., the 1/AK3/040 loop should not be used. However, ifseparate

arrangements with trading partners orflexibility within the translation software do not permit this level of

response, the procedures identified herein, as applicable to the 1/AK3/040 loop should be followed.

Pos. Seg. Req. Loop Notes and

No. ID Name Pes. Max.Use Repeat Comments

010 ST Transaction Set Header M 1 nl

020 AK1 Functional Group Response Header Ml n2

030 AK2 Transaction Set Response Header

040 AK3

050 AK4

060 AK5 Transaction Set Response Trailer

070 AK9 Functional Group Response Trailer M 1

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.

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.

RELEASE - 003050FEDOOA 1 4 March 1996
997 - Functional Acknowledgement

Transaction Set Comments

1. The data segments of this standard are used to report the results of the syntatical 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).

RELEASE - 003050FEDOOA 2 4 March 1996
997 - Functional Acknowledgement

Segment:

Position:

Loop:

Level:

Usage:

Max Use:

Purpose:

Syntax Notes:

Semantic Notes:

Comments:

ST Transaction Set Header

010

Mandatory

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

1 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).

Data Element Summary

Ref. Data

Pes. Element Name Attributes

Must Use ST01 143 Transaction Set Identifier Code M ID 3/3

Code uniquely identifying a Transaction Set. 997 X12.20 Functional Acknowledgment

Must Use 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 Use to transmit a unique number assigned by the originator ofthe transaction

set. The number may be system generated. This same number will be cited in

SE02.

RELEASE - 003050FEDOOA 3 4 March 1996
997 - Functional Acknowledgement

Segment:

Position:

Loop:

Level:

Usage:

Max Use:

Purpose:

Syntax Notes:

Semantic Notes:

Comments:

Notes:

AK1 Functional Group Response Header

020

Mandatory

1To start acknowledgment of a functional group.

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.

1. Use to identify the unique identification number ofthe functional group in which the

transaction set(s) being acknowledged was received.

2. Only one functional group may be referenced in a single 997 acknowledgment

transaction set.

Ref.

Pes.

Must Use AK101

Must Use AK102

Data

Element

479

28

Data Element Summary

Name Attributes

Functional Identifier Code M ID 2/2

Code identifying a group of application related Transaction Sets. Use any code.

Group Control Number M NO 1/9

Assigned number originated and maintained by the sender.

Use to identify the number cited in GS06 ofthe functional group being

acknowledged.

RELEASE - 003050FED00A 4 4 March 1996
997 - Functional Acknowledgement

Segment:

Position:

Loop:

Level:

Usage:

Max Use:

Purpose:

Syntax Notes:

Semantic Notes:

Comments:

Notes:

AK2 Transaction Set Response Header

030

AK2

Optional

1To start acknowledgment of a single transaction set.

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.

Use to identify the unique identification number ofthe transaction set being

acknowledged.

Data Element Summary

Ref.

Pes.

Must Use AK201

Must Use AK202

Data

Element

143

329

Name Attributes

Transaction Set Identifier Code M ID 3/3

Code uniquely identifying a Transaction Set.

Refer to 003050 Data Element Dictionary for acceptable code values.

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 Use to identify the number cited in SE02/ST02 ofthe transaction set being

acknowledged.

RELEASE - 003050FEDOOA 5 4 March 1996
997 - Functional Acknowledgement

Segment:

Position:

Loop:

Level:

Usage:

Max Use:

Purpose:

Syntax Notes:

Semantic Notes:

Comments:

Notes:

AK3 Data Segment Note

040

AK3

Optional

1To report errors in a data segment and to identify the location of the data segment.

1. Use the 1/AK3/040 loop only when a trading partner agreement or translation

software do not limit receipt and rejection reporting to the group or transaction set

level.

2. This 1/AK3/040 loop is used only to identify one or more segments containing

syntactical errors resulting in rejection ofthe transaction set orfunctional group. This

loop is not used when transaction set andfunctional group receipt and acceptance is being acknowledged.

Data Element Summary

Ref.

Pes.

Must Use AK301

Must Use AK302

AK303

AK304

Data

Element

721

719

447

720

Name Attributes

Segment ID Code M ID 2/3

Code defining the segment ID of the data segment in error. See Appendix A - Number 77.

Use to identify the segment containing syntactical errors, as it appears in the

ASCXI2 Data Segment Dictionary, e.g., DTM, Nl, REF, etc. Segment Position in Transaction Set M NO 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. Use to identify the segment's sequential position within the data stream ofthe

transaction set as transmitted. This number is not the segment's position

number portrayed in the transaction set structure. For example, ifthe

segments used in an 810 requestfor progress payment were asfollows: ST,

BIG, REF, Nl, Nl, PER, ITD, DTM, 1T1, 1T1, SLN, SLN, SLN, TDS, CTT, SE,

and there was a syntax error in the second use ofthe Nl segment, the number

cited would be 5. Ifthe syntax error was in the third use ofthe SLN segment,

the number cited would be 13. Loop Identifier Code O AN 1/4

The loop ID number given on the transaction set diagram is the value for this

data element in segments LS and LE

Segment Syntax Error Code O ID 1/3

Code indicating error found based on the syntax editing of a segment

1. Use only when a segment is being rejected, to identify the basisfor

rejection. Do not use when the error is in a data element within the segment

and editing is being done at least to that level.

Refer to 003050 Data Element Dictionary for acceptable code values.

RELEASE - 003050FED00A 6 4 March 1996
997 - Functional Acknowledgement

Segment:

Position:

Loop:

Level:

Usage:

Max Use:

Purpose:

Syntax Notes:

Semantic Notes:

Comments:

Notes:

AK4 Data Element Note

050

AK3

Optional

99

To report errors in a data element and to identify the location of the data element.

Use to identify an error with a data element. When used, there must be a use ofthe

AK3 segment citing the segment in which the data element with the error appears. Use

multiple occurrences ofthis segment to identify all data element errors within the

segment specified in the preceding AK3 segment.

Data Element Summary

Ref.

Pes.

Must Use AK401

Must Use C03001

C03002

AK402

Must Use AK403

AK404

Data

Element

C030

722

1528

725

723

724

Name Attributes

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

Element Position in Segment M NO 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

Use to indicate the position ofthe data element, within the segment,

containing the error, e.g., 3, 12, etc. Component Data Element Position in Composite O NO 1/2

To identify the component data element position within the composite that is

in error Data Element Reference Number O NO 1/4

Reference number used to locate the data element in the Data Element

Dictionary.

Use to identify the data element number as it appears in the ASCX12 Data

Element Dictionary, for example, the data element numberfor N101 is 98, the

data element numberfor N103 is 66. Data Element Syntax Error Code M ID 1/3

Code indicating the error found after syntax edits of a data element.

Refer to 003050 Data Element Dictionary for acceptable code values.

Copy of Bad Data Element O AN 1/99

This is a copy of the data element in error.

RELEASE - 003050FED00A 7 4 March 1996
997 - Functional Acknowledgement

Segment:

Position:

Loop:

Level:

Usage:

Max Use:

Purpose:

Syntax Notes:

Semantic Notes:

Comments:

Notes:

AK5 Transaction Set Response Trailer

060

AK2

Mandatory

1To acknowledge acceptance or rejection and to report errors in a transaction set.

Use to indicate whether the transaction set indicated in the corresponding AK2 segment was accepted or rejected. Ifthe transaction set is being rejected, use this segment to identify up to five (5) syntax errors at the transaction level.

Data Element Summary

Ref.

Pes.

Must Use AK501

AK502

AK503

AK504

AK505

AK506

Data

Element

717

718

718

718

718

718

Name Attributes

Transaction Set Acknowledgment Code M ID 1/1

Code indicating accept or reject condition based on the syntax editing of the

transaction set. Refer to 003050 Data Element Dictionary for acceptable code values.

Transaction Set Syntax Error Code O ID 1/3

Code indicating error found based on the syntax editing of a transaction set.

1. Use only when a transaction set is being rejected, to identify the basisfor

rejection. Ifmultiple codes apply, they may be carried in AK503 through

AK506, as necessary. No individual code may be used more than once in a

single use ofthis segment.

2. Use code 5 when the 1/AK3/040 loop is not used and syntactical errors occurred below the transaction set level. Refer to 003050 Data Element Dictionary for acceptable code values.

Transaction Set Syntax Error Code O ID 1/3

Code indicating error found based on the syntax editing of a transaction set.

Refer to 003050 Data Element Dictionary for acceptable code values.

Transaction Set Syntax Error Code O ID 1/3

Code indicating error found based on the syntax editing of a transaction set.

Refer to 003050 Data Element Dictionary for acceptable code values.

Transaction Set Syntax Error Code O ID 1/3

Code indicating error found based on the syntax editing of a transaction set.

Refer to 003050 Data Element Dictionary for acceptable code values.

Transaction Set Syntax Error Code O ID 1/3

Code indicating error found based on the syntax editing of a transaction set.

Refer to 003050 Data Element Dictionary for acceptable code values.

RELEASE - 003050FED00A 8 4 March 1996
997 - Functional Acknowledgement

Segment:

Position:

Loop:

Level:

Usage:

Max Use:

Purpose:

Syntax Notes:

Semantic Notes:

Comments:

Notes:

Ref.

Pes.

Must Use AK901

Must Use AK902

Must Use AK903

Must Use AK904

AK905

AK906

AK907

AK908

AK9

070

Functional Group Response Trailer

Mandatory

1To 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.

1 If AK901 is 'A' or 'E', then the transmitted functional group is accepted. If AK90

1

is 'R', then the transmitted group is rejected.

1. Use only to indicate whether the functional group was accepted or rejected based on

syntax errors in the functional group header or trailer.

2. Ifthe functional group is being rejected, use to identify up to five (5) syntax errors

at the functional group level.

Data Element Summary

Data

Element

715

97

Name Attributes

123

716

716

716

716

RELEASE - 003050FED00A

Functional Group Acknowledge Code M ID 1/1

Code indicating accept or reject condition based on the syntax editing of the

functional group.

Refer to 003050 Data Element Dictionary for acceptable code values.

Number of Transaction Sets Included M NO 1/6

Total number of transaction sets included in the functional group or

interchange (transmission) group terminated by the trailer containing this data

element.

Number of Received Transaction Sets M NO 1/6

Number of Transaction Sets received.

Number of Accepted Transaction Sets M NO 1/6

Number of accepted Transaction Sets in a Functional Group.

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. Use only when afunctional group is being rejected to identify the basisfor

rejection.

2. Codes may also be carried in AK906 through AK909, but no individual

code may be used more than once in a single iteration ofthis segment.

Refer to 003050 Data Element Dictionary for acceptable code values.

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. Refer to 003050 Data Element Dictionary for acceptable code values.

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. Refer to 003050 Data Element Dictionary for acceptable code values.

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. Refer to 003050 Data Element Dictionary for acceptable code values.

9 4 March 1996
997 - Functional Acknowledgement

AK909 716 Functional Group Syntax Error Code O ED 1/3

Code indicating error found based on the syntax editing of the functional

group header and/or trailer. Refer to 003050 Data Element Dictionary for acceptable code values.

RELEASE - 003050FEDOOA 10 4 March 1996
997 - Functional Acknowledgement

Segment:

Position:

Loop:

Level:

Usage:

Max Use:

Purpose:

Syntax Notes:

Semantic Notes:

Comments:

SE Transaction Set Trailer

080

Mandatory

1To indicate the end of the transaction set and provide the count of the transmitted

segments (including the beginning (ST) and ending (SE) segments).

SE is the last segment of each transaction set.

Data Element Summary

Ref. Data

Pes. Element Name Attributes

Must Use SE01 96 Number of Included Segments M NO 1/10

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

segments.

Must Use 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 Use the same number cited in ST02.

RELEASE - 003050FEDOOA 11 4 March 1996

Technical Publications

Periodical

Journal of Research of the National Institute of Standards and Technology—Reports NIST research

and development in those disciplines of the physical and engineering sciences in which the Institute is

active. These include physics, chemistry, engineering, mathematics, and computer sciences. Papers cover a broad range of subjects, with major emphasis on measurement methodology and the basic technology

underlying standardization. Also included from time to time are survey articles on topics closely related to the Institute's technical and scientific programs. Issued six times a year.

Nonperiodicals

Monographs—Major contributions to the technical literature on various subjects related to the

Institute's scientific and technical activities. Handbooks—Recommended codes of engineering and industrial practice (including safety codes) developed in cooperation with interested industries, professional organizations, and regulatory bodies.

Special Publications—Include proceedings of conferences sponsored by NIST, NIST annual reports, and

other special publications appropriate to this grouping such as wall charts, pocket cards, and bibliographies.

National Standard Reference Data Series—Provides quantitative data on the physical and chemical

properties of materials, compiled from the world's literature and critically evaluated. Developed under a worldwide program coordinated by NIST under the authority of the National Standard Data Act (Public

Law 90-396). NOTE: The Journal of Physical and Chemical Reference Data (JPCRD) is published

bimonthly for NIST by the American Chemical Society (ACS) and the American Institute of Physics (AIP).

Subscriptions, reprints, and supplements are available from ACS, 1155 Sixteenth St., NW, Washington, DC

20056.

Building Science Series—Disseminates technical information developed at the Institute on building

materials, components, systems, and whole structures. The series presents research results, test methods, and

performance criteria related to the structural and environmental functions and the durability and safety

characteristics of building elements and systems.

Technical Notes—Studies or reports which are complete in themselves but restrictive in their treatment of

a subject. Analogous to monographs but not so comprehensive in scope or definitive in treatment of the

subject area. Often serve as a vehicle for final reports of work performed at NIST under the sponsorship of

other government agencies.

Voluntary Product Standards—Developed under procedures published by the Department of Commerce

in Part 10, Title 15, of the Code of Federal Regulations. The standards establish nationally recognized

requirements for products, and provide all concerned interests with a basis for common understanding of

the characteristics of the products. NIST administers this program in support of the efforts of private-sector

standardizing organizations.

Order the following NIST publications—FIPS and NISTIRs—from the National Technical Information

Service, Springfield, VA 22161.

Federal Information Processing Standards Publications (FIPS PUB)—Publications in this series

collectively constitute the Federal Information Processing Standards Register. The Register serves as the

official source of information in the Federal Government regarding standards issued by NIST pursuant to the Federal Property and Administrative Services Act of 1949 as amended, Public Law 89-306 (79 Stat. 1127), and as implemented by Executive Order 1 1717 (38 FR 12315, dated May 11, 1973) and Part 6 of

Title 15 CFR (Code of Federal Regulations).

NIST Interagency Reports (NISTER)—A special series of interim or final reports on work performed by

NIST for outside sponsors (both government and nongovernment). In general, initial distribution is handled

by the sponsor; public distribution is by the National Technical Information Service, Springfield, VA 22161,

in paper copy or microfiche form.
us_EE

-3

o E3 U lid o GO

ooI ONOn

00O

OO