Dodatkowe opłaty gości

Stawki przesłane przez <OTA_HotelRateAmountNotifRQ> można zmienić tak, aby oprócz liczby gości określonej w cenach uwzględnić osoby dorosłe i dzieci. Komunikat ExtraGuestCharges zawiera informacje o tym, jak należy obliczać stawki za tych dodatkowych gości oraz których pokoi, abonamentów i dat pobytu mają obowiązywać ich opłaty.

Wymagania dotyczące pojemności

Ceny obliczone na podstawie komunikatu ExtraGuestCharges są ważne 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 używa następującej 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 ma te elementy i atrybuty:

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

Uwaga: jeśli masz backend, który dostarcza pliki danych dla wielu kont, ta wartość musi być zgodna z wartością atrybutu ID określoną w elemencie <RequestorID> komunikatów <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 - (myślnik).
ExtraGuestCharges / @timestamp 1 DateTime Data i godzina utworzenia tej wiadomości.
ExtraGuestCharges / HotelExtraGuestCharges 0..n HotelExtraGuestCharges Kontener na opłaty za pojedynczą usługę.
ExtraGuestCharges / HotelExtraGuestCharges / @hotel_id 1 string Unikalny identyfikator usługi. Ta wartość musi być zgodna z identyfikatorem hotelu określonym za pomocą atrybutu <id> w elemencie <listing> w pliku danych z listą hoteli. Identyfikator hotelu znajdziesz też w Hotel Center.
ExtraGuestCharges / HotelExtraGuestCharges / @action 0..1 enum Określa sposób stosowania aktualizacji. Obsługiwana jest tylko wartość overlay, a ustawieniem domyślnym jest nakładka. Przed zastosowaniem aktualizacji zostaną usunięte wszystkie poprzednie opłaty za tę usługę.
ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge 0..99 ExtraGuestCharge

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

Każdy ExtraGuestCharge w elemencie HotelExtraGuestCharges musi mieć zastosowanie do unikalnego zestawu dat i usług. Jeśli 2 elementy ExtraGuestCharge odnoszą się do tej samej kombinacji daty i usługi, cała wiadomość jest odrzucana.

ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge / AgeBrackets 1 AgeBrackets Kontener przedziału wiekowego, który służy do obliczania opłat według wieku lub kategorii gościa.
ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge / AgeBrackets / AdultCharge 0..1 AdultCharge Pojemnik na opłatę dla dodatkowej osoby dorosłej.
ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge / AgeBrackets / AdultCharge / @amount 0..1 float Dodatnia wartość dziesiętna, która określa stałą kwotę do zapłaty za dodatkową osobę dorosłą. Waluta jest używana w tej samej walucie co w przypadku cen za noc.
ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge / AgeBrackets / ChildAgeBrackets 0..1 ChildAgeBrackets Kontener na dodatkowe opłaty podrzędne. Te przedziały wiekowe mogą obejmować tylko przedział wiekowy od 0 do 17 lat 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 do: max_age (max_age). Kwota obciążenia można określić za pomocą tych elementów: amount, percentage lub discount_amount. Dla każdej <ChildAgeBracket> trzeba podać dokładnie 1 z tych atrybutów.
ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge / AgeBrackets / ChildAgeBrackets / ChildAgeBracket / @max_age 1 integer Maksymalny wiek, w przypadku którego mogą obowiązywać opłaty określone w <ChildAgeBracket>. Minimalny wiek wynosi 0, jeśli przed tą wartością nie określono innych atrybutów <ChildAgeBracket>. W przeciwnym razie jego wartość jest o 1 większa niż maksymalny wiek w poprzednim nawiasie.
ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge / AgeBrackets / ChildAgeBrackets / ChildAgeBracket / @exclude_from_capacity 1 boolean Wartość logiczna wskazująca, czy dziecko w tym przedziale wiekowym powinno być wliczane do łącznej pojemności sali oraz pojemności podrzędnej. Te limity można ustawić za pomocą transakcji(dane usługi). Na przykład niemowlęta poniżej określonego wieku mogą nie być wliczane do limitu dzieci.
ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge / AgeBrackets / ChildAgeBrackets / ChildAgeBracket / @amount 0..1 float Nieujemna wartość dziesiętna określająca stałą kwotę do zapłaty za dodatkowe elementy podrzędne w tym nawiasie. Waluta jest używana w tej samej walucie co w przypadku cen za noc.
ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge / AgeBrackets / ChildAgeBrackets / ChildAgeBracket / @percentage 0..1 float

Wartość dziesiętna od 1 do 99, która określa procent ceny dla osoby dorosłej, którą należy zapłacić za dodatkowe dziecko w tym nawiasie. Waluta jest używana w tej samej walucie co w przypadku stawek za noc.

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

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

Dodatnia wartość dziesiętna, która określa zryczałtowaną kwotę rabatu od ceny dla osoby dorosłej za dodatkowe konto podrzędne w tym nawiasie. Waluta jest używana w tej samej walucie co w przypadku stawek za noc.

Ogólnie opłata za dziecko w tym przedziale jest obliczana przez odjęcie stałej kwoty od „ceny jednostkowej”. Cena jednostkowa jest szczegółowo omówiona w sekcji atrybutu counts_as_base_occupant.

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

Jeśli podasz atrybut percentage lub discount_amount, musisz też podać wartość counts_as_base_occupant. Ta wartość określa, czy element podrzędny powinien być uwzględniany w NumberOfGuest po wybraniu stawki <BaseByGuestAmount> dla stosowania opłat procentowych i rabatów.

Celem jest uzyskanie „ceny jednostkowej”, na podstawie której można obliczyć rzeczywistą opłatę.

unit price = rate / occupancy

Wartość tego atrybutu musi wynosić never, preferred lub always.

  • Jeśli określono never, element podrzędny nigdy nie powinien być uwzględniany w liczbie osób w cenie.

    Jeśli chcesz obliczyć stawkę dla 2 dorosłych i 2 dzieci (2 lub 2 lata), użyj stawki dla 2 osób dorosłych, ponieważ dzieci nie powinny być uwzględniane.

  • Jeśli podano preferred, powinno być uwzględnione dziecko w tej cenie.

    Jeśli chcesz obliczyć stawkę dla 2 dorosłych i 1 dziecka (2 + 1), lepiej użyć stawki dla 3 osób dorosłych, ale jeśli nie można jej znaleźć, użyj stawki dla 2 dorosłych.

  • Jeśli określono always, obiekt podrzędny powinien być zawsze uwzględniany w liczbie osób w cenie.

    Jeśli chcesz obliczyć stawkę dla 2 dorosłych i 2 dzieci (2 + 2), użyj stawki dla 4 osób dorosłych, ponieważ dzieci muszą być uwzględnione.

ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge / RoomTypes 0..1 RoomTypes Kontener na listę typów pokojów, do których mają zastosowanie opłaty. Opłaty są naliczane do każdego podanego <RoomType>. Jeśli nie podasz <RoomTypes>, opłaty będą dotyczyć wszystkich pokoi w określonym obiekcie.
ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge / RoomTypes / RoomType 1..n RoomType Określa typ pokoju. Rodzaj pokoju jest zdefiniowany w elemencie <RoomData> w komunikacie transakcji (dane usługi) i odwoła się do niego za pomocą wartości <RoomID>. (Do jej wartości <RoomID> odwołuje się też atrybut InvTypeCode w komunikatach OTA_HotelRateAmountNotifRQ).
ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge / RoomTypes / RoomType / @id 1 string Unikalny identyfikator zasobów reklamowych (typ sali). 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 na listę abonamentów, których dotyczą opłaty. Jeśli nie podasz <RatePlans>, opłaty będą dotyczyć wszystkich abonamentów.
ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge / RatePlans / RatePlan 1..n RatePlan Określa plan stawek. Plan taryfowy zależy od kombinacji pakietu, stawek i dostępności, zgodnie z definicją podaną w komunikatach dotyczących transakcji (dane obiektu), OTA_HotelRateAmountNotifRQ i OTA_HotelAvailNotifRQ oraz zgodnie z identyfikatorem PackageID.
ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge / RatePlans / RatePlan / @id 1 string Unikalny identyfikator planu stawek. Ta wartość jest mapowana na wartość PackageID w elemencie <PackageData> w komunikacie transakcji (dane usługi) i w atrybucie RatePlanCode w komunikacie <StatusApplicationControl> zarówno w wiadomościach <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 stosowania opłat.
ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge / StayDates / DateRange 1..99 DateRange Zakres dat określający daty, w których ma zostać zastosowana promocja.
ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge / StayDates / DateRange / @start 0..1 Date Data rozpoczęcia (na podstawie strefy czasowej usługi) włącznie z zakresem dat. Ta data nie może być wcześniejsza niż data end. Jeśli nie podasz start, zakres dat będzie w zasadzie nieograniczony pod względem daty rozpoczęcia.
ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge / StayDates / DateRange / @end 0..1 Date Data zakończenia (na podstawie strefy czasowej usługi) włącznie z zakresem dat. Ta data musi być taka sama jak data start lub późniejsza. Jeśli nie podasz end, zakres dat będzie w zasadzie nieograniczony pod względem daty zakończenia.
ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge / StayDates / DateRange / @days_of_week 0..1 string

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

Prawidłowe znaki:

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

Dopuszczalna jest dowolna kombinacja znaków.

Przykłady

Opłaty dla dorosłych

Opłaty za dodatkowe osoby dorosłe mogą być wyrażone wyłącznie w postaci stałej. 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 odpowiadające im 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 wyniosłaby 170 = 120 + 50.

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

Opłaty za dzieci

Opłaty za dzieci są podawane w przedziałach wiekowych do 17 lat i mogą być wyrażone w stałych kwotach, wartościach procentowych lub rabatach.

Poniższy przykład pokazuje komunikat ExtraGuestCharges, który określa obciążenia 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 odpowiadające im 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 dotyczące opłat

Wszystkie typy ograniczeń są opcjonalne i możesz zastosować dowolną ich kombinację.

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 osoba dorosła w okresie od 1 września 2020 r. do 14 września 2020 r. ma opłatę za pokój typu „queen” lub „king” (bezpłatna sieć Wi-Fi) lub „gorące śniadanie”.

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 produktów.


<?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ższy komunikat jest nieprawidłowy, ponieważ pierwszy <ExtraGuestCharge> określa, że opcje „queen” i „free-wifi” w okresie od 1 do 14 września powinny pobierać opłaty za dodatkowe 50 osób dorosłych. Drugi <ExtraGuestCharge> określa, że każda z opcji „king-size” i „bezpłatna sieć Wi-Fi” oraz „gorące śniadanie” w okresie od 1 do 5 września powinna naliczać dodatkowe osoby dorosłe w wieku 20 lat. W okresie od 1 do 5 września opłaty za „Królową” i „Bezpłatne Wi-Fi” nakładają się na siebie, a opłaty w wysokości 20 lub 50 USD za dodatkową osobę dorosłą są sprzeczne.

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

Komunikat ExtraGuestChargesResponse ma następujące elementy i atrybuty:

Element / @Atrybut Wystąpienia Typ Opis
ExtraGuestChargesResponse 1 Complex element Element główny wskazujący informacje o powodzeniu lub problemach dotyczących odebranego komunikatu z żądaniem ExtraGuestCharges.
ExtraGuestChargesResponse / @timestamp 1 DateTime Data i godzina utworzenia tej wiadomości.
ExtraGuestChargesResponse / @id 1 string Unikalny identyfikator z powiązanej wiadomości w ExtraGuestCharges.
ExtraGuestChargesResponse / @partner 1 string Konto partnera, do którego należy ta wiadomość.
ExtraGuestChargesResponse / Success 0..1 Success Wskazuje, że komunikat ExtraGuestCharges został przetworzony bez ostrzeżeń, błędów ani błędów.

W każdej wiadomości znajduje się <Success> lub <Issues>.

ExtraGuestChargesResponse / Issues 0..1 Issues Kontener zawierający co najmniej 1 problem napotkany podczas przetwarzania wiadomości ExtraGuestCharges.

W każdej wiadomości znajduje się <Success> lub <Issues>.

ExtraGuestChargesResponse / Issues / Issue 1..n Issue Opis ostrzeżenia, błędu lub błędu napotkanego podczas przetwarzania komunikatu ExtraGuestCharges. Szczegółowe informacje o tych problemach znajdziesz w sekcji 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

To jest 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>