Error Handling

General Overview of Error Handling

Expectations for Error Handling over SMX

It is expected that your application has a robust error-handling process in place. An error response should contain a short description of the error to assist our Support teams in troubleshooting.

Please read the below to make sure you have a good understanding of the requirements for error handling over SMX for Apps.

Error Responses using the <Errors></Errors> tag will flag the reservation delivery from SMX to your endpoint as Failed.

Content-Type

The ‘Content-Type’ for all SOAP XML messages must be application/xml; charset=utf-8.

Error Responses

Invalid Hotel Code

<soap-env:Envelope xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/">
    <soap-env:Body xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/">
        <OTA_HotelResNotifRS xmlns="http://www.opentravel.org/OTA/2003/05" Version="1.0" TimeStamp="2025-08-01T09:30:47+08:00" EchoToken="abc123-unique">
          <Errors>
            <Error Type="6" Code="392">Hotel not found for HotelCode=XXXXXX</Error>
          </Errors>
        </OTA_HotelResNotifRS>
    </soap-env:Body>
</soap-env:Envelope>

Invalid Username or Password

<soap-env:Envelope xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/">
    <soap-env:Body xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/">       
       <OTA_HotelResNotifRS xmlns="http://www.opentravel.org/OTA/2003/05" Version="1.0" TimeStamp="2025-08-01T09:30:47+08:00" EchoToken="abc123-unique">
          <Errors>
             <Error Type="6" Code="497">Invalid Username and/or Password</Error>
         </Errors>
       </OTA_HotelResNotifRS>
    </soap-env:Body>
</soap-env:Envelope>

Warning Responses

Any other warning responses that are not application or server-level issues should be sent as Success + Warning to avoid reservation delivery failures.

Our Reservations API specifications will have non-mandatory fields/attributes that a Publisher might not send in the reservation XML if it's not supported by them. Publishers should always send the mandatory reservation fields. Please review our OTA_HotelResNotifRQ Specification to view the mandatory and non-mandatory attributes.

Required Information Not Present - Missing email address

<soap-env:Envelope xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/">
    <soap-env:Body xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/">       
       <OTA_HotelResNotifRS xmlns="http://www.opentravel.org/OTA/2003/05" Version="1.0" TimeStamp="2025-08-01T09:30:47+08:00" EchoToken="abc123-unique">
			<Success/>
			<Warnings>
				<Warning Type="10" Code="321">Guest email address is required</Warning>
			</Warnings>
			<HotelReservations>
				<HotelReservation>
					<UniqueID ID="LH123456789"/>
					<ResGlobalInfo>
						<HotelReservationIDs>
							<HotelReservationID ResID_Type="10" ResID_Value="LH123456789"/>
						</HotelReservationIDs>
					</ResGlobalInfo>
				</HotelReservation>
			</HotelReservations>          
       </OTA_HotelResNotifRS>
    </soap-env:Body>
</soap-env:Envelope>

Required Information Not Present - Missing phone number

<soap-env:Envelope xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/">
    <soap-env:Body xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/">       
       <OTA_HotelResNotifRS xmlns="http://www.opentravel.org/OTA/2003/05" Version="1.0" TimeStamp="2025-08-01T09:30:47+08:00" EchoToken="abc123-unique">
			<Success/>
			<Warnings>
				<Warning Type="10" Code="316">Phone number is required</Warning>
			</Warnings>
			<HotelReservations>
				<HotelReservation>
					<UniqueID ID="LH123456789"/>
					<ResGlobalInfo>
						<HotelReservationIDs>
							<HotelReservationID ResID_Type="10" ResID_Value="LH123456789"/>
						</HotelReservationIDs>
					</ResGlobalInfo>
				</HotelReservation>
			</HotelReservations>          
       </OTA_HotelResNotifRS>
    </soap-env:Body>
</soap-env:Envelope>

SMX recommends (but is not limited to) the following error codes from OTA Warning Type (EWT). Any OTA Warning Type can be used.

Error Warning Type (EWT)

Code
OTA Description

1

Unknown

2

No implementation

3

Biz rule

4

Authentication

5

Authentication timeout

6

Authorization

7

Protocol violation

8

Transaction model

9

Authentical model

10

Required field missing

11

Advisory

12

Processing exception

13

Application error

Error Codes (ERR)

Error Codes - General These are recommended (but not limited to) Error Codes to be returned for general errors. Any OTA Error Code (ERR) entry can be used.

OTA Description
Code
Field

187

System currently unavailable

400

Invalid property code

Hotel Code

448

System error

450

Unable to process

497

Authorization error

Error Codes - Updates

These are recommended (but not limited to) Error Codes to be returned for update errors. Any OTA Error Code (ERR) entry can be used.

Code
OTA Description
Usage

16

Invalid date

310

Required data missing: last name

311

Required data missing: first name

316

Required data missing: phone number

321

Required field missing

Used when a required field is missing that does not have a dedicated error code (ie: Room ID required)

375

Hotel not active

392

Invalid hotel code

Last updated