Dodatkowe opłaty gości

Oprócz pierwotnej liczby gości ceny przesyłane przez firmę <OTA_HotelRateAmountNotifRQ> można zmienić, tak aby uwzględniały potrzeby dzieci i dorosłych. Komunikat ExtraGuestCharges zawiera informacje o sposobie obliczania cen za tych dodatkowych gości oraz o pokojach, abonamentach i datach pobytu.

Wymagania dotyczące pojemności

Ceny obliczone na podstawie komunikatu ExtraGuestCharges mają zastosowanie tylko wtedy, gdy spełnione są wszystkie wymagania dotyczące pojemności. Więcej informacji znajdziesz w sekcji Transakcja (dane usługi).

Żądania

Składnia

Komunikat ExtraGuestCharges ma taką składnię:

<?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>

Elementy i atrybuty

Wiadomość ExtraGuestCharges składa się z tych elementów i atrybutów:

Element / @Atrybut Wystąpienia Typ Opis
ExtraGuestCharges 1 Complex element Główny element tej wiadomości.
ExtraGuestCharges / @partner 1 string Konto partnera, z którego pochodzi ta wiadomość. Ta wartość ciągu znaków to wartość Partner key wymieniona na stronie Ustawienia konta w Hotel Center.

Uwaga: jeśli masz backend, który udostępnia pliki danych dla wielu kont, ta wartość musi odpowiadać wartości atrybutu ID określonej w elemencie <RequestorID> wiadomości <OTA_HotelRateAmountNotifRQ> i <OTA_HotelAvailNotifRQ> dla tego samego konta.

ExtraGuestCharges / @id 1 string Unikalny identyfikator tej wiadomości z żądaniem. Ta wartość jest zwracana w wiadomości z odpowiedzią. Dozwolone znaki to a-z, A-Z, 0-9, _ (podkreślenie) i - (łącznik).
ExtraGuestCharges / @timestamp 1 DateTime Data i godzina utworzenia tej wiadomości.
ExtraGuestCharges / HotelExtraGuestCharges 0..n HotelExtraGuestCharges Kontener opłat dotyczących pojedynczej usługi.
ExtraGuestCharges / HotelExtraGuestCharges / @hotel_id 1 string Unikalny identyfikator usługi. Ta wartość musi być zgodna z identyfikatorem hotelu podanym za pomocą <id> w elemencie <listing> w pliku danych z listą hoteli. Identyfikator hotelu jest też podany w Hotel Center.
ExtraGuestCharges / HotelExtraGuestCharges / @action 0..1 enum Określa sposób stosowania aktualizacji. Obsługiwana jest tylko wartość overlay, a wartością domyślną jest nakładka. Wszelkie wcześniejsze opłaty za tę usługę zostaną usunięte przed zastosowaniem aktualizacji.
ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge 0..99 ExtraGuestCharge

Jeden zestaw opłat za usługę. Mogą one obejmować ograniczenia dotyczące sposobu naliczania opłaty oraz obliczania opłat według wieku lub kategorii gościa.

Każdy element ExtraGuestCharge w obrębie właściwości HotelExtraGuestCharges musi mieć zastosowanie do unikalnego zestawu dat i usług. Jeśli dwa elementy ExtraGuestCharge odnoszą się do tej samej kombinacji daty i usługi, cała wiadomość zostanie odrzucona.

ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge / AgeBrackets 1 AgeBrackets Kontener z przedziałami wiekowymi służący do obliczania opłat według wieku lub kategorii gościa.
ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge / AgeBrackets / AdultCharge 0..1 AdultCharge Pojemnik na opłatę za dodatkową osobę dorosłą.
ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge / AgeBrackets / AdultCharge / @amount 0..1 float Dodatnia wartość dziesiętna, która określa stałą opłatę za dodatkową osobę dorosłą. Przy naliczaniu opłaty za noc jest używana ta sama waluta, co w przypadku stawek za noc.
ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge / AgeBrackets / ChildAgeBrackets 0..1 ChildAgeBrackets Kontener na dodatkowe opłaty podrzędne. Te przedziały wiekowe mogą obejmować wyłącznie przedział wiekowy 0–17 włącznie.
ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge / AgeBrackets / ChildAgeBrackets / ChildAgeBracket 1..99 ChildAgeBracket Opłata, która dotyczy dzieci w określonym przedziale wiekowym. Należy ułożyć je w kolejności od najniższej max_age do najwyższej wartości (max_age). Kwotę obciążenia można określić za pomocą właściwości amount, percentage lub discount_amount. Dla każdego elementu <ChildAgeBracket> musisz określić dokładnie 1 z tych atrybutów.
ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge / AgeBrackets / ChildAgeBrackets / ChildAgeBracket / @max_age 1 integer Maksymalny wiek, w którym mogą obowiązywać opłaty określone w zasadzie <ChildAgeBracket>. Minimalny wiek wynosi 0, jeśli przed tym ustawieniem nie określono żadnego elementu <ChildAgeBracket>. W przeciwnym razie jest o 1 większa niż maksymalny wiek w poprzednim nawiasie.
ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge / AgeBrackets / ChildAgeBrackets / ChildAgeBracket / @exclude_from_capacity 1 boolean Wartość logiczna, która określa, czy dziecko z tego przedziału wiekowego powinno być wliczane do łącznej pojemności sali i limitu dzieci. Te limity można ustawić za pomocą transakcji(danych usługi). Na przykład niemowlęta w wieku poniżej określonego wieku mogą nie być wliczane do limitu miejsca dla dziecka.
ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge / AgeBrackets / ChildAgeBrackets / ChildAgeBracket / @amount 0..1 float Nieujemna wartość dziesiętna, która określa zryczałtowaną kwotę, która zostanie naliczona za dodatkowy element podrzędny w tym nawiasie. W przypadku tej opłaty używana jest ta sama waluta, która została określona dla stawek za noc.
ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge / AgeBrackets / ChildAgeBrackets / ChildAgeBracket / @percentage 0..1 float

Wartość dziesiętna z zakresu od 1 do 99, która określa procent ceny produktu dorosłego, która powinna zostać pobrana za dodatkowe dziecko w tym przedziale. W przypadku tej opłaty używana jest ta sama waluta, która została określona dla stawek za noc.

Szczegółowe informacje o sposobie obliczania ceny dla dorosłych znajdziesz w dyskusji na stronie counts_as_base_occupant.

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

Dodatnia wartość dziesiętna, która określa stałą kwotę rabatu od ceny osoby dorosłej za dodatkowe dziecko w tym przedziale. W przypadku tej opłaty używana jest ta sama waluta, która została określona dla stawek za noc.

Ogólnie opłata za dziecko należąca do tego przedziału jest obliczana przez odjęcie kwoty zryczałtowanej od „ceny jednostkowej”. Cena jednostkowa została omówiona bardziej szczegółowo w sekcji atrybutu counts_as_base_occupant.

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

Jeśli określono atrybut percentage lub discount_amount, musisz też podać counts_as_base_occupant. Ta wartość określa, czy po wybraniu stawki <BaseByGuestAmount> na potrzeby zastosowania procentowych opłat i rabatów w NumberOfGuest należy uwzględnić element podrzędny.

Celem jest uzyskanie „ceny jednostkowej”, na podstawie której można obliczyć rzeczywiste obciążenie.

unit price = rate / occupancy

Wartością tego atrybutu musi być never, preferred lub always.

  • Jeśli określono never, dziecko nigdy nie powinno być wliczane do liczby osób w cenie.

    Jeśli chcesz obliczyć cenę dla 2 dorosłych i 2 dzieci (2+2), użyj ceny dla 2 dorosłych, ponieważ dzieci nie powinny być w nim uwzględniane.

  • Jeśli określono preferred, najlepiej jest uwzględnić dziecko w cenie liczby osób.

    Jeśli chcesz obliczyć cenę dla 2 dorosłych i 1 dziecka (2 +1), najlepiej jest użyć ceny dla 3 osób dorosłych, ale jeśli nie ma takiej możliwości, użyj ceny dla 2 osób dorosłych.

  • Jeśli określono always, dziecko powinno być zawsze uwzględniane w liczbie osób w cenie.

    Jeśli chcesz obliczyć cenę dla 2 dorosłych i 2 dzieci (2+2), użyj ceny dla 4 dorosłych, ponieważ dzieci muszą być w hotelu.

ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge / RoomTypes 0..1 RoomTypes Kontener zawierający listę typów pomieszczeń, do których mają zastosowanie opłaty. Opłaty są naliczane w przypadku każdego podanego zasobu <RoomType>. Jeśli nie określisz wartości <RoomTypes>, opłaty będą dotyczyć wszystkich sal w danej usłudze.
ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge / RoomTypes / RoomType 1..n RoomType Określa typ pomieszczenia. Typ pokoju jest zdefiniowany w elemencie <RoomData> w komunikacie Transakcja (dane usługi) i jest przywoływany za pomocą wartości <RoomID>. (Do jej wartości <RoomID> odwołuje się również atrybut InvTypeCode w komunikatach OTA_HotelRateAmountNotifRQ).
ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge / RoomTypes / RoomType / @id 1 string Unikalny identyfikator zasobów reklamowych (typ pomieszczenia). Ta wartość jest mapowana na <RoomID> w komunikacie transakcji (dane usługi). Maksymalna dozwolona liczba znaków to 50.
ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge / RatePlans 0..1 RatePlans Kontener listy abonamentów, do których mają zastosowanie opłaty. Jeśli nie podasz <RatePlans>, opłaty będą obowiązywać we wszystkich abonamentach.
ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge / RatePlans / RatePlan 1..n RatePlan Określa plan stawek. Plan stawek jest definiowany przez połączenie pakietu, stawek i dostępności zgodnie z definicją w danych transakcji (danych obiektu), komunikatach OTA_HotelRateAmountNotifRQ i OTA_HotelAvailNotifRQ oraz określa identyfikator pakietu.
ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge / RatePlans / RatePlan / @id 1 string Unikalny identyfikator abonamentu. Ta wartość jest mapowana na wartość PackageID w <PackageData> w komunikacie transakcji (dane usługi) i w atrybucie RatePlanCode w <StatusApplicationControl> zarówno w komunikatach <OTA_HotelRateAmountNotifRQ>, jak i <OTA_HotelAvailNotifRQ>. Maksymalna dozwolona liczba znaków to 50.
ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge / StayDates 0..1 StayDates Kontener dla co najmniej jednego zakresu dat, który określa sposób naliczania opłat.
ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge / StayDates / DateRange 1..99 DateRange Zakres dat określający daty zastosowania promocji.
ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge / StayDates / DateRange / @start 0..1 Date Data rozpoczęcia (na podstawie strefy czasowej usługi) włącznie z datą rozpoczęcia zakresu dat. Ta data nie może być wcześniejsza niż data end. Jeśli nie określisz wartości start, zakres dat będzie w praktyce nieograniczony.
ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge / StayDates / DateRange / @end 0..1 Date Data końcowa z zakresu dat (na podstawie strefy czasowej usługi). Ta data musi być taka sama jak data start lub później. Jeśli nie określisz wartości end, zakres dat będzie nieograniczony, jeśli chodzi o datę zakończenia.
ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge / StayDates / DateRange / @days_of_week 0..1 string

Dni tygodnia, które są dozwolone w zakresie dat. Jeśli go nie podasz, dozwolone będą wszystkie dni w zakresie dat. Każdy znak w ciągu określa dzień. Na przykład ciąg „MTWHF” wskazuje, że w zakresie dat dozwolone są dni robocze.

Prawidłowe znaki to:

  • M na poniedziałek
  • T na wtorek
  • W na środę
  • H na czwartek
  • F na piątek
  • S na sobotę
  • U na niedzielę

Obowiązuje każda kombinacja znaków.

Przykłady

Opłaty za osobę dorosłą

Opłaty za dodatkowe osoby dorosłe mogą być wyrażone tylko jako kwota zryczałtowana. Poniższy przykład pokazuje komunikat ExtraGuestCharges, który określa opłaty dla dorosłych:

<?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>

Oto odpowiednie stawki:

<?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>

Gdy użytkownik wyszukuje w Google 4 osoby dorosłe, łączna stawka wynosi: 170 = 120 + 50.

120 pochodzi ze stawki <BaseByGuestAmt> z: NumberOfGuests="3", a 50 z AdultCharge amount="50".

Opłaty za dziecko

Opłaty dla dzieci są wyrażone w przedziałach wiekowych do 17 lat i mogą być wyrażone w kwotach zryczałtowanych, procentach lub rabatach.

Poniższy przykład pokazuje komunikat ExtraGuestCharges, który określa opłaty podrzędne:

<?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>

Oto odpowiednie stawki:

<?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

Ograniczenia obciążeń

Wszystkie typy ograniczeń są opcjonalne i można używać dowolnej ich kombinacji.

Poniższy przykład pokazuje komunikat ExtraGuestCharges, który określa ograniczenia:

<?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>

Powyższy komunikat określa, że dorośli powinni zapłacić za wszystkie usługi typu „łóżko typu queen” lub „king-size” z abonamentem „bezpłatne-Wi-Fi” lub „śniadanie na ciepło” w okresie od 1 września 2020 r. do 14 września 2020 r.

Nakładające się opłaty

W tej sekcji znajdziesz przykład nieprawidłowego komunikatu, który określa różne opłaty za te same kombinacje dat i usług.


<?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>

Powyższa wiadomość jest nieprawidłowa, ponieważ pierwszy <ExtraGuestCharge> określa, że w okresie od 1 do 14 września „queen” i „free-wifi” mają być naliczane opłaty dla kolejnych osób dorosłych (50 osób). Drugie pole <ExtraGuestCharge> określa, że w przypadku gości w okresie od 1 do 5 września opcje „queen” lub „king” w połączeniu z „bezpłatnym Wi-Fi” lub „śniadaniem na ciepło” powinny być naliczane za dodatkowe osoby dorosłe w wieku 20 września. Opłaty za pokoje typu „queen” i „darmowe Wi-Fi” pokrywają się w okresie od 1 do 5 września, a za dodatkową osobę dorosłą nie można zapłacić 20 lub 50 USD.

Odpowiedzi

Składnia

Komunikat ExtraGuestChargesResponse ma taką składnię:

<?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>

Elementy i atrybuty

Wiadomość ExtraGuestChargesResponse zawiera te elementy i atrybuty:

Element / @Atrybut Wystąpienia Typ Opis
ExtraGuestChargesResponse 1 Complex element Element główny wskazujący powodzenie lub problemy związane z odebranym żądaniem ExtraGuestCharges.
ExtraGuestChargesResponse / @timestamp 1 DateTime Data i godzina utworzenia tej wiadomości.
ExtraGuestChargesResponse / @id 1 string Unikalny identyfikator powiązanej wiadomości w aplikacji ExtraGuestCharges.
ExtraGuestChargesResponse / @partner 1 string Konto partnera, z którego pochodzi ta wiadomość.
ExtraGuestChargesResponse / Success 0..1 Success Wskazuje, że wiadomość ExtraGuestCharges została przetworzona bez ostrzeżeń, błędów i niepowodzeń.

Każda wiadomość zawiera element <Success> lub <Issues>.

ExtraGuestChargesResponse / Issues 0..1 Issues Kontener rozwiązania co najmniej jednego problemu, który wystąpił podczas przetwarzania wiadomości ExtraGuestCharges.

Każda wiadomość zawiera element <Success> lub <Issues>.

ExtraGuestChargesResponse / Issues / Issue 1..n Issue Opis ostrzeżenia, błędu lub błędu napotkanych podczas przetwarzania wiadomości ExtraGuestCharges. Szczegółowe informacje o tych problemach znajdziesz w artykule Komunikaty o błędach stanu pliku danych.
ExtraGuestChargesResponse / Issues / Issue / @code 1 integer Identyfikator problemu.
ExtraGuestChargesResponse / Issues / Issue / @status 1 enum

Typ napotkanego problemu.

Prawidłowe wartości to warning, error i failure.

Przykłady

Gotowe

Poniżej znajduje się odpowiedź na pomyślnie przetworzony komunikat ExtraGuestCharges.

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

Problemy

Poniżej znajdziesz odpowiedź na komunikat ExtraGuestCharges, który nie został przetworzony z powodu błędów.

<?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>