Booking Confirmation API Definition

Introduction

When a customer returns to Expedia to review their reservation, or when they receive confirmations or updates for their reservation via e-mail, Expedia shall include the hotel’s confirmation number. The presence of the hotel confirmation number guarantees that the booking was properly received and confirmed by the hotel system and thereby raises customer confidence at check-in. The confirmation number also makes consolidation between Expedia and the hotel easier for accounting and tracking purposes. The Booking Confirmation (BC) API is the mechanism EQC partners are required to implement to provide Expedia with the hotel’s confirmation number for all bookings retrieved via the BR interface. Unconfirmed bookings will revert to fax or email once the booking expiration time is reached.

Supported Features for Booking Confirmaion

EQC partner must use the booking confirmation API to confirm bookings retrieved electronically (reservations, modifications, and cancellations).

Confirmation numbers have to be received before bookings expire. Else, bookings will fall back to fax or email. Expedia’s booking expiration strategy is based on booking window:

  • For same-day arrival (based on midnight in hotel’s local timezone): bookings will expire 30 minutes after their creation by customer.
  • For next-day arrival (any bookings created between midnight and 23:59:59 the day before arrival, based on hotel’s local timezone): bookings will expire 60 minutes after their creation by customer.
  • For any longer booking window, bookings will expire 24 hours after their creation by customer.

Booking confirmation numbers can be updated for already confirmed bookings up to 8 days after guest’s departure date.


Booking Confirmation Request

The booking confirmation request message (BC RQ) allows EQC partners to send hotel confirmation numbers for new, modified and/or cancelled bookings on Expedia Inc. points of sale.

Booking Confirmation Request Schema Overview

BC RQ XML MESSAGE

Booking Confirmation Request Schema Complete Definition

L Data element Data type O Description EQC validations
0 BookingConfirmRQ - Root element
0 @xmlns URL Namespace which belongs to this message. Also used to validate version of schema on which this message is based. Namespace for BC RQ messages: http://www.expediaconnect.com/EQC/BC/2007/09 Valid namespace, defined by at least one version of BC schema.
1 Authentication - Required information to grant access to Expedia QuickConnect interface – stored in next two attributes.
1 @username String Username for Expedia QuickConnect login (case sensitive), provided by Expedia.
  • Minimum length: 4
  • Maximum length: 30
  • Username exists
  • User is allowed to access Expedia QuickConnect
1 @password String Password for Expedia QuickConnect login (case sensitive), provided by Expedia.
  • Minimum length: 6
  • Maximum length: 30
  • Password fits with the username
1 Hotel - Information about Hotel
1 @id Integer Hotel ID defined by Expedia and uniquely identifying a property in Expedia system.
  • Positive integer of 14 digits or less
  • Hotel ID is valid
  • Hotel ID in Expedia system is assigned to the credentials provided in Authentication node.
1 BookingConfirmNumbers -
2 BookingConfirmNumber -
2 @bookingID Integer Booking ID generated by Expedia. Uniquely identifies a booking. Should be used to link modifications and cancellations to initial bookings in hotel system - must be kept in hotel system. - Positive integer of 14 digits or less
2 @bookingType Enum Type of booking record. Possible values are: "Book" for new reservations, "Modify" for modified bookings and "Cancel" for cancelled bookings. - Value in the list specified in the enumeration given by the schema.

The specified booking must have the same new, modified or cancelled status as described by this booking type.

2 @confirmNumber String Hotel confirmation number for this booking.
  • Minimum length: 1
  • Maximum length: 50
2 @confirmTime DateTime Time at which the confirmation number was generated by the hotel

Valid date/time occurring between booking time and the present.

Timestamp as defined in ISO 8601 format. Should be:

YYYY-MM-DDThh:mm:ssZ for time in UTC.

To indicate a different time zone, the local time shall be immediately followed by a sign, + or -, then by the difference from UTC represented as hh:mm; for example, local Pacific Standard Time would look like "2008-02-28T11:55:00-08:00”.

Booking Confirmation Response

The booking confirmation response message (BC RS) contains a success or error message for the confirmation of a new, modified or cancelled booking. Note that a success message may include a warning that should require action by the EQC partner. There is one response per booking update, so if a booking confirmation request sends a confirmation update for 5 bookings, then there will be 1 response message sent back with additional nodes for each warning or error.

Booking Confirmation Response Schema Overview

BC RS XML MESSAGE

Booking Confirmation Response Schema Complete Definition

L Data element Data type O Description
0 BookingConfirmRS NA Root element
0 @xmlns URL Namespace which belongs to this message. Also used to validate version of schema on which this message is based. Namespace for BC RS messages http://www.expediaconnect.com/EQC/BC/2007/08
1 Success NA

Element appears if the request to update availability and rates was successful. The node will be empty.

If this element is present, Error node(s) does not appear.

2 Warning String *

Detailed description of a warning.

Occurrence of this element means the update request was successfully received by Expedia, but the update could not be made. For example, if the requested booking does not match the specified hotel, a warning is sent that the update was refused.

Maximum length: 1024 characters.

2 @code Int Code for the warning, between 10,000 and 11,000.
2 @bookingID Integer

Booking ID generated by Expedia. Uniquely identifies a booking. Should be used to link modifications and cancellations to initial bookings in hotel system - must be kept in hotel system.

Positive integer of 14 digits or less

2 @bookingType Enum Type of booking record. Possible values are: "Book" for new reservations, "Modify" for modified bookings and "Cancel" for cancelled bookings.
2 @confirmNumber String

Hotel Confirmation Number for this booking.

Maximum length: 50

1 Error String

Detailed description of an error message.

One or more of this element appears if the request failed.

If this element is present, Success node does not appear.

Maximum length: 1024 characters.

1 @code Int

Code for this error, for example: authentication, xml structure, business validation.

Code will be between 1000 and 10,000.

Booking Confirmation Validation Process

To update a booking with a confirmation number successfully, the following validations are applied through EQC for each confirmation sent in the BC RQ message:

  • The username and password are valid
  • The bookingID belongs to the specified hotel
  • The check-out date has not passed
  • The confirmation number is more recent than any existing confirmation number for the booking. For instance, if the EQC partner sends two BC requests for the same booking, EQC will look at the timestamp included in the message and ensure the most recent is applied.
  • The booking type specified in the confirmation matches the new, modified, or cancelled state of the booking. Note that if a customer modifies a booking before Expedia sends the booking details to the EQC partner in a booking retrieval message, the confirmation booking type should still be set to “Book” because the first delivery of a booking to the EQC partner is always considered a new booking. An additional validation makes sure that no more than 10 confirmation numbers are sent in the BC RQ message.

Error Handling

Recommendations for system and technical problems will be the same across all EQC interfaces. For more information about recommendations, please review the corresponding EQC BR section.

Error & Warning Codes and Descriptions for BC

Error/Warning code Error/Warning description Explanation and EQC partner Action
1000 Access denied: you are not authorized to use Expedia QuickConnect. Please contact Expedia to gain access. This message should not be retried. For assistance, please contact rollout@expedia.com for new activations, or hothelp@expedia.com for existing connections.
1001 Authentication error: invalid username or password. This message should not be retried. Verify username and password configured in your EQC interface. For assistance, please contact rollout@expedia.com for new activations, or hothelp@expedia.com for existing connections.
2002 Parsing error: . Correct XML format to comply with Expedia QuickConnect's specification. Developers of the EQC partner system should be involved to find the problem.
2010 The namespace specified is invalid. Correct namespace and send a new message. Please note that namespaces are used to version Expedia service interfaces. Developers of the EQC partner system should be involved to find the problem.
3010 Validation against schema failed because a value exceeds its defined length, the format is wrong, or because of another validation enforced by schema. Correct the error in the system, and drop this message (no retry). Developers of the EQC partner system should be involved to find the problem.
3301 Update refused. No more than 10 confirmation numbers can be sent in a single message. Please include fewer confirmation numbers in a single BC RQ message. Please resend the numbers by splitting them across multiple requests and make sure that none of the requests contain more than 10 bookings.
10080 Update refused. Booking ID cannot be found. The EQC partner requested a booking ID that cannot be accessed by Expedia QuickConnect. Verify the booking ID and log on to Expedia Partner Central to get more information about the booking. Note that a booking will be removed from Expedia QuickConnect 8 days after the guest’s departure and won’t be available for electronic retrieval nor electronic confirmation anymore.
10081 Update refused. Hotel ID and Booking ID mismatch: the Hotel ID specified in the BC RQ doesn't match up with the hotel to which this booking belongs. The EQC partner sent a confirmation number for a booking that does not belong to the hotel specified in the BC RQ. Please validate the behavior of your system or verify your Booking ID/Hotel ID mapping information.
10100 Update refused. The specified booking type does not match the one we have stored for this booking ID in our system (). Please verify your implementation of QuickConnect and make sure the booking ID you specified in the message is really the one you wanted to confirm. The booking type that should be sent along with the booking ID can be found in the BR RS message.
10101 Update refused. Confirmation for bookings must be sent no more than 8 days after guest departure, which for this booking was on . Please verify your implementation of QuickConnect and make sure that the booking ID specified in the BC RQ message is appropriate.
10102 Booking confirmation refused for booking because a newer version of this booking is awaiting retrieval. Please issue a booking retrieval request to retrieve the latest version of the booking, then send the latest confirmation number for the booking. This confirmation should either be discarded if irrelevant due to the change awaiting retrieval, or resent after booking retrieval has been performed.
10103 Booking confirmation [confirmation number] refused for booking [booking ID] because you already confirmed this booking 3 times. Any subsequent confirmation will be refused. You attempted to re-confirm the same booking instance more than 3 times. You can only send 3 different confirmation numbers for one booking instance (where booking instance is defined as one version of the booking, every modification or cancellation is considered a different instance). You should only send us confirmation numbers once per booking instance, or any time the actualt hotel confirmation number changes. Please contact EQCHelp if you have a need to modify the confirmation number more than 3 times for 1 booking instance.
4000, 4004, 4007 Internal system error, please try again in a few minutes. Please retry.
4001 Internal timeout error, please try again in a few minutes. Please retry.
4100, 4101 Internal System Error. Do not retry this request. Our support team was notified of the problem. Do not retry this message. Expedia has been notified of the issue and will work on finding a solution for it.
4206 Expedia QuickConnect interface is temporarily closed. Please try again shortly.
5000 Internal database error, please try again in a few minutes.