Developer Hub
This is an auto-generated translation

任何理由皆可取消

讓旅客能靈活取消 non-refundable 的預訂,並獲得全額飯店退款

請注意:此功能目前僅限部分合作夥伴使用,作為試行階段的一部分。我們預計將於 2026 年第三季進行更廣泛的推出。若您對此功能有興趣,請聯絡您的客戶經理。

簡介

「行程保障 API」是一項新推出的選用功能,適用於已整合 Rapid Lodging API 的使用者。此服務允許符合資格的住宿預訂升級為「任何理由皆可取消」(CFAR)方案,讓旅客能靈活取消 non-refundable 的預訂,並全額退還飯店的已付費用。

什麼是 CFAR?

透過 CFAR 服務,旅客可在入住前取消 non-refundable 的住宿預訂,並獲得全額退款飯店。CFAR 是一項旅遊服務——而非傳統的旅遊保險——無需提供任何合理理由,也無需經過理賠程序;旅客可基於任何理由取消行程,無需額外辦理任何手續。

CFAR 協助您:

  • 提升 lower-priced non-refundable 庫存的轉換率
  • 讓旅客在預訂「non-refundable」房價時倍感安心
  • 減少取消時的摩擦
  • 提供靈活性,同時無需導入人工理賠處理流程

CFAR 現場網站顯示範例

CFAR 使用者介面插圖

請注意:此範例僅供說明之用。

啟動條件

在整合 Trip Protection API 之前,您必須已啟用 Rapid Lodging API (含房況/搜尋、價格查詢及預訂端點)。驗證機制將採用與 Rapid Lodging API 相同的簽名驗證

請聯絡您的客戶經理,將此權限範圍新增至您的憑證中。

運作方式

CFAR 的整合對業務運作的影響極小。您現有的 Rapid Lodging 請求資料包 (適用於「房況查詢/預訂」、「預訂」及「取消」功能,即步驟 1、4 和 6) 無需進行任何變更。此新行為具有累積性,因此若您未接受 CFAR 的提議,您的積分將不會有任何變化。

CFAR 搭配 Rapid Lodging

CFAR 與 Lodging 的整合

步驟 1:查詢住宿價格

無需修改。

這是標準的「快速住宿空房查詢/預訂」電話。無需對請求或回應的處理進行任何修改。

步驟 2:呼叫價格查詢 API

這是 Rapid Lodging 的標準價格查詢電話。無需對該請求進行任何變更。

當某個費率符合 CFAR 資格時,價格查詢 (Price Check) 的回應中,add_trip_protection 物件內的book 連結旁,將會新增一個links 連結。您應使用此連結向旅客提供 CFAR 選項。

範例: 價格查詢回應links 物件 (CFAR-eligible 費率)

{
  "links": {
    "book": {
      "method": "POST",
      "href": "/v3/itineraries?token=QldfCGtcTjIbASj7"
    },
    "add_trip_protection": {
      "method": "GET",
      "href": "/v1/trip-protection/quote?token=QldfCGtcTjIbASj7"
    }
  }
}

註: 僅當該費率符合 CFAR 資格時,才會顯示add_trip_protection 連結。若未顯示連結,則表示該費率不提供 CFAR 服務。

步驟 3:取得旅遊保障報價

終點: GET /v1/trip-protection/quote?token={token}

此為可選步驟,用於擷取所選費率的完整 CFAR 報價。請將步驟 2 中返回的href 連結中的add_trip_protection 作為請求網址。

該回應包含:

  • 產品詳情: 產品名稱、類型、供應商及登記商家
  • 保單詳情: 承保日期、承保比例與限額、行銷文案 (標題、概述、保障內容)、免責聲明,以及保單條款文件的連結
  • 定價: 包含 CFAR 價格 (trip_protection_price) 以及住宿與保障費用的總和 (totals),各項金額均以計費貨幣及請求貨幣兩種形式呈現 (含稅/不含稅及含費/不含費)
  • 取消罰金: 若取消保障產品,將對該產品本身適用之罰金
  • 預訂連結: 在第 4 步中需使用參數「links.book」透過 CFAR 進行預訂

需要的標頭

標頭必填備註
Accept必須是 application/json
Accept-Encoding必須是 gzip 格式
Customer-IpEnd-traveler's IPv4 位址 (非您的伺服器)
User-Agent客戶的 user-agent 或 {app-name}/{app-version}
Customer-Session-Id每個使用者會話皆為唯一;同一會話中的不同呼叫間使用 re-use
Test沙盒測試請參閱:standardservice_unavailableunknown_internal_error

範例: 報價回覆

{
  "product_name": "Cancel for any reason (100% Refund)",
  "product_type": "hotel_cancel_for_any_reason",
  "vendor": "[vendor name]",
  "merchant_of_record": "expedia",
  "policy": {
    "start_date": "2025-10-13T15:59:00.000+01:00",
    "end_date": "2025-10-18T08:00:00.000-08:00",
    "coverage": {
      "percentage": "100%",
      "limit": {
        "inclusive": {
          "billable_currency": { "value": "[amount]", "currency": "USD" },
          "request_currency": { "value": "[amount]", "currency": "USD" }
        },
        "exclusive": {
          "billable_currency": { "value": "[amount]", "currency": "USD" },
          "request_currency": { "value": "[amount]", "currency": "USD" }
        }
      }
    },
    "description": {
      "headline": "Change of plans? You're covered.",
      "overview": "Add flexibility to your stay with Cancel for any reason coverage. Get a refund if you cancel before 8:00 AM property time on [check-in date].",
      "benefits": "<b>Get a refund of 100%: [refund_amount]</b>
<b>Cancel anytime before 8:00 AM property time on [checkin_date]</b>
<b>No questions asked, no paperwork</b>
"
    },
    "disclaimer": "By purchasing, I agree to all Cancel for any reason [policy_terms_link_text] on my itinerary",
    "links": {
      "policy_wording": {
        "method": "GET",
        "href": "https://staging.vendor.com/pds/1ed50cef-49e1-4ff6-acc9-137ba784e472?policy_type=expedia_travel_insurance_v1"
      }
    }
  },
  "pricing": {
    "trip_protection_price": {
      "inclusive": {
        "billable_currency": { "value": "[amount]", "currency": "USD" },
        "request_currency": { "value": "[amount]", "currency": "USD" }
      },
      "exclusive": {
        "billable_currency": { "value": "[amount]", "currency": "USD" },
        "request_currency": { "value": "[amount]", "currency": "USD" }
      }
    },
    "totals": {
      "inclusive": {
        "billable_currency": { "value": "[amount]", "currency": "USD" },
        "request_currency": { "value": "[amount]", "currency": "USD" }
      },
      "exclusive": {
        "billable_currency": { "value": "[amount]", "currency": "USD" },
        "request_currency": { "value": "[amount]", "currency": "USD" }
      }
    }
  },
  "refundable": false,
  "cancel_penalties": [
    {
      "start": "2026-10-13T15:59:00.000+01:00",
      "end": "2026-10-18T08:00:00.000-08:00",
      "currency": "USD",
      "amount": "[amount]",
      "percent": "100%"
    }
  ],
  "links": {
    "book": {
      "method": "POST",
      "href": "/v3/itineraries?token=MY5S3j36cOcL",
      "expires": "2026-10-13T16:10:00.000+01:00"
    }
  }
}

步驟 4:呼叫預訂 API

請求載荷未作任何變更。

這是標準的 Rapid Lodging Booking 電話 (POST /v3/itineraries)。應使用的預訂連結取決於旅客是否已選擇加入 CFAR。

旅客之選預訂連結
透過 CFARlinks.book 摘自第 3 步的引言回應
未採用 CFARlinks.book 摘自「步驟 2 價格查詢」的回覆

預訂請求或回覆中不會新增任何欄位。CFAR 僅會根據預訂連結中使用的代幣而觸發。

注意: 報價回應中的links.book 憑證已過期 (請參閱expires 欄位)。請確保在代幣過期前提交預訂。

步驟 5:檢視預訂

請求內容無變更。

這是 Rapid Lodging 的標準電話號碼:GET /v3/itineraries/{itinerary_id}

當購買 CFAR 時,行程回覆中將包含一個額外的trip_protection 物件,其中載有所購產品的保單及費率詳情。如果您未購買 CFAR,行程表的回覆內容將不會有任何變更。

此外,當 CFAR 生效時,行程中的cancel_penalties 物件上的「refundable」和「rate」欄位將反映 CFAR 政策,而非基礎費率的取消政策。

範例: 顯示trip_protection 物件的行程回應

[
  {
    "itinerary_id": "8999989898988",
    "property_id": "8150374",
    "trip_protection": {
      "product_name": "Cancel for any reason (100% Refund)",
      "product_type": "hotel_cancel_for_any_reason",
      "vendor": "[vendor]",
      "merchant_of_record": "expedia",
      "policy": {
        "start_date": "2026-10-13T15:59:00.000+01:00",
        "end_date": "2026-10-18T08:00:00.000-08:00",
        "coverage": {
          "percentage": "100%",
          "limit": {
            "inclusive": {
              "billable_currency": { "value": "[amount]", "currency": "USD" }
            },
            "exclusive": {
              "billable_currency": { "value": "[amount]", "currency": "USD" }
            }
          }
        },
        "links": {
          "policy_wording": {
            "method": "GET",
            "href": "https://staging.vendor.com/pds/1ed50cef-49e1-4ff6-acc9-137ba784e472?policy_type=expedia_travel_insurance_v1"
          }
        }
      },
      "pricing": {
        "inclusive": {
          "billable_currency": { "value": "[amount]", "currency": "USD" }
        },
        "exclusive": {
          "billable_currency": { "value": "[amount]", "currency": "USD" }
        }
      }
    }
  }
]

註: Retrieve 回應中的trip_protection 價格僅反映可計費貨幣。如需包含請求貨幣在內的完整明細,請參閱原始報價回覆。

第 6 步:取消預訂

請求內容無變更。

這是 Rapid Lodging 的標準取消通知電話。當 CFAR 完成購買後,取消預訂將自動代表旅客提出退款申請。您的實作無需採取任何額外措施。

退款事宜完全由 Expedia Group. 旅客將透過標準理賠流程獲得相應的退款。

API 詳細資料

請瀏覽本頁面的 TripProtection-related 端點定義,然後使用 API Explorer 或其他測試軟體,以了解範例與架構定義與實際輸出結果的對比情況。


註: 此模式檔僅供評估使用。在正式發布之前,系統可能會進行各項變更與優化,其中可能包含會導致相容性問題的重大變更。

這個頁面有幫助嗎?
我們能如何改善內容?
感謝您協助我們進行改善!