Error Handling

Each XX/1 response message can contain an InfoGroup element as first child of the root element.

This InfoGroup element can contain multiple ForInfo elements followed by multiple Error elements.

Each Error element can contain multiple UnderlyingError elements.

ForInfo elements are used for warnings or informational texts, which need to be seen as addition to the normal XX/1 message response.

Error elements are used for errors, which indicate, that the XX/1 message was not successful. Each Error element has a Code element which contains a code from the Normalized Errors listing. The code element is followed by Text element with a textual representation for the normalized error. Optional there can be additional Text elements which might contain additional text to describe the error.

An UnderlyingError element is used to display the original error message that was returned by the backend system. There can be multiple backend system errors which are summarized to a single normalized XX/1 error code. In that case each backend error will occur as separate UnderlyingError element.

 

InfoGroup element schema structure for errors and warnings
NodeDescriptionValuesOccursExample
<InfoGroup>Error and information group0..1
  <ForInfo>Information group0..N
    <Text/>Information text or error text.1..NFree flow text. Example: Invalid flight number
  </ForInfo>
  <Error>Error group0..N
    @ErrorTypeType of error.1Air
    <Code/>Normalized Error code.1XX01004 (normalized error code)
    <Text/>Information text or error text.1..NFree flow text. Example: Invalid flight number
    <UnderlyingError>Errors of the backend system can be returned here.0..N
      @CodeError code of the backend system.0..1120
      <Text/>Information text or error text.0..NFree flow text. Example: Invalid flight number
    </UnderlyingError>
  </Error>
</InfoGroup>

 

Example:

<InfoGroup>

  <Error ErrorType="AIR">

<Code>XX01234</Code>

<Text>Any normalized error text</Text>

<Text>Can also contain multiple Text elements</Text>

<UnderlyingError Code="123">

        <Text>Any error text as returned from Concur</Text>

        <Text>can also contain multiple Text elements</Text>

     </UnderlyingError>

  </Error>
<Error>...multiple Error elements can occur</Error

</InfoGroup>