Demandes
Syntaxe
Le message Transaction (Property Data)
utilise la syntaxe suivante:
<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="timestamp"
id="message_ID"
partner="partner_key">
<PropertyDataSet action="[overlay|delta]">
<!-- (Required) ID that matches the Hotel List Feed -->
<Property>HotelID</Property>
<RoomData>
<!-- (Required) One room ID per RoomData element -->
<RoomID>RoomID</RoomID>
<Name>
<Text text="room_name" language="language_code"/>
</Name>
<Description>
<Text text="room_description" language="language_code"/>
</Description>
<!-- (Optional) Restricts the rate plans allowed for this room type to
those listed here. If specified, don't specify AllowableRoomIDs. -->
<AllowablePackageIDs>
<AllowablePackageID>PackageID</AllowablePackageID>
</AllowablePackageIDs>
<Capacity>max_number_of_occupants</Capacity>
<AdultCapacity>max_number_of_adult_occupants</AdultCapacity>
<ChildCapacity>max_number_of_child_occupants</ChildCapacity>
<OccupancySettings>
<MinOccupancy>min_number_of_occupants</MinOccupancy>
<MinAge>min_age_of_occupants</MinAge>
</OccupancySettings>
<PhotoURL>
<Caption>
<Text text="photo_description" language="language_code"/>
</Caption>
<URL>photo_location</URL>
</PhotoURL>
<RoomFeatures>
<JapaneseHotelRoomStyle>[western|japanese|japanese_western]</JapaneseHotelRoomStyle>
<Beds>
<Bed size="[single|semi_double|double|queen|king]">
<Width unit="cm" number="bed_width"/>
<Length unit="cm" number="bed_length"/>
</Bed>
<!-- Include with any additional beds. -->
</Beds>
<Suite/>
<Capsule/>
<Roomsharing>[shared|private]</Roomsharing>
<Outdoor/>
<MobilityAccessible/>
<Smoking>[smoking|non_smoking]</Smoking>
<BathAndToilet relation="[together|separate]">
<Bath bathtub="[false|true]" shower="[false|true]"/>
<Toilet electronic_bidet="[false|true]" mobility_accessible="[false|true]"/>
</BathAndToilet>
<OpenAirBath/>
<AirConditioning/>
<Balcony/>
<Views>
<!-- (Optional) Defines the type of views from the room. -->
<!-- Example: <OceanView/> -->
</Views>
</RoomFeatures>
</RoomData>
<PackageData>
<!-- (Required) One package ID per PackageData element -->
<PackageID>PackageID</PackageID>
<Name>
<Text text="package_name" language="language_code"/>
</Name>
<Description>
<Text text="package_description" language="language_code"/>
</Description>
<!-- (Optional) Restricts the room types allowed for this rate plan to
those listed here. If specified, don't specify AllowablePackageIDs. -->
<AllowableRoomIDs>
<AllowableRoomID>RoomID</AllowableRoomID>
</AllowableRoomIDs>
<Refundable available="[false|true]" refundable_until_days="number_of_days"
refundable_until_time="time"/>
<!-- For these next 3 elements, boolean_value can be 0/1 or true/false -->
<BreakfastIncluded>boolean_value</BreakfastIncluded>
<InternetIncluded>boolean_value</InternetIncluded>
<ParkingIncluded>boolean_value</ParkingIncluded>
<PhotoURL>
<Caption>
<Text text="photo_description" language="language_code"/>
...
</Caption>
<URL>photo_location</URL>
</PhotoURL>
...
<Meals>
<Breakfast
included="[true|false]" buffet="[true|false]"
in_room="[true|false]" in_private_space="[true|false]"/>
<Dinner
included="[true|false]" buffet="[true|false]"
in_room="[true|false]" in_private_space="[true|false]"/>
</Meals>
<CheckinTime>checkin_time</CheckinTime>
<CheckoutTime>checkout_time</CheckoutTime>
</PackageData>
</PropertyDataSet>
</Transaction>
Éléments et attributs
Le message Transaction (Données sur un établissement) contient les éléments suivants : Attributs:
Élément / @Attribut | Occurrences | Type | Description |
---|---|---|---|
Transaction | 1 | Complex element | Dans une implémentation ARI, il s'agit de l'élément racine d'un message. définir les types de chambres et les formules pour un même établissement. |
Transaction / @timestamp | 1 | DateTime | Date et heure de création de ce message. |
Transaction / @id | 1 | string | Identifiant unique de ce message de requête. Cette valeur est renvoyée dans le message de réponse. Caractères autorisés : a-z, A-Z, 0-9, _ (trait de soulignement) et - (trait d'union). |
Transaction / @partner | 1 | string | Compte du partenaire pour ce message. Cette valeur de chaîne est la
"Clé partenaire" valeur indiquée sur
le <ph type="x-smartling-placeholder"></ph>
Page "Paramètres du compte" dans Hotel Center.
Remarque:Si vous disposez d'un backend qui fournit des flux pour
plusieurs comptes, cette valeur doit correspondre à l' |
Transaction / PropertyDataSet | 1.. | PropertyDataSet | Conteneur permettant de définir les types de chambres et les formules pour un même établissement. |
Transaction / PropertyDataSet / @action | 0..1 | enum | Type de mise à jour à appliquer aux définitions des prix des chambres. Les valeurs valides sont les suivantes :
Cet attribut est facultatif et est défini par défaut sur |
Transaction / PropertyDataSet / Property | 1 | string | Identifiant unique de l'établissement. Cette valeur doit correspondre au
Identifiant de l'hôtel spécifié à l'aide de
<id> dans l'élément <listing>
dans le flux Hotel List Feed. L'ID de l'hôtel est également indiqué dans Hotel Center. |
Transaction / PropertyDataSet / RoomData | 0..n | RoomData | Décrit une chambre. Remarque:Au moins l'une des valeurs |
Transaction / PropertyDataSet / RoomData / RoomID | 1 | RoomID | Identifiant unique d'un type de chambre. Cette valeur est référencée à l'aide de
l'attribut InvTypeCode dans
Élément <StatusApplicationControl> dans
<OTA_HotelAvailNotifRQ> et
<OTA_HotelRateAmountNotifRQ> messages. |
Transaction / PropertyDataSet / RoomData / Name | 1 | Name | Conteneur pour le nom de la catégorie de chambre dans un ou plusieurs langues. |
Transaction / PropertyDataSet / RoomData / Name / Text | 1..n | Text | Spécifie le nom de la catégorie de chambre dans une langue. |
Transaction / PropertyDataSet / RoomData / Name / Text / @text | 1..n | string | Nom de la catégorie de chambre dans la langue spécifiée par le
language . |
Transaction / PropertyDataSet / RoomData / Description | 1 | Name | Conteneur pour la description de la catégorie de chambre dans un ou plusieurs langues. |
Transaction / PropertyDataSet / RoomData / Description / Text | 1..n | Text | Spécifie la description de la catégorie de chambre dans une langue. |
Transaction / PropertyDataSet / RoomData / Description / Text / @text | 1..n | string | Description de la catégorie de chambre dans la langue spécifiée
par l'attribut language . |
Transaction / PropertyDataSet / RoomData / Description / Text / @language | 1..n | string | Un texte de deux lettres code de langue. |
Transaction / PropertyDataSet / RoomData / AllowablePackageIDs | 0..1 | AllowablePackageIDs | Conteneur pour les éléments <AllowablePackageID> .
Si Si Utilisez |
Transaction / PropertyDataSet / RoomData / AllowablePackageIDs / AllowablePackageID | 1..n | AllowablePackageID | Spécifie la valeur PackageID d'un plan tarifaire pouvant être associé à cette
type de chambre. Un plan tarifaire est défini par une combinaison
le forfait, les tarifs
et la disponibilité. PackageID
correspond au RatePlanCode dans
Messages OTA_HotelRateAmountNotifRQ et OTA_HotelAvailNotifRQ.
|
Transaction / PropertyDataSet / RoomData / Capacity | 0..1 | integer | Nombre maximal d'adultes et d'enfants autorisé dans une chambre
physiquement accueillir. Cette valeur doit être supérieure ou égale à
les valeurs NumberOfGuests que vous envoyez avec les tarifs.
La valeur de Remarque:Si |
Transaction / PropertyDataSet / RoomData / AdultCapacity | 0..1 | integer | Nombre maximal d'adultes autorisé dans une chambre physiquement
s'adapter. Cette valeur doit être supérieure ou égale à
Valeurs NumberOfGuests que vous envoyez avec les tarifs.
La valeur de |
Transaction / PropertyDataSet / RoomData / ChildCapacity | 0..1 | integer | Nombre maximal d'enfants qu'une chambre peut physiquement
s'adapter.
La valeur de |
Transaction / PropertyDataSet / RoomData / OccupancySettings | 0..1 | OccupancySettings | Paramètres permettant de limiter ou de modifier le nombre de personnes
salle.
L'élément
<OccupancySettings> <MinOccupancy>2</MinOccupancy> <MinAge>16</MinAge> </OccupancySettings> Il n'est pas nécessaire d'inclure tous les éléments enfants. |
Transaction / PropertyDataSet / RoomData / PhotoURL | 0..n | PhotoURL | URL et légende facultative d'une photo de la salle ou
Offre de chambres. Vous pouvez spécifier plusieurs <PhotoURL>
pour une chambre ou une offre de chambres.
Cet élément comporte les éléments enfants suivants:
<PhotoURL> <URL>http://www.example.com/image1.jpg</URL> <Caption> <Text text="A bright way to enjoy your mornin' cuppa tea." language="en"/> <Text text="Une façon lumineuse pour profiter de votre tasse de thé." language="fr"/> </Caption> </PhotoURL> |
Transaction / PropertyDataSet / RoomData / RoomFeatures | 0..1 | <RoomFeatures> |
Contient des informations sur les caractéristiques de la chambre. |
Transaction / PropertyDataSet / RoomData / RoomFeatures / JapaneseHotelRoomStyle | 0..1 | enum | Indique le style d'une chambre d'hôtel japonaise. Les valeurs valides sont les suivantes :
|
Transaction / PropertyDataSet / RoomData / RoomFeatures / Beds | 0..1 | Object | Contient autant de <Bed> que la salle. Remarque :
que les futons japonais ne sont pas pris en compte ici.
Chaque
<Bed> comporte les éléments enfants suivants:
<ph type="x-smartling-placeholder">
<Beds> <Bed size="double"> <Width unit="cm" number="140"/> <Length unit="cm" number="195"/> </Bed> <Bed/> <!-- Size unknown --> </Beds> |
Transaction / PropertyDataSet / RoomData / RoomFeatures / Suite | 0.. | enum | Fournissez cet élément lorsque cette chambre est une suite. |
Transaction / PropertyDataSet / RoomData / RoomFeatures / Capsule | 0..1 | enum | Fournissez cet élément lorsque cette pièce est une pièce capsule. |
Transaction / PropertyDataSet / RoomData / RoomFeatures / Roomsharing | 0..1 | enum | Indique si cette salle est partagée avec d'autres occupants, tels que les propriétaires
ou d'autres invités. Les valeurs valides sont shared et private . |
Transaction / PropertyDataSet / RoomData / RoomFeatures / Outdoor | 0..1 | enum | Spécifiez cet élément lorsque cette chambre est un hébergement en extérieur qui n'est pas ont des murs fixes, de la plomberie et de la climatisation. Par exemple, les chambres d'hôtel ne constituent pas un hébergement en plein air, alors que les campings où les clients sont logés dans des tentes Emplacements pour camping-cars où les clients apportent leurs propres camping-cars sont des hébergements en plein air. |
Transaction / PropertyDataSet / RoomData / RoomFeatures / MobileAccessible | 0..1 | enum | Fournissez cet élément lorsque cette chambre est accessible aux personnes à mobilité réduite. |
Transaction / PropertyDataSet / RoomData / RoomFeatures / Smoking | 0..1 | enum | Indique s'il s'agit d'une pièce non-fumeurs ou d'un fumoir. Valide
les valeurs sont non_smoking et smoking . |
Transaction / PropertyDataSet / RoomData / RoomFeatures / BathAndToilet | 0..1 | Object | Contient des informations sur une baignoire et des toilettes dans la chambre.
L'attribut est:
L'élément comporte également les éléments enfants suivants:
Exemple : <BathAndToilet relation="separate"> <Bath bathtub="1" shower="1"/> <Toilet electronic_bidet="1" mobility_accessible="1"/> </BathAndToilet> |
Transaction / PropertyDataSet / RoomData / RoomFeatures / OpenAirBath | 0..1 | enum | Fournissez cet élément si la chambre dispose d'une baignoire privée en plein air. |
Transaction / PropertyDataSet / RoomData / RoomFeatures / AirConditioning | 0..1 | enum | Indiquez cet élément lorsque cette chambre est climatisée. |
Transaction / PropertyDataSet / RoomData / RoomFeatures / Balcony | 0..1 | enum | Fournissez cet élément si la chambre dispose d'un balcon ou d'une véranda. |
Transaction / PropertyDataSet / RoomData / RoomFeatures / Views | 0..1 | Object | Les options suivantes sont acceptées:
|
Transaction / PropertyDataSet / PackageData | 0..n | PackageData | Conteneur pour les éléments qui décrivent des caractéristiques tarifaires et des termes qui ne font pas partie de la description de la chambre physique. Remarque:Au moins l'une des valeurs |
Transaction / PropertyDataSet / PackageData / PackageID | 1 | string | Dans ces messages, PackageID correspond aux
RatePlanCode dans le message OTA_HotelRateAmountNotifRQ et
Messages OTA_HotelAvailNotifRQ. |
Transaction / PropertyDataSet / PackageData / Name | 1 | Name | Conteneur pour le nom du package dans une ou plusieurs langues. |
Transaction / PropertyDataSet / PackageData / Name / Text | 1..n | Text | Spécifie le nom du package dans une langue. |
Transaction / PropertyDataSet / PackageData / Name / Text / @text | 1..n | string | Nom du package dans la langue spécifiée par le
language . |
Transaction / PropertyDataSet / PackageData / Description | 1 | Description | Conteneur pour la description du package dans une ou plusieurs langues. |
Transaction / PropertyDataSet / PackageData / Description / Text | 1..n | Text | Spécifie la description du séjour organisé dans une seule langue. |
Transaction / PropertyDataSet / PackageData / Description / Text / @text | 1..n | string | Description du package dans la langue spécifiée par le
language . |
Transaction / PropertyDataSet / PackageData / Description / Text / @language | 1..n | string | Un texte de deux lettres code de langue. |
Transaction / PropertyDataSet / PackageData / AllowableRoomIDs | 0..1 | AllowableRoomIDs | Conteneur pour les éléments <AllowableRoomID> .
Si Si Utilisez |
Transaction / PropertyDataSet / PackageData / AllowableRoomIDs / AllowableRoomID | 1..n | AllowableRoomID | Spécifie la valeur RoomID d'un type de chambre pouvant être associé à
plan tarifaire. Un type de chambre est défini dans une <RoomData> .
.
|
Transaction / PropertyDataSet / PackageData / Refundable | 0..1 | Refundable | Permet d'indiquer qu'un tarif est entièrement remboursable ou annulable. Si elle n'est pas fournie, aucune information sur le remboursement ne s'affiche.
Remarque:Nous vous recommandons de définir tous les attributs. Un flux un message d'avertissement concernant l'état est généré lorsqu'un ou plusieurs attributs sont non défini. Si vous ne définissez aucun attribut, le tarif n'apparaît pas sous la forme remboursables. Lorsque vous définissez les attributs, tenez compte des points suivants:
|
Transaction / PropertyDataSet / PackageData / Refundable / @available | 1 | boolean | (Obligatoire) Définissez la valeur sur 1 ou
true pour indiquer si le tarif autorise un
remboursement ; sinon défini sur 0 ou false . |
Transaction / PropertyDataSet / PackageData / Refundable / @refundable_until_days | 0..1 | integer | (Obligatoire si
available est true ) Spécifie
Nombre de jours avant la date d'arrivée pendant lesquels un remboursement total peut être effectué
demandée. La valeur de refundable_until_days
doit être un nombre entier compris entre 0 et 330 inclus. |
Transaction / PropertyDataSet / PackageData / Refundable / @refundable_until_time | 0.. | Time | (vivement recommandé si
available est true ) Spécifie
à la dernière heure de la journée, à l'heure locale de l'hôtel, qu'une
votre demande de remboursement sera traitée. Cela peut être
combiné avec
refundable_until_days pour spécifier, pour
Exemple : "les remboursements sont possibles jusqu'à 16 h deux jours avant
"check-in". Si refundable_until_time n'est pas défini, la valeur
la valeur par défaut est minuit. |
Transaction / PropertyDataSet / PackageData / BreakfastIncluded | 0..1 | boolean | Indique si ce type de chambre inclut le petit-déjeuner.
Les valeurs valides sont 0 (ou false ) et 1
(ou true ).
Il est préférable d'utiliser |
Transaction / PropertyDataSet / PackageData / CheckinTime | 0..1 | Time | Heure d'arrivée la plus proche possible à l'heure locale de l'hôtel. L'heure doit être inférieure à 24:00. |
Transaction / PropertyDataSet / PackageData / CheckoutTime | 0..1 | Time | Heure de départ la plus proche possible dans l'heure locale de l'hôtel. |
Transaction / PropertyDataSet / PackageData / InternetIncluded | 0..1 | boolean | Indique si la chambre inclut un accès Internet sans frais
tandis que les autres chambres ne comprennent pas ce service. Ne pas définir cet élément dans
Hôtel proposant un accès Internet sans frais à toutes les chambres. Cet élément
ne s'applique pas à l'Internet filaire ou sans fil
ne sont pas disponibles dans les chambres. Les valeurs valides sont 0 (ou
false ) et 1 (ou true ).
|
Transaction / PropertyDataSet / PackageData / Meals | 0..1 | Object | Contient des informations sur les repas contenus dans ce colis.
L'élément
Les attributs facultatifs ne sont utilisés que lorsque Pour les filtres de repas ( |
Transaction / PropertyDataSet / PackageData / ParkingIncluded | 0..1 | boolean | Indique si une chambre inclut une place de stationnement sans frais, où
le parking est payant dans cet hôtel. Ne pas spécifier
une valeur pour cet élément si l'hôtel propose un parking gratuit.
Les valeurs valides sont 0 (ou false ) et
1 (ou true ). La valeur par défaut est
false
|
Transaction / PropertyDataSet / PackageData / PhotoURL | 0..1 | Object | (Identique à <PhotoURL> dans <RoomData> ,
mais pour le colis (par exemple, des photos de repas).
|
Exemples
Données sur les chambres et les formules
Voici un exemple de base vous montrant comment définir la chambre d'un établissement et
dans un message Transaction (Données sur un établissement). overlay
est utilisé pour garantir que, si des données existent déjà de manière inattendue,
toutes les données existantes sont supprimées et remplacées par les données spécifiées dans ce message:
<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2020-05-18T16:20:00-04:00"
id="12345678"
partner="partner_key">
<PropertyDataSet action="overlay">
<Property>Property_1</Property>
<RoomData>
<RoomID>RoomID_1</RoomID>
<Name>
<Text text="King" language="en"/>
</Name>
<Description>
<Text text="Room with a king bed" language="en"/>
</Description>
<Capacity>2</Capacity>
<PhotoURL>
<URL>http://www.foo.com/static/bar/image.jpg</URL>
<Caption>
<Text text="Room with a king bed" language="en"/>
</Caption>
</PhotoURL>
</RoomData>
<RoomData>
<RoomID>RoomID_2</RoomID>
<Name>
<Text text="Double" language="en"/>
</Name>
<!-- Additional RoomData child elements omitted. -->
</RoomData>
<PackageData>
<PackageID>PackageID_1</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>
<PackageData>
<PackageID>PackageID_2</PackageID>
<Name>
<Text text="Free Breakfast" language="en"/>
</Name>
<Description>
<Text text="Free breakfast rate" language="en"/>
</Description>
<Refundable available="true" refundable_until_days="7" refundable_until_time="18:00:00"/>
<BreakfastIncluded>1</BreakfastIncluded>
</PackageData>
</PropertyDataSet>
</Transaction>
Ajouter un type de chambre
Voici un exemple d'ajout d'un type de chambre et d'une formule à
Données <Transaction>
existantes:
<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2020-07-18T16:20:00-04:00"
id="12345678"
partner="partner_key">
<PropertyDataSet action="delta">
<Property>Property_1</Property>
<RoomData>
<RoomID>RoomID_3</RoomID>
<Name>
<Text text="Queen" language="en"/>
</Name>
<!-- Additional RoomData child elements omitted. -->
</RoomData>
<PackageData>
<PackageID>PackageID_3</PackageID>
<Name>
<Text text="Non-Refundable" language="en"/>
</Name>
<!-- Additional PackageData child elements omitted. -->
<Refundable available="false"/>
</PackageData>
</PropertyDataSet>
</Transaction>
Supprimer des types de pièces
L'exemple suivant montre comment supprimer des types de chambres existants et
packages. Dans ce scénario, si les messages de la section "Données des chambres et des formules"
et "Ajouter un type de chambre" avaient déjà été envoyés à Google, les King
et
Double
types de chambre n'existeront plus une fois que Google aura reçu le message
affichés. Notez que la suppression des données du package a une incidence sur le plan tarifaire global.
comme défini dans la section Transaction (Données sur un établissement), OTA_HotelRateAmountNotifRQ,
et OTA_HotelAvailNotifRQ
(en référençant le même PackageID
et les mises à jour correspondantes à l'aide des autres types de messages
nécessaire pour indiquer que PackageID_2
et PackageID_3
ne sont plus
défini ici.
<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2020-08-18T16:20:00-04:00"
id="12345678"
partner="partner_key">
<PropertyDataSet action="overlay">
<Property>Property_1</Property>
<RoomData>
<RoomID>RoomID_1</RoomID>
<Name>
<Text text="Queen" language="en"/>
</Name>
<!-- Additional RoomData child elements omitted. -->
<Capacity>2</Capacity>
<PhotoURL>
<URL>http://www.foo.com/static/bar/image.jpg</URL>
<Caption>
<Text text="Room with a queen bed" language="en"/>
</Caption>
</PhotoURL>
</RoomData>
<PackageData>
<PackageID>PackageID_1</PackageID>
<Name>
<Text text="Refundable" language="en"/>
</Name>
<!-- Additional PackageData child elements omitted. -->
<Refundable available="true" refundable_until_days="7" refundable_until_time="18:00:00"/>
<BreakfastIncluded>0</BreakfastIncluded>
</PackageData>
</PropertyDataSet>
</Transaction>
Limiter les plans tarifaires
Voici un exemple d'utilisation de <AllowablePackageIDs>
permettant de limiter les plans tarifaires autorisés pour un type de chambre. Dans cet exemple,
le type de chambre Queen
(RoomID_2
) ne peut être associé qu'à la formule et
plan tarifaire identifié comme PackageID_1.
<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2020-12-18T16:20:00-04:00"
id="12345678"
partner="partner_key">
<PropertyDataSet action="overlay">
<Property>Property_1</Property>
<RoomData>
<RoomID>RoomID_1</RoomID>
<Name>
<Text text="King" language="en"/>
</Name>
<!-- Additional RoomData child elements omitted. -->
</RoomData>
<RoomData>
<RoomID>RoomID_2</RoomID>
<Name>
<Text text="Queen" language="en"/>
</Name>
<AllowablePackageIDs>
<AllowablePackageID>PackageID_1</AllowablePackageID>
</AllowablePackageIDs>
<!-- Additional RoomData child elements omitted. -->
</RoomData>
<PackageData>
<PackageID>PackageID_1</PackageID>
<Name>
<Text text="Standard" language="en"/>
</Name>
<!-- Additional PackageData child elements omitted. -->
<Refundable available="true" refundable_until_days="7" refundable_until_time="18:00:00"/>
<BreakfastIncluded>0</BreakfastIncluded>
</PackageData>
<PackageData>
<PackageID>PackageID_2</PackageID>
<Name>
<Text text="Free Breakfast" language="en"/>
</Name>
<!-- Additional PackageData child elements omitted. -->
<Refundable available="true" refundable_until_days="7" refundable_until_time="18:00:00"/>
<BreakfastIncluded>1</BreakfastIncluded>
</PackageData>
</PropertyDataSet>
</Transaction>
Limiter la capacité des salles
Voici un exemple d'utilisation de <Capacity>
, <AdultCapacity>
,
<ChildCapacity>
pour définir des restrictions sur la capacité des salles.
<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2020-12-18T16:20:00-04:00"
id="12345678"
partner="partner_key">
<PropertyDataSet action="overlay">
<Property>Property_1</Property>
<RoomData>
<RoomID>RoomID_1</RoomID>
<Name>
<Text text="Double" language="en"/>
</Name>
<Capacity>4</Capacity>
<AdultCapacity>4</AdultCapacity>
<ChildCapacity>3</ChildCapacity>
<!-- Additional RoomData child elements omitted. -->
</RoomData>
</PropertyDataSet>
</Transaction>
La chambre double (RoomID_1) peut accueillir jusqu'à quatre personnes au total. En outre, il peut accueillir jusqu'à quatre adultes et trois enfants. Les trois capacité doivent être satisfaites pour que cette salle puisse être réservée. Ce est représentative d'une chambre classique avec deux lits chacun pour deux personnes. La capacité enfant est inférieure à la capacité totale. car au moins un adulte doit être présent dans la salle.
Exemples étendus avec <RoomFeatures>
et des repas
JapaneseHotelRoomStyle
n'a pas de valeur par défaut.
Si vous ne renseignez pas une valeur, aucune erreur XML n'est renvoyée pour votre fiche.
dans les résultats de recherche, lorsque l'utilisateur filtre par style de chambre ou par lit.
Deux lits simples
L'exemple suivant montre comment utiliser <RoomFeatures>
:
<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2017-07-18T16:20:00-04:00" id="42">
<PropertyDataSet>
<Property>1234</Property>
<RoomData>
<RoomID>RoomID_1</RoomID>
<RoomFeatures>
<JapaneseHotelRoomStyle>western</JapaneseHotelRoomStyle>
<Beds> <!-- Two single beds -->
<Bed size="single">
<Width unit="cm" number="97"/>
<Length unit="cm" number="195"/>
</Bed>
<Bed size="single">
<Width unit="cm" number="97"/>
<Length unit="cm" number="195"/>
</Bed>
</Beds>
<Suite/>
<Capsule/>
<Roomsharing>private</Roomsharing>
<Outdoor/>
<MobilityAccessible/>
<Smoking>non_smoking</Smoking>
<BathAndToilet relation="separate">
<Bath bathtub="1" shower="1"/>
<Toilet electronic_bidet="1" mobility_accessible="1"/>
</BathAndToilet>
<OpenAirBath/>
<AirConditioning/>
<Balcony/>
<Views>
<LakeView/>
<MarinaView/>
<BeachView/>
<ForestView/>
<MountainView/>
<NatureView/>
</Views>
</RoomFeatures>
</RoomData>
</PropertyDataSet>
</Transaction>
Deux lits doubles
Voici un exemple de salle de style western
avec deux
double
lits.
<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2023-07-23T16:20:00-04:00" id="42">
<PropertyDataSet>
<Property>1234</Property>
<RoomData>
<RoomID>RoomID_1</RoomID>
<RoomFeatures>
<JapaneseHotelRoomStyle>western</JapaneseHotelRoomStyle>
<Beds> <!-- Two double beds-->
<Bed size="double"></Bed>
<Bed size="double"></Bed>
</Beds>
</RoomFeatures>
</RoomData>
</PropertyDataSet>
</Transaction>
Style japonais sans lit
Voici un exemple de chambre de style japonais sans lit. Lit
les informations ne sont pas requises pour la salle de style japanese
.
<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2023-07-23T16:20:00-04:00" id="42">
<PropertyDataSet>
<Property>1234</Property>
<RoomData>
<RoomID>RoomID_1</RoomID>
<RoomFeatures>
<JapaneseHotelRoomStyle>japanese</JapaneseHotelRoomStyle>
</RoomFeatures>
</RoomData>
</PropertyDataSet>
</Transaction>
Western japonais avec lit
Voici un exemple de salle de style japanese_western
avec king
de la taille d'un lit.
<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2023-07-23T16:20:00-04:00" id="42">
<PropertyDataSet>
<Property>1234</Property>
<RoomData>
<RoomID>RoomID_1</RoomID>
<RoomFeatures>
<JapaneseHotelRoomStyle>japanese_western</JapaneseHotelRoomStyle>
<Beds>
<Bed size="king"></Bed>
</Beds>
</RoomFeatures>
</RoomData>
</PropertyDataSet>
</Transaction>
Si le partenaire ne dispose pas des informations sur le nombre de lits dans japanese_western
salles, reportez-vous à l'exemple suivant:
<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2023-07-23T16:20:00-04:00" id="42">
<PropertyDataSet>
<Property>1234</Property>
<RoomData>
<RoomID>RoomID_1</RoomID>
<RoomFeatures>
<JapaneseHotelRoomStyle>japanese_western</JapaneseHotelRoomStyle>
</RoomFeatures>
</RoomData>
</PropertyDataSet>
</Transaction>
Repas
L'exemple suivant définit les métadonnées de chambres et de séjours organisés pour les repas, les photos, et heures d'arrivée et de départ:
<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2017-07-18T16:20:00-04:00" id="42">
<PropertyDataSet>
<Property>1234</Property>
<PackageData>
<PackageID>PackageID_1</PackageID>
<Name>
<Text text="Meals Included" language="en"/>
</Name>
<PhotoURL>
<Caption>
<Text text="Breakfast" language="en"/>
<Text text="朝食" language="ja"/>
</Caption>
<URL>http://example.com/static/bar/image1234.jpg</URL>
</PhotoURL>
<Meals>
<!-- Guests can choose to have breakfast in their room or in another
space to avoid contact with other guests. -->
<Breakfast included="1" in_room="1" in_private_space="1"/>
<Dinner included="1" buffet="1"/>
</Meals>
<CheckinTime>15:00</CheckinTime>
<CheckoutTime>11:00</CheckoutTime>
</PackageData>
</PropertyDataSet>
</Transaction>
Petit-déjeuner uniquement
<?xml version="1.0" encoding="UTF-8"?>
<Transaction timestamp="2017-07-18T16:20:00-04:00" id="42">
<PropertyDataSet>
<Property>1234</Property>
<PackageData>
<PackageID>PackageID_1</PackageID>
<Name>
<Text text="Breakfast Included" language="en"/>
</Name>
<PhotoURL>
<Caption>
<Text text="Breakfast" language="en"/>
<Text text="朝食" language="ja"/>
</Caption>
<URL>http://example.com/static/bar/image1234.jpg</URL>
</PhotoURL>
<Meals>
<Breakfast included="true"/>
<!-- Dinner not included needs to be explicitly specified -->
<Dinner included="false"/>
</Meals>
<CheckinTime>15:00</CheckinTime>
<CheckoutTime>11:00</CheckoutTime>
</PackageData>
</PropertyDataSet>
</Transaction>
Réponses
Syntaxe
Le message TransactionResponse (Property Data)
utilise la syntaxe suivante:
<?xml version="1.0" encoding="UTF-8"?>
<TransactionResponse timestamp="timestamp"
id="message_ID"
partner="partner_key">
<!-- Either Success or Issues will be populated. -->
<Success/>
<Issues>
<Issue code="issue_code" status="issue_type">issue_description</Issue>
</Issues>
</TransactionResponse>
Éléments et attributs
Le message TransactionResponse (Property Data)
contient les éléments suivants :
éléments et attributs:
Élément / @Attribut | Occurrences | Type | Description |
---|---|---|---|
TransactionResponse | 1 | Complex element | Élément racine indiquant le succès ou les problèmes d'une réponse Message de demande de transaction. |
TransactionResponse / @timestamp | 1 | DateTime | Date et heure de création de ce message. |
TransactionResponse / @id | 1 | string | Identifiant unique issu du message Transaction associé. |
TransactionResponse / @partner | 1 | string | Compte du partenaire pour ce message. |
TransactionResponse / Success | 0..1 | Success | Indique que le message Transaction a bien été traité
sans avertissement, erreur ni échec.
La valeur |
TransactionResponse / Issues | 0..1 | Issues | Conteneur pour un ou plusieurs problèmes rencontrés lors du traitement de la
Message Transaction.
La valeur |
TransactionResponse / Issues / Issue | 1..n | Issue | La description d'un avertissement, d'une erreur ou d'un échec rencontré pendant lors du traitement du message Transaction. Pour en savoir plus sur ces problèmes, dans Messages d'erreur concernant l'état du flux. |
TransactionResponse / Issues / Issue / @code | 1 | integer | Identifiant du problème. |
TransactionResponse / Issues / Issue / @status | 1 | enum | Type de problème rencontré. Les valeurs valides sont |
Exemples
Opération réussie
La réponse ci-dessous est une réponse à un message Transaction correctement traité.
<?xml version="1.0" encoding="UTF-8"?>
<TransactionResponse timestamp="2020-05-18T16:20:00-04:00"
id="12345678"
partner="partner_key">
<Success/>
</TransactionResponse>
Problèmes
La réponse ci-dessous est une réponse à un message Transaction non traité pour le motif suivant : les erreurs.
<?xml version="1.0" encoding="UTF-8"?>
<TransactionResponse timestamp="2020-05-18T16:20:00-04:00"
id="12345678"
partner="partner_key">
<Issues>
<Issue code="1001" status="error">Example</Issue>
</Issues>
</TransactionResponse>