You are viewing an old version of this page. View the current version.
Compare with Current
View Page History
« Previous
Version 25
Next »
Introduction
The eTIR internation system is based on web services that are exchanged between the different stakeholders. The messages exchanged using these web services are specified and used according to the rules detailed in the eTIR Specifications. When the eTIR internation system receives and processes a message, it performs a serie of validation on the message itself, on the context of related guarantee, holder or transport and issues a response to the system which has sent the message in the first place. If anything goes wrong during these validation and processing steps, an error is sent back in the reponse. This error is presented as an Error code with a Pointer which can be used to point towards a specific field of the message. The list of all error codes is available in the Code List 99 and is also reproduced on this page for ease of reference, and as a living document, representing the latest version of these codes.
Specifications of the Error Codes
- This list of error codes is specific to eTIR as it allows IT teams to better understand errors while implementing the interconnection to the eTIR international system. This should result in a faster implementation overall and more accurate responses to errors on the side of the system sending messages to the eTIR international system.
- Furthermore, a detailed error code system will also greatly simplify the communication between the stakeholders and the Help Desk of the TIR Secretariat to in case of issues, to identify and correct the underlying problem.
- The list of error codes is based on best practices from the IT industry. Like the list of HTTP status codes, all error codes have three digits and are the first digit of the status code defines the class of response:
- 1XX - Validation: validation of the message and its parameters
- 2XX - Workflow: workflow related problems
- 3XX - Functional: other functional problems
- 4XX - Internal: eTIR international system internal problems
- Each class of response has a default error code which indicates at least the class of the error if it cannot be more precise.
List of error codes
1XX - Validation
Error code | Error name | Description | Pointer is set to | Observations |
---|
100 | Bad Message | The message is invalid and there is no additional precision on the error | Root of the message | This is the default error code for this class |
101 | Missing Parameter | A required parameter is missing in the message | The pointer is set to the missing parameter | All requests |
102 | Invalid Domain Value Parameter | A parameter is outside a defined list of accepted values | The pointer is set to the invalid parameter | All requests |
103 | Malformed Date | A parameter holding a date cannot be properly converted | The pointer is set to the invalid parameter | I7/I8, I9/I10, I11/I12, I13/I14, E1/E2, E9/E10 |
151 | Condition C001 failure | The condition C001 is not fulfilled | The pointer is set to the invalid parameter | I7/I8, E9/E10 |
152 | Condition C002 failure | The condition C002 is not fulfilled | The pointer is set to the invalid parameter | I7/I8, E9/E10 |
154 | Condition C004 failure | The condition C004 is not fulfilled | The pointer is set to the invalid parameter | I7/I8, E9/E10 |
155 | Condition C005 failure | The condition C005 is not fulfilled | The pointer is set to the invalid parameter | I7/I8, E9/E10 |
158 | Condition C008 failure | The condition C008 is not fulfilled | The pointer is set to the invalid parameter | I7/I8, E9/E10 |
2XX - Workflow
Error code | Error name | Description | Pointer is set to | Observations |
---|
200 | Bad State | The state of an internal object is invalid and there is no additional precision on the error | Root of the message | This is the default error code for this class |
201 | Guarantee not acceptable | The guarantee is not in a state that allow to accept it | Root of the message | I1/I2, I9/I10 |
202 | Holder status exception | The state of the holder is not what it should have been to realize the current operation | Root of the message | I1/I2 |
203 | Guarantee not cancellable | The state of the guarantee does not allow for cancellation | Root of the message | E3/E4 |
204 | Guarantee already registered | The guarantee has already been registered | Root of the message | E1/E2 |
205 | Guarantee already cancelled | The guarantee is already cancelled or the request to cancel it has already been sent | Root of the message | E3/E4 |
210 | Operation already started | The operation is already started | Root of the message | I9/I10 |
211 | Operation already terminated | The operation is already terminated | Root of the message | I11/I12 |
212 | Operation already discharged | The operation is already discharged | Root of the message | I13/I14 |
213 | Operation not yet started | The operation is not yet started | Root of the message | I11/I12, I13/I14 |
220 | Declaration not yet received | The operation cannot start because the declaration was not received | Root of the message | I9/I10 |
299 | Duplicate message | The same message was already received from the same source | Root of the message | I9/I10, I11/I12, I13/I14 |
3XX - Technical errors
Error code | Error name | Description | Pointer is set to | Observations |
---|
300 | Bad Operation | An invalid operation was performed and there is no additional precision on the error | Root of the message | This is the default error code for this class |
301 | Guarantee not found | The guarantee was not found in the database | To the guarantee reference (if applicable) | All requests |
302 | Guarantee chain not found | The guarantee chain was not found in the database | Root of the message | All requests |
303 | Guarantee type not found | The guarantee type was not found in the database | Root of the message | All requests |
304 | Customs Office not found | The customs office was not found in the database | Root of the message | E9/E10, I7/I8, I9/I10, I11/I12, I13/I14 |
305 | Country not found | The country was not found in the database | Root of the message | E9/E10, I7/I8, I9/I10, I11/I12, I13/I14 |
306 | Control type not found | The control type was not found in the database | To the control type element, if applicable | I9/I10, I11/I12, I13/I14 |
320 | Holder/Guarantee mismatch | The holder id parameter and the guarantee reference parameter do not match what is recorded in the database | Root of the message | I1/I2, E3/E4 |
321 | Holder not authorized | The holder is not authorized in the International TIR Data Bank (ITDB) | Root of the message | I9/I10, I11/I12, I13/I14 |
330 | Guarantee chain not authorized | The guarantee chain is not authorized in the database | Root of the message | I1/I2, E1/E2 |
331 | Guarantee chain/Guarantee mismatch | The guarantee chain code parameter and the guarantee reference parameter do not match what is recorded in the database | Root of the message | I1/I2, E3/E4 |
332 | Guarantee type/Guarantee mismatch | The guarantee type parameter and the guarantee reference parameter do not match what is recorded in the database | Root of the message | I1/I2, E3/E4 |
340 | Multiple operations found | The code is used when operations are duplicated in the database | Root of the message | I9/I10, I11/I12, I13/I14 |
4XX - Internal errors
Error code | Error name | Description | Pointer is set to | Observations |
---|
400 | eTIR Problem | An internal error in the eTIR international system occurred and there is no additional precision on the error | Root of the message | This is the default error code for this class |