OTA_NotifReportRQ / OTA_NotifReportRS

The OTA_NotifReport messages are used to send the following elements to the Hotel-Spider system:

  • Confirm the reservations / modifications / cancellations


Every time a third party software client retrieves a reservation / modifications / cancellation from the Hotel-Spider system, it is required to confirm that it has properly imported it. This is done by using the OTA_NotifReportRQ / OTA_NotifReportRS message pair. At the same time, the reservation ID, under which the reservation has been stored in the third party software client, needs to be communicated to the Hotel-Spider system.

Endpoints


Please be careful with the XML structure of the document: each reservation must be confirmed with a unique HotelReservation node. Do not send multiple HotelReservationID element with the same ResID_Type value in the same HotelReservation node.

Example request and response

OTA_NotifReportRQ request
<OTA_NotifReportRQ Version="1.000" TimeStamp="2015-12-08T18:30:47+01:00">
  <POS>
    <Source>
    <RequestorID ID="USERNAME" MessagePassword="PASSWORD"/>
    </Source>
  </POS>
  <NotifDetails>
    <HotelNotifReport>
      <HotelReservations>
        <HotelReservation>
          <ResGlobalInfo>
            <HotelReservationIDs>
              <HotelReservationID ResID_Source="ONLINEBOOKINGSYSTEMID" ResID_SourceContext="ONLINEBOOKINGSYSTEMNAME" ResID_Type="10" ResID_Value="ABCD-668591"/>
              <HotelReservationID ResID_SourceContext="Hotel-Spider" ResID_Type="40" ResID_Value="PMS-111333"/>
            </HotelReservationIDs>
          </ResGlobalInfo>
        </HotelReservation>
      </HotelReservations>
    </HotelNotifReport>
  </NotifDetails>
</OTA_NotifReportRQ>


OTA_NotifReportRS request
<OTA_NotifReportRS Version="1.000" TimeStamp="2015-12-08T18:30:48+01:00" EchoToken="123456789">
  <Success/>
</OTA_NotifReportRS>

Request structure

OTA_NotifReportRQ

Parent: None (Root element)

Mandatory: yes

Attributes:

NameMandatoryDescription
TimeStampYesThe format should respect the ISO 8601 2015-11-16T22:23:48+00:00
TargetYes

When sending updates to the staging environment "Test" must be used.

When sending updates to the production environment "Production" must be used.

VersionYes

The default value should be "1.000"

EchoTokenYesThe value will be returned in the OTA_HotelResNotifRS response

Child elements: Success, Warnings, Errors, NotifDetails


Success

Parent: OTA_NotifReportRQ

Mandatory: no

Attributes: None

Child elements: None


NotifDetails

Parent: OTA_NotifReportRQ

Mandatory: no

Attributes: None

Child elements: None


HotelNotifReport

Parent: NotifDetails

Mandatory: no

Attributes: None

Child elements: None


HotelReservations

Parent: HotelNotifReport

Mandatory: no

Attributes: None

Child elements: None


HotelReservation

Parent: HotelReservations

Mandatory: no

Attributes: None

Child elements: None


ResGlobalInfo

Parent: HotelReservation

Mandatory: no

Attributes: None

Child elements: None


HotelReservationIDs

Parent: ResGlobalInfo

Mandatory: no

Attributes: None

Child elements: None


HotelReservationID

Parent: HotelReservationIDs

Mandatory: yes

Attributes:

NameMandatoryDescription
ResID_TypeYes

Possible values are:

  • 10 (Third party Reservation)

  • 40 (Hotel-Spider Reservation)
ResID_ValueYes

The reservation number as provided by the online booking system to the end customer/guest

ResID_SourceContextNoThe name of the online booking system
ResID_SourceYesThe ID of the online booking system as defined on the Hotel-Spider system.

Child elements: None

Use case 1: Confirming a reservation

If the Hotel-Spider system imported a reservation in Step 1: Polling the reservations based on OTA_ReadRQ / OTA_ResRetrieveRS, it will return 1 HotelReservationID element containing the same ResID_Value, ResID_Source, ResID_SourceContext and ResID_Type="14" attribute values. In a second HotelReservationID element, a ResID_Type="40", ResID_SourceContext="Hotel-Spider" and a ResID_Value attribute containing the Hotel-Spider internal reservation ID will be returned.

Use case 2: Confirming a cancellation

If the Hotel-Spider system imported a cancellation in Step 1: Polling the reservations based on OTA_ReadRQ / OTA_ResRetrieveRS, it will return 1 HotelReservationID element containing the same ResID_Value, ResID_Source, ResID_SourceContext and ResID_Type="15" attribute values. In a second HotelReservationID element, a ResID_Type="40", ResID_SourceContext="Hotel-Spider" and a ResID_Value attribute containing the Hotel-Spider internal reservation ID will be returned.

Errors

Parent: OTA_NotifReportRQ

Mandatory: No

Attributes: None

Child elements: Error


Error

Parent: Errors

Mandatory: yes

Attributes:

Name
Mandatory
Description
CodeYesThe unique error code assigned by the online booking system
TypeYes
StatusYes

Possible values are:

  • NotProcessed
  • Incomplete
  • Complete
  • Unknown
ShortTextYesA short textual explanation of the error
TagYesIndicates which element and/or attribute provoked the error to occur

Child elements: None



Response structure

OTA_NotifReportRS

Parent: None (Root element)

Mandatory: yes

Attributes:

NameMandatoryDescription
TimeStampYesThe format should respect the ISO 8601 2015-11-16T22:23:48+00:00
TargetYes

When sending updates to the staging environment "Test" must be used.

When sending updates to the production environment "Production" must be used.

VersionYes

The default value should be "1.000"

EchoTokenYesThe value will be returned in the OTA_HotelResNotifRS response

Child elements: Success, Warnings, Errors


Success

Parent: OTA_NotifReportRS

Mandatory: no

Attributes: None

Child elements: None


Errors

Parent: OTA_NotifReportRQ

Mandatory: No

Attributes: None

Child elements: Error


Error

Parent: Errors

Mandatory: yes

Attributes:

Name
Mandatory
Description
CodeYesThe unique error code assigned by the online booking system
TypeYes
StatusYes

Possible values are:

  • NotProcessed
  • Incomplete
  • Complete
  • Unknown
ShortTextYesA short textual explanation of the error
TagYesIndicates which element and/or attribute provoked the error to occur

Child elements: None