B2C standalone launch requirements
These launch requirements apply to all EPS partners with a business-to-consumer (B2C) integration model where end customers interact with your integration directly.
Overview
These requirements have been categorized into two sections to support your integration experience best:
- B2C SA requirements: These are specific to this booking flow. Please read through these requirements carefully as these may differ from any other rate types/booking flows you have integrated previously.
- Common requirements: These requirements are common across all booking flows. Please ensure to meet all these requirements across all flows.
Checklist
You can find a checklist to help support your development or to provide feedback on the requirements at this link. If you are going to provide screenshots for your site review please add the screenshots and corresponding logs in the checklist as this will help us to complete your review.
B2C standalone requirements
Booking page
BP5: Price display must include the total price and breakdown of the taxes and fees.
A) Total price
The total price for the booking must be displayed to the traveler on the checkout page. The total price should match the API response, with no rounding or currency conversion permitted. The final breakdown must include nightly rates (total or per night), any additional nightly fees, all stay amounts and taxes, and a chargeable total and set out what is paid now and what is paid later at the property.
B) Tax breakdown
The value returned for tax_and_service_fee
no longer includes fees not mandated by a tax jurisdiction, and the value returned for property_fee
now includes fees that are not government mandated as well as fees that are not property mandated. Please note that the value returned for property_fee includes fees other than fees imposed by the property and should not be displayed as “property fees”. The checkout page price display must include the sum of tax_and_service_fee and property_fee as one line titled “taxes and fees”. The tax_and_service_fee line
must be displayed separately for all tax references on other pages. The exact text below is legally required to be displayed when referring to any 'taxes and fees' totals within a price breakdown.
A description of 'taxes and fees' must be provided relaying the information below. This can be displayed as a pop-up, plain text, modal, or other implementation:
“This charge includes estimated amounts the travel service provider (i.e. hotel, car rental company) pays for their taxes, and/or taxes that we pay, to taxing authorities on your booking (including but not limited to sales, occupancy, and value added tax). This amount may also include any amounts charged to us for resort fees, cleaning fees, and other fees and/or a fee we, the hotel supplier and/or the site you booked on, retain as part of the compensation for our and/or their services, which varies based on factors such as location, the amount, and how you booked. For more details, please see the terms and conditions.” - translations can be found here.
C) Partner service and booking charges
To the extent that Expedia Group grants a waiver to permit booking charges, partner service or booking charges must be clearly separated. If a partner-imposed service charge is added to the booking, it must be clear to the customer that the charge is levied by the partner, and not EPS for a separate service (i.e. not a further charge for the provision of accommodation). Charges may not be included inside of existing 'taxes and fees' line items. Partner must not use the word 'fee' to describe any charge imposed by them. They could use 'affiliate booking charge' or 'affiliate service charge'.
Confirmation page
CP1: Price display must include the total price and taxes and fees if a breakdown is provided.
A) Total price
The total price for the booking must be displayed to the traveler on the checkout page. The total price should match the API response, with no rounding or currency conversion permitted. The final breakdown must include nightly rates (total or per night), any additional nightly fees, all stay amounts and taxes, and a chargeable total and set out what is paid now and what is paid later at the property.
B) Tax breakdown
The value returned for tax_and_service_fee
no longer includes fees not mandated by a tax jurisdiction, and the value returned for property_fee
now includes fees that are not government mandated as well as fees that are not property mandated. Please note that the value returned for property_fee includes fees other than fees imposed by the property and should not be displayed as “property fees”. The checkout page price display must include the sum of tax_and_service_fee and property_fee as one line titled “taxes and fees”. The tax_and_service_fee line
must be displayed separately for all tax references on other pages. The exact text below is legally required to be displayed when referring to any 'taxes and fees' totals within a price breakdown.
A description of 'taxes and fees' must be provided relaying the information below. This can be displayed as a pop-up, plain text, modal, or other implementation:
“This charge includes estimated amounts the travel service provider (i.e. hotel, car rental company) pays for their taxes, and/or taxes that we pay, to taxing authorities on your booking (including but not limited to sales, occupancy, and value added tax). This amount may also include any amounts charged to us for resort fees, cleaning fees, and other fees and/or a fee we, the hotel supplier and/or the site you booked on, retain as part of the compensation for our and/or their services, which varies based on factors such as location, the amount, and how you booked. For more details, please see the terms and conditions.” - translations can be found here.
C) Partner service and booking charges
To the extent that Expedia Group grants a waiver to permit booking charges, partner service or booking charges must be clearly separated. If a partner-imposed service charge is added to the booking, it must be clear to the customer that the charge is levied by the partner, and not EPS for a separate service (i.e. not a further charge for the provision of accommodation). Charges may not be included inside of existing 'taxes and fees' line items. Partner must not use the word 'fee' to describe any charge imposed by them. They could use 'affiliate booking charge' or 'affiliate service charge'.
Confirmation email
ER6: Price display must include the total price and breakdown of the taxes and fees.
A) Total price
The total price for the booking must be displayed to the traveler on the checkout page. The total price should match the API response, with no rounding or currency conversion permitted. The final breakdown must include nightly rates (total or per night), any additional nightly fees, all stay amounts and taxes, and a chargeable total and set out what is paid now and what is paid later at the property.
B) Tax breakdown
The value returned for tax_and_service_fee
no longer includes fees not mandated by a tax jurisdiction, and the value returned for property_fee
now includes fees that are not government mandated as well as fees that are not property mandated. Please note that the value returned for property_fee includes fees other than fees imposed by the property and should not be displayed as “property fees”. The checkout page price display must include the sum of tax_and_service_fee and property_fee as one line titled “taxes and fees”. The tax_and_service_fee line
must be displayed separately for all tax references on other pages. The exact text below is legally required to be displayed when referring to any 'taxes and fees' totals within a price breakdown.
A description of 'taxes and fees' must be provided relaying the information below. This can be displayed as a pop-up, plain text, modal, or other implementation:
“This charge includes estimated amounts the travel service provider (i.e. hotel, car rental company) pays for their taxes, and/or taxes that we pay, to taxing authorities on your booking (including but not limited to sales, occupancy, and value added tax). This amount may also include any amounts charged to us for resort fees, cleaning fees, and other fees and/or a fee we, the hotel supplier and/or the site you booked on, retain as part of the compensation for our and/or their services, which varies based on factors such as location, the amount, and how you booked. For more details, please see the terms and conditions.” - translations can be found here.
C) Partner service and booking charges
To the extent that Expedia Group grants a waiver to permit booking charges, partner service or booking charges must be clearly separated. If a partner-imposed service charge is added to the booking, it must be clear to the customer that the charge is levied by the partner, and not EPS for a separate service (i.e. not a further charge for the provision of accommodation). Charges may not be included inside of existing 'taxes and fees' line items. Partner must not use the word 'fee' to describe any charge imposed by them. They could use 'affiliate booking charge' or 'affiliate service charge'.
Common requirements
The below launch requirements apply to all EPS partners across all booking flows. Additional requirements specific to each rate type, including a detailed description of price display, are provided in individual rate requirement lists.
General requirements
GR1: No use of Expedia Group or EPS names and logos.
None of the Expedia Group/EPS names or logos may be used on any customer-facing partner sites for any purpose. Any exception (e.g. guest reviews) must be approved in advance by EPS and explicitly agreed in writing.
Example:
GR2: Links to the EPS terms and conditions URL to be displayed.
Provide a link to the EPS terms and conditions within your site's own terms and conditions text or directly link to the terms from your booking page. These terms detail the policies that govern the booking. Place the following link in an easy-to-find location, using the link wording 'Supplier Terms and Conditions'.
The English version can be found here.
Other versions are listed here.
Example:
GR4: EPS MOR - Proper use and display regarding credit card regulations.
Where you obtain, use, transmit, store, or process end customer’s cardholder data, you shall comply with the PCI DSS as issued by the PCI Security Standards Council. A complete reference for these regulations is available at the official PCI Security Standards site.
GR5: EPS MOR or property collect - Evidence of PCI compliance supplied for applicable partners.
Where EPS or the property is merchant of record an Attestation of Compliance (AOC) must be supplied as evidence of PCI compliance. EPS Partners must use the PCI Security Standards Council's Self-Assessment Questionnaire file 'SAQ D - Merchants' to produce the proper AOC.
You can review the instructions and guidelines for SAQs and find the "SAQ D - Merchants" file on the official PCI Security Standards Document Library or download the SAQ D - Merchants file directly as a PDF or Word document.
Search page
SP1: Where affiliate allows children to be included in bookings, proper messaging and input of child ages is implemented.
If your integration permits child travelers, you must offer the ability to specify the age of each child traveler. This information is provided via the occupancy element (see code sample below).
When customers specify child travelers, the API response may contain age restrictions and/or extra occupancy or crib charges that may affect the cost or eligibility of the booking.
Each hotel configures what age range they classify as a child. Typically, individuals aged 17 or younger are considered children. Some properties do not allow guests under age 18.
Example API request:
https://api.ean.com/v3/properties/availability?checkin=2020-09-11
&checkout=2020-09-14
¤cy=USD&language=en-US& occupancy=2-9,4 &property_id=XXXX
&country_code=XX&sales_channel=XXXX
&sales_environment=XXXX&filter=XXXX&rate_plan_count=XXXX
&rate_option=XXXX&billing_terms=XXXX&payment_terms=XXXX
&partner_point_of_sale=XXXX&platform_name=XXXX
Example API response:
"occupancies": {
"2-9,4" : {
"nightly": [
[
Example: 1 Room with 2 adults and 2 children aged 9 and 4
Hotel/room availability
AP1: Bed type descriptions are present on each room.
Shop responses may return the bed_groups
array with a single value or multiple options. Display the values contained in the configuration array to describe the customer's bed choice(s).
When the bed_groups
array returns with multiple options, display the price_check
links provided by the Shop response for each bed type to allow selection by the customer.
Messaging must be displayed to the traveler that choices between multiple bed types for the same room are requests only and may not be honored at the hotel if availability does not permit.
Room names are returned within the Shop response's rooms array as room_name
.
Example API response:
"property_id": "11775754",
"rooms": \[
{
"id": "230434524",
"room_name": "Superior double room" ,
"rates": [
{
...
"bed_groups": {
"133243": {
"id": "133243",
"description": "Double bed" ,
"links": {...},
"configuration": [...]
},
"133242": {
"id": "133242",
"description": "2 single beds" ,
"links": {...},
"configuration": \[...]
}
},
AP2: Non-refundable flag is clearly visible.
Non-refundable rates should be clearly indicated within the availability page. When refundable=false
and no cancellation policy is returned the room should be labelled as non-refundable.
Example API response:
"property_id": "XXXX",
"rooms":
"id": "XXXX",
"room_name": "Fairmont King",
"rates":
"id": "XXXX",
"status": "available",
"available_rooms": 4999,
"refundable": false ,
"deposit_required": false,
"merchant_of_record": "expedia",
Example non-refundable flag UI:
AP3: Display check-in and special check-in instructions.
The contents of the checkin
, checkout
, fees
, and policies
objects must be displayed for each room as returned in the property content definition. This information must be displayed on your availability page to ensure the customer is aware of any potential fees at check-in or special access instructions.
The special_instructions
field may include information critical for check-in that is not included in the checkin
object's instructions
field, such as a requirement to notify the property of expected arrival time, check-in at a different location, or an alert to expect special check-in instructions from the property via email.
Make sure to display both the instructions
and special_instructions
to the traveler within the same area.
Example API response:
"11775754": {
"property_id": "11775754",
"checkin": {
"begin_time": "16:00 PM",
"end_time": "4:00 AM",
"instructions": "Minimum age to check in is 18 years old.
Extra-person charges may apply and vary depending on property policy.
Government-issued photo identification and a credit card may be required at
check-in for incidental charges.
Special requests are subject to availability upon check-in and
may incur additional charges. Special requests cannot be guaranteed.",
"special_instructions": "Front desk staff will greet guests on arrival. For more details,
please contact the property using the information on the booking confirmation.",
"min_age": 18
"checkout": {
"time": "11:00 AM"
"fees": {
"mandatory": "You'll be asked to pay the following charges at the property:
Deposit: USD 50 per day
Resort fee: USD 28.25 per accommodation, per night The resort fee includes: Pool access, Fitness center access, Fitness/yoga classes, Airport shuttle, Phone calls, In-room safe, Self parking, Valet parking, Parking. We have included all charges provided to us by the property.
However, charges can vary, for example, based on length of stay or the room you book.",
"optional": "The following fees and deposits are charged by the property at time of service,
check-in, or check-out. Breakfast fee: between USD 6 and USD 25 per person
(approximately), Late check-out is available for a fee (subject to availability)Rollaway bed fee: USD 20.0 per night.
The above list may not be comprehensive. Fees and deposits may not include tax and are subject to change."
"policies": {
"know_before_you_go": "Up to 2 children 12 years old and younger stay free when
occupying the parent or guardian's room, using existing bedding.
The property has connecting/adjoining rooms, which are subject to availability
and can be requested by contacting the property using the number on the booking
confirmation."
Example extracted property content:
Booking page
BP1: SSL encryption is present for personal data.
When sending or transmitting personal data, you must use SSL encryption to secure connections between client browsers/applications and your site, as well as the network communications with dependent systems. Personal data includes guest names, phone numbers or emails, payment card details, booking/itinerary receipts, and confirmation pages. Stop or redirect the connection when it is not secured.
BP2: Display check-in and special check-in instructions.
The contents of the checkin
, checkout
, fees
, and policies
objects must be displayed for each room as returned in the property content definition. This information must be displayed to ensure the customer is aware of any potential fees at check-in or special access instructions before they finalize their booking.
The special_instructions
field may include information critical for check-in that is not included in the checkin
object's instructions
field, such as a requirement to notify the property of expected arrival time, check-in at a different location, or an alert to expect special check-in instructions from the property via email.
Make sure to display both the instructions
and special_instructions
to the traveler within the same area.
BP3: Cancellation policy and non-refundable tag clearly displayed.
Before allowing customers to confirm their purchase on your final booking page, you must provide the cancellation policy/non-refundable tag for the selected room or rooms. The cancellation policy for each rate is provided within the cancel_penalties
object in the Rapid Shop Availability API.
For refundable rates, the response includes an array of cancellation policy details. The details include the start date and end date of the specified penalty as well as the penalty type and value, and any exception booking dates that apply. The penalty types include a fixed amount, number of nights, and percentage of total cost.
When:
refundable=true
:- This rate is fully refundable.
refundable=true
+cancel_penalties
:- This rate is refundable during the cancellation time frame.
- The earliest
cancel_penalties.[].start
is the free cancellation deadline, if it is a future timeline the rate is 100% non-refundable after the latestcancel_penalties.[].end
.
refundable=false
:- This rate is non-refundable.
- No cancel penalty window is returned.
refundable=false
+cancel_penalties
:- The rate can be partially refundable.
cancel_penalties
should be shown in conjunction withnonrefundable_date_ranges
which will show the stay dates of this range that are non-refundable once the booking is created.
Further information on how to construct cancellation policies can be found here.
Reference:
refundable=false
:- A non-refundable amount will incur immediately once the booking is created.
cancel_penalties
andnonrefundable_date_ranges
will provide more details.
- A non-refundable amount will incur immediately once the booking is created.
nonrefundable_date_ranges
:- The stay dates of this range are non-refundable once the booking is created.
cancel_penalties
:- Applicable to the stay dates that are not involved in
nonrefundable_date_ranges
. - The rate is 100% non-refundable when
cancel_penalties
is empty or not returned. - A penalty will incur when canceling during the time frame of
cancel_penalties
. - The earliest
cancel_penalties.[].start
is the free cancellation deadline, if it is a future timeline the rate is 100% non-refundable after the latestcancel_penalties.[].end
.
- Applicable to the stay dates that are not involved in
Example API responses:
Fully refundable:
"property_id": "XXXX",
"rooms": [
{
"id": "XXXX",
"room_name": "Traditional Room",
"rates":
"id": "XXXX",
"status": "available",
"available_rooms": 4999,
"refundable": true,
"cancel_penalties": [
{
"start": "2021-05-27T18:00:00.000-07:00",
"end": "2021-05-28T18:00:00.000-07:00",
"amount": "76.00",
"currency": "USD"
Non-refundable:
"property_id": "XXXX",
"rooms":
"id": "XXXX",
"room_name": "Traditional Room",
"rates":
"id": "XXXX",
"status": "available",
"available_rooms": 4999,
"refundable": false ,
"deposit_required": false,
"merchant_of_record": "expedia",
Partially refundable:
"property_id": "XXXX",
"rooms": [
{
"id": "XXXX",
"room_name": "Traditional Room",
"rates":
"id": "XXXXXXXX",
"status": "available",
"available_rooms": 4999,
"refundable": false,
"cancel_penalties": [
{
"start": "2023-09-03T13:59:00.000+02:00",
"end": "2023-09-04T13:59:00.000+02:00",
"nights": "1",
"currency": "USD"
}
],
"nonrefundable_date_ranges": [
{
"start": "2023-09-08",
"end": "2023-09-13"
}
],
Example:
BP4: Display charges due at the property separately within the price breakdown.
When charges are returned in the fees
array, display each value separately as a charge due at the property (check-in or check-out). These charges are collected directly by the property (not EPS or local government) and are not part of standard tax recovery charges, taxes, or fees included in the 'taxes and fees' line.
Example API response:
"fees" : {
"resort_fee": {
"request_currency": {
"value": "74.97",
"currency": "USD"
},
"billable_currency": {
"value": "74.97",
"currency": "USD"
},
"scope": "per_accommodation",
"frequency": "per_night"
}
},
Example:
BP7: If applicable, child ages must be reiterated.
If your integration permits child travelers and the customer specified child travelers for their room selection, you must clearly confirm the number of child travelers and their ages on your booking pages. This information is provided via the occupancy
element.
BP8: EPS MOR or property collect: State when payment will be taken from the end traveler.
If EPS MOR, state that the credit card provided will be charged immediately for the full amount of the reservation.
If property collect, state that the credit card provided will be charged by the property at check-in or check-out. If the property is serving a non-refundable post-pay rate, instead indicate that the customer could be charged by the property shortly after completing the booking.
BP9: Compliance with European Economic Area Regulations: Payment Services Directive 2 (PSD2).
PSD2 compliance is required for any partner that intends to transact with customers in the European Economic Area (EEA). Learn more here.
EPS MOR or property collect.
If EPS is the merchant of record, or property collect is used with European customers, the booking path must include the adoption of Rapid’s APIs for two-factor authentication.
Affiliate MOR - General.
Partners must follow the Strong Customer Authentication (SCA) requirements of the PSD2 regulations when transactions with customers are within the scope of the regulations. The complete text of the directive is available at the European Commission. Further information about the compliant standards that can be adopted is available in EMVCo’s “3D Secure Protocol and Core Functions Specification”.
Affiliate MOR - Corporate card or virtual card.
Partners paying EPS with a partner-owned card, issued in a country within the EEA, must follow the requirements of PSD2 regulations. To mitigate the need for PSD2 2FA a partner could use a card that is compliant for B2B payments and is exempt from 2FA (two-factor authentication).
Compliant options include:
- Single-use virtual cards.
- Multi-use corporate card that is registered to the company (not a person).
Example API request:
https://api.ean.com<Price Check link from previous availability request>
Example API response:
{
"status": "available",
"occupancy_pricing": {... },
"links": {
"payment_session": {
"method": "POST",
"href": "/v3/payment-sessions?token=XXXX"
}
}
}
BP10: EPS MOR or property collect premium – Payment processing location displayed on check-out pages.
Where EPS or the property is merchant of record the country where the payment will be processed must be displayed in a prominent place on the check-out page. The phrase 'This payment will be processed in' must be inserted before the country name.
Use the payment options function of the Shopping API to retrieve this information.
Example API request:
https://api.ean.com<payment-options link from previous availability request>
Example API response:
"credit_card": {
"name": "Credit Card",
"card_options": [
{
"name": "MasterCard",
"processing_country": "US"
},
{
"name": "Visa",
"processing_country": "US"
}
]
}
Example:
Confirmation email/voucher
If you will provide a hosted voucher within a mobile application, please continue to follow the requirements below.
ER1: Itinerary IDs displayed properly.
If your integration will provide EPS's itinerary_id
directly to customers, you must clearly display this number on your confirmation email. If applicable, you must provide evidence that your agents have access to the original EPS itinerary IDs should they require assistance from EPS customer support.
ER2: Customer support to be clearly displayed, including links to online customer service tools.
Clearly display your customer support channels within the booking flow or within the confirmation email, e.g. telephone number or live chat. If EPS agents will be providing direct support to your customers, display the EPS support number in your booking flow.
ER3: Bed type descriptions are present on each room.
Confirm the traveler-requested bed type in your confirmation email/voucher and display messaging to the traveler that choices between multiple bed types for the same room are requests only and may not be honored at the hotel if availability does not permit.
Display the values contained in the configuration array to describe the customer's bed choice(s).
ER4: Display check-in and special check-in instruction.
The contents of the checkin
, checkout
, fees
, and policies
objects must be displayed for each room as returned in the property content definition. This information must be displayed to ensure the customer is aware of any potential fees at check-in or special access instructions before they finalize their booking.
The special_instructions
field may include information critical for check-in that is not included in the checkin
object's instructions
field, such as a requirement to notify the property of expected arrival time, check-in at a different location, or an alert to expect special check-in instructions from the property via email.
Make sure to display both the instructions
and special_instructions
to the traveler within the same area.
ER5: Display charges due at the property separately within the price breakdown.
When charges are returned in the fees
array, display each value separately as a charge due at the property (check-in or check-out). These charges are collected directly by the property (not EPS or local governments) and are not part of standard tax recovery charges, taxes, or fees included in the 'taxes and fees' line.
Technical and sanctions requirements
TR1: Provide a unique affiliate reference ID with each booking request.
For every booking request you must use the affiliate_reference_id
element with the intent of preventing duplicate bookings/duplicate charges from multiple form submissions checking EPS systems for an itinerary if the reservation timed out or returned an empty result due to upstream timeouts.
{
"affiliate_reference_id": "Launch_Requirement_TR1" ,
"hold": false,
"email": "TR4@Launch.Requirement",
"phone": {
"country_code": "Launch_Requirement_TR5b",
"number": "Launch_Requirement_TR5b",
"area_code": "Launch_Requirement_TR5b"
},
"rooms": [
{
"given_name": "John_Launch_Requirement_TR5a",
"family_name": "Doe_Launch_Requirement_TR5a",
"smoking": false,
},
{
"given_name": "David_Launch_Requirement_TR5a",
"family_name": "Smith_Launch_Requirement_TR5a",
"smoking": false,
}
],
TR2: Provide the traveler country code with each request.
The traveler country_code
must be passed in API requests to Shopping and Recommendations. The country code must match the point of sale being accessed by the customer.
This requirement ensures EPS's systems provide customers with relevant content and the most suitable rates based on the sales market.
Example API request:
https://api.ean.com/v3/properties/availability?checkin=2020-09-11
&checkout=2020-09-14
¤cy=USD&language=en-US&occupancy=2-3,4&property_id=XXXX
&country_code=XX&sales_channel=XXXX
&sales_environment=XXXX&filter=XXXX&rate_plan_count=XXXX
&rate_option=XXXX&billing_terms=XXXX&payment_terms=XXXX
&partner_point_of_sale=XXXX&platform_name=XXXX
TR3: Billing information
TR3a) Payor name
- For customer, corporate, and virtual card:
- Partners must send the name of the cardholder whose card is being charged by EPS.
- For affiliate collect / EAC partners:
- Wherever possible, EPS strongly recommends that partners send the name of the actual end payor for the booking. This information is required for regulatory/sanctions screening purposes.
- If it is not possible to provide the name of the actual end payor, provide the name of the partner's company/legal entity paying EPS.
- If the POS is Russia, Ukraine, or Venezuela then true payor information is always required.
TR3b) Billing country
Must represent the individual name passed in the billing contact/payor name field.
TR3c) Billing zip
Must represent the individual name passed in the billing contact/payor name field.
For countries that do not maintain a zip code, this information does not need to be provided.
"payments": [
{
"type": "customer_card",
"billing_contact": {
"given_name": "Launch_Requirement_TR3a",
"family_name": "Launch_Requirement_TR3a",
"address": {
"line_1": "555 1st St",
"line_2": "10th Floor",
"line_3": "Unit 12",
"city": "Seattle",
"state_province_code": "WA",
"postal_code": "Launch_Requirement_TR3c",
"country_code": "Launch_Requirement_TR3b"
}
},
TR4: Provide the customer email address or monitored email mailbox.
The email element of each itinerary must contain the traveler email address or the mailbox your integration monitors for confirmation email handling. This is required for cases of booking disputes or troubleshooting.
TR5: Provide accurate traveler information.
TR5a) Traveler name
EPS bookings must always be submitted with the name of the actual travelers staying in each booked room. This means that in your booking request body the values for given_name
and family_name
within the rooms
object must match the first and last name of the main guest checking in for each room.
TR5b) Traveler phone number
The booking must include a viable contact number for the traveler. Include this number in your booking request's phone field of each itinerary. EPS will not contact the traveler if the partner’s agents provide direct support to end customers.
TR6: Multi-room bookings
If multi-room bookings are supported, provide the API request and response logs for a test booking which shows each room has been booked and cancelled.
Each room that is booked will create a separate confirmation ID which allows the rooms to be cancelled separately. To cancel all rooms complete a cancellation call for every confirmation ID within the itinerary.
EPS does not directly offer group bookings of more than 8 rooms through our API or template. Your EPS representative can advise you if you need to book more than 8 rooms.
TR7: Rapid error handling recommendations
Please confirm you have reviewed our Rapid error handling recommendations and implemented logic to handle them.