Booking Notification API
Getting startedBooking Notification API

What's new?

This section provides details about some of the latest Booking Notification API features. For a complete list of features and fixes provided in the latest versions, refer to the revision history.

Here’s an overview of the features described in this topic:

Changes to Expedia Collect Notifications - Mexico and beyond

Expedia Group is updating its Expedia Collect (EC) model to simplify how it operates and to remain relevant and current in local markets. Refer to Business models and Expedia Virtual Card for details.

The additional elements and attributes in the API definition are as follows:

  • PaymentMethod
  • Payment (@Amount, @CurrencyCode, @Model)
  • PaymentCard (@CardActivation)
  • BaseRateType
  • Commission (@Percent)

Note: To send commission information to EC+ enabled partners, the Commission field must be enabled.

Expedia Collect, Hotel Collect, and Expedia Virtual Card updates

Expedia Collect

By default, Expedia Collect bookings are sent with net rates, but in certain regions where there are jurisdictional requirements, the sell (or Lowest Available) rate will be sent instead. The BaseRateType field can be used to identify whether net or sell rates are being sent. If the BaseRateType field is not present, the values are net. Be aware that values sent in the notification may be different from the amount that will be available to charge on the virtual card or that can be request for in Partner Central.

BaseRateType valueWhat value is sent in the Base @AmountBeforeTax field
NetNet rate only (no compensation or taxes)
SellNet rate + Expedia compensation
If not presentNet rate only (no compensation or taxes)
Note: If the rate plan is configured as tax-inclusive in Expedia's system, taxes will be included in the amount sent.

The Payment Amount field will specify the exact amount that is available to charge on the virtual card or that can be requested for in Partner Central, and the Payment Model will indicate whether that amount is a net or gross amount. These values are configured depending on the jurisdiction and property preference. If neither of these fields are present, the net amount is paid out.

Payment @Model valueWhat is included in the Payment @Amount field
NetNightly net rate + applicable taxes (only taxes the property is liable to pay to the government)
GrossNightly net rate + Expedia compensation + total taxes
If not presentNightly net rate + applicable taxes (only taxes the property is liable to pay to the government)

If the reservation is paid by virtual card, payment information for the virtual card will be included in the notification. Refer to sections "Guarantees/Credit Cards Included in Booking Messages" and Expedia Virtual Card for more information.

Here is the full variation matrix for Expedia Collect:

BaseRateType*Payment @Model (Remittance)**Payment @AmountTotal @AmountAfterTaxBase @AmountBeforeTaxTaxes @Amount
Sell ratesNet remittanceNet ratesSell ratesSell ratesTotal taxes
Gross remittanceSell ratesSell ratesSell ratesTotal taxes
Net ratesNet remittanceNet ratesNet ratesNet ratesApplicable taxes
Gross remittanceSell ratesN/AN/AN/A
If not present (before rollout of Updated Expedia Collect)If not present (before rollout of Updated Expedia Collect)If not present (before rollout of Updated Expedia Collect)NetNetApplicable taxes

* BaseRateType is by market, configured by Expedia, and changed at time of Updated Expedia Collect rollout to always be Sell.

** Payment @Model is configured by the hotel on a per-property basis.

Hotel Collect

Hotel Collect bookings are sent with the sell rate, along with a special payment instruction (special request code 5) indicating that the reservation is hotel collect and the hotel should charge the full stay amount to the guest credit card. Payment information for the customer credit card will be included in the notification if you are PCI compliant.

Note: Hotel Collect bookings can be easily distinguished by the prefix "A-" in the POS ID value, and also by different rate plan codes provided in the product mapping by the partner.

Upon receiving the notification for Hotel Collect booking, partner must ensure the booking is mapped to the appropriate profile in the hotel system so that the payment, the reconciliation and other downstream processes will be handled correctly by the property manager.

Expedia Virtual Card

The Expedia Virtual Card enables Expedia Collect hotels to receive payment via the virtual credit card. At the time of booking, Expedia will generate a distinct virtual credit card number that is authorized for the transaction. The virtual credit card details will be provided electronically to the hotel within the Booking Notification message and should be used as payment at time of check out.

For a successful EVC rollout, the partner implementation should support communication of credit card information as described in the schema (OTA_HotelResNotifRQ and OTA_HotelResModifyNotifRQ).

The hotel system must support changing existing bookings from the original billing method to Expedia Virtual Card payment method and vice versa, should the need arise. After activation on the EVC program, the hotel may request that all pending bookings include Expedia Virtual Card payment information. In such situations, booking modifications will be created containing a special request section containing this information. The partner needs to ensure that all new bookings or pending updates for Expedia Virtual Card are communicated to the hotel effectively.

At guest check-in, hotels use credit cards as a payment guarantee for the room stay. If the Expedia Virtual Card is not available at time of check-in, the hotel should never attempt to swipe the customers own credit card or delay guest check-in. The Hotel will instead have to contact Expedia Virtual Card support to request the Virtual Card number so they can charge the stay to the Expedia Virtual Card. The hotel can also access Partner Central to find the Virtual Card number.

In most cases, the card number will remain the same for modified bookings, although the card parameters maybe adjusted to reflect the new booking rate and check-in/check-out dates. In rare cases, the card number may be changed in modified bookings.

Cancellation-type booking responses do not include any Expedia Virtual Card details, so hoteliers need the billing information and original arrival date provided in the a booking’s last notification prior to cancellation in order to bill any applicable hotel cancellation fees.

Calculation examples

Bolded values in the examples are sent in the request.

Expedia Collect – Gross payment model with EVC

Daily sell rate/LAR: $200

EG compensation (20%): $200 (sell) x 20% (EG comp) = $40

Daily net rate: $200 (sell) - $40 (EG comp) = $160

Taxes & fees on base (sell/LAR) (16%): $32.00

  • On net: 16% x $160 = $25.60
  • On EG comp: 16% x $40 = $6.40

Total booking amount: $232.00

If the property is liable for payment of all taxes to the government:

Payment amount: $200 (sell) + $32 (total taxes/fees) = $232.00

Amount EG will invoice for: $40 (EG comp)

If EG is liable for payment of tax on compensation to the government:

Payment amount: $200 (sell) + $32 (total taxes/fees) = $232.00

Amount EG will invoice for: $40 (EG comp) + $6.40 (taxes/fees on EG comp) = $46.40

1<Rates>
2 <Rate EffectiveDate="2020-07-22" ExpireDate="2020-07-23" RateTimeUnit="Day" UnitMultiplier="1">
3 <Base AmountBeforeTax="200.00" CurrencyCode="USD"/>
4 <Fees>
5 <Fee Amount="0.00" Code="1" CurrencyCode="USD" TaxInclusive="false" Type="Exclusive"/>
6 </Fees>
7 </Rate>
8</Rates>
9</RoomRate>
10</RoomRates>
11<GuestCounts IsPerRoom="true">
12 <GuestCount AgeQualifyingCode="10" Count="2"/>
13</GuestCounts>
14<TimeSpan End="2020-07-24" Start="2020-07-22"/>
15<PaymentMethod>VirtualCard</PaymentMethod>
16<Payment Amount="232.00" CurrencyCode="USD" model="Gross">
17 <Guarantee>
18 <GuaranteesAccepted>
19 <GuaranteeAccepted>
20 <PaymentCard CardCode="AX" CardNumber="*****" CardType="1" ExpireDate="0725" SeriesCode="*****" CardActivation="YYYY-MM-DDThh:mm:ss[+/-]hh:mm">
21 <CardHolderName>*****</CardHolderName>
22 <Address FormattedInd="false">
23 <AddressLine>*****</AddressLine>
24 <CityName>Seattle</CityName>
25 <PostalCode>98119</PostalCode>
26 <StateProv StateCode="WA"/>
27 <CountryName Code="US"/>
28 </Address>
29 </PaymentCard>
30 </GuaranteeAccepted>
31 </GuaranteesAccepted>
32 </Guarantee>
33 <Total AmountAfterTax="232.00" CurrencyCode="USD">
34 <Taxes Amount="32.00" CurrencyCode="USD">
35 <Tax Amount="32.00" Code="27" CurrencyCode="USD" Type="Exclusive"/>
36 </Taxes>
37 </Total>
38 <BaseRateType>Sell</BaseRateType>
Expedia Collect – Net payment model with EVC

Daily sell rate/LAR: $200

EG compensation (20%): $200 (sell) x 20% (EG comp) = $40

Daily net rate: $200 (sell) - $40 (EG comp) = $160

Taxes & fees on base (sell/LAR) (16%): $32.00

  • On net: 16% x $160 = $25.60
  • On EG comp: 16% x $40 = $6.40

Total booking amount: $232.00

If the property is liable for payment of all taxes to the government:

Payment amount: $160 (net) + $32 (total taxes/fees) = $192.00

If EG is liable for payment of tax on compensation to the government:

Payment amount: $160 (net) + $25.60 (taxes/fees on base) = $185.60

1<Rates>
2 <Rate EffectiveDate="2020-07-22" ExpireDate="2020-07-23" RateTimeUnit="Day" UnitMultiplier="1">
3 <Base AmountBeforeTax="200.00" CurrencyCode="USD"/>
4 <Fees>
5 <Fee Amount="0.00" Code="1" CurrencyCode="USD" TaxInclusive="false" Type="Exclusive"/>
6 </Fees>
7 </Rate>
8</Rates>
9</RoomRate>
10</RoomRates>
11<GuestCounts IsPerRoom="true">
12 <GuestCount AgeQualifyingCode="10" Count="2"/>
13</GuestCounts>
14<TimeSpan End="2020-07-24" Start="2020-07-22"/>
15<PaymentMethod>VirtualCard</PaymentMethod>
16<Payment Amount="192.00 or 185.60" CurrencyCode="USD" model="Net">
17 <Guarantee>
18 <GuaranteesAccepted>
19 <GuaranteeAccepted>
20 <PaymentCard CardCode="AX" CardNumber="*****" CardType="1" ExpireDate="0725" SeriesCode="*****" CardActivation=" YYYY-MM-DDThh:mm:ss[+/-]hh:mm ">
21 <CardHolderName>*****</CardHolderName>
22 <Address FormattedInd="false">
23 <AddressLine>*****</AddressLine>
24 <CityName>Seattle</CityName>
25 <PostalCode>98119</PostalCode>
26 <StateProv StateCode="WA"/>
27 <CountryName Code="US"/>
28 </Address>
29 </PaymentCard>
30 </GuaranteeAccepted>
31 </GuaranteesAccepted>
32 </Guarantee>
33 <Total AmountAfterTax="232.00" CurrencyCode="USD">
34 <Taxes Amount="32.00" CurrencyCode="USD">
35 <Tax Amount="32.00" Code="27" CurrencyCode="USD" Type="Exclusive"/>
36 </Taxes>
37 </Total>
38 <BaseRateType>Sell</BaseRateType>
Expedia Collect – Gross payment model without enhancements adopted

Daily sell rate/LAR: $200

EG compensation (20%): $200 (sell) x 20% (EG comp) = $40

Daily net rate: $200 (sell) - $40 (EG comp) = $160

Taxes & fees on base (sell/LAR) (16%): $32.00

  • On net: 16% x $160 = $25.60
  • On EG comp: 16% x $40 = $6.40

Total booking amount: $232.00

Special request: payment instruction

The payment amount will be added to the payment instruction string (code 5).

If the property is liable for payment of all taxes to the government:

Payment amount: $200 (sell) + $32 (total taxes/fees) = $232.00

Amount EG will invoice for: $40 (EG Comp)

If EG is liable for payment of tax on compensation to the government:

Payment amount: $200 (sell) + $32 (total taxes/fees) = $232.00

Amount EG will invoice for: $40 (EG comp) + $6.40 (taxes/fees on EG comp) = $46.40

1<Rates>
2 <Rate EffectiveDate="2020-07-22" ExpireDate="2020-07-23" RateTimeUnit="Day" UnitMultiplier="1">
3 <Base AmountBeforeTax="200.00" CurrencyCode="USD"/>
4 <Fees>
5 <Fee Amount="0.00" Code="1" CurrencyCode="USD" TaxInclusive="false" Type="Exclusive"/>
6 </Fees>
7 </Rate>
8</Rates>
9</RoomRate>
10</RoomRates>
11<GuestCounts IsPerRoom="true">
12 <GuestCount AgeQualifyingCode="10" Count="2"/>
13</GuestCounts>
14<TimeSpan End="2020-07-24" Start="2020-07-22"/>
15<Guarantee>
16 <GuaranteesAccepted>
17 <GuaranteeAccepted>
18 <PaymentCard CardCode="AX" CardNumber="*****" CardType="1" ExpireDate="0725" SeriesCode="*****" <CardHolderName>*****</CardHolderName>
19 <Address FormattedInd="false">
20 <AddressLine>*****</AddressLine>
21 <CityName>Seattle</CityName>
22 <PostalCode>98119</PostalCode>
23 <StateProv StateCode="WA"/>
24 <CountryName Code="US"/>
25 </Address>
26 </PaymentCard>
27 </GuaranteeAccepted>
28 </GuaranteesAccepted>
29</Guarantee>
30<Total AmountAfterTax="232.00" CurrencyCode="USD">
31 <Taxes Amount="32.00" CurrencyCode="USD">
32 <Tax Amount="32.00" Code="27" CurrencyCode="USD" Type="Exclusive"/>
33 </Taxes>
34</Total>
35<BasicPropertyInfo BrandCode="JJ" ChainCode="JJ" HotelCode="11111"/>
36<ResGuestRPHs>
37 <ResGuestRPH RPH="1"/>
38</ResGuestRPHs>
39<SpecialRequests>
40 <SpecialRequest Language="en-us" RequestCode="5">
41 <Text Formatted="true" Language="en-us"> Remittance amt: XXX.XX CUR.</Text>
42 </SpecialRequest>
43</SpecialRequests>
Expedia Collect – regular, without enhancements adopted, with EVC

Daily sell rate/LAR: $200

EG compensation (20%): $200 (sell) x 20% (EG comp) = $40

Daily net rate: $200 (sell) - $40 (EG comp) = $160

Taxes & fees on base (sell/LAR) (16%): $32.00

  • On net: 16% x $160 = $25.60
  • On EG comp: 16% x $40 = $6.40

Total booking amount: $232.00

If the property is liable for payment of all taxes to the government:

Total after tax (payment amount): $160 (net) + $32 (total taxes/fees) = $192.00

If EG is liable for payment of tax on compensation to the government:

Total after tax (payment amount): $160 (net) + $25.60 (taxes/fees on base) = $185.60

1<Rates>
2 <Rate EffectiveDate="2020-07-22" ExpireDate="2020-07-23" RateTimeUnit="Day" UnitMultiplier="1">
3 <Base AmountBeforeTax="160.00" CurrencyCode="USD"/>
4 <Fees>
5 <Fee Amount="0.00" Code="1" CurrencyCode="USD" TaxInclusive="false" Type="Exclusive"/>
6 </Fees>
7 </Rate>
8</Rates>
9</RoomRate>
10</RoomRates>
11<GuestCounts IsPerRoom="true">
12 <GuestCount AgeQualifyingCode="10" Count="2"/>
13</GuestCounts>
14<TimeSpan End="2020-07-24" Start="2020-07-22"/>
15<Guarantee>
16 <GuaranteesAccepted>
17 <GuaranteeAccepted>
18 <PaymentCard CardCode="AX" CardNumber="*****" CardType="1" ExpireDate="0725" SeriesCode="*****" <CardHolderName>*****</CardHolderName>
19 <Address FormattedInd="false">
20 <AddressLine>*****</AddressLine>
21 <CityName>Seattle</CityName>
22 <PostalCode>98119</PostalCode>
23 <StateProv StateCode="WA"/>
24 <CountryName Code="US"/>
25 </Address>
26 </PaymentCard>
27 </GuaranteeAccepted>
28 </GuaranteesAccepted>
29</Guarantee>
30<Total AmountAfterTax="192.00" CurrencyCode="USD">
31 <Taxes Amount="32.00" CurrencyCode="USD">
32 <Tax Amount="32.00" Code="27" CurrencyCode="USD" Type="Exclusive"/>
33 </Taxes>
34</Total>
35<BasicPropertyInfo BrandCode="JJ" ChainCode="JJ" HotelCode="11111"/>
36<ResGuestRPHs>
37 <ResGuestRPH RPH="1"/>
38</ResGuestRPHs>
39<SpecialRequests>
40 <SpecialRequest Language="en-us" RequestCode="1.14">
41 <Text Formatted="false" Language="en-us">1 king bed</Text>
42 </SpecialRequest>
43 <SpecialRequest Language="en-us" RequestCode="5">
44 <Text Formatted="true" Language="en-us">Remittance Amount: 192.00, Expedia Virtual Card will be activated from the day of Check-in.</Text>
45 </SpecialRequest>
46</SpecialRequests>

Guest card authorization in European Economic Area (EEA) countries

Starting in September 2019, the second Payment Services Directive (PSD2) went into effect across all European Economic Area countries. This regulation is related to authentication of consumer credit card transactions. It is designed to make electronic payments more secure and reduce credit card fraud for consumers. This change will have the most impact when charging guest cards without having the guest physically present – for pre-stay deposits, or for cancellation or no-show fees. It will now be necessary to useStrong Customer Authentication (SCA) to validate credit card transactions.

To prove their identity, users will have to provide two-factor authentication or 2FA. That means they must provide at least two separate elements out of the following:

  • something they know (a password or PIN code);
  • something they own (the physical credit card, a mobile phone); and
  • something they are (biometrics, e.g. fingerprint or iris scan).

To address collection of fees, Expedia Group is offering a new cancellation fee management tool. There is no cost to use this tool. However, like all credit card transactions, you may be subject to credit card fees. Here’s how it works:

  1. When a traveler makes a Hotel Collect booking, Expedia Group validates the customer card and captures the necessary authentication information.

  2. An Expedia Virtual Card (EVC) number will be provided to you, so you will no longer see a guest card number. This number will be provided to you through your booking notification.

  3. When you reconcile a reservation in Partner Central, just enter the fee amount you wish us to collect. We will attempt to charge the traveler credit card.

  4. If the charge is successful, the virtual card will be funded for the fee amount. Expedia Group will include the commission for the fee on your next Hotel Collect invoice.

  5. In some cases, we might not be able to charge the card because it doesn’t have sufficient funds or has become invalid. If that happens, we will remove the fee and commission on the reservation.

  6. If you opt in to use this fee management tool, you will no longer be able to reset a reconciliation for Hotel Collect bookings.

To opt into the new cancellation fee management tool, you can visit Partner Central. For alternatives, reach out to your Market Manager.

Notes:

  • If you are currently enrolled in our Credit Card Pre-Authorization program, this cancellation fee management tool will replace that program.
  • If you do not choose to enroll in this complimentary program, you can continue to charge fees to guest cards as you have in the past, but the bank may reject the transactions.
  • For Expedia Traveler Preference properties: As the regulations go into effect, banks may no longer support deposit collection without two-factor authentication. Make sure that any rate plans that require deposits are offered through the Expedia Collect model. Rate plans without deposits can remain on Hotel Collect.

For more information, please visit Expedia Group Partner Central or reach out to your account manager. If a property contacts you about opting in, please ask them to reach out to their Expedia Group market manager.

The information presented here is for informational purposes only. You should talk with your legal team and banking partners for further information about the requirements of PSD2 and SCA and its implications for your business. Expedia and its affiliated companies disclaim any liability or responsibility for declined or unsuccessful transactions, and any associated refunds, reversals, chargebacks, costs or expenses.

Unicode support

Beginning in August 2019, travelers are able to enter their name and special requests in their local language at the time of booking. This update gives travelers an easier, friendlier booking experience. In turn, we project increased conversion potential for properties; which could lead to higher production.

This applies to all domestic bookings (such as a Japanese guest traveling to a Japanese property) made on Expedia.com and Hotels.com in China, Hong Kong, Japan, Korea, and Taiwan.

For properties to benefit from this update, both the properties’ and your systems will need to support UTF-8 encoding, which is an international encoding standard for different languages. If they don’t, don’t worry - you can opt-out of this feature by contacting your Expedia Group Technical Relationship Manager or you can consider updating your integration to become UTF-8 compliant. See sample messages for the in the XML Reference section of the applicable API for more details.

If a property contacts you to opt-out of this feature, please ask them to speak to their Expedia Group market manager.

Bookings without a credit card

This feature was introduced in December 2018. The "Bookings without a credit card" feature allows properties to accept same-day and next-day Hotel Collect reservations without credit cards on Expedia.com and Hotels.com (as of Q1 2019).

This feature can help boost last-minute reservations by making it easier for travelers to reserve a room without a credit card.

To identify a booking without a credit card, a note will be displayed in the payment instructions:

"This guest booked without a credit card and will pay upon arrival. Be sure to reconcile this reservation and waive the cancellation fee to avoid paying unnecessary compensation if the guest cancels or does not show up."

If a property contacts you to opt-out of this feature, please ask them to reach out to their Expedia Group Market Manager.

Payment Card Industry (PCI) compliance requirements

Expedia Group is committed to the secure handling and transfer of traveler payment card information. We fully comply with Payment Card Industry (PCI) standards and also require that connectivity providers who partner with us comply with industry standards before we share any payment card information with their systems.

If you have questions about your connection or about the type of information that Expedia Group is sharing, or not sharing, with your system - please contact your dedicated Technical Relationship Manager.

PCI compliance

The Payment Card Industry Data Security Standard (PCI DSS) council was established in 2006 by five major credit card brands. The council established a set of 12 specific requirements to meet six different goals, including building and maintaining a secure network, implementing strong access control measures, and protecting cardholder data. All companies that accept credit card payment information must be PCI compliant.

Attestation of Compliance

The Attestation of Compliance (AOC) is defined by the council as a form for merchants and service providers to attest to the results of a PCI DSS assessment, as documented in the Self-Assessment Questionnaire or Report on Compliance.

In other words, the AOC is proof that you comply with industry standards. Expedia Group must have a copy of a current and valid AOC on file for every connectivity system provider. Attestation of Compliance (AOC) documents must be renewed annually to remain compliant.

Transport Layer Security

Transport Layer Security (TLS) is a cryptographic protocol used to establish a secure communications channel between systems. All systems that transfer payment card information must upgrade your TLS protocol to version 1.2.

Required industry standards compliance

System providers must meet the following security requirements to receive payment card information from Expedia Group:

  • Have a current and valid AOC on file with Expedia Group
  • Be successfully migrated to TLS 1.2

Failure to meet either of these requirements will result in Expedia Group blocking all payment card information from being shared with the system provider service. This means that all reservations shared between Expedia Group and the system provider will not include payment information, which will only be visible through Partner Central.