|
For the X12N 837, 270, 276, 278, and 834 transactions, a 997 Functional Acknowledgement transaction will be returned to the sender either to report structure and syntax errors; or as an acknowledgement in receipt of accepted transactions. This transaction is returned by default. The format of this report can be found on this website under “News/ eMedNY Phase II News” at 997 Functional Acknowledgements. Note: eMedNY will stop processing a Transaction Set at the first fatal EDI syntax/structure or HIPAA syntax/structure error encountered.
The following discussion assumes a 997 in response to an 837 with a segment terminator of tilde ~ ; an element separator of asterisk * ; and a sub-element separator of vertical pipe |
To understand and locate an error in your 837, as reported in the 997 transaction:
1 – The first step is to associate the response file with a claims file. The response file will have a filename of "R" followed by a date and time. It will be a response to a claims file that you can see in your "Sent" box with the exact same date and time in the filename (examples; in eXchange R060101133010.00.x12.; or in FTP or BBS R060101133010). Have both files open at the same time. A powerful programmer’s text editor such as UltraEdit is preferable but a word processor such as MS Word will work.
2 – Next insert a line break after each segment. Do this for both files (there will be equivalent command dialogues in other text editors and word processors).
- If using a text editor it may be necessary to switch to “Hex” (hexadecimal) view. Starting at the top of the file replace all occurrences of tilde with tilde followed by Carriage Return and Line Feed (in hex, replace “ 7E ” with “ 7E 0D 0A” ).
- If using Ms Word use the "Find/Replace" dialog. Click "Replace", and "More" and then enter a tilde in the "Find" section and also enter a tilde in the "Replace" section. Leave the cursor after this tilde . Next click "Special" and select "Manual Line Break", and then click "Replace All".
3 – Line numbers are displayed at the bottom of the screen and down the left side in UltraEdit and at the bottom in Word. You can also add line numbers in the body of the document in Word by selecting File/Page Setup/Layout and clicking on Line Numbers.
4 – Save the modified files with new names.
5 – Within the "R-file" will be one AK1 and one AK9 segment for each Functional Group (GS - GE) that you sent in one transmission. There will be one AK2 and one AK5 segment for each Transaction Set (ST – SE) that was contained in your Functional Group. Search for "AK5*R" to identify rejected transactions. If AK5 segment(s) indicate rejection the AK9 segment will indicate a rejected (AK9*R) or partially rejected (AK9*P) Functional Group. The 997 can report non-fatal errors with a code or “E” in AK5 but only rejections need to be resolved.
6 – Find an AK1 segment preceding each “rejection” AK5 segment. It will look like this:
AK1*HC*(number)~
The number in AK102 is the "Group Control Number" that you sent in GS06. You now have to find that Functional Group in your claims file. Search for "(number)*X*” to find the GS segment with that Group Control Number.
7 – Back in the R-file, find an AK2 segment following AK1. It will look like this:
AK2*837*(number)~
The number in AK202 is the “Transaction Control Number” that you sent in ST02. Find the ST segment with that number in ST02. It will be after the GS segment that you already identified in the claims file.
8 – In the R-file, find the AK3 segment following AK2. AK301 will show the type of segment that had the error. AK302 contains a segment number, AK303 contains a loop designator, and AK304 contains an error code. For example,
AK3*CLM*27*2300*8~
means that an error was found in a CLM segment; it was the 27th segment in the Transaction Set; it was in loop 2300; and it had Data Element Errors. To find the exact segment you count segments from ST, which is segment 1. Since each segment is on a separate line you just have to count the lines.
9 – If the error was for a data element there will be an AK4 segment. It will show the data element number within the segment. AK401 contains the data element number that caused the error; AK402 is the X12 Data Element Reference Number from the X12 Data Dictionary; AK403 is an error code; and AK404 contains a copy of the bad data. For example,
AK4*5|1*1331*7*01~
means that data element 5, sub-element 1 had an error; the X12 Reference Number for the data item is 1331; the error was “invalid code value”; and the bad data was “01”. This is the location for the Place of Service (837P and 837D) or Facility Type Code (837I). A value of “01” is not valid here.
10 – Take steps to correct the bad data and check for similar occurrences elsewhere in the Transaction Set. Because rejection occurs on the level of the entire Transaction Set all claims within it should be resubmitted. |