總覽
ARI 交易 (資源資料) 訊息會定義各項
房源的房型和套裝行程 (或房價方案)。每種房型的資料包括
專屬 ID (RoomID
)、本地化名稱、說明和客房網址
相簿。每個套件資料都包含一個經過本地化的專屬 ID (PackageID
)
名稱、說明、可住人數和附加價值
您可以使用交易訊息執行下列操作:
- 定義一或多個資源的資料。
- 定義每個房源的客房類型和套件資訊。
- 控管產品項目。
此外,您也可以設定下列動作:
請在房源中新增客房類型和套件。
請從房源中移除房型和套裝方案。
如需交易訊息範例,請參閱「交易 (資源資料)」一文 範例。
必要和選用元素
XML 參考資料 提供必要和選用元素的說明。如要進一步瞭解屬性和子元素,請參閱「交易 (資源資料) 元素和屬性」。
語法和結構定義
使用「交易 (資源資料)」 語法 建立交易訊息 您使用了正確的格式。
您可以使用 xmllint 等第三方 XML 工具,使用 已公開的結構定義,再提交給 Google針對交易 訊息結構定義,請參閱「飯店廣告」一文 結構定義
指南規範
建立交易訊息時應遵循下列規範:
- 行動:
delta
:用於新增或更新新的房型和套裝方案 (費率方案)。overlay
:用於將房源的所有房型和套裝行程替換為新組合。必須提供所有房型和費率方案的資訊 你要銷售不合適的內容- 支援的語言:
在「名稱」、「說明」和「標題」欄位中,指定一或兩種語言 (英文,以及必要時的房源當地語言)。你可以新增更多 只需使用兩種語言
- 房型和套裝方案:
更新房型或包裹時,請務必傳送所有相關 該房型或套件的資訊舉例來說,新增相片時,您必須一併提供名稱和說明。
<AllowablePackageIDs>
和<AllowableRoomIDs>
是選用項目。如果不設定, 可建立房型和房價方案的組合。您還是必須 透過房型和房價方案 ID 傳送供應情形和房價。這些 元素可讓您控制產品,並停用 系統不再支援。每當房間有異動時,傳送交易更新訊息給 Google 類型或包裹,或是有關房型或套裝行程的重要詳細資料 。
,瞭解如何調查及移除這項存取權。
範例
本節提供使用以下語法的 ARI 交易訊息基本範例:
必要和自選元素如要新增或更新房型和套裝行程,請使用 delta
的動作來新增或更新房型和套裝行程,或是使用 overlay
來取代所有房型和套裝行程定義 (刪除舊的項目)。
您必須指定一到兩種語言 (英文和 屬性)。然後 資源資料,包括照片連結。
針對 <PropertyID>
和 <RoomID>
,請使用與您系統中相同的 ID
即可分別套用費率方案和房型。系統的一致性是
必須確保 Google 能正確顯示價格和資料
檔案準備完成後,您必須透過 POST 訊息將檔案傳送給 Google
附加至以下端點:https://www.google.com/travel/hotels/uploads/property_data
如要進一步瞭解如何推送/POST 訊息,請參閱「推送 訊息。
以下範例說明如何使用 delta
設定交易訊息
動作:
<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="202X-XX-XXT00:00:00-0X:00" id="12345678" partner="partner_key">
<PropertyDataSet action="delta">
<Property>PROPERTYID</Property>
<RoomData>
<RoomID>ROOMID</RoomID>
<Name><Text text="ROOM NAME" language="en"/></Name>
<Description>
<Text text="ROOM DESCRIPTION TEXT" language="en"/>
</Description>
<Capacity>4</Capacity>
<PhotoURL>
<Caption><Text text="ROOM PHOTO CAPTION TEXT" language="en"/></Caption>
<URL>https://LINK TO PHOTO</URL>
</PhotoURL>
</RoomData>
<PackageData>
<PackageID>BASE</PackageID>
<Name><Text text="Internet Special" language="en"/></Name>
<Description><Text text="Direct Booking through Hotel Website" language="en"/></Description>
<Refundable available="true" refundable_until_days="2" refundable_until_time="12:00"/>
</PackageData>
</PropertyDataSet>
</Transaction>
如需更多範例 (例如如何使用 overlay
動作),請新增房間類型
加入現有房源資料和套件,並移除現有房型和
套裝方案,請參閱「交易 (資源資料) 」一文
示例。
使用指南
本節提供因應 傳送交易訊息。
情境 1:如何移除房型資料
如何移除現有的房型和/或包裹資料?
說明
你傳送了多種類型的房間,包括國王和皇后的房間 資源。重新裝修期間,所有皇后區的房型皆不提供服務 目前可選擇房型。
解決方案
- 你不必更新 已移除或停用的客房類型和套件 ID。
- 如果房型或套件遭到移除或停用,請傳送新的
含有
action="overlay"
且只包含聊天室的交易訊息 仍有效的類型和套件,並排除已移除的房型類型 或套件
範例
以下 XML 程式碼片段顯示如何使用 overlay
動作移除房型。
以下是包含 King 和 Queen 房型的原始 delta
動作:
<PropertyDataSet action="delta">
<Property>Property_1</Property>
<RoomData>
<RoomID>King</RoomID>
<Name>
<Text text="King" language="en"/>
</Name>
<Capacity>2</Capacity>
</RoomData>
<PackageData>
<PackageID>Standard</PackageID>
<Name>
<Text text="Standard" language="en"/>
</Name>
<Description>
<Text text="Standard rate" language="en"/>
</Description>
<Refundable available="true" refundable_until_days="7" refundable_until_time="18:00:00"/>
<BreakfastIncluded>0</BreakfastIncluded>
</PackageData>
<RoomData>
<RoomID>Queen</RoomID>
<Name>
<Text text="Queen" language="en"/>
</Name>
<Capacity>2</Capacity>
<!-- Additional RoomData child elements omitted. -->
</RoomData>
</PropertyDataSet>
接著,您可以設定 overlay
來移除 Queen 房型,並保留 King 房型:
<PropertyDataSet action="overlay">
<Property>Property_1</Property>
<RoomData>
<RoomID>King</RoomID>
<Name>
<Text text="King" language="en"/>
</Name>
<Capacity>2</Capacity>
</RoomData>
<PackageData>
<PackageID>Standard</PackageID>
<Name>
<Text text="Standard" language="en"/>
</Name>
<Description>
<Text text="Standard rate" language="en"/>
</Description>
<Refundable available="true" refundable_until_days="7" refundable_until_time="18:00:00"/>
<BreakfastIncluded>0</BreakfastIncluded>
</PackageData>
</PropertyDataSet>
情境 2:如何使用 allowablePackageID 控管產品
當套裝方案依房型分組時,如何控制產品 (房型和套裝方案的組合)?
說明
部分套裝方案僅適用於特定房型。適用對象 舉例來說,如果你的房源有四種房型 (包括總統套房), 和六種不同的套件,但只有少數 也可以指定總統大選資格
解決方案
傳送更新後的交易訊息,指定要納入哪些產品
在套件中使用 <AllowablePackageIDs>
。
範例
這個 XML 程式碼片段顯示如何使用 <AllowablePackageIDs>
指定與特定房型搭配使用的套裝方案。這裡的 Penthouse 套房客房類型只允許
頂樓的全包式全包式套裝行程,或免費的早餐套件
特大套房類型只允許 King 全包式套裝行程,
寵物友善包裝。
<RoomData>
<RoomID>penthouse_suite</RoomID>
<AllowablePackageIDs>
<AllowablePackageID>penthouse_all_inclusive</AllowablePackageID>
<AllowablePackageID>free_breakfast</AllowablePackageID>
</AllowablePackageIDs>
<!-- Additional child elements omitted. -->
</RoomData>
<RoomData>
<RoomID>king_suite</RoomID>
<AllowablePackageIDs>
<AllowablePackageID>king_all_inclusive</AllowablePackageID>
<AllowablePackageID>pet_friendly</AllowablePackageID>
</AllowablePackageIDs>
<!-- Additional child elements omitted. -->
</RoomData>
<PackageData>
<PackageID>penthouse_all_inclusive</PackageID>
</PackageData>
<!-- Additional child elements omitted. -->
<PackageData>
<PackageID>free_breakfast</PackageID>
</PackageData>
<!-- Additional child elements omitted. -->
<PackageData>
<PackageID>king_all_inclusive</PackageID>
</PackageData>
<!-- Additional child elements omitted. -->
<PackageData>
<PackageID>pet_friendly</PackageID>
</PackageData>
情境 3:如何使用 allowableRoomID 控管產品
當房型以套裝方案分組時,如何控制產品 (房型和套裝方案的組合)?
說明
房型和套裝組合組合已不再做為產品銷售或你想使用的 來控管新套件內含的項目例如,您想在套裝行程中指定特定房型,例如海景大床房和大床房。
解決方案
傳送更新後的交易訊息,使用 <AllowableRoomIDs>
元素指定套件內含的確切產品。
範例
這個 XML 程式碼片段顯示如何使用 <AllowableRoomID>
指定 Seaview King
和 Queen 型客房類型
<PackageID>RO</PackageID>
<AllowableRoomIDs>
<AllowableRoomID>king_oceanview</AllowableRoomID>
<AllowableRoomID>queen_oceanview</AllowableRoomID>
</AllowableRoomIDs>