| Code | Description | Comment | Version |
| 0 | Message accepted | Success. Optional, as the AA conveys success. Used for systems that must always return a status code. | added v2.3.1 |
| 100 | Segment sequence error | Error: The message segments were not in the proper order, or required segments are missing. | added v2.3.1 |
| 101 | Required field missing | Error: A required field is missing from a segment | added v2.3.1 |
| 102 | Data type error | Error: The field contained data of the wrong data type, e.g., an NM field contained "FOO". | added v2.3.1 |
| 103 | Table value not found | Error: A field of data type ID or IS was compared against the corresponding table, and no match was found. | added v2.3.1 |
| 104 | Value too long | Error: a value exceeded the normative length, or the length that the application is able to safely handle. | added v2.7 |
| 198 | Non-Conformant Cardinality | | added v2.9 |
| 199 | Other HL7 Error | | added v2.9 |
| 200 | Unsupported message type | Rejection: The Message Type is not supported. | added v2.3.1 |
| 201 | Unsupported event code | Rejection: The Event Code is not supported. | added v2.3.1 |
| 202 | Unsupported processing id | Rejection: The Processing ID is not supported. | added v2.3.1 |
| 203 | Unsupported version id | Rejection: The Version ID is not supported. | added v2.3.1 |
| 204 | Unknown key identifier | Rejection: The ID of the patient, order, etc., was not found. Used for transactions other than additions, e.g., transfer of a non-existent patient. | added v2.3.1 |
| 205 | Duplicate key identifier | Rejection: The ID of the patient, order, etc., already exists. Used in response to addition transactions (Admit, New Order, etc.). | added v2.3.1 |
| 206 | Application record locked | Rejection: The transaction could not be performed at the application storage level, e.g., database locked. | added v2.3.1 |
| 207 | Application error | Rejection: A catchall for internal errors not explicitly covered by other codes. | added v2.3.1 |