Cancelled reservations
The <OTA_CancelRQ/RS> message pair is used to send notifications for cancellations from Expedia Group to your system.
Request
The <OTA_CancelRQ> message will contain the property's confirmation number and Expedia Group's booking ID in the <UniqueID> element @ID attribute to identify the reservation to cancel. This element identifies the reservation and requests a cancellation.
OTA_CancelRQ element
The <OTA_CancelRQ> element is the root element for cancelled reservations,
and it requires the xmlns attribute, which is the namespace to which this
message belongs. Current namespace for requests is http://www.opentravel.org/OTA/2003/05
. The message also requires additional attributes for the request to be
recognized by your system. Notice that the @ResStatus attribute has been
replaced by the @CancelType attribute for cancellation request messages.
Root attributes
Name | Description |
---|---|
@EchoToken | A sequence number for additional message identification, assigned by the requesting host system. It must be echoed back in the corresponding response message. In the booking notification request generated by Expedia Group, EchoToken has the same value as the RequestId in the Header. Occurs once; Data type: string, 1-20 characters |
@TimeStamp | Date and time when the request message was sent by Expedia Group. Data type: date, time; Timestamp as defined in ISO 8601 extended format.
|
@Target | Indicates the message is a production message. Data type: NMTOKEN, value is always “Production” |
@Version | Version of the OTA message. Data type: decimal, n.nnn Value 1.000 |
@PrimaryLanguageID | Primary language code. Data type: string, value is always en-us. |
@CancelType | An enumeration that indicates the action to be taken on the request. Data type: string, value: only “Commit” is supported. |
Syntax
1<OTA_CancelRQ xmlns="http://www.opentravel.org/OTA/2003/05" CancelType="Commit" EchoToken="token" PrimaryLangID="en-us" Target="Production" TimeStamp="datetime" Version="1.000">2<POS>3<Source>4<RequestorID ID="A-Expedia" Type="18"/>5<BookingChannel Primary="true" Type="2">6<CompanyName>Expedia</CompanyName>7</BookingChannel>8</Source>9</POS>10<UniqueID ID="13357309" Type="14">11<CompanyName>Expedia</CompanyName>12</UniqueID>13<UniqueID ID="TESTCONF" Type="10">14<CompanyName>property</CompanyName>15</UniqueID>16<Verification>17<PersonName>18<GivenName>Etienne</GivenName>19<Surname>Tester</Surname>20</PersonName>21<Vendor Code="1" CodeContext="ChainCode"/>22<Vendor Code="2" CodeContext="BrandCode"/>23<Vendor Code="3" CodeContext="HotelCode">1154286</Vendor>24<ReservationTimeSpan End="date" Start="date"/>25<AssociatedQuantity Code="1" CodeContext="Number of rooms" Quantity="1"/>26<AssociatedQuantity Code="2" CodeContext="Number of guests" Quantity="4"/>27</Verification>28</OTA_CancelRQ>
UniqueID element
The <UniqueID> element is the unique identifier of the reservation to be cancelled. Like modified reservations, this element will appear twice in cancellation request messages. Once for the Expedia Group booking ID and once for the property’s confirmation number.
Syntax
1<soap-env:Body>2<OTA_CancelRQ xmlns="http://www.opentravel.org/OTA/2003/05" CancelType="Commit" EchoToken="token" PrimaryLangID="en-us" Target="Production" TimeStamp="datetime" Version="1.000">3<UniqueID ID="13357309" Type="14">4<CompanyName>Expedia</CompanyName>5</UniqueID>6<UniqueID ID="TESTCONF" Type="10">7<CompanyName>property</CompanyName>8</UniqueID>9</OTA_CancelRQ>10</soap-env:Body>
Hierarchy
1<UniqueID>2<CompanyName>
Child elements and attributes
Name | Description |
---|---|
@Type | This attribute is a reference to the type of object defined by the <UniqueID> element. Data type: OTA_CodeType. Value will always be either 10=Hotel, to be used to specify the property's confirmation number OR 14=Reservation, to be used to specify the Expedia Group booking ID. |
@ID | This attribute is a unique identifying value assigned by the creating system to the reservation. This will be either the property's confirmation number or the Expedia Group booking ID. Single occurrence in each <UniqueID> element. Data type: string, 1 to 64 characters |
<CompanyName> element | This is the child element of the <UniqueID> element. It identifies the company that is associated with the <UniqueID>. For the Expedia Group booking ID, this value will be set to "Expedia". For the property's confirmation number, Expedia Group and the property will determine what identifier should be for the property's system. Data type: string, 1-64 characters |
Verification element
The <Verification> element is the container element for the cancellation verification information. This information ensures that the correct booking is being cancelled.
Syntax
1<soap-env:Body>2<OTA_CancelRQ xmlns="http://www.opentravel.org/OTA/2003/05" CancelType="Commit" EchoToken="token" PrimaryLangID="en-us" Target="Production" TimeStamp="datetime" Version="1.000">3<Verification>4<PersonName>5<GivenName>Etienne</GivenName>6<Surname>Tester</Surname>7</PersonName>8<Vendor Code="1" CodeContext="ChainCode"/>9<Vendor Code="2" CodeContext="BrandCode"/>10<Vendor Code="3" CodeContext="HotelCode">1154286</Vendor>11<ReservationTimeSpan End="date" Start="date"/>12<AssociatedQuantity Code="1" CodeContext="Number of rooms" Quantity="1"/>13<AssociatedQuantity Code="2" CodeContext="Number of guests" Quantity="4"/>14</Verification>15</OTA_CancelRQ>16</soap-env:Body>
Hierarchy
1<soap-env:Body>2<OTA_CancelRQ>3<Verification>
Child elements and attributes
Name | Description |
---|---|
<PersonName> element | This is a child element of the <Verification> element. <PersonName> the container element for the full guest name. This is the primary guest of the reservation. This information serves to validate that the correct booking is being cancelled. Single occurrence. #### Child elements
|
<Vendor> element | This is a child element of the <Verification> element. The <Vendor> element is used to send the hotel code. Minimum 1 occurrence for the hotel code (Code=3). Code=1 for chain code and Code=2 for brand code might also be sent, but these will be blank. Attributes:
|
<ReservationTimeSpan> element | This is a child element of the <Verification> element. This element sends the time span that covers the entire room stay. Single occurrence. Attributes:
|
<AssociatedQuantity> element | This is a child element of the <Verification> element. The <AssociatedQuantity> element is used to send the number of rooms and the number of guests included in the reservation. Occurs 1 or 2 times per <Verification> element. The following information will be sent under this element: “1” for Number of rooms, “2” for Number of guests. Attributes:
|
Response
The <OTA_CancelRS> element allows you to confirm successful processing of the cancel message. This message returns a cancellation number after completing the cancel action, or error code(s) if the request could not be processed successfully.
In a positive response <OTA_CancelRS> message, all the IDs will be echoed back in the general UniqueID structure but the property’s cancellation number will be placed in another UniqueID element contained within the <CancelInfoRS> element structure.
If the supplier is not able to cancel the reservation, you send a negative response message with the <OTA_CancelRS> element, but it will contain error information rather than cancellation information.
OTA_CancelRS element
This element returns a confirmation that the booking modification has been successfully received, or includes errors if the request did not succeed. The <OTA_CancelRS> message has a very similar XML structure as the <OTA_HotelResNotifRS> message, but some of the attributes are slightly different.
Expedia Group receives a confirmation number from success responses. Like success response messages for new reservations, the presence of the <Success> element in cancelled reservation responses indicates that the transaction was processed successfully. The <Success> element occurs once per success response message.
The <OTA_CancelRS> element requires the xmlns attribute, which is the
namespace to which this message belongs. Current namespace for requests is http://www.opentravel.org/OTA/2003/05
. The message also requires additional attributes for the request to be
recognized by Expedia Group’s system.
Root attributes
Name | Description |
---|---|
@EchoToken | A sequence number for additional message identification, assigned by the requesting host system. It must be echoed back in the corresponding response message. In the booking notification request generated by Expedia Group, EchoToken has the same value as the RequestId in the Header. Occurs once; Data type: string, 1-20 characters |
@TimeStamp | Date and time when the request message was sent by Expedia Group. Data type: date, time; Timestamp as defined in ISO 8601 extended format.
|
@Target | Indicates the message is a production message. Data type: String, value is always “Production” |
@Version | Version of the OTA message. Data type: decimal, n.nnn. Value 2.000 |
@PrimaryLanguageID | Primary language code. Data type: string, value is always “en-us” |
@Status | The attribute that indicates the status of the response. This differs from new booking notifications and modification messages. Data type: string, 9 characters allowed. Value: “Cancelled” used for success responses; “Ignored” used for error responses. |
Syntax
1<soap-env:Body>2<OTA_CancelRS xmlns="http://www.opentravel.org/OTA/2003/05" CancelType="Commit" EchoToken="token" PrimaryLangID="en-us" Target="Production" TimeStamp="datetime" Version="current version" Status="Cancelled">3<Success/>4<UniqueID ID="id number" Type="14">5<CompanyName>Expedia</CompanyName>6</UniqueID>7<UniqueID ID="ID" Type="10">8<CompanyName>company</CompanyName>9</UniqueID>10<CancelInfoRS>11<UniqueID ID="ID" Type="10">12<CompanyName>company</CompanyName>13</UniqueID>14</CancelInfoRS>15</OTA_CancelRS>16</soap-env:Body>
Hierarchy
1<soap-env:Body>2<OTA_CancelRS>
UniqueID element
The <UniqueID> element is the unique identifier of the reservation to be cancelled. There will be two occurrences of this element, one to contain the original Expedia Group booking/reservation number, and another for the property’s confirmation number.
Syntax
1<UniqueID ID="id number" Type="14">2<CompanyName>Expedia</CompanyName>3</UniqueID>4<UniqueID ID="ID" Type="10">5<CompanyName>company</CompanyName>6</UniqueID>
Hierarchy
1<soap-env:Body>2<OTA_CancelRS>3<UniqueID>4<UniqueID>
Child elements
Name | Description |
---|---|
@Type | This attribute is the reference to the type of object defined by the <UniqueID> element. Single occurrence per <UniqueID> element. Data type: OTA_CodeType. Values will always be 10=Hotel, used to specify the property's confirmation number or 14=Reservation, used to specify the Expedia Group booking ID. |
@ID | This attribute is a unique identifying value assigned by the creating system to the reservation. This will be either the property's confirmation number or the Expedia Group booking ID. Single occurrence per <UniqueID> element. Data type: string, maximum of 64 characters. |
<CompanyName> element | This is a child element of the <UniqueID> element. It identifies the company associated with the <UniqueID>. Data type: string, 1-64 characters. Values: For the Expedia Group booking ID, this value will be set to "Expedia". For the property's confirmation number, Expedia Group and the property will determine what identifier should be for the property's system. |
CancelInfoRS element
In cancelled reservation success messages, the <HotelReservations> element from new booking notification responses is replaced with the<CancelInfoRS> element.
The <CancelInfoRS> element is a container element that represents a collection of modified reservations. Each response message represents a single reservation. It includes the <UniqueID> element, which is the container element that represents the property’s primary cancellation number.
Syntax
1<CancelInfoRS>2<UniqueID ID="ID" Type="10">3<CompanyName>company</CompanyName>4</UniqueID>5</CancelInfoRS>
Hierarchy
1<soap-env:Body>2<OTA_CancelRS>3<CancelInfoRS>
Child elements
Name | Description |
---|---|
<UniqueID> element | This is a child element of the <CancelInfoRS> element. This instance of the <UniqueID> element is the unique identifier that contains the property's primary cancellation number. Child attributes and element:
|
Errors element
The presence of the <Errors> element indicates that the transaction failed to process correctly. The <Errors> element is the container element for a collection of error messages. Occurs once per error response message.
An error response for a modified booking is the same as the <OTA_HotelResNotifRS> message, except the root tag will be "<OTA_CancelRS>" instead of "<OTA_HotelResNotifRS>". You must return an explicit error code and a detailed error message must be included in the error response. The list of error codes can be found in the Error Codes for Response Messages table.
Syntax
1<soap-env:Body>2<OTA_CancelRS xmlns="http://www.opentravel.org/OTA/2003/05" CancelType="Commit" EchoToken="token" PrimaryLangID="en-us" Target="Production" TimeStamp="datetime" Version="current version" Status="Ignored">3<Errors>4<Error Language="en-us" Type="3" ShortText="ErrorCode" Code="450">text of error code description</Error>5</Errors>6</OTA_CancelRS>7</soap-env:Body>
Child elements
Name | Description |
---|---|
<Error> element | This element is a child element of the <Errors> element. The <Error> element is the container element for the error message structure. Occurs at least once per error response message, up to 99 times within each <Errors> element. Detailed error description is placed directly under this element. Data type: string, up to 512 characters. Attributes:
|
Examples
Here are request and response examples for cancelled reservations.
Cancelled Hotel Collect reservation with children and extra charges
Request:
1<soap-env:Envelope xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/">2 <soap-env:Header>3 <Interface xmlns="http://www.newtrade.com/expedia/R14/header" Name="ExpediaDirectConnect" Version="4.0">4 <PayloadInfo RequestId="22922850" RequestorId="Expedia.com" ResponderId="EQCSpecTest" ExpirationDateTime="2016-05-17T21:33:00+00:00" Location="Body">5 <CommDescriptor SourceId="ExpediaDC" DestinationId="EQCSpecTest" RetryIndicator="false">6 <Authentication Username="Expedia" Password="Password"/>7 </CommDescriptor>8 <PayloadDescriptor Name="OTA_CancelRQ" Version="2003A">9 <PayloadReference SupplierHotelCode="1154286" DistributorHotelId="1154286"/>10 </PayloadDescriptor>11 </PayloadInfo>12 </Interface>13 </soap-env:Header>14 <soap-env:Body>15 <OTA_CancelRQ xmlns="http://www.opentravel.org/OTA/2003/05" CancelType="Commit" EchoToken="22922850" PrimaryLangID="en-us" Target="Production" TimeStamp="2016-05-17T12:03:00-07:00" Version="1.000">16 <POS>17 <Source>18 <RequestorID ID="A-Expedia" Type="18"/>19 <BookingChannel Primary="true" Type="2">20 <CompanyName>Expedia</CompanyName>21 </BookingChannel>22 </Source>23 </POS>24 <UniqueID ID="13357309" Type="14">25 <CompanyName>Expedia</CompanyName>26 </UniqueID>27 <UniqueID ID="TESTCONF" Type="10">28 <CompanyName>EQCSpecTest</CompanyName>29 </UniqueID>30 <Verification>31 <PersonName>32 <GivenName>Etienne</GivenName>33 <Surname>Tester</Surname>34 </PersonName>35 <Vendor Code="1" CodeContext="ChainCode"/>36 <Vendor Code="2" CodeContext="BrandCode"/>37 <Vendor Code="3" CodeContext="HotelCode">1154286</Vendor>38 <ReservationTimeSpan End="2016-06-03" Start="2016-05-29"/>39 <AssociatedQuantity Code="1" CodeContext="Number of rooms" Quantity="1"/>40 <AssociatedQuantity Code="2" CodeContext="Number of guests" Quantity="4"/>41 </Verification>42 </OTA_CancelRQ>43 </soap-env:Body>44</soap-env:Envelope>
Response:
1<soap-env:Envelope xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/">2 <soap-env:Header>3 <Interface xmlns="http://www.newtrade.com/expedia/R14/header" Name="ExpediaDirectConnect" Version="4.0">4 <PayloadInfo Location="Body" RequestId="22922850" RequestorId="Expedia.com" ResponderId="EQCSpecTest" ExpirationDateTime="2016-05-17T21:28:00+00:00">5 <CommDescriptor DestinationId="ExpediaDC" SourceId="EQCSpecTest" RetryIndicator="false"/>6 <PayloadDescriptor Name="OTA_CancelRS" Version="2003A">7 <PayloadReference SupplierHotelCode="1154286"/>8 </PayloadDescriptor>9 </PayloadInfo>10 </Interface>11 </soap-env:Header>12 <soap-env:Body>13 <OTA_CancelRS xmlns="http://www.opentravel.org/OTA/2003/05" Target="Production" TimeStamp="2016-05-17T02:57:35-04:00+00:00" Version="2.000" status="Cancelled">14 <Success/>15 <UniqueID ID="13357309" Type="14">16 <CompanyName>Expedia</CompanyName>17 </UniqueID>18 <UniqueID ID="TESTCONF" Type="10">19 <CompanyName>EQCSpecTest</CompanyName>20 </UniqueID>21 <CancelInfoRS>22 <UniqueID ID="TESTCANCEL" Type="10">23 <CompanyName>EQCSpecTest</CompanyName>24 </UniqueID>25 </CancelInfoRS>26 </OTA_CancelRS>27 </soap-env:Body>28</soap-env:Envelope>
Cancelled booking with Expedia Virtual Card details
The following is a sample Booking Notification request and response pair for a cancelled booking. One cancelled booking is returned, which was originally payable to the property with an Expedia Virtual Card.
Request:
1<soap-env:Envelope xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/">2 <soap-env:Header>3 <Interface xmlns="http://www.newtrade.com/expedia/R14/header" Name="ExpediaDirectConnect" Version="4.0">4 <PayloadInfo RequestId="22922954" RequestorId="Expedia.com" ResponderId="EQCSpecTest" ExpirationDateTime="2016-05-17T22:02:00+00:00" Location="Body">5 <CommDescriptor SourceId="ExpediaDC" DestinationId="EQCSpecTest" RetryIndicator="false">6 <Authentication Username="Expedia" Password="Password"/>7 </CommDescriptor>8 <PayloadDescriptor Name="OTA_CancelRQ" Version="2003A">9 <PayloadReference SupplierHotelCode="1154286" DistributorHotelId="1154286"/>10 </PayloadDescriptor>11 </PayloadInfo>12 </Interface>13 </soap-env:Header>14 <soap-env:Body>15 <OTA_CancelRQ xmlns="http://www.opentravel.org/OTA/2003/05" EchoToken="22922954" TimeStamp="2016-05-17T12:32:00-07:00" Target="Production" Version="1.000" PrimaryLangID="en-us" CancelType="Commit">16 <POS>17 <Source>18 <RequestorID Type="18" ID="Expedia"/>19 <BookingChannel Type="2" Primary="true">20 <CompanyName>Expedia</CompanyName>21 </BookingChannel>22 </Source>23 </POS>24 <UniqueID Type="14" ID="13357395">25 <CompanyName>Expedia</CompanyName>26 </UniqueID>27 <UniqueID Type="10" ID="ModifyConf123">28 <CompanyName>EQCSpecTest</CompanyName>29 </UniqueID>30 <Verification>31 <PersonName>32 <GivenName>Etienne</GivenName>33 <Surname>Beaulne-Dury</Surname>34 </PersonName>35 <Vendor Code="1" CodeContext="ChainCode"/>36 <Vendor Code="2" CodeContext="BrandCode"/>37 <Vendor Code="3" CodeContext="HotelCode">1154286</Vendor>38 <ReservationTimeSpan Start="2016-06-01" End="2016-06-04"/>39 <AssociatedQuantity Code="1" CodeContext="Number of rooms" Quantity="1"/>40 <AssociatedQuantity Code="2" CodeContext="Number of guests" Quantity="5"/>41 </Verification>42 </OTA_CancelRQ>43 </soap-env:Body>44</soap-env:Envelope>
Response:
1<soap-env:Envelope xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/">2 <soap-env:Header>3 <Interface xmlns="http://www.newtrade.com/expedia/R14/header" Name="ExpediaDirectConnect" Version="4.0">4 <PayloadInfo Location="Body" RequestId="22922954" RequestorId="Expedia.com" ResponderId="EQCSpecTest" ExpirationDateTime="2016-05-17T21:28:00+00:00">5 <CommDescriptor DestinationId="ExpediaDC" SourceId="EQCSpecTest" RetryIndicator="false"/>6 <PayloadDescriptor Name="OTA_CancelRS" Version="2003A">7 <PayloadReference SupplierHotelCode="1154286"/>8 </PayloadDescriptor>9 </PayloadInfo>10 </Interface>11 </soap-env:Header>12 <soap-env:Body>13 <OTA_CancelRS xmlns="http://www.opentravel.org/OTA/2003/05" Target="Production" TimeStamp="2016-05-17T02:57:35.247-04:00" Version="1.000" PrimaryLangID="en-us" Status="Cancelled">14 <Success/>15 <UniqueID ID="13357395" Type="14">16 <CompanyName>Expedia</CompanyName>17 </UniqueID>18 <UniqueID ID="TestModifyConf" Type="10">19 <CompanyName>EQCSpecTest</CompanyName>20 </UniqueID>21 <CancelInfoRS>22 <UniqueID ID="TestCancel2" Type="10">23 <CompanyName>EQCSpecTest</CompanyName>24 </UniqueID>25 </CancelInfoRS>26 </OTA_CancelRS>27 </soap-env:Body>28</soap-env:Envelope>