B2C 단독 출시 요구 사항
이러한 출시 요구 사항은 최종 고객이 통합과 직접 상호 작용하는 business-to-consumer (B2C) 통합 모델을 사용하는 모든 Expedia Group 파트너에게 적용됩니다.
개요
이러한 요구 사항은 두 가지 섹션으로 분류되었습니다:
- B2C 단독 요구 사항: 이 예약 흐름에만 적용됩니다. 앞서 통합한 다른 요금 유형/예약 흐름과는 차이가 있을 수 있으므로, 이 요구 사항을 자세히 읽어보시기 바랍니다.
- 공통 요구 사항: 이 요구 사항은 모든 예약 흐름에 공통으로 적용됩니다. 모든 흐름에서 이 요구 사항을 충족하는지 확인해 주세요.
체크리스트
여기에서 개발을 지원하거나 요구 사항에 대한 피드백을 제공하는 데 도움이 되는 체크리스트( )를 확인할 수 있습니다. 사이트 이용 후기 스크린샷을 제공하려는 경우 체크리스트에 스크린샷과 해당 로그를 추가해 주세요. 그러면 심사를 완료하는 데 도움이 됩니다.
B2C 단독 출시 요구 사항
일반 요구 사항
GR10: 회원 전용 거래에 액세스
회원 전용 거래는 closed-user 환경(e.g. 사이트, 모바일 앱, 상담원 도구에 로그인)에서만 판매해야 합니다.
예약 페이지
BP5: 요금은 총 요금과 세금 및 수수료 내역을 포함하여 표시
A) 총 요금
총 예약 요금은 결제 페이지에서 여행객을 대상으로 표시되어야 합니다. 총 요금은 API 응답과 일치해야 하며 반올림하거나 통화를 전환해서는 안 됩니다. 최종 내역에는 객실 요금(총액 또는 1박당), 추가 1박 요금(아래 설명된 property_fee
항목 제외), 모든 숙박 금액 및 세금, 청구 가능한 총액이 포함되어야 하며, 현재 결제한 금액과 나중에 결제한 금액을 숙박 시설에 명시해야 합니다.
B) 세금 내역
가격 표시에는 tax_and_service_fee
와 property_fee
의 합계가 '세금 및 수수료'라는 제목으로 한 줄에 표시되어야 합니다. 요금 내역에 '세금 및 수수료' 총액을 나타낼 때 아래의 텍스트를 분명하게 표시해야 할 법적 의무가 있습니다. pop-up, 일반 텍스트, 모달 또는 기타 구현으로 표시할 수 있습니다. 결제 페이지에 숙박 시설 수수료가 별도로 표시되어서는 안 됩니다.
"세금"은 공급업체(e.g. 호텔)에 지불하는 세금 회수 비용이며, 자세한 내용은 이용약관을 참조하세요. 서비스 수수료는 예약 서비스 제공에 대한 보상으로 유지되며 공급업체가 부과하는 수수료가 포함될 수 있습니다."- 번역은 에서 확인하실 수 있습니다.
tax_and_service_fee
에 반환되는 금액에는 조세 관할권에서 규정하는 세금 및 수수료만 포함됩니다.
C) 파트너 서비스 및 예약 요금
Expedia Group이 예약 요금을 허용하는 면제를 제공하는 경우 파트너 서비스 또는 예약 요금은 명확하게 구분되어야 합니다. 예약에 partner-imposed 서비스 요금이 추가되는 경우, 해당 요금은 별도의 서비스( Expedia Group 숙박 제공에 대한 추가 요금이 아닌i.e. )가 아닌 파트너가 부과하는 요금임을 고객에게 명확히 알려야 합니다. 요금은 기존 세금 및 수수료 항목에 포함되지 않을 수 있습니다. 파트너는 자신이 부과하는 요금에 '수수료'라는 표현을 사용해서는 안 됩니다. 대신 '제휴사 예약 요금' 또는 '제휴사 서비스 요금'을 사용할 수 있습니다.
확인 페이지
CP1: 가격 표시에는 총 가격과 세금 및 수수료(내역이 제공되는 경우)가 포함되어야 합니다.
A) 총 요금
예약의 총 요금은 확인 페이지에 여행자에게 표시되어야 합니다. 총 요금은 API 응답과 일치해야 하며 반올림하거나 통화를 전환해서는 안 됩니다. 최종 내역에는 객실 요금(총액 또는 1박당), 추가 1박 요금(아래 설명된 property_fee
항목 제외), 모든 숙박 금액 및 세금, 청구 가능한 총액이 포함되어야 하며, 현재 결제한 금액과 나중에 결제한 금액을 숙박 시설에 명시해야 합니다.
B) 세금 내역
가격 표시에는 tax_and_service_fee
와 property_fee
의 합계가 '세금 및 수수료'라는 제목으로 한 줄에 표시되어야 합니다. 요금 내역에 '세금 및 수수료' 총액을 나타낼 때 아래의 텍스트를 분명하게 표시해야 할 법적 의무가 있습니다. pop-up, 일반 텍스트, 모달 또는 기타 구현으로 표시할 수 있습니다. 결제 페이지에 숙박 시설 수수료가 별도로 표시되어서는 안 됩니다.
"세금"은 공급업체(e.g., 호텔)에 지불하는 세금 환급 비용이며, 자세한 내용은 이용 약관을 참조하세요. 서비스 수수료는 예약 서비스 제공에 대한 보상으로 유지되며 공급업체가 부과하는 수수료가 포함될 수 있습니다."- 번역은 여기 에서 확인할 수 있습니다.
tax_and_service_fee
에 반환되는 금액에는 조세 관할권에서 규정하는 세금 및 수수료만 포함됩니다.
C) 파트너 서비스 및 예약 요금
Expedia Group이 예약 요금을 허용하는 면제를 제공하는 경우 파트너 서비스 또는 예약 요금은 명확하게 구분되어야 합니다. 예약에 partner-imposed 서비스 요금이 추가되는 경우, 해당 요금은 별도의 서비스( Expedia Group 숙박 제공에 대한 추가 요금이 아닌i.e. )가 아닌 파트너가 부과하는 요금임을 고객에게 명확히 알려야 합니다. 요금은 기존 세금 및 수수료 항목에 포함되지 않을 수 있습니다. 파트너는 자신이 부과하는 요금에 '수수료'라는 표현을 사용해서는 안 됩니다. 대신 '제휴사 예약 요금' 또는 '제휴사 서비스 요금'을 사용할 수 있습니다.
확인 이메일
ER6: 요금은 총 요금과 세금 및 수수료 내역을 포함하여 표시
A) 총 요금
예약의 총 요금은 이메일 영수증에 여행자에게 표시되어야 합니다. 총 요금은 API 응답과 일치해야 하며 반올림하거나 통화를 전환해서는 안 됩니다. 최종 내역에는 객실 요금(총액 또는 1박당), 추가 1박 요금(아래 설명된 property_fee
항목 제외), 모든 숙박 금액 및 세금, 청구 가능한 총액이 포함되어야 하며, 현재 결제한 금액과 나중에 결제한 금액을 숙박 시설에 명시해야 합니다.
B) 세금 내역
가격 표시에는 tax_and_service_fee
와 property_fee
의 합계가 '세금 및 수수료'라는 제목으로 한 줄에 표시되어야 합니다. 요금 내역에 '세금 및 수수료' 총액을 나타낼 때 아래의 텍스트를 분명하게 표시해야 할 법적 의무가 있습니다. pop-up, 일반 텍스트, 모달 또는 기타 구현으로 표시할 수 있습니다. 결제 페이지에 숙박 시설 수수료가 별도로 표시되어서는 안 됩니다.
"세금"은 공급업체(e.g. 호텔)에 지불하는 세금 환급 비용이며, 자세한 내용은 이용 약관을 참조하세요. 서비스 수수료는 예약 서비스 제공에 대한 보상으로 유지되며 공급업체가 부과하는 수수료가 포함될 수 있습니다."- 번역은 여기 에서 확인할 수 있습니다.
tax_and_service_fee
에 반환되는 금액에는 조세 관할권에서 규정하는 세금 및 수수료만 포함됩니다.
C) 파트너 서비스 및 예약 요금
Expedia Group이 예약 요금을 허용하는 면제를 제공하는 경우 파트너 서비스 또는 예약 요금은 명확하게 구분되어야 합니다. 예약에 partner-imposed 서비스 요금이 추가되는 경우, 해당 요금은 별도의 서비스( Expedia Group 숙박 제공에 대한 추가 요금이 아닌i.e. )가 아닌 파트너가 부과하는 요금임을 고객에게 명확히 알려야 합니다. 요금은 기존 세금 및 수수료 항목에 포함되지 않을 수 있습니다. 파트너는 자신이 부과하는 요금에 '수수료'라는 표현을 사용해서는 안 됩니다. 대신 '제휴사 예약 요금' 또는 '제휴사 서비스 요금'을 사용할 수 있습니다.
공통 요구 사항
아래 출시 요건은 모든 예약 흐름에 걸쳐 모든 Expedia Group 파트너에게 적용됩니다. 요금 표시에 대한 자세한 설명을 포함하여 각 요금 유형과 관련된 추가 요구 사항은 각 요금 요구 사항 목록에 나와 있습니다.
일반 요구 사항
GR1: Expedia Group 또는 Expedia Group 이름 및 로고 사용 금지.
Expedia Group 이름과 로고는 예외적으로 Expedia Group 에서 사전에 명시적으로 서면 승인을 받은 고객 또는 agent-facing 사이트에서만 사용할 수 있습니다.
예시:

GR2: 표시할 Expedia Group 이용약관 URL에 대한 링크.
사이트의 자체 이용약관 텍스트에 Expedia Group 이용약관 링크를 제공하거나 예약 페이지에서 직접 약관에 연결할 수 있습니다. 이 이용약관에서는 예약과 관련된 정책을 자세히 설명합니다. '공급업체 이용약관'이라는 링크를 사용하여 찾기 쉬운 위치에 다음의 링크를 배치합니다.
영어 버전은 여기에서 확인하실 수 있습니다.
다른 버전은 여기에 나와 있습니다.
예시:

GR4: Expedia Group MoR - 신용카드 규정과 관련된 적절한 사용 및 표시.
최종 고객의 카드 소지자 데이터를 획득, 사용, 전송, 저장 또는 처리하는 경우 PCI 보안 표준 협의회에서 발행한 PCI DSS를 준수해야 합니다. 이러한 규정에 대한 전체 참조는 공식 PCI 보안 표준 사이트 에서 확인할 수 있습니다.
GR5: Expedia Group MoR 또는 숙박 시설 수집 - 해당 파트너를 위해 제공된 PCI 준수 증거입니다.
Expedia Group 또는 숙박 시설가 MoR인 경우 PCI 준수 증빙 자료로 준수 증명(AOC)을 제공해야 합니다. PCI 규정 준수에 관한 조언은 공식 PCI 보안 표준 사이트 에서 확인할 수 있습니다.
검색 페이지
SP1: 제휴사가 어린이 동반 예약을 허용하는 경우 적절한 메시지와 어린이 나이 입력 기능 구현
통합에서 어린이 여행객을 허용하는 경우, 각 어린이 여행객의 연령을 지정할 수 있는 기능을 제공해야 합니다. check-in. 이 정보는 occupancy
요소를 통해 제공됩니다(아래 코드 샘플 참조).
고객이 어린이 여행객을 명시하는 경우 API 응답에는 나이 제한 및/또는 추가 투숙 인원 또는 유아용 침대 요금이 포함될 수 있으며, 이는 예약 유효성 또는 예약 요금에 영향을 줄 수 있습니다.
모든 호텔은 어린이로 분류하는 연령 범주를 구성합니다. 일반적으로 만 17세 이하의 개인을 어린이로 간주합니다. 일부 숙박 시설은 만 18세 미만을 허용하지 않습니다.
API 요청 예:
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
API 응답 예:
"occupancies": {
"2-9,4" : {
"nightly": [
[
사용자 인터페이스 예시: 성인 2명과 만 9세, 4세 어린이 2명이 투숙하는 객실 1개

호텔/객실 예약 가능 여부
AP1: 각 객실에 대한 침대 유형 설명 제공
조회 응답에서 bed_groups
배열을 단일 값 또는 복수의 옵션으로 반환할 수 있습니다. 고객의 침대 선택 사항을 설명하기 위해 구성 배열에 포함된 값을 표시합니다.
bed_groups
배열이 복수의 옵션을 반환하는 경우 고객이 각 침대 유형을 선택할 수 있도록 조회 응답에서 제공된 price_check
링크를 표시합니다.
요청 시에만 동일한 객실의 여러 침대 유형 중 하나를 선택할 수 있으며, 예약 가능 객실이 없는 경우 호텔에서 요청을 접수하지 않을 수 있다는 메시지를 여행객에게 표시해야 합니다.
객실 이름은 조회 응답의 객실 배열에 room_name
으로 반환됩니다.
API 응답 예:
"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 가용성은 refundable=false
Shop 가용성 응답에 으로 표시됩니다. 예약 가능 여부 응답으로 refundable=false
이 반환되면 해당 객실에 명확하게 표시하세요. 이 값은 언제나 기타 정책 데이터보다 우선적으로 적용됩니다. 이러한 예약은 어떠한 경우에도 숙박 시설에 의해 환불되지 않습니다.
API 응답 예:
"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",
사용자 인터페이스 예:

AP3: 체크인 및 특별 체크인 지침 표시
checkin
, checkout
, fees
, policies
개체의 콘텐츠는 각 객실에 대해 숙박 시설 콘텐츠 정의에 반환된 대로 표시해야 합니다. 이러한 정보는 고객이 체크인 시 잠재적으로 발생 가능한 수수료 또는 특별 이용 방법에 대해 분명히 알 수 있도록 예약 가능 여부 페이지에 표시되어야 합니다.
special_instructions
필드에는 checkin
개체의 instructions
필드에 포함되지 않은 check-in 에 중요한 정보(예: 숙박 시설에 도착 예정 시간, check-in 게스트 건물과 다른 위치, 숙박 시설에서 이메일을 통해 특별 check-in 안내를 기대하라는 알림 등)가 포함될 수 있습니다.
동일한 영역에서 instructions
및 special_instructions
를 여행객에게 표시해야 합니다.
API 응답 예:
"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."
사용자 인터페이스 예:

예약 페이지
BP1: 개인정보에 대한 SSL 암호화 지원
개인정보를 전송하거나 송신할 때 SSL 암호화를 사용하여 클라이언트 브라우저/앱과 사이트 간의 연결 및 종속 시스템과의 네트워크 통신을 보호해야 합니다. 개인정보에는 고객 이름, 전화번호 또는 이메일, 결제 카드 세부 정보, 예약/일정 영수증 및 확인 페이지가 포함됩니다. 보안 상태가 아닌 경우 연결을 중지하거나 리디렉션합니다.
BP2: 체크인 및 특별 체크인 지침 표시
checkin
, checkout
, fees
, policies
개체의 콘텐츠는 각 객실에 대해 숙박 시설 콘텐츠 정의에 반환된 대로 표시해야 합니다. 고객이 예약을 확정하기 전에 체크인 또는 특별 이용 방법에서 잠재적 수수료를 확인할 수 있도록 이 정보를 표시해야 합니다.
special_instructions
필드에는 checkin
개체의 instructions
필드에 포함되지 않은 check-in 에 중요한 정보(예: 숙박 시설에 도착 예정 시간, check-in 게스트 건물과 다른 위치, 숙박 시설에서 이메일을 통해 특별 check-in 안내를 기대하라는 알림 등)가 포함될 수 있습니다.
동일한 영역에서 instructions
및 special_instructions
를 여행객에게 표시해야 합니다.
BP3: 취소 정책 및 환불 불가 태그를 명확히 표시
최종 예약 페이지에서 고객의 구매 확인을 허용하기 전에 선택한 객실에 대한 취소 정책/환불 불가 태그를 제공해야 합니다. 각 요금에 대한 취소 정책은 Rapid 예약 가능 여부 조회 API의 cancel_penalties
개체 내에서 제공됩니다.
환불 가능 요금의 경우 응답에 일련의 취소 정책 세부 정보가 포함됩니다. 세부 정보에는 지정된 위약금의 시작일과 종료일, 위약금 유형 및 금액, 적용되는 예외 예약 날짜가 포함됩니다. 위약금 유형에는 고정 금액, 숙박 일수 기준 금액, 총 비용에 대한 백분율이 있습니다.
응답 | 의미 |
---|---|
refundable=true | 전액 환불 가능한 요금입니다. |
refundable=true + cancel_penalties | • 이 요금은 취소 기간 동안 환불이 가능합니다. • 가장 빠른 cancel_penalties.[].start 이 무료 취소 기한(향후 일정인 경우)입니다.• 요금은 100% non-refundable 최신 이후 cancel_penalties.[].end |
refundable=false | • 이 요금은 다음과 같습니다. non-refundable. • 취소 위약금 발생 기간이 반환되지 않습니다. |
refundable=false + cancel_penalties | • 요금은 부분적으로 환불될 수 있습니다. • cancel_penalties 와 함께 nonrefundable_date_ranges 이 범위의 숙박 날짜는 예약이 생성되면 환불되지 않음을 표시해야 합니다. |
취소 정책 구성 방법에 대한 보다 자세한 정보는 여기에서 확인하실 수 있습니다.
참조:
refundable=false
: - 환불 불가 금액은 예약이 생성되는 즉시 발생하며,cancel_penalties
및nonrefundable_date_ranges
에서 추가 정보가 제공됩니다.nonrefundable_date_ranges
: - 이 범위에 해당하는 숙박 날짜의 경우 예약이 생성되면 환불이 불가합니다.cancel_penalties
: -nonrefundable_date_ranges
에 해당하지 않는 숙박 날짜에 적용됩니다.cancel_penalties
항목이 비어 있거나 반환되지 않은 경우 해당 요금은 전액 환불 불가 요금입니다.cancel_penalties
기간에 취소하는 경우 위약금이 발생합니다.- 가장 빠른
cancel_penalties.[].start
는 무료 취소 기한이며, 미래의 일정인 경우 가장 늦은 날짜인cancel_penalties.[].end
후에는 요금이 100% 환불되지 않습니다.
API 응답 예:
전액 환불 가능:
"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"
환불 불가:
"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",
일부 환불 가능:
"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"
}
],
사용자 인터페이스 예:

BP4: 요금 내역에 숙박 시설에 지불해야 하는 요금 별도 표시
fees
배열에서 요금이 반환되면 숙박 시설에서 체크인 또는 체크아웃 시 지불해야 할 요금으로 각 값을 개별 표시해야 합니다. 여행자에게 현지 통화를 제시하고 환전을 요청하세요. 이러한 요금은 익스피디아 그룹이나 현지 정부가 아닌 숙박시설에서 직접 징수하며, 세금 및 수수료 항목에 포함된 표준 세금 회수 비용, 세금 또는 수수료의 일부가 아닙니다.
API 응답 예:
"fees" : {
"resort_fee": {
"request_currency": {
"value": "74.97",
"currency": "USD"
},
"billable_currency": {
"value": "74.97",
"currency": "USD"
},
"scope": "per_accommodation",
"frequency": "per_night"
}
},
사용자 인터페이스 예:

BP7: 해당하는 경우 어린이 연령 요소 반복 표시
통합에서 어린이 여행객을 허용하며 고객이 객실 선택 시 어린이 여행객을 지정한 경우, 예약 페이지에서 어린이 여행객의 인원 수와 각 연령을 명확히 확인해야 합니다. 이 정보는 child_ages
요소를 통해 제공됩니다.
BP8: 익스피디아 그룹 MoR 또는 자산 수집: 최종 여행자로부터 대금을 수령할 시기를 명시합니다.
익스피디아 그룹 MoR인 경우, 제공한 신용카드로 예약 금액 전액이 즉시 청구됨을 명시하세요.
Property Collect일 경우 숙박 시설에서 체크인 또는 체크아웃 시 신용카드로 요금이 청구된다고 명시해야 합니다. 숙박 시설에서 환불 불가 후불제 요금을 제공하는 경우 예약을 완료한 직후에 숙박 시설에서 고객에게 요금을 청구할 수도 있다는 점을 대신 명시해야 합니다.
BP9: 유럽 경제 지역 규정 준수: PSD2(결제 서비스 지침 2)
EEA(유럽 경제 지역)의 고객과 거래하고자 하는 모든 파트너는 PSD2를 준수해야 합니다. 자세한 내용은 여기에서 확인해 보세요.
익스피디아 그룹 MoR 또는 숙소 수집.
익스피디아 그룹이 MoR이거나 유럽 고객에게 숙소 수집을 사용하는 경우, 예약 경로에 2단계 인증을 위한 Rapid의 API를 채택해야 합니다.
제휴 MoR - 일반.
파트너는 규제 범위 내에 있는 고객과 거래할 때 PSD2 규정의 SCA(엄격한 고객 인증) 요구 사항을 준수해야 합니다. 지침 전문은 유럽 연합 위원회에서 확인하실 수 있습니다. 채택 가능한 준수 표준에 대한 추가 정보는 EMVCo의 “3D 보안 프로토콜 및 핵심 기능 사양”에 나와 있습니다.
제휴 MoR - 법인 카드 또는 가상 카드.
EEA 내 국가에서 발급된 파트너 소유 카드로 익스피디아 그룹에 결제하는 파트너는 PSD2 규정의 요건을 준수해야 합니다. 파트너는 B2B 결제를 준수하고 2FA(2단계 인증)의 적용을 받지 않는 카드를 사용하여 PSD2 2FA의 필요성을 경감할 수 있습니다.
규정 준수 옵션에는 다음이 포함됩니다.
- 일회용 가상 카드
- 회사에 등록된 다회용 법인카드(개인용 제외) 특별한 프로필 구성이 필요합니다.
API 요청 예:
https://api.ean.com<Price Check link from previous availability request>
API 응답 예:
{
"status": "available",
"occupancy_pricing": {... },
"links": {
"payment_session": {
"method": "POST",
"href": "/v3/payment-sessions?token=XXXX"
}
}
}
BP10: Expedia Group MoR - 결제 페이지에 표시되는 결제 처리 위치
익스피디아 그룹이 MoR인 경우, 결제가 처리되는 국가는 결제 페이지의 눈에 잘 띄는 위치에 표시되어야 합니다. 국가 이름 앞에는 '이 결제가 처리되는 국가:'라는 문구를 삽입해야 합니다.
조회 API의 결제 옵션 기능을 사용하여 이 정보를 검색합니다.
API 요청 예:
https://api.ean.com<payment-options link from previous availability request>
API 응답 예:
"credit_card": {
"name": "Credit Card",
"card_options": [
{
"name": "MasterCard",
"processing_country": "US"
},
{
"name": "Visa",
"processing_country": "US"
}
]
}
사용자 인터페이스 예:

확인 이메일/바우처
모바일 앱에서 호스팅 바우처를 제공할 경우 계속해서 아래의 요구 사항을 준수해 주세요.
ER1: 일정 ID의 적절한 표시
CDS만 해당
통합을 통해 익스피디아 그룹의 itinerary_id
을 고객에게 직접 제공하는 경우, 확인 이메일에 이 번호를 명확하게 표시해야 합니다.
해당되는 경우, 여행사 직원은 익스피디아 그룹 고객 지원팀의 도움이 필요한 경우 원래의 익스피디아 그룹 여정 ID에 액세스할 수 있다는 증거를 제시해야 합니다.
A2A
상담원은 익스피디아 그룹 고객 지원팀의 도움이 필요한 경우 원래의 익스피디아 그룹 여정 ID에 액세스할 수 있어야 합니다.
ER2: 온라인 고객 서비스 도구 링크를 비롯한 고객 지원 요소를 명확하게 표시
예약 흐름 또는 확인 이메일에 고객 지원 채널을 명확하게 표시합니다(예: 전화번호 또는 실시간 채팅). 익스피디아 그룹 상담원이 고객에게 직접 지원을 제공하는 경우, 예약 흐름에 익스피디아 그룹 지원 번호를 표시하세요.
ER3: 각 객실에 대한 침대 유형 설명 제공
확인 이메일/바우처에 여행객이 요청한 침대 유형을 표시하고, 요청 시에만 동일한 객실의 여러 침대 유형 중 하나를 선택할 수 있으며, 예약 가능한 객실에서 제공되지 않을 경우 요청이 받아들여지지 않을 수 있다는 점을 여행객에게 메시지로 표시해야 합니다.
고객의 침대 선택 사항을 설명하기 위해 구성 배열에 포함된 값을 표시합니다.
ER4: 체크인 및 특별 체크인 지침 표시
checkin
, checkout
, fees
, policies
개체의 콘텐츠는 각 객실에 대해 숙박 시설 콘텐츠 정의에 반환된 대로 표시해야 합니다. 이러한 정보는 고객이 체크인 시 잠재적으로 발생 가능한 수수료 또는 특별 이용 방법에 대해 분명히 알 수 있도록 예약 가능 여부 페이지에 표시되어야 합니다.
special_instructions
필드에는 checkin
개체의 instructions
필드에 포함되지 않은 체크인에 중요한 정보(예: 예상 도착 시간, 숙소 건물과 다른 장소에서의 체크인, 이메일을 통한 숙소의 특별 체크인 지침 알림 등)가 포함될 수 있습니다.
동일한 영역에서 instructions
및 special_instructions
를 여행객에게 표시해야 합니다.
ER5: 요금 내역에서 숙박 시설에 지불해야 할 요금 별도 표시
fees
배열에서 요금이 반환되면 숙박 시설에서 체크인 또는 체크아웃 시 지불해야 할 요금으로 각 값을 개별 표시해야 합니다. 이러한 요금은 익스피디아 그룹이나 지방 정부가 아닌 숙박시설에서 직접 징수하며, 표준 세금 환급 수수료에 포함되지 않습니다.
기술 및 제재 요구 사항
TR1: 각 예약 요청에 고유한 제휴사 참조 ID를 입력합니다.
모든 예약 요청에 대해 affiliate_reference_id
요소를 사용해야 합니다:
- 자체 추적
- 복수의 양식 제출로 인한 중복 예약 방지/중복 청구 방지
- 예약 시간이 초과되었거나 업스트림 시간 초과로 인해 여정이 비어 있는 경우 익스피디아 그룹 시스템에서 여정을 확인합니다.
{
"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: 각 요청에 여행객 국가 코드 제공
- 여행객
country_code
가 조회 및 추천 API 요청에서 전달되어야 합니다. 국가 코드는 고객이 액세스하는 POS와 일치해야 합니다. - 이 요건은 익스피디아 그룹 시스템이 고객에게 관련 콘텐츠와 판매 시장에 따라 가장 적합한 요금을 제공하도록 보장합니다.
API 요청 예:
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: 청구 정보
TR3a) 결제자 이름
- 고객, 법인 및 가상 카드:
- 파트너는 익스피디아 그룹에서 카드 대금을 청구하는 카드 소유자의 이름을 보내야 합니다.
- 제휴 수집/EAC 파트너의 경우:
- 가능한 경우, 익스피디아 그룹은 파트너가 예약에 대한 실제 최종 결제자의 이름을 보낼 것을 강력히 권장합니다.
- 이 정보는 규제/제제 심사에 반드시 필요한 필수 정보입니다.
- 실제 최종 결제자의 이름을 제공할 수 없는 경우, 익스피디아 그룹에 대금을 지불하는 파트너의 회사/법인의 이름을 입력하세요.
참고: POS가 러시아, 우크라이나 또는 베네수엘라인 경우 항상 실제 결제자 정보가 필요합니다.
TR3b) 청구 국가
청구 담당자/결제자 이름 필드에 전달된 각 이름을 표시해야 합니다.
TR3c) 청구 우편번호
청구 담당자/결제자 이름 필드에 전달된 각 이름을 표시해야 합니다.
우편번호가 없는 국가라면 해당 정보를 제공할 필요가 없습니다.
"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: 고객 이메일 주소 또는 모니터링되는 메일함 제공
각 일정의 이메일 요소에는 여행객의 이메일 주소 또는 통합에서 확인 이메일 처리를 위해 모니터링하는 메일함이 포함되어야 합니다. 이는 예약에 분쟁이나 문제가 발생할 경우 필요합니다.
TR5: 정확한 여행객 정보 제공
TR5a) 여행객 이름
익스피디아 단체 예약은 항상 예약된 각 객실에 투숙하는 실제 여행자의 이름으로 제출해야 합니다. 즉, 예약 요청 본문에서 given_name
객체 내의 family_name
및 rooms
값은 각 객실의 체크인하는 주 게스트의 이름과 성이 일치해야 합니다.
TR5b) 여행객 전화번호
예약에는 여행객의 유효한 연락처 번호가 포함되어야 합니다. 각 일정의 예약 요청 전화번호 필드에 해당 번호를 기입해 주세요. 파트너의 에이전트가 최종 고객에게 직접 지원을 제공하는 경우, 익스피디아 그룹은 여행자에게 연락하지 않습니다.
TR6: 여러 객실 예약
여러 객실 예약이 지원될 경우 예약 후 취소된 각 객실을 보여주는 테스트 예약에 대한 API 요청과 응답 로그를 제공합니다.
각 예약 객실에 별도의 확인 ID가 생성되므로, 객실을 따로 취소할 수 있습니다. 모든 객실을 취소하려면 일정의 모든 확인 ID에 대해 취소 요청을 완료해야 합니다.
익스피디아 그룹은 API 또는 템플릿을 통해 8개 이상의 객실 단체 예약을 직접 제공하지 않습니다. 8개 이상의 객실을 예약해야 하는 경우 익스피디아 그룹 담당자가 안내해 드립니다.
TR7: Rapid 오류 처리 권장 사항
Rapid 오류 처리 권장 사항을 참조하여 오류를 처리할 로직을 구현했는지 확인해 주세요.