Frais supplémentaires pour les invités

Les tarifs envoyés via <OTA_HotelRateAmountNotifRQ> peuvent être modifiés pour tenir compte des adultes et des enfants en plus du nombre de personnes d'origine. Le message ExtraGuestCharges permet de spécifier le mode de calcul des tarifs pour ces clients supplémentaires, ainsi que les chambres, les plans tarifaires et les dates de séjour auxquels leurs frais doivent s'appliquer.

Exigences concernant la capacité

Les prix calculés à partir du message ExtraGuestCharges ne sont valides que si toutes les exigences de capacité sont satisfaites. Pour en savoir plus, consultez la section Transaction (Données sur un établissement).

Requêtes

Syntaxe

Le message ExtraGuestCharges utilise la syntaxe suivante:

<?xml version="1.0" encoding="UTF-8"?>
<ExtraGuestCharges partner="partner_account_name"
                   id="message_ID"
                   timestamp="timestamp">
  <HotelExtraGuestCharges hotel_id="HotelID" action="[overlay]">
    <ExtraGuestCharge>
      <RatePlans>
        <RatePlan id="PackageID_1"/>
        <RatePlan id="PackageID_2"/>
      </RatePlans>
      <RoomTypes>
        <RoomType id="RoomID_1"/>
        <RoomType id="RoomID_2"/>
      </RoomTypes>
      <StayDates>
        <DateRange start="YYYY-MM-DD" end="YYYY-MM-DD"
                   days_of_week="MTWHFSU_or_subset"/>
      </StayDates>
      <AgeBrackets>
        <AdultCharge amount="float"/>
        <ChildAgeBrackets>
        <!-- The following are different ways child charges can be specified.
        Use the option that matches your system. -->
          <ChildAgeBracket max_age="integer" amount="float"
                           exclude_from_capacity="[true|false]"/>
          <ChildAgeBracket max_age="integer" percentage="float"
                           exclude_from_capacity="[true|false]"
                           counts_as_base_occupant="[never|preferred|always]"/>
          <ChildAgeBracket max_age="integer" discount_amount="float"
                           exclude_from_capacity="[true|false]"
                           counts_as_base_occupant="[never|preferred|always]"/>
        </ChildAgeBrackets>
      </AgeBrackets>
    </ExtraGuestCharge>
  </HotelExtraGuestCharges>
</ExtraGuestCharges>

Éléments et attributs

Le message ExtraGuestCharges contient les éléments et les attributs suivants:

Élément / @Attribut Occurrences Type Description
ExtraGuestCharges 1 Complex element Élément racine de ce message.
ExtraGuestCharges / @partner 1 string Compte du partenaire pour ce message. Cette valeur de chaîne correspond à la valeur Partner key indiquée sur la 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 à la valeur de l'attribut ID spécifiée dans l'élément <RequestorID> de vos messages <OTA_HotelRateAmountNotifRQ> et <OTA_HotelAvailNotifRQ> pour le même compte.

ExtraGuestCharges / @id 1 string Identifiant unique de ce message de requête. Cette valeur est renvoyée dans le message de réponse. Les caractères autorisés sont a-z, A-Z, 0-9, _ (trait de soulignement) et - (trait d'union).
ExtraGuestCharges / @timestamp 1 DateTime Date et heure de création de ce message.
ExtraGuestCharges / HotelExtraGuestCharges 0..n HotelExtraGuestCharges Conteneur pour les frais d'un seul établissement.
ExtraGuestCharges / HotelExtraGuestCharges / @hotel_id 1 string Identifiant unique de l'établissement. Cette valeur doit correspondre à l'identifiant de l'hôtel spécifié à l'aide de <id> dans l'élément <listing> du flux Hotel List Feed. L'ID de l'hôtel est également indiqué dans Hotel Center.
ExtraGuestCharges / HotelExtraGuestCharges / @action 0..1 enum Indique la manière dont la mise à jour est appliquée. Seul overlay est accepté. La superposition est utilisée par défaut. Tous les frais précédents pour cette propriété seront effacés avant l'application de la mise à jour.
ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge 0..99 ExtraGuestCharge

Un seul ensemble de frais pour un établissement. Cela peut contenir des restrictions sur la façon dont les frais peuvent être appliqués et sur le calcul des frais en fonction de l'âge ou de la catégorie de client.

Chaque ExtraGuestCharge d'une HotelExtraGuestCharges doit s'appliquer à un ensemble unique de dates et de produits. Si deux éléments ExtraGuestCharge font référence à la même combinaison date/produit, l'intégralité du message est rejetée.

ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge / AgeBrackets 1 AgeBrackets Conteneur de tranches d'âge permettant de calculer les frais en fonction de l'âge ou de la catégorie de client.
ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge / AgeBrackets / AdultCharge 0..1 AdultCharge Conteneur des frais pour un adulte supplémentaire.
ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge / AgeBrackets / AdultCharge / @amount 0..1 float Valeur décimale positive indiquant le montant fixe à facturer pour un adulte supplémentaire. Ces frais sont exprimés dans la même devise que celle spécifiée pour les tarifs par nuit.
ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge / AgeBrackets / ChildAgeBrackets 0..1 ChildAgeBrackets Conteneur pour des frais enfants supplémentaires. Ces tranches d'âge ne peuvent couvrir que la tranche d'âge comprise entre 0 et 17 ans (inclus).
ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge / AgeBrackets / ChildAgeBrackets / ChildAgeBracket 1..99 ChildAgeBracket Frais qui s'appliquent aux enfants d'une tranche d'âge spécifique. Elles doivent être classées de la max_age la plus basse à la max_age la plus élevée. Le montant à débiter peut être spécifié à l'aide de amount, percentage ou discount_amount. Vous ne devez spécifier qu'un seul de ces attributs pour chaque <ChildAgeBracket>.
ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge / AgeBrackets / ChildAgeBrackets / ChildAgeBracket / @max_age 1 integer Âge maximal pour lequel les frais spécifiés dans <ChildAgeBracket> peuvent s'appliquer. L'âge minimal est de zéro si aucun autre <ChildAgeBracket> n'est spécifié avant celui-ci. Sinon, il est supérieur d'une valeur à l'âge maximal de la tranche précédente.
ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge / AgeBrackets / ChildAgeBrackets / ChildAgeBracket / @exclude_from_capacity 1 boolean Valeur booléenne indiquant si un enfant de cette tranche d'âge doit être comptabilisé dans la capacité totale d'une chambre. Ces capacités peuvent être définies avec Transaction(Property Data). Par exemple, il est possible que les bébés n'ayant pas atteint un certain âge n'aient pas besoin d'être comptabilisés dans la capacité d'un enfant.
ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge / AgeBrackets / ChildAgeBrackets / ChildAgeBracket / @amount 0..1 float Valeur décimale non négative qui spécifie le montant fixe à facturer pour un enfant supplémentaire de cette tranche. Ces frais sont exprimés dans la même devise que celle spécifiée pour les tarifs par nuit.
ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge / AgeBrackets / ChildAgeBrackets / ChildAgeBracket / @percentage 0..1 float

Valeur décimale comprise entre 1 et 99 indiquant le pourcentage d'un prix adulte devant être facturé pour un enfant supplémentaire de cette tranche. Ces frais sont exprimés dans la même devise que celle spécifiée pour les tarifs par nuit.

Pour en savoir plus sur le calcul du prix adulte, consultez la section counts_as_base_occupant.

ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge / AgeBrackets / ChildAgeBrackets / ChildAgeBracket / @discount_amount 0..1 float

Valeur décimale positive indiquant un montant de remise fixe sur le prix adulte pour un enfant supplémentaire de cette tranche. Ces frais sont exprimés dans la même devise que celle spécifiée pour le tarif par nuit.

En général, les frais pour un enfant de cette tranche d'âge sont calculés en déduisant le montant fixe du "prix unitaire". Pour en savoir plus sur le prix unitaire, consultez la section consacrée à l'attribut counts_as_base_occupant.

ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge / AgeBrackets / ChildAgeBrackets / ChildAgeBracket / @counts_as_base_occupant 0..1 string

Si l'attribut percentage ou discount_amount est spécifié, counts_as_base_occupant doit également être spécifié. Cette valeur détermine si un enfant doit être inclus ou non dans le NumberOfGuest lorsque vous sélectionnez un tarif <BaseByGuestAmount> pour appliquer un pourcentage de frais et de remises.

L'objectif ici est d'obtenir un "prix unitaire" à partir duquel les frais réels peuvent être calculés.

unit price = rate / occupancy

La valeur de cet attribut doit être never, preferred ou always.

  • Si never est spécifié, l'enfant ne doit jamais être inclus dans le tarif.

    Si vous souhaitez calculer un tarif pour deux adultes et deux enfants (deux et deux enfants), utilisez le taux pour deux adultes, car les enfants ne devraient pas être inclus.

  • Si preferred est spécifié, il est préférable que l'enfant soit inclus dans le tarif.

    Si vous souhaitez calculer un tarif pour deux adultes et un enfant (2 ans et plus), vous devez de préférence utiliser celui pour trois adultes. Si vous ne le trouvez pas, utilisez le taux pour deux adultes.

  • Si always est spécifié, l'enfant doit toujours être inclus dans le tarif.

    Si vous souhaitez calculer un tarif pour deux adultes et deux enfants (2 et 2 ans), vous devez utiliser le tarif pour quatre adultes, car les enfants doivent être inclus.

ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge / RoomTypes 0..1 RoomTypes Conteneur pour la liste des types de chambres auxquels les frais s'appliquent. Les frais sont appliqués à chaque <RoomType> spécifié. Si <RoomTypes> n'est pas spécifié, les frais s'appliquent à toutes les chambres de l'établissement spécifié.
ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge / RoomTypes / RoomType 1..n RoomType Spécifie un type de chambre. Un type de chambre est défini dans un élément <RoomData> d'un message Transaction (Données sur un établissement) et est référencé à l'aide de sa valeur <RoomID>. (Sa valeur <RoomID> est également référencée par l'attribut InvTypeCode dans les messages OTA_HotelRateAmountNotifRQ.)
ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge / RoomTypes / RoomType / @id 1 string Identifiant unique de l'inventaire (type de chambre). Cette valeur correspond à <RoomID> dans un message Transaction (Données sur un établissement). Le nombre maximal de caractères autorisés est de 50.
ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge / RatePlans 0..1 RatePlans Conteneur pour la liste des plans tarifaires auxquels les frais s'appliquent. Si <RatePlans> n'est pas spécifié, les frais s'appliquent à tous les plans tarifaires.
ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge / RatePlans / RatePlan 1..n RatePlan Spécifie un plan tarifaire. Un plan tarifaire est défini par une combinaison de séjours organisés, de tarifs et de disponibilités, telle que définie dans les messages Transaction (Données sur un établissement), OTA_HotelRateAmountNotifRQ et OTA_HotelAvailNotifRQ, et telle qu'identifiée par l'identifiant PackageID.
ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge / RatePlans / RatePlan / @id 1 string Identifiant unique du plan tarifaire. Cette valeur correspond à la valeur PackageID dans <PackageData> dans un message Transaction (Données sur un établissement), et dans l'attribut RatePlanCode dans <StatusApplicationControl> dans les messages <OTA_HotelRateAmountNotifRQ> et <OTA_HotelAvailNotifRQ>. Le nombre maximal de caractères autorisés est de 50.
ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge / StayDates 0..1 StayDates Conteneur pour une ou plusieurs plages de dates qui déterminent le mode d'application des frais.
ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge / StayDates / DateRange 1..99 DateRange Plage de dates indiquant les dates auxquelles la promotion doit être appliquée.
ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge / StayDates / DateRange / @start 0..1 Date Date de début (en fonction du fuseau horaire de l'établissement), incluse, de la plage de dates. Cette date doit être antérieure ou identique à la date end. Si start n'est pas spécifié, la plage de dates est effectivement illimitée en termes de date de début.
ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge / StayDates / DateRange / @end 0..1 Date Date de fin (en fonction du fuseau horaire de l'établissement), incluse, de la plage de dates. Cette date doit être identique ou postérieure à la date start. Si end n'est pas spécifié, la plage de dates est effectivement illimitée en termes de date de fin.
ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge / StayDates / DateRange / @days_of_week 0..1 string

Jours de la semaine autorisés dans la plage de dates. Si cette valeur n'est pas spécifiée, tous les jours sont autorisés dans la plage de dates. Chaque caractère de la chaîne spécifie un jour. Par exemple, "MTWHF" indique que les jours de la semaine sont autorisés dans la plage de dates.

Les caractères suivants sont acceptés:

  • M pour lundi
  • T pour mardi
  • W pour mercredi
  • H pour jeudi
  • F pour vendredi
  • S pour samedi
  • U pour dimanche

Toute combinaison de caractères est valide.

Exemples

Frais pour adultes

Les frais pour les adultes supplémentaires ne peuvent être exprimés que sous forme de montants fixes. L'exemple suivant montre un message ExtraGuestCharges qui spécifie les frais réservés aux adultes:

<?xml version="1.0" encoding="UTF-8"?>
<ExtraGuestCharges timestamp="2001-02-03T04:05:06+00:00" id="1">
  <HotelExtraGuestCharges hotel_id="ABC" action="overlay">
    <ExtraGuestCharge>
      <StayDates />
      <AgeBrackets>
        <AdultCharge amount="50" />
      </AgeBrackets>
    </ExtraGuestCharge>
  </HotelExtraGuestCharges>
</ExtraGuestCharges>

Voici les tarifs correspondants:

<?xml version="1.0" encoding="UTF-8"?>
<OTA_HotelRateAmountNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05"
                            EchoToken="12345678"
                            TimeStamp="2020-05-19T20:50:37-05:00"
                            Version="3.0">
  <RateAmountMessages HotelCode="ABC">
    <RateAmountMessage>
      <StatusApplicationControl Start="2020-05-18"
                                End="2020-05-23"
                                InvTypeCode="RoomID_1"
                                RatePlanCode="PackageID_1"/>
      <Rates>
        <Rate>
          <BaseByGuestAmts>
            <BaseByGuestAmt AmountAfterTax="100.00"
                            CurrencyCode="USD"
                            NumberOfGuests="1"/>
            <BaseByGuestAmt AmountAfterTax="110.00"
                            CurrencyCode="USD"
                            NumberOfGuests="2"/>
            <BaseByGuestAmt AmountAfterTax="120.00"
                            CurrencyCode="USD"
                            NumberOfGuests="3"/>
          </BaseByGuestAmts>
        </Rate>
      </Rates>
    </RateAmountMessage>
  </RateAmountMessages>
</OTA_HotelRateAmountNotifRQ>

Lorsqu'un utilisateur recherche quatre adultes sur Google, le taux total est égal à 170 = 120 + 50.

120 provient du tarif <BaseByGuestAmt> avec NumberOfGuests="3" et 50 provient du AdultCharge amount="50".

Frais enfant

Les frais pour les enfants sont exprimés en tranches d'âge jusqu'à 17 ans et peuvent être exprimés en montants fixes, pourcentages ou remises.

L'exemple suivant montre un message ExtraGuestCharges spécifiant les frais enfants:

<?xml version="1.0" encoding="UTF-8"?>
<ExtraGuestCharges timestamp="2001-02-03T04:05:06+00:00" id="1">
  <HotelExtraGuestCharges hotel_id="ABC" action="overlay">
    <ExtraGuestCharge>
      <AgeBrackets>
        <ChildAgeBrackets>
          <ChildAgeBracket max_age="3" percentage="10"
                           counts_as_base_occupant="never" />
          <ChildAgeBracket max_age="10" percentage="30"
                           counts_as_base_occupant="preferred"/>
          <ChildAgeBracket max_age="17" discount_amount="10"
                           counts_as_base_occupant="always" />
        </ChildAgeBrackets>
      </AgeBrackets>
    </ExtraGuestCharge>
  </HotelExtraGuestCharges>
</ExtraGuestCharges>

Voici les tarifs correspondants:

<?xml version="1.0" encoding="UTF-8"?>
<OTA_HotelRateAmountNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05"
                            EchoToken="12345678"
                            TimeStamp="2020-05-19T20:50:37-05:00"
                            Version="3.0">
  <RateAmountMessages HotelCode="ABC">
    <RateAmountMessage>
      <StatusApplicationControl Start="2020-05-18"
                                End="2020-05-23"
                                InvTypeCode="RoomID_1"
                                RatePlanCode="PackageID_1"/>
      <Rates>
        <Rate>
          <BaseByGuestAmts>
            <BaseByGuestAmt AmountAfterTax="100.00"
                            CurrencyCode="USD"
                            NumberOfGuests="1"/>
            <BaseByGuestAmt AmountAfterTax="110.00"
                            CurrencyCode="USD"
                            NumberOfGuests="2"/>
          </BaseByGuestAmts>
        </Rate>
      </Rates>
    </RateAmountMessage>
  </RateAmountMessages>
</OTA_HotelRateAmountNotifRQ>
```

  1.  Suppose you want the total price for 2 adults and 1 child of 2 years
      of age.

      Children aged 0-3 are never included in the rate's occupancy,
      so here you should take the double occupancy rate and divide by 2 to
      get the unit price. Then, multiply by the percentage rate and sum
      with the rate to get the total price.

      `unit price ` = 110 / 2 = 55

      `total price` = 110 + 55 * 0.1 = 115.5

  1.  Suppose you want the total price for 1 adult and 2 children, both of 5
      years of age.

      Children aged 4-10 are preferably included in the rate's
      occupancy. you should start by looking for a 3 adult rate since both
      children are preferably included in the rate's occupancy. Since
      that doesn't exist you should fall back to the 2 adult rate and then,
      take this rate and divide by two to get the unit price. Finally,
      multiply by the percentage rate and sum with the scaled rate to
      get the total price.

      `unit price` = 110 / 2 = 55

      `total price` = 55 + 55 * 0.3 + 55 * 0.3 = 88

  1.  Suppose you want the total price for 1 adult and 1 child of 17
      years of age.

      Children aged 11-17 are always included in the rate's occupancy, so,
      in this case, take the double occupancy rate and divide by 2 to get
      the unit price. Then, deduct it by the discount amount and sum with
      the scaled rate to get the total price.

      `unit price` = 110 / 2 = 55

      `total price` = 55 + (55 - 10) = 100

Restrictions relatives aux frais

Tous les types de restrictions sont facultatifs et vous pouvez en combiner plusieurs.

L'exemple suivant montre un message ExtraGuestCharges qui spécifie des restrictions:

<?xml version="1.0" encoding="UTF-8"?>
<ExtraGuestCharges timestamp="2001-02-03T04:05:06+00:00" id="1">
  <HotelExtraGuestCharges hotel_id="ABC" action="overlay">
    <ExtraGuestCharge>
      <RoomTypes>
        <RoomType id="queen" />
        <RoomType id="king" />
      </RoomTypes>
      <RatePlans>
        <RatePlan id="free-wifi" />
        <RatePlan id="hot-breakfast" />
      </RatePlans>
      <StayDates>
        <DateRange start="2020-09-01" end="2020-09-14"/>
      </StayDates>
      <AgeBrackets>
        <AdultCharge amount="50" />
      </AgeBrackets>
    </ExtraGuestCharge>
  </HotelExtraGuestCharges>
</ExtraGuestCharges>

Le message ci-dessus indique que les adultes doivent être facturés pour tout produit de type "queen" ou "king" avec l'offre "Wi-Fi gratuit" ou "petit-déjeuner chaud" entre le 1er et le 14 septembre 2020.

Chevauchement de frais

Cette section présente un exemple de message non valide spécifiant différents frais pour les mêmes combinaisons de dates et de produits.


<?xml version="1.0" encoding="UTF-8"?>
<ExtraGuestCharges timestamp="2001-02-03T04:05:06+00:00" id="1">
  <HotelExtraGuestCharges hotel_id="ABC" action="overlay">
    <ExtraGuestCharge>
      <RoomTypes>
        <RoomType id="queen" />
      </RoomTypes>
      <RatePlans>
        <RatePlan id="free-wifi" />
      </RatePlans>
      <StayDates>
        <DateRange start="2020-09-01" end="2020-09-14"/>
      </StayDates>
      <AgeBrackets>
        <AdultCharge amount="50" />
      </AgeBrackets>
    </ExtraGuestCharge>
    <ExtraGuestCharge>
      <RoomTypes>
        <RoomType id="queen" />
        <RoomType id="king" />
      </RoomTypes>
      <RatePlans>
        <RatePlan id="free-wifi" />
        <RatePlan id="hot-breakfast" />
      </RatePlans>
      <StayDates>
        <DateRange start="2020-09-01" end="2020-09-05"/>
      </StayDates>
      <AgeBrackets>
        <AdultCharge amount="20" />
      </AgeBrackets>
    </ExtraGuestCharge>
  </HotelExtraGuestCharges>
</ExtraGuestCharges>

Le message ci-dessus n'est pas valide, car la première <ExtraGuestCharge> spécifie que "queen" et "free-wifi" du 1er au 14 septembre devraient facturer 50 adultes supplémentaires. Le deuxième <ExtraGuestCharge> spécifie que toute "reine" ou "roi" avec "Wi-Fi gratuit" ou "petit-déjeuner chaud" du 1er au 5 septembre devra facturer 20 adultes supplémentaires. Les frais "reine" et "Wi-Fi gratuit" se chevauchent du 1er au 5 septembre, et il existe un conflit entre le fait de facturer 20 ou 50 € pour un adulte supplémentaire.

Réponses

Syntaxe

Le message ExtraGuestChargesResponse utilise la syntaxe suivante:

<?xml version="1.0" encoding="UTF-8"?>
<ExtraGuestChargesResponse 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>
</ExtraGuestChargesResponse>

Éléments et attributs

Le message ExtraGuestChargesResponse comporte les éléments et attributs suivants:

Élément / @Attribut Occurrences Type Description
ExtraGuestChargesResponse 1 Complex element Élément racine indiquant le succès ou les problèmes liés à un message de requête ExtraGuestCharges reçu.
ExtraGuestChargesResponse / @timestamp 1 DateTime Date et heure de création de ce message.
ExtraGuestChargesResponse / @id 1 string Identifiant unique du message ExtraGuestCharges associé.
ExtraGuestChargesResponse / @partner 1 string Compte du partenaire pour ce message.
ExtraGuestChargesResponse / Success 0..1 Success Indique que le message ExtraGuestCharges a bien été traité sans avertissement, erreur ni échec.

Chaque message contient soit <Success>, soit <Issues>.

ExtraGuestChargesResponse / Issues 0..1 Issues Conteneur pour un ou plusieurs problèmes rencontrés lors du traitement du message ExtraGuestCharges.

Chaque message contient soit <Success>, soit <Issues>.

ExtraGuestChargesResponse / Issues / Issue 1..n Issue Description d'un avertissement, d'une erreur ou d'un échec rencontré lors du traitement du message ExtraGuestCharges. Pour en savoir plus sur ces problèmes, consultez Messages d'erreur concernant l'état du flux.
ExtraGuestChargesResponse / Issues / Issue / @code 1 integer Identifiant du problème.
ExtraGuestChargesResponse / Issues / Issue / @status 1 enum

Type de problème rencontré.

Les valeurs valides sont warning, error et failure.

Exemples

Opération réussie

La réponse ci-dessous est une réponse à un message ExtraGuestCharges correctement traité.

<?xml version="1.0" encoding="UTF-8"?>
<ExtraGuestChargesResponse timestamp="2020-05-18T16:20:00-04:00"
                    id="12345678"
                    partner="partner_key">
  <Success/>
</ExtraGuestChargesResponse>

Problèmes

La réponse suivante est une réponse à un message ExtraGuestCharges non traité en raison d'erreurs.

<?xml version="1.0" encoding="UTF-8"?>
<ExtraGuestChargesResponse timestamp="2020-05-18T16:20:00-04:00"
                    id="12345678"
                    partner="partner_key">
  <Issues>
    <Issue code="1001" status="error">Example</Issue>
  </Issues>
</ExtraGuestChargesResponse>