Developer Hub
자동 생성된 번역입니다.

참고: 이 기능은 현재 시범 운영 기간의 일환으로 일부 파트너에게만 제공되고 있습니다. 2026년 3분기에 더 광범위하게 서비스를 출시할 예정입니다. 이 기능에 관심이 있으시면 담당 계정 관리자에게 문의해 주십시오.

어떤 이유로든 취소 가능

여행객들이 non-refundable 예약을 취소하고 호텔 요금 전액을 환불받을 수 있는 유연성을 제공해 주세요

Trip Protection API는 이미 Rapid Lodging API를 연동한 사용자를 위한 새로운 선택적 기능입니다. 이를 통해 적격 숙박 예약에 ‘어떤 이유로든 취소 가능(CFAR)’ 옵션을 적용하여, 여행객들이 ‘ non-refundable ’ 예약을 유연하게 취소하고 호텔 요금 전액을 환불받을 수 있도록 합니다.

CFAR이란 무엇인가요?

CFAR이 도입됨에 따라 여행객들은 체크인 전까지 ‘ non-refundable ’ 숙박 예약을 취소하고 호텔 요금을 전액 환불받을 수 있습니다. CFAR은 전통적인 여행 보험이 아닌 여행 서비스로, 별도의 취소 사유나 청구 절차가 필요하지 않습니다. 여행자는 어떤 이유로든 추가 서류 제출 없이 예약을 취소할 수 있습니다.

CFAR은 다음과 같은 도움을 드립니다:

  • lower-priced non-refundable 의 광고 재고에서 전환율 높이기
  • 여행객들이 ‘ non-refundable ’ 요금으로 예약할 때 안심할 수 있도록 하세요
  • 취소 절차와 관련된 번거로움을 줄이세요
  • 수작업 청구 처리를 도입하지 않으면서도 유연성을 확보하십시오

CFAR 표시 예시

CFAR UI 일러스트레이션

참고: 이 예시는 설명을 위한 목적으로만 제공됩니다.

인증

Trip Protection API를 연동하기 전에, Rapid Lodging API(가용성/검색, 가격 조회 및 예약 엔드포인트)가 이미 운영 중이어야 합니다. 인증 방식은 Rapid Lodging API와 마찬가지로 서명 인증을 통해 이루어집니다.

>> 서명 인증에 대해 알아보기

이 권한 범위를 귀하의 인증 정보에 추가하려면 담당 계정 관리자에게 문의하십시오.

작동 방식

CFAR 통합은 업무에 미치는 지장을 최소화합니다. 가용성/검색, 예약 및 취소(1, 4, 6단계)와 관련된 기존 Rapid Lodging 요청 페이로드에는 변경 사항이 없습니다. 이 새로운 동작은 가산적이므로, CFAR 제안에 따라 조치를 취하지 않으면 통합 결과에 아무런 변화가 없을 것입니다.

CFAR 및 신속 숙박 서비스

CFAR 기능을 사용할 때, 여행자가 주로 상호작용하는 방식은 두 가지가 있습니다. 첫 번째는 상품 검색이나 예약이며, 두 번째는 기존 예약 관리입니다.

CFAR과 Lodging의 연동

1단계: 숙박 요금 검색하기

변경할 사항이 없습니다.

이것은 일반적인 ‘Rapid Lodging’ 예약 가능 여부 확인 및 예약 문의 전화입니다. 요청 또는 응답 처리에 대한 수정 사항은 필요하지 않습니다.

2단계: Price Check API 호출

이것은 Rapid Lodging의 표준 요금 확인 전화입니다. 요청 내용에 변경할 사항은 없습니다.

특정 요금이 CFAR 적용 대상이며 예약 시점에 이용 가능한 경우, ‘Price Check’ 응답의 ‘ add_trip_protection ’ 객체에는 ‘ book ’ 링크와 함께 ‘ links ’ 링크가 포함됩니다. 이 링크를 통해 여행객에게 CFAR 옵션을 제안해야 합니다.

가격 조회 응답 샘플 링크 객체 (CFAR-eligible 요금)

"links": {
  "book": {
    "method": "POST",
    "href": "/v3/itineraries?token=MY5S3j36cOcL",
    "expires": "2025-10-13T16:10:00.000+01:00"
  },
  "add_trip_protection": {
    "method": "GET",
    "href": "/v1/trip-protection/quote?token=MY5S3j36cOcLfLBZjPYQ1abhfc8CqmjmFVzkk7euvWaunE57LLeDgaxm516m",
    "expires": "2025-10-13T16:10:00.000+01:00"
  }
}

참고:add_trip_protection ’ 링크는 해당 요금이 이용 가능하고 CFAR 적용 대상인 경우에만 표시됩니다.

3단계: 여행 보험 견적 받기

종점: GET /v1/trip-protection/quote?token={token}

이 단계는 선택 사항으로, 선택한 요율에 대한 전체 CFAR 견적을 조회합니다. 2단계에서 반환된 href 링크에 있는 ‘ add_trip_protection ’를 요청 URL로 사용하십시오.

응답 내용에는 다음이 포함되어 있습니다:

  • 제품 상세 정보: 제품명, 유형, 공급업체 및 등록 판매자
  • 보험 약관 세부 사항: 보장 기간, 보장 비율 및 한도, 마케팅 문구(제목, 개요, 혜택), 면책 조항, 그리고 보험 약관 문서 링크
  • 가격 정보: CFAR 가격(trip_protection_price) 및 숙박비 + 보호비 합계(totals)는 각각 청구 통화 및 요청 통화로 표기되어 있으며(세금/수수료 포함 및 미포함),
  • 취소 시 부과되는 위약금: 보호 상품 자체를 취소할 경우 적용되는 위약금
  • 예약 링크: 4단계에서 ‘ links.book_with_trip_protection ’ 매개변수를 사용하여 CFAR을 통해 예약합니다.

필수 헤더

헤더필수 항목참고
Accept반드시 application/json 형식이어야 합니다.
Accept-Encodinggzip이어야 함
Customer-IpEnd-traveler's IPv4 주소 (사용자 서버의 주소가 아님)
User-Agent고객님의 user-agent 또는 {app-name}/{app-version}
Customer-Session-Id아니요사용자 세션마다 고유하며, 동일한 세션 내의 호출 간에는 re-use 가 적용됩니다.
Test아니요샌드박스 테스트용: standard, service_unavailable, unknown_internal_error

예시: 견적 응답

{ 
  "policy": { 
    "start_date": "2026-08-28T10:40:49Z", 
    "end_date": "2026-08-30T08:00:00+01:00", 
    "coverage": { 
      "limit": { 
        "value": "709.72", 
        "currency": "USD", 
        "percent": "100%" 
      } 
    } 
  }, 
  "content": { 
    "product_name": "CFAR upgrade", 
    "headline": "Make your stay refundable", 
    "overview": "Get a refund on your accommodation with the Cancel For Any Reason (CFAR) upgrade.", 
    "benefits": [ 
      { 
        "title": "Get a 100% refund of your accommodation cost", 
        "description": null 
      }, 
      { 
        "title": "Cancel before 8:00am property time on the day of check-in", 
        "description": null 
      }, 
      { 
        "title": "No questions asked, no paperwork", 
        "description": null 
      } 
    ], 
    "disclaimer_html": "<p>By purchasing, I agree to all Cancel For Any Reason <a href=\"https://policy.example.com/pds/example\">Terms and Conditions</a>.</p>", 
    "links": { 
      "terms_and_conditions": { 
        "method": "GET", 
        "href": "https://policy.example.com/pds/example?policy_type=cfar_v1", 
        "expires": null 
      } 
    } 
  }, 
  "pricing": { 
    "trip_protection": { 
      "inclusive": { 
        "billable_currency": { 
          "value": "149.04", 
          "currency": "USD" 
        }, 
        "request_currency": { 
          "value": "149.04", 
          "currency": "USD" 
        } 
      }, 
      "exclusive": { 
        "billable_currency": { 
          "value": "149.04", 
          "currency": "USD" 
        }, 
        "request_currency": { 
          "value": "149.04", 
          "currency": "USD" 
        } 
      } 
    }, 
    "totals": { 
      "inclusive": { 
        "billable_currency": { 
          "value": "858.76", 
          "currency": "USD" 
        }, 
        "request_currency": { 
          "value": "858.76", 
          "currency": "USD" 
        } 
      }, 
      "exclusive": { 
        "billable_currency": { 
          "value": "858.76", 
          "currency": "USD" 
        }, 
        "request_currency": { 
          "value": "858.76", 
          "currency": "USD" 
        } 
      } 
    } 
  }, 
  "refundable": false, 
  "expires_at": "2026-08-29T22:59:59Z", 
  "cancel_penalties": [ 
    {
      "start": "2026-08-28T10:40:49Z", 
      "end": "2026-08-30T07:00:00Z", 
      "currency": "USD", 
      "amount": "709.72", 
      "percent": "100%" 
    } 
  ], 
  "links": { 
    "book_with_trip_protection": { 
      "method": "POST", 
      "href": "/v3/itineraries?token=QldfCGlcUA4", 
      "expires": null 
    } 
  } 
}

4단계: 예약 API 호출

여행자가 적격 예약에 대한 CFAR 견적을 수락하면, 토큰에 견적 정보가 포함된 book_with_trip_protection 링크를 통해 예약이 진행됩니다. 도서 요청 스키마에는 변경할 사항이 없습니다.

새로운 링크는 표준 Rapid Lodging Booking 호출(POST /v3/itineraries)의 일부로 전달됩니다. 사용할 예약 링크는 여행자가 CFAR에 가입했는지 여부에 따라 달라집니다.

여행객이 선택한 곳이용할 예약 링크
CFAR와 함께links.book_with_trip_protection 3단계 인용문 응답에서
CFAR 없이links.book ‘2단계 가격 확인’ 응답에서

예약 요청이나 응답에 새로운 필드가 추가되지 않습니다. CFAR은 예약 링크에서 어떤 토큰이 사용되는지에 따라서만 활성화됩니다.

참고: 견적 응답에 포함된 links.book_with_trip_protection 토큰은 만료됩니다( expires 필드 참조). 토큰 만료 시간 전에 예약이 제출되도록 하십시오.

5단계: 예약 내역 조회하기

요청 내용에 변경 사항이 없습니다.

이것은 Rapid Lodging GET /v3/itineraries/{itinerary_id} 의 표준 안내 전화입니다.

CFAR이 구매되면, 일정 응답에는 구매한 상품의 정책 및 가격 세부 정보가 포함된 추가적인 trip_protection 객체가 포함됩니다. CFAR을 구매하지 않은 경우, 일정 응답에는 아무런 변화가 나타나지 않습니다.

또한, CFAR이 활성화된 경우, 일정 내의 cancel_penalties 객체에 있는 ‘ refundable ’ 및 ‘ rate ’ 필드는 기본 요율의 취소 정책이 아닌 CFAR 정책을 반영합니다.

예시: 일정 응답에서 trip_protection 객체가 표시됨

{ 
  "trip_protection": { 
    "product_name": "Cancel For Any Reason (100% Refund)", 
    "product_type": "hotel_cancel_for_any_reason", 
    "vendor": "[vendor]", 
    "merchant_of_record": "expedia", 
    "eligibility_status": "eligible", 
    "policy": { 
      "start_date": "2025-10-13T15:59:00.000Z", 
      "end_date": "2025-10-18T08:00:00.000-08:00", 
      "coverage": { 
        "percentage": "100%", 
        "limit": { 
          "inclusive": { 
            "billable_currency": { 
              "value": "702.00", 
              "currency": "USD" 
            } 
          }, 
          "exclusive": { 
            "billable_currency": { 
              "value": "702.00", 
              "currency": "USD" 
            } 
          } 
        } 
      }, 
      "links": { 
        "policy_wording": { 
          "method": "GET", 
          "href": "https://policy.example.com/pds/example?policy_type=cfar_v1", 
          "expires": null 
        } 
      } 
    }, 
    "pricing": { 
      "inclusive": { 
        "billable_currency": { 
          "value": "702.00", 
          "currency": "USD" 
        } 
      }, 
      "exclusive": { 
        "billable_currency": { 
          "value": "702.00", 
          "currency": "USD" 
        } 
      } 
    } 
  }, 
}

참고: Retrieve 응답에 표시된 trip_protection 가격은 청구 통화로만 표시됩니다. 요청 통화 등을 포함한 전체 내역은 원본 견적서 응답을 참조하십시오.

6단계: 예약 취소하기

요청 내용에 변경 사항이 없습니다.

이것은 Rapid Lodging의 표준 취소 안내 전화입니다. 예약과 관련하여 CFAR을 구매한 경우, 예약을 취소하면 자격 요건에 따라 여행객을 대신하여 환불 청구가 자동으로 처리됩니다. 취소 가능 기간(예: check-in), 당일 오전 8시까지)을 벗어나서 취소를 시도할 경우, 환불이 처리되지 않습니다. 귀사의 구현과 관련하여 별도의 조치가 필요하지 않습니다.

환불 처리는 전적으로 다음에서 담당합니다. Expedia Group. 여행객은 표준 보상 처리 절차를 통해 해당 환불금을 받게 됩니다.

API 세부 정보

이 페이지에서 Trip Protection-related 엔드포인트 정의를 살펴본 후, API Explorer 또는 다른 테스트 소프트웨어를 사용하여 예제와 스키마 정의가 실제 출력 결과와 어떻게 다른지 확인해 보십시오.


참고: 이 스키마 파일은 평가 목적으로만 제공됩니다. 이 기능이 정식 출시되기 전까지, 호환성 변경 사항을 포함한 다양한 변경 및 개선이 이루어질 가능성이 높습니다.

이 페이지가 도움이 되었나요?
이 콘텐츠를 어떻게 개선하면 좋을까요?
더 나은 Developer Hub를 만드는 데 도움을 주셔서 감사합니다!