Dodatkowe opłaty gości

Ceny wysyłane za pomocą <OTA_HotelRateAmountNotifRQ> można modyfikować, aby uwzględniały zarówno dorosłych, jak i dzieci, a także pierwotną liczbę gości. Wiadomość ExtraGuestCharges umożliwia określenie sposobu obliczania stawek dla tych dodatkowych gości oraz pokoi, cen i dat pobytu, w przypadku których mają one obowiązywać.

Wymagania dotyczące pojemności

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

Żądania

Składnia

Wiadomość ExtraGuestCharges używa tej 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 zawiera te elementy i atrybuty:

Element / @Attribute Wystąpienia Typ Opis
ExtraGuestCharges 1 Complex element Element główny tego komunikatu.
ExtraGuestCharges / @partner 1 string Konto partnera, na którym jest wysyłana wiadomość. Ta wartość ciągu znaków to wartość Partner key podana na stronie Ustawienia konta w Hotel Center.

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

ExtraGuestCharges / @id 1 string Unikalny identyfikator tego komunikatu żądania. 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 na opłaty za jedną usługę.
ExtraGuestCharges / HotelExtraGuestCharges / @hotel_id 1 string Unikalny identyfikator usługi. Ta wartość musi być zgodna z identyfikatorem hotelu określonym za pomocą elementu <id> w elemencie <listing> w pliku danych z listą hoteli. Identyfikator hotelu jest też widoczny w Hotel Center.
ExtraGuestCharges / HotelExtraGuestCharges / @action 0..1 enum Określa sposób zastosowania aktualizacji. Obsługiwany jest tylko format overlay, a domyślnym jest nakładka. Wszelkie wcześniejsze obciążenia dotyczące tej usługi zostaną anulowane przed zastosowaniem aktualizacji.
ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge 0..99 ExtraGuestCharge

Pojedynczy zestaw opłat za usługę. Mogą one obejmować ograniczenia dotyczące sposobu naliczania opłat i sposobu ich obliczania w zależności od wieku lub kategorii gości.

Każdy element ExtraGuestCharge w elementzie HotelExtraGuestCharges musi dotyczyć unikalnego zestawu dat i produktów. Jeśli 2 elementy ExtraGuestCharge odnoszą się do tej samej kombinacji data-produkt, cała wiadomość zostaje odrzucona.

ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge / AgeBrackets 1 AgeBrackets Kontenery z przedziałami wiekowymi służące do obliczania opłat według wieku lub kategorii gości.
ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge / AgeBrackets / AdultCharge 0..1 AdultCharge Kontenery dla dodatkowej opłaty za osobę dorosłą.
ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge / AgeBrackets / AdultCharge / @amount 0..1 float Dodatnia wartość dziesiętna, która określa stałą kwotę do zapłaty za dodatkowego dorosłego. Ta opłata jest naliczana w tej samej walucie co opłaty za nocleg.
ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge / AgeBrackets / ChildAgeBrackets 0..1 ChildAgeBrackets Kontener na dodatkowe opłaty za dzieci. Te przedziały wiekowe mogą obejmować tylko przedział wiekowy 0–17 lat.
ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge / AgeBrackets / ChildAgeBrackets / ChildAgeBracket 1..99 ChildAgeBracket Opłata, która dotyczy dzieci w określonym przedziale wiekowym. Te wartości powinny być uporządkowane od najniższej max_age do najwyższej max_age. Kwotę do obciążenia można określić za pomocą właściwości amount, percentage lub discount_amount. W przypadku każdego elementu <ChildAgeBracket> należy podać dokładnie jeden 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 punkcie <ChildAgeBracket>. Minimalny wiek to 0, jeśli przed tym elementem nie ma innych elementów <ChildAgeBracket>. W przeciwnym razie jest o 1 większy niż maksymalny wiek w poprzedniej grupie.
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 liczby miejsc i liczby miejsc dla dzieci. Te pojemności można ustawić za pomocą transakcji(danych usługi). Na przykład niemowlęta poniżej określonego wieku mogą nie być wliczane do limitu miejsc dla dzieci.
ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge / AgeBrackets / ChildAgeBrackets / ChildAgeBracket / @amount 0..1 float Wartość dodatnia w postaci dziesiętnej, która określa stałą kwotę do zapłaty za dodatkowe dziecko w tej grupie. Ta opłata jest naliczana w tej samej walucie co opłaty za noclegi.
ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge / AgeBrackets / ChildAgeBrackets / ChildAgeBracket / @percentage 0..1 float

Wartość dziesiętna z zakresu 1–99, która określa procent ceny za osobę dorosłą, który powinien zostać naliczony za dodatkowe dziecko w danej grupie. Ta opłata jest naliczana w tej samej walucie co opłaty za nocleg.

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 stały rabat na dodatkowe dziecko w tej grupie. Ta opłata jest naliczana w tej samej walucie co opłaty za nocleg.

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

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

Jeśli atrybut percentage lub discount_amount jest określony, musisz też podać atrybut counts_as_base_occupant. Ta wartość określa, czy element podrzędny powinien być uwzględniony w NumberOfGuest, gdy wybierzesz stawkę <BaseByGuestAmount> na potrzeby stosowania opłat i rabatów procentowych.

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

unit price = rate / occupancy

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

  • Jeśli określona jest wartość never, dziecko nie powinno być uwzględniane w liczbie osób w stawce.

    Jeśli chcesz obliczyć cenę za 2 osoby dorosłe i 2 dzieci (2 + 2), musisz użyć ceny za 2 osoby dorosłe, ponieważ dzieci nie powinny być uwzględniane.

  • Jeśli określono parametr preferred, dziecko powinno być uwzględnione w liczbie osób w stawce.

    Jeśli chcesz obliczyć cenę dla 2 osób dorosłych i 1 dziecka (2+1), najlepiej użyj ceny dla 3 osób dorosłych. Jeśli nie możesz jej znaleźć, użyj ceny dla 2 osób dorosłych.

  • Jeśli element always jest określony, dziecko powinno być zawsze uwzględniane w liczbie osób w stawce.

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

ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge / RoomTypes 0..1 RoomTypes Kontener z listą typów pokoi, do których mają zastosowanie opłaty. Opłaty są naliczane za każde <RoomType>określone. Jeśli <RoomTypes> nie jest określony, opłaty obowiązują we wszystkich pokojach w obiekcie.
ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge / RoomTypes / RoomType 1..n RoomType Określa typ pokoju. Typ pokoju jest zdefiniowany w elemencie <RoomData> w wiadomości Transakcja (dane obiektu) i jest do niego odwoływany za pomocą wartości <RoomID>. (wartość atrybutu <RoomID> jest też używana w atrybucie InvTypeCode w wiadomościach OTA_HotelRateAmountNotifRQ).
ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge / RoomTypes / RoomType / @id 1 string Unikalny identyfikator asortymentu (typ pokoju). Ta wartość jest mapowana na <RoomID> w wiadomości dotyczącej transakcji (danych usługi). Maksymalna liczba znaków to 50.
ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge / RatePlans 0..1 RatePlans Kontener z listą abonamentów, do których mają zastosowanie opłaty. Jeśli nie podasz wartości <RatePlans>, opłaty będą obowiązywać we wszystkich planach cenowych.
ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge / RatePlans / RatePlan 1..n RatePlan Określa plan taryfowy. Pakiet usług jest zdefiniowany przez kombinację pakietu, stawek i dostępności, jak określono w transakcjach (dane obiektu), wiadomościach OTA_HotelRateAmountNotifRQ i OTA_HotelAvailNotifRQ oraz identyfikatorze PackageID.
ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge / RatePlans / RatePlan / @id 1 string Unikalny identyfikator planu cenowego. Ta wartość jest mapowana na wartość atrybutu PackageID w elemencie <PackageData> w komunikacie Transaction (Property Data) oraz na atrybut RatePlanCode w elemencie <StatusApplicationControl> w obu komunikatach <OTA_HotelRateAmountNotifRQ> i <OTA_HotelAvailNotifRQ>. Maksymalna liczba znaków to 50.
ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge / StayDates 0..1 StayDates Kontener dla co najmniej 1 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, w których ma obowiązywać promocja.
ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge / StayDates / DateRange / @start 0..1 Date Data rozpoczęcia (według strefy czasowej usługi) obejmująca zakres dat. Ta data musi być wcześniejsza lub taka sama jak data end. Jeśli nie podasz wartości start, zakres dat będzie obejmował wszystkie daty.
ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge / StayDates / DateRange / @end 0..1 Date Data końcowa (zgodnie ze strefą czasową usługi) zakresu dat. Data musi być taka sama jak data start lub późniejsza. Jeśli nie podasz parametru end, zakres dat będzie nieograniczony pod względem daty zakończenia.
ExtraGuestCharges / HotelExtraGuestCharges / ExtraGuestCharge / StayDates / DateRange / @days_of_week 0..1 string

Dni tygodnia dozwolone w wybranym zakresie dat. Jeśli nie wybierzesz żadnego dnia, wszystkie dni w zakresie dat będą dozwolone. Każda litera w ciągu odpowiada jednemu dniowi. Na przykład „MTWHF” określa, że w zakresie dat dozwolone są dni robocze.

Prawidłowe znaki:

  • M w poniedziałek
  • T we wtorek
  • W w środę
  • H w czwartek
  • F w piątek
  • S w sobotę
  • U w przypadku niedzieli

Dozwolona jest dowolna kombinacja znaków.

Przykłady

Opłaty za treści dla dorosłych

Opłaty za dodatkowych dorosłych mogą być wyrażone tylko jako kwoty stałe. Poniższy przykład pokazuje komunikat ExtraGuestCharges, który informuje o opłatach za treści 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 wyniesie 170 = 120 + 50.

Wartość 120 pochodzi z poziomu <BaseByGuestAmt> z wartością NumberOfGuests="3", a wartość 50 – z poziomu AdultCharge amount="50".

Opłaty za element podrzędny

Opłaty za dzieci są wyrażane w przedziałach wiekowych do 17 roku życia i mogą być wyrażane w kwotach stałych, procentach lub rabatach.

Poniższy przykład pokazuje wiadomość ExtraGuestCharges, która zawiera opłaty za dzieci:

<?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 dotyczące opłat

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

Przykład poniżej 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ższe powiadomienie określa, że w przypadku dorosłych należy obciążyć kosztami każdy produkt, który ma typ pokoju „queen” lub „king” z planem taryfowym „bezpłatny internet Wi-Fi” lub „ciepłe śniadanie” w dniach od 1 do 14 września 2020 r.

Opłaty nakładające się na siebie

Ta sekcja zawiera 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 w przypadku pokoju „queen” i pakietu „bezpłatny internet Wi-Fi” w dniach 1–14 września należy obciążyć dodatkowych dorosłych opłatą w wysokości 50 PLN. Drugi <ExtraGuestCharge>określa, że w przypadku pokoju typu „queen” lub „king” z opcją „bezpłatny dostęp do Wi-Fi” lub „ciepłe śniadanie” w dniach 1–5 września należy dodać do opłaty za pobyt dorosłych 20. W przypadku pobytu w dniach 1–5 września występują nakładające się opłaty za pokój „queen” i pakiet „bezpłatne Wi-Fi”. Występuje też konflikt dotyczący tego, czy za dodatkową osobę dorosłą należy naliczyć 20 zł czy 50 zł.

Odpowiedzi

Składnia

Komunikat ExtraGuestChargesResponse używa tej 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 / @Attribute Wystąpienia Typ Opis
ExtraGuestChargesResponse 1 Complex element Element główny wskazujący, czy otrzymane żądanie ExtraGuestCharges zostało zrealizowane, czy też wystąpiły z nim problemy.
ExtraGuestChargesResponse / @timestamp 1 DateTime Data i godzina utworzenia tej wiadomości.
ExtraGuestChargesResponse / @id 1 string Unikalny identyfikator powiązany z wiadomością ExtraGuestCharges.
ExtraGuestChargesResponse / @partner 1 string Konto partnera, na którym jest wysyłana wiadomość.
ExtraGuestChargesResponse / Success 0..1 Success Wskazuje, że wiadomość ExtraGuestCharges została przetworzona bez ostrzeżeń, błędów ani niepowodzeń.

W każdej wiadomości występuje element <Success> lub <Issues>.

ExtraGuestChargesResponse / Issues 0..1 Issues Kontener dla co najmniej 1 problemu napotkanego podczas przetwarzania wiadomości ExtraGuestCharges.

W każdej wiadomości występuje element <Success> lub <Issues>.

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

Sukces

Poniżej znajduje się odpowiedź na pomyślnie przetworzoną wiadomość 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 przedstawiamy odpowiedź na wiadomość ExtraGuestCharges, która nie została przetworzona 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>