Tổng quan
Thông báo Giao dịch ARI (Dữ liệu của cơ sở lưu trú) xác định thông tin về mỗi
loại phòng và gói (hoặc gói giá) của cơ sở lưu trú. Dữ liệu về mỗi loại phòng bao gồm
giá trị nhận dạng duy nhất (RoomID
), tên, nội dung mô tả và URL đã bản địa hoá theo phòng
ảnh. Mỗi dữ liệu gói bao gồm một mã nhận dạng duy nhất (PackageID
), được bản địa hoá
tên, nội dung mô tả, số người lưu trú và giá trị gia tăng.
Bạn có thể sử dụng thông báo Giao dịch để thực hiện những việc sau:
- Xác định dữ liệu cho một hoặc nhiều tài sản.
- Xác định loại phòng và thông tin về gói dịch vụ cho từng cơ sở lưu trú.
- Kiểm soát việc cung cấp sản phẩm.
Ngoài ra, bạn có thể thiết lập các thao tác để thực hiện những việc sau:
Thêm loại phòng và gói dịch vụ vào cơ sở lưu trú.
Xoá loại phòng và gói dịch vụ khỏi cơ sở lưu trú.
Để xem ví dụ về thông báo giao dịch, hãy xem phần Ví dụ về thông báo Giao dịch (Dữ liệu của cơ sở lưu trú).
Phần tử bắt buộc và không bắt buộc
Tài liệu tham khảo XML cung cấp nội dung mô tả về các phần tử bắt buộc và không bắt buộc. Để biết thông tin chi tiết về các thuộc tính và phần tử con, hãy xem Phần tử Giao dịch (Dữ liệu của cơ sở lưu trú) & Thuộc tính.
Cú pháp và giản đồ
Sử dụng bảng Giao dịch (Dữ liệu của cơ sở lưu trú) Cú pháp làm ví dụ để tham khảo khi bạn tạo Thông báo giao dịch để đảm bảo bạn đang làm theo đúng định dạng.
Bạn có thể sử dụng công cụ XML của bên thứ ba như xmllint để xác thực nguồn cấp dữ liệu với các giản đồ được xuất bản trước khi gửi cho Google. Đối với giao dịch giản đồ thông báo, hãy xem Quảng cáo khách sạn Giản đồ.
Nguyên tắc
Hãy làm theo các nguyên tắc sau đây đối với thông báo Giao dịch:
- Việc cần làm:
delta
: Dùng để thêm hoặc cập nhật loại phòng và gói giá mới (gói giá).overlay
: Dùng để thay thế tất cả loại phòng và gói dịch vụ của một cơ sở lưu trú bằng tập hợp mới. Phải bao gồm thông tin về tất cả loại phòng và gói giá bạn vẫn muốn bán.- Ngôn ngữ được hỗ trợ:
Chỉ định một đến hai ngôn ngữ (tiếng Anh và một ngôn ngữ địa phương cho cơ sở lưu trú nếu cần) cho các trường Tên, Mô tả và Phụ đề. Bạn có thể thêm những người khác nhiều hơn 2 ngôn ngữ nếu cần.
- Loại phòng và gói dịch vụ:
Khi cập nhật một loại phòng hoặc gói dịch vụ, bạn phải gửi tất cả thông tin liên quan của loại phòng hoặc gói dịch vụ đó. Ví dụ: khi thêm ảnh, bạn cũng phải thêm tên và nội dung mô tả.
<AllowablePackageIDs>
và<AllowableRoomIDs>
là không bắt buộc và nếu không được đặt, bạn có thể tạo bất kỳ kiểu kết hợp nào giữa loại phòng và gói giá. Bạn vẫn phải gửi tình trạng phòng và giá cùng với mã loại phòng và mã gói giá. Các cho phép bạn kiểm soát sản phẩm cũng như vô hiệu hoá các kết hợp của không còn hỗ trợ nữa.Gửi cho Google thông tin cập nhật về tin nhắn Giao dịch mỗi khi phòng có thay đổi hoặc thông tin quan trọng về loại phòng hoặc gói dịch vụ cần được thêm vào.
Ví dụ:
Phần này cung cấp một ví dụ cơ bản về thông báo Giao dịch ARI sử dụng các phần tử bắt buộc và không bắt buộc. Để thêm hoặc cập nhật loại phòng và gói, bạn sử dụng thao tác cho delta
để thêm hoặc cập nhật loại phòng và gói hoặc overlay
để thay thế tất cả định nghĩa về loại phòng và gói (xoá các mục cũ).
Bạn cần chỉ định một đến hai ngôn ngữ (tiếng Anh và một ngôn ngữ địa phương cho nếu cần) cho các trường Tên, Mô tả và Phụ đề. Sau đó, hãy thêm thông tin dữ liệu cơ sở lưu trú, bao gồm cả đường liên kết đến ảnh.
Đối với <PropertyID>
và <RoomID>
, hãy sử dụng cùng một mã nhận dạng mà bạn dùng trong hệ thống của mình
cho các gói giá và loại phòng (tương ứng). Đảm bảo tính nhất quán với hệ thống
rất quan trọng để đảm bảo rằng Google hiển thị chính xác giá và dữ liệu của bạn.
Sau khi chuẩn bị tệp, bạn phải gửi tệp đó cho Google qua thông báo POST
đến điểm cuối sau: https://www.google.com/travel/hotels/uploads/property_data
Để tìm hiểu thêm về cách đẩy/POST thông báo, hãy xem phần Thông báo đẩy tin nhắn.
Ví dụ sau đây cho biết cách đặt thông báo Giao dịch bằng delta
hành động:
<?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>
Để xem các ví dụ khác, chẳng hạn như cách sử dụng thao tác overlay
, hãy thêm loại phòng
và gói dịch vụ cho dữ liệu hiện có của cơ sở lưu trú, đồng thời xoá các loại phòng và
gói, xem Giao dịch (Dữ liệu cơ sở lưu trú)
Ví dụ.
Hướng dẫn
Phần này cung cấp giải pháp cho các tình huống mà bạn có thể gặp phải khi đang gửi thông báo Giao dịch.
Trường hợp 1: Cách xoá dữ liệu loại phòng
Làm cách nào để xoá dữ liệu hiện có về loại phòng và/hoặc gói dịch vụ?
Mô tả
Bạn đã gửi nhiều loại phòng, bao gồm cả phòng King và phòng cỡ Queen cho thuộc tính này. Không cung cấp được tất cả các loại phòng có giường cỡ vừa (Queen) trong thời gian tu sửa và chỉ có loại phòng King hiện có các loại phòng.
Giải pháp
- Bạn không cần phải cập nhật tình trạng phòng, giá hoặc quỹ phòng mỗi đêm cho loại phòng và mã gói đã bị xoá hoặc huỷ kích hoạt.
- Nếu loại phòng hoặc gói dịch vụ đã bị xoá hoặc huỷ kích hoạt, hãy gửi một thông báo
Tin nhắn giao dịch với
action="overlay"
(chỉ bao gồm phòng) các loại và gói dịch vụ vẫn đang hoạt động, đồng thời không bao gồm loại phòng đã xoá hoặc gói.
Mẫu
Đoạn mã XML này cho biết cách sử dụng thao tác overlay
để xoá một loại phòng.
Đây là hành động delta
ban đầu, bao gồm các loại phòng King và Queen:
<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>
Sau đó, bạn có thể đặt overlay
để xoá loại phòng có giường cỡ vừa và giữ giường King
loại phòng:
<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>
Tình huống 2: Cách kiểm soát sản phẩm bằng AllowablePackageIDs
Làm cách nào để kiểm soát các sản phẩm (kết hợp loại phòng và gói dịch vụ) khi các gói được nhóm theo loại phòng?
Mô tả
Một số gói dịch vụ của bạn chỉ dành cho một số loại phòng. Để ví dụ: nếu cơ sở lưu trú của bạn có 4 loại phòng (bao gồm cả phòng suite Tổng thống), và sáu gói khác nhau, nhưng chỉ một vài gói đủ điều kiện cho phòng tổng thống, bạn có thể chỉ định điều kiện tham gia.
Giải pháp
Gửi thông báo Giao dịch đã cập nhật, trong đó nêu rõ những sản phẩm sẽ được đưa vào
trong gói bằng cách sử dụng <AllowablePackageIDs>
.
Mẫu
Đoạn mã XML này cho thấy cách sử dụng <AllowablePackageIDs>
để chỉ định các gói được sử dụng với một loại phòng nhất định. Tại đây, loại phòng suite Penthouse chỉ cho phép
gói dịch vụ trọn gói Penthouse hoặc Gói ăn sáng miễn phí trong khi
Loại phòng giường đôi rất lớn chỉ chấp nhận gói dịch vụ trọn gói có giường đôi cỡ lớn hoặc
Gói phù hợp với vật nuôi.
<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>
Tình huống 3: Cách kiểm soát sản phẩm bằng AllowableRoomID
Làm cách nào để kiểm soát các sản phẩm (tổ hợp loại phòng và gói dịch vụ) khi nhóm các loại phòng theo gói?
Mô tả
Loại phòng và gói kết hợp không còn được bán dưới dạng sản phẩm hoặc bạn muốn để kiểm soát nội dung có trong gói mới. Ví dụ: bạn chỉ muốn chỉ định một số loại phòng nhất định, chẳng hạn như phòng King và Queen có tầm nhìn ra biển, với một gói.
Giải pháp
Gửi thông báo Giao dịch đã cập nhật, trong đó nêu rõ chính xác sản phẩm được bao gồm
với gói bằng phần tử <AllowableRoomIDs>
.
Mẫu
Đoạn mã XML này cho biết cách sử dụng <AllowableRoomID>
để chỉ định Oceanview King
và loại phòng cỡ Queen trong gói.
<PackageID>RO</PackageID>
<AllowableRoomIDs>
<AllowableRoomID>king_oceanview</AllowableRoomID>
<AllowableRoomID>queen_oceanview</AllowableRoomID>
</AllowableRoomIDs>