Canadian National Railway (CN Rail)
/
Application Advice
  • Specification
  • EDI Inspector
Stedi maintains this guide based on public documentation from Canadian National Railway (CN Rail). Contact Canadian National Railway (CN Rail) for official EDI specifications. To report any errors in this guide, please contact us.
Go to Stedi Network
Canadian National Railway (CN Rail) logo

X12 824 Application Advice

X12 Release 7010

This X12 Transaction Set contains the format and establishes the data contents of the Application Advice Transaction Set (824) for use within the context of an Electronic Data Interchange (EDI) environment. The transaction set can be used to provide the ability to report the results of an application system's data content edits. The results of editing transaction sets can be reported at the functional group, an entire transaction set, or any portion of a transaction set, in either coded or free-form format. It is designed to accomodate the business need of reporting the acceptance, rejection, acceptance with change, or partial acceptance or rejection of any transaction set. The Application Advice should not be used in place of a transaction set designed as a specific response to another transaction set (e.g., purchase order acknowledgment sent in response to a purchase order).

Delimiters
  • ~ Segment
  • * Element
  • > Component
  • ^ Repetition
EDI samples
  • Transaction Set Accepted
View the latest version of this implementation guide as an interactive webpage
https://www.stedi.com/app/guides/view/canadian-national-railway/application-advice/01H5N6DYH6R668X0BBE1ZNSFYF
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
detail
OTI Loop
OTI
0100
Original Transaction Identification
Max use 1
Required
REF
0200
Reference Information
Max use 1
Optional
TED Loop
SE
0900
Transaction Set Trailer
Max use 1
Required
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 Code
Required
Identifier (ID)

Code specifying the version number of the interchange control segments

00701
Standards Approved for Publication by ASC X12 Procedures Review Board through October 2013
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 Code
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)
2
Interchange Acknowledgment Requested only when Interchange is "Rejected Because Of Errors"
3
Interchange Acknowledgment Requested only when Interchange is "Rejected Because Of Errors" or "Accepted but Errors are Noted"
ISA-15
I14
Interchange Usage Indicator Code
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

AG
Application Advice (824)
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

007010
Standards Approved for Publication by ASC X12 Procedures Review Board through October 2013

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 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).
824
Application Advice
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

BGN
0200
Heading > BGN

Beginning Segment

RequiredMax use 1

To indicate the beginning of a transaction set

Usage notes

Example: BGN00404201801181454

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

Code identifying purpose of transaction set

00
Original
BGN-02
127
Reference Identification
Required
String (AN)
Min 1Max 80

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

  • BGN02 is the transaction set reference number.
Usage notes

404 = Transaction Set Code Being Acknowledged

Required
Date (DT)
CCYYMMDD format

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

  • BGN03 is the transaction set date.
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)

  • BGN04 is the transaction set time.
Usage notes

Format: HHMM

Heading end

Detail

OTI Loop
RequiredMax >1
OTI
0100
Detail > OTI Loop > OTI

Original Transaction Identification

RequiredMax use 1

To identify the edited transaction set and the level at which the results of the edit are reported, and to indicate the accepted, rejected, or accepted-with-change edit result

  • The OTI loop is intended to provide a unique identification of the transaction set or portion thereof, that is the subject of this application acknowledgment.
Usage notes

Example: OTITABMYL78919*2018011214545759001

Example
If Transaction Set Control Number (OTI-09) is present, then Group Control Number (OTI-08) is required
OTI-01
110
Application Acknowledgment Code
Required
Identifier (ID)

Code indicating the application system edit results of the business data

TA
Transaction Set Accept
TE
Transaction Set Accept with Error
TR
Transaction Set Reject
OTI-02
128
Reference Identification Qualifier
Required
Identifier (ID)

Code identifying the Reference Identification

  • OTI02 contains the qualifier identifying the business transaction from the original business application, and OTI03 will contain the original business application identification.
BM
Bill of Lading Number
OTI-03
127
Reference Identification
Required
String (AN)
Min 1Max 80

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

  • OTI03 is the primary reference identification or number used to uniquely identify the original transaction set.
Optional
Date (DT)
CCYYMMDD format

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

  • OTI06 is the group date.
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)

  • OTI07 is the group time.
Usage notes

Format: HHMM

OTI-08
28
Group Control Number
Optional
Numeric (N0)
Min 1Max 9

Assigned number originated and maintained by the sender

OTI-09
329
Transaction Set Control Number
Optional
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

  • If used, OTI09 through OTI10 will contain values from the original electronic transaction set generated by the sender.
REF
0200
Detail > OTI Loop > REF

Reference Information

OptionalMax use >1

To specify identifying information

  • The REF segment allows for the provision of secondary reference identification or numbers required to uniquely identify the original transaction set or portion thereof. The primary reference identification or number should be provided in elements OTI02-03.
Usage notes

Example: REFEQCNRU123456

Example
REF-01
128
Reference Identification Qualifier
Required
Identifier (ID)

Code identifying the Reference Identification

BM
Bill of Lading Number
EQ
Equipment Number
P8
Pickup Reference Number
WO
Work Order Number
WY
Waybill Number
REF-02
127
Reference Identification
Optional
String (AN)
Min 1Max 80

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

Usage notes

CNRU123456 = equipment initials and Number

TED Loop
OptionalMax >1
Usage notes

Examples:
TED007A PROBLEM HAS BEEN DETECTED IN THE ELECTRONIC BILL OF LADING
NTETHIS ELECTRONIC BILL OF LADING WAS REJECTED BECAUSE THE
NTE
REGISTERED COMPANY NAME OR THE CONTRACT NUMBER REGISTERED
NTEWITH THE 24 HOUR EMERGENCY RESPONSE PROVIDER WAS NOT
NTE
IDENTIFIED. PLEASE CORRECT AND RESUBMIT THE BILL OF LADING.
NTECONTACT YOUR LOCAL SERVICE DELIVERY CENTER OR EDI SUPPORT
NTE
IF FURTHER INFORMATION IS REQUIRED.

TED
0700
Detail > OTI Loop > TED Loop > TED

Technical Error Description

RequiredMax use 1

To identify the error and, if feasible, the erroneous segment, or data element, or both

Example
TED-01
647
Application Error Condition Code
Required
Identifier (ID)

Code indicating application error condition

001
Car Not in Umler
003
Duplicate Billing
004
Invalid Commodity Code
005
Route Error
007
Missing Data
012
Invalid Combination
024
Other Unlisted Reason
TED-02
3
Free-form Message
Optional
String (AN)
Min 1Max 60

Free-form text

  • If used, TED02 will contain a generic description of the data in error (e.g., part number, date, reference number, etc.).
NTE
0800
Detail > OTI Loop > TED Loop > NTE

Note/Special Instruction

OptionalMax use 100

To transmit information in a free-form format, if necessary, for comment or special instruction

Example
NTE-02
352
Description
Required
String (AN)
Min 1Max 80

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

TED Loop end
OTI Loop end
SE
0900
Detail > 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

Detail 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

Transaction Set Accepted

ISA*00* *00* *ZZ*SENDER *ZZ*RECEIVER *231102*0335*^*00701*000000001*0*T*>
GS*AG*SENDERGS*RECEIVERGS*20231102*033529*000000001*X*007010
ST*824*5766001
BGN*00*404*20180112*1454
OTI*TA*BM*YL78919***20180112*1454*5759*0001
REF*EQ*CNRU123456
REF*WY*580881
SE*6*5766001
GE*1*000000001
IEA*1*000000001

Transaction Set Accepted With Error(s)

ISA*00* *00* *ZZ*SENDER *ZZ*RECEIVER *231102*0335*^*00701*000000001*0*T*>
GS*AG*SENDERGS*RECEIVERGS*20231102*033538*000000001*X*007010
ST*824*33030001
BGN*00*404*20180112*1454
OTI*TE*BM*006394***20180112*1454*40860*408600001
REF*EQ*CNIS789012
REF*WY*580191
TED*024*A PROBLEM HAS BEEN DETECHED IN THE ELECTRONIC BILL OF LADING
NTE**THIS SHIPMENT CANNOT MOVE DUE TO A RAILROAD RESTRICTION THAT IS
NTE**IN EFFECT.VIEW THE AAR WEBSITE HTTP://AAREMBARGO.RAILINC.COM
NTE**FOR FURTHER INFORMATION ON EMBARGOES AND OPSL RESTRICTIONS.
NTE**IF FURTHER ASSISTANCE IS REQUIRED EMAIL EDIMGR@CN.CA.
NTE**PLEASE CONTACT YOUR LOCAL EDI SUPPORT CENTER IF FURTHER
NTE**INFORMATION IS REQUIRED. IF YOU ARE UNCERTAIN HOW TO CONTACT
NTE**YOUR LOCAL EDI SUPPORT CENTER PHONE US AT 800-267-9779
SE*14*33030001
GE*1*000000001
IEA*1*000000001

Transaction Set Rejected

ISA*00* *00* *ZZ*SENDER *ZZ*RECEIVER *231102*0335*^*00701*000000001*0*T*>
GS*AG*SENDERGS*RECEIVERGS*20231102*033549*000000001*X*007010
ST*824*4206001
BGN*00*404*20180112*1454
OTI*TE*BM*10***20180112*1454*83041*23905
REF*EQ*CN555555
REF*WY*509072
TED*007*A PROBLEM HAS BEEN DETECTED IN THE ELECTRONIC BILL OF LADING
NTE**THIS ELECTRONIC BILL OF LADING WAS REJECTED BECAUSE THE RAIL
NTE**CAR INITIAL AND NUMBER ARE NOT IN THE ASSOCIATION OF
NTE**AMERICAN RAILROADS DATABASE OR INTERMODAL SHIPMENT TYPE IS
NTE**MISSING. PLEASE CORRECT AND RESUBMIT THE ELECTRONIC BILL OF LADING
NTE**PLEASE CONTACT YOUR LOCAL EDI SUPPORT CENTER IF FURTHER
NTE**INFORMATION IS REQUIRED. IF YOU ARE UNCERTAIN HOW TO CONTACT
NTE**YOUR LOCAL EDI SUPPORT CENTER PHONE US AT 800-267-9779.
SE*14*4206001
GE*1*000000001
IEA*1*000000001

Transaction Set Rejected – All Reference Numbers From Original 404 Displayed

ISA*00* *00* *ZZ*SENDER *ZZ*RECEIVER *231102*0336*^*00701*000000001*0*T*>
GS*AG*SENDERGS*RECEIVERGS*20231102*033602*000000001*X*007010
ST*824*125795001
BGN*00*404*20180112*1454
OTI*TE*BM*10***20180112*1454*22829*0001
REF*EQ*WC44222
REF*WY*126624
REF*BM*LMNO9140620
REF*P8*220124
REF*WO*0000125436
SE*9*125795001
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.