टैक्सफ़ी

अनुरोध

सिंटैक्स

TaxFeeInfo मैसेज में इस सिंटैक्स का इस्तेमाल किया जाता है:

<?xml version="1.0" encoding="UTF-8"?>
<TaxFeeInfo timestamp="timestamp"
            id="message_ID"
            partner="partner_key">
  <Property action="[overlay]">
    <ID>HotelID</ID>
    <Taxes>
      <Tax>
        <RoomTypes>
          <RoomType id="RoomID_1"/>
          <RoomType id="RoomID_2"/>
        </RoomTypes>
        <RatePlans>
          <RatePlan id="PackageID_1"/>
          <RatePlan id="PackageID_2"/>
        </RatePlans>
        <BookingDates>
          <DateRange start="YYYY-MM-DD" end="YYYY-MM-DD" days_of_week="MTWHFSU_or_subset"/>
        </BookingDates>
        <CheckinDates>
          <DateRange start="YYYY-MM-DD" end="YYYY-MM-DD" days_of_week="MTWHFSU_or_subset"/>
        </CheckinDates>
        <CheckoutDates>
          <DateRange start="YYYY-MM-DD" end="YYYY-MM-DD" days_of_week="MTWHFSU_or_subset"/>
        </CheckoutDates>
        <StayDates application="[all|any|overlap]">
          <DateRange start="YYYY-MM-DD" end="YYYY-MM-DD" days_of_week="MTWHFSU_or_subset"/>
        </StayDates>
        <Type>[percent|amount|cumulative_percent]</Type>
        <Basis>[room|person]</Basis>
        <Period>[stay|night]</Period>
        <Currency>currency_code</Currency>
        <Amount>tax_amount</Amount>
        <ApplicableNights max="integer" excluded="integer"/>
        <LengthOfStay min="integer" max="integer"/>
        <!-- Use either <Amount> or <Brackets> -->
        <Brackets base_amount="tax_amount"/>
          <Bracket starts_at="nightly_rate" amount="tax_amount"/>
        </Brackets>
        <AgeBrackets>
          <AdultCharge amount="tax_amount"/>
          <ChildAgeBrackets>
            <ChildAgeBracket max_age="max_age" amount="tax_amount"/>
          </ChildAgeBrackets>
        </AgeBrackets>
        <UserCountries type="[include|exclude]">
          <Country code="country_code1"/>
          <Country code="country_code2"/>
        </UserCountries>
        <Rank>integer</Rank>
      </Tax>
    </Taxes>
    <Fees>
      <Fee>
        <RoomTypes>
          <RoomType id="RoomID_1"/>
          <RoomType id="RoomID_2"/>
        </RoomTypes>
        <RatePlans>
          <RatePlan id="PackageID_1"/>
          <RatePlan id="PackageID_2"/>
        </RatePlans>
        <BookingDates>
          <DateRange start="YYYY-MM-DD" end="YYYY-MM-DD" days_of_week="MTWHFSU_or_subset"/>
        </BookingDates>
        <CheckinDates>
          <DateRange start="YYYY-MM-DD" end="YYYY-MM-DD" days_of_week="MTWHFSU_or_subset"/>
        </CheckinDates>
        <CheckoutDates>
          <DateRange start="YYYY-MM-DD" end="YYYY-MM-DD" days_of_week="MTWHFSU_or_subset"/>
        </CheckoutDates>
        <StayDates application="[all|any|overlap]">
          <DateRange start="YYYY-MM-DD" end="YYYY-MM-DD" days_of_week="MTWHFSU_or_subset"/>
        </StayDates>
        <Type>[percent|amount|cumulative_percent]</Type>
        <Basis>[room|person]</Basis>
        <Period>[stay|night]</Period>
        <Currency>currency_code</Currency>
        <Amount>fee_amount</Amount>
        <ApplicableNights max="integer" excluded="integer"/>
        <LengthOfStay min="integer" max="integer"/>
        <!-- Use either <Amount> or <Brackets> -->
        <Brackets base_amount="tax_amount"/>
          <Bracket starts_at="nightly_rate" amount="tax_amount"/>
        </Brackets>
        <AgeBrackets>
          <AdultCharge amount="tax_amount"/>
          <ChildAgeBrackets>
            <ChildAgeBracket max_age="max_age" amount="tax_amount"/>
          </ChildAgeBrackets>
        </AgeBrackets>
        <UserCountries type="[include|exclude]">
          <Country code="country_code1"/>
          <Country code="country_code2"/>
        </UserCountries>
        <Rank>integer</Rank>
      </Fee>
    </Fees>
  </Property>
</TaxFeeInfo>

एलिमेंट और एट्रिब्यूट

TaxFeeInfo मैसेज में ये एलिमेंट और एट्रिब्यूट शामिल हैं:

एलिमेंट / @एट्रिब्यूट आवृत्तियां टाइप ब्यौरा
TaxFeeInfo 1 Complex element किसी एक प्रॉपर्टी के लिए टैक्स और शुल्क के बारे में बताने वाले मैसेज का रूट एलिमेंट.
TaxFeeInfo / @timestamp 1 DateTime यह मैसेज बनाए जाने की तारीख और समय.
TaxFeeInfo / @id 1 string अनुरोध मैसेज के लिए यूनीक आइडेंटिफ़ायर. यह वैल्यू, रिस्पॉन्स मैसेज में दिखती है. a-z, A-Z, 0-9, _ (अंडरस्कोर), और - (डैश) वर्ण इस्तेमाल किए जा सकते हैं.
TaxFeeInfo / @partner 1 string इस मैसेज के लिए पार्टनर खाता. यह स्ट्रिंग वैल्यू, Hotel Center में खाते की सेटिंग वाले पेज पर दी गई "पार्टनर की कुंजी" वैल्यू होती है.

ध्यान दें: अगर आपके पास एक ऐसा बैकएंड है जो एक से ज़्यादा खातों के लिए फ़ीड उपलब्ध कराता है, तो यह वैल्यू उसी खाते के लिए, <OTA_HotelRateAmountNotifRQ> और <OTA_HotelAvailNotifRQ> मैसेज के <RequestorID> एलिमेंट में बताई गई ID एट्रिब्यूट वैल्यू से मेल खानी चाहिए.

TaxFeeInfo / Property 1..n Property किसी एक प्रॉपर्टी के लिए टैक्स और शुल्क तय करने वाला कंटेनर.
TaxFeeInfo / Property / @action 0..1 string इससे पता चलता है कि अपडेट को कैसे लागू किया जाता है. सिर्फ़ overlay का इस्तेमाल किया जा सकता है. डिफ़ॉल्ट तौर पर, overlay का इस्तेमाल होता है. इस अपडेट के लागू होने से पहले, इस प्रॉपर्टी के लिए पहले से मौजूद सभी Taxes और Fees हटा दिए जाएंगे.
TaxFeeInfo / Property / ID 1 string प्रॉपर्टी के लिए यूनीक आइडेंटिफ़ायर. यह वैल्यू, होटल सूची फ़ीड में मौजूद <listing> एलिमेंट में <id> का इस्तेमाल करके बताए गए होटल आईडी से मेल खानी चाहिए. होटल आईडी को Hotel Center में भी शामिल किया गया है.
TaxFeeInfo / Property / Taxes 0..1 Taxes एक या उससे ज़्यादा <Tax> एलिमेंट के लिए कंटेनर.
TaxFeeInfo / Property / Taxes / Tax 1..n Tax प्रॉपर्टी पर लगने वाला अलग टैक्स.
TaxFeeInfo / Property / Taxes / Tax / RoomTypes 0..1 RoomTypes उन कमरों के टाइप की सूची के लिए कंटेनर जिन पर टैक्स लागू होता है. टैक्स, बताए गए हर <RoomType> पर लागू होता है. अगर <RoomTypes> की वैल्यू नहीं दी गई है, तो टैक्स सभी कमरों पर लागू होगा.
TaxFeeInfo / Property / Taxes / Tax / RoomTypes / RoomType 1..n RoomType कमरे का टाइप बताता है. रूम टाइप की जानकारी, ट्रांज़ैक्शन (प्रॉपर्टी डेटा) मैसेज में मौजूद <RoomData> एलिमेंट में दी जाती है. साथ ही, इसके RoomID का इस्तेमाल करके इसकी पहचान की जाती है. (इसकी <RoomID> वैल्यू का रेफ़रंस, OTA_HotelRateAmountNotifRQ मैसेज में मौजूद InvTypeCode एट्रिब्यूट से भी दिया जाता है.)
TaxFeeInfo / Property / Taxes / Tax / RoomTypes / RoomType / @id 1 string इन्वेंट्री (कमरे का टाइप) के लिए यूनीक आइडेंटिफ़ायर. यह वैल्यू, ट्रांज़ैक्शन (प्रॉपर्टी डेटा) मैसेज में <RoomID> पर मैप होती है. इसमें ज़्यादा से ज़्यादा 50 वर्ण हो सकते हैं.
TaxFeeInfo / Property / Taxes / Tax / RatePlans 0..1 RatePlans किराये के उन प्लान की सूची के लिए कंटेनर जिन पर टैक्स लागू होता है. अगर <RatePlans> नहीं बताई गई है, तो सभी रेट प्लान पर टैक्स लागू होगा.
TaxFeeInfo / Property / Taxes / Tax / RatePlans / RatePlan 1..n RatePlan किराये का प्लान बताता है. किराये के प्लान को पैकेज, किराये, और उपलब्धता के कॉम्बिनेशन से तय किया जाता है. इसकी जानकारी, लेन-देन (प्रॉपर्टी डेटा), OTA_HotelRateAmountNotifRQ, और OTA_HotelAvailNotifRQ मैसेज में दी गई होती है. साथ ही, PackageID से भी इसकी पहचान की जा सकती है.
TaxFeeInfo / Property / Taxes / Tax / RatePlans / RatePlan / @id 1 string रेट प्लान के लिए यूनीक आइडेंटिफ़ायर. यह वैल्यू लेन-देन (प्रॉपर्टी का डेटा) वाले मैसेज के <PackageData> में मौजूद PackageID की वैल्यू और RatePlanCode की वैल्यू <OTA_HotelRateAmountNotifRQ> और <OTA_HotelAvailNotifRQ>, दोनों मैसेज में <StatusApplicationControl> एट्रिब्यूट के तहत सेट की गई वैल्यू से मैप होती है. इसमें ज़्यादा से ज़्यादा 50 वर्ण हो सकते हैं.
TaxFeeInfo / Property / Taxes / Tax / BookingDates 0..1 BookingDates एक या एक से ज़्यादा तारीख की सीमाओं के लिए कंटेनर, जो यह तय करता है कि टैक्स लागू करने के लिए, बुकिंग कब होनी चाहिए.
TaxFeeInfo / Property / Taxes / Tax / BookingDates / DateRange 1..99 DateRange तारीख की वह सीमा जिससे तय होता है कि टैक्स लागू करने के लिए, बुकिंग कब करनी होगी.
TaxFeeInfo / Property / Taxes / Tax / BookingDates / DateRange / @start 0..1 Date तारीख की सीमा के साथ शुरू होने की तारीख (प्रॉपर्टी के टाइम ज़ोन के हिसाब से). यह तारीख, end की तारीख से पहले की या उसी तारीख की होनी चाहिए. अगर start की जानकारी नहीं दी गई है, तो तारीख की सीमा के लिए, शुरू होने की तारीख की कोई सीमा नहीं होती.
TaxFeeInfo / Property / Taxes / Tax / BookingDates / DateRange / @end 0..1 Date प्रॉपर्टी के टाइम ज़ोन के आधार पर, खत्म होने की तारीख. इसमें तारीख की सीमा भी शामिल होती है. यह तारीख, start की तारीख के बराबर या उसके बाद की होनी चाहिए. अगर end की जानकारी नहीं दी जाती है, तो तारीख की सीमा के लिए, खत्म होने की तारीख असीमित होती है.
TaxFeeInfo / Property / Taxes / Tax / BookingDates / DateRange / @days_of_week 0..1 string

हफ़्ते के वे दिन जिन्हें तारीख की सीमा में अनुमति दी गई है. अगर इस बारे में जानकारी न दी गई हो, तो तारीख की सीमा में सभी दिन शामिल किए जा सकते हैं. स्ट्रिंग में मौजूद हर वर्ण, एक दिन के बारे में बताता है. उदाहरण के लिए, "MTWHF" से पता चलता है कि तारीख की सीमा में, सोमवार से शुक्रवार तक भी इसका इस्तेमाल किया जा सकता है.

मान्य वर्ण ये हैं:

  • सोमवार को M चुकाएं
  • मंगलवार के लिए T
  • बुधवार के लिए W
  • गुरुवार के लिए H
  • शुक्रवार का F
  • शनिवार के लिए S
  • रविवार का किराया U

वर्णों का कोई भी कॉम्बिनेशन मान्य होता है.

TaxFeeInfo / Property / Taxes / Tax / CheckinDates 0..1 CheckinDates एक या उससे ज़्यादा तारीख की सीमाओं के लिए एक कंटेनर, जो तय करता है कि टैक्स लागू करने के लिए चेक-इन कब होना ज़रूरी है.
TaxFeeInfo / Property / Taxes / Tax / CheckinDates / DateRange 1..20 DateRange तारीख की वह सीमा जिसमें यह तय किया जाता है कि टैक्स लागू करने के लिए, चेक-इन कब होना चाहिए.
TaxFeeInfo / Property / Taxes / Tax / CheckinDates / DateRange / @start 0..1 Date तारीख की सीमा के साथ शुरू होने की तारीख (प्रॉपर्टी के टाइम ज़ोन के हिसाब से). यह तारीख, end की तारीख से पहले की या उसी तारीख की होनी चाहिए. अगर start नहीं दिया गया है, तो शुरू होने की तारीख के हिसाब से तारीख की सीमा की कोई सीमा नहीं होती है.
TaxFeeInfo / Property / Taxes / Tax / CheckinDates / DateRange / @end 0..1 Date प्रॉपर्टी के टाइम ज़ोन के आधार पर, खत्म होने की तारीख. इसमें तारीख की सीमा भी शामिल होती है. यह तारीख, start की तारीख के बराबर या उसके बाद की होनी चाहिए. अगर end की जानकारी नहीं दी जाती है, तो तारीख की सीमा के लिए, खत्म होने की तारीख असीमित होती है.
TaxFeeInfo / Property / Taxes / Tax / CheckinDates / DateRange / @days_of_week 0..1 string

हफ़्ते के वे दिन जिन्हें तारीख की सीमा में अनुमति दी गई है. अगर इस बारे में जानकारी न दी गई हो, तो तारीख की सीमा में सभी दिन शामिल किए जा सकते हैं. स्ट्रिंग में मौजूद हर वर्ण, एक दिन के बारे में बताता है. उदाहरण के लिए, "MTWHF" से पता चलता है कि तारीख की सीमा में, सोमवार से शुक्रवार तक भी इसका इस्तेमाल किया जा सकता है.

मान्य वर्ण ये हैं:

  • सोमवार को M चुकाएं
  • मंगलवार के लिए T
  • बुधवार के लिए W
  • गुरुवार के लिए H
  • शुक्रवार का F
  • शनिवार के लिए S
  • रविवार का किराया U

वर्णों का कोई भी कॉम्बिनेशन मान्य होता है.

TaxFeeInfo / Property / Taxes / Tax / CheckoutDates 0..1 CheckoutDates एक या एक से ज़्यादा तारीख की सीमाओं के लिए कंटेनर, जो यह तय करता है कि टैक्स लागू करने के लिए, चेक-आउट कब होना चाहिए.
TaxFeeInfo / Property / Taxes / Tax / CheckoutDates / DateRange 1..20 DateRange तारीख की वह सीमा जिससे तय होता है कि टैक्स लागू करने के लिए, चेक-आउट कब करना ज़रूरी है.
TaxFeeInfo / Property / Taxes / Tax / CheckoutDates / DateRange / @start 0..1 Date तारीख की सीमा के साथ शुरू होने की तारीख (प्रॉपर्टी के टाइम ज़ोन के हिसाब से). यह तारीख, end तारीख से पहले की होनी चाहिए या इसके बराबर होनी चाहिए. अगर start की जानकारी नहीं दी गई है, तो तारीख की सीमा के लिए, शुरू होने की तारीख की कोई सीमा नहीं होती.
TaxFeeInfo / Property / Taxes / Tax / CheckoutDates / DateRange / @end 0..1 Date प्रॉपर्टी के टाइम ज़ोन के आधार पर, खत्म होने की तारीख. इसमें तारीख की सीमा भी शामिल होती है. यह तारीख, start की तारीख के बराबर या उसके बाद की होनी चाहिए. अगर end की जानकारी नहीं दी जाती है, तो तारीख की सीमा के लिए, खत्म होने की तारीख असीमित होती है.
TaxFeeInfo / Property / Taxes / Tax / CheckoutDates / DateRange / @days_of_week 0..1 string

हफ़्ते के वे दिन जिन्हें तारीख की सीमा में अनुमति दी गई है. अगर इस बारे में जानकारी न दी गई हो, तो तारीख की सीमा में सभी दिन शामिल किए जा सकते हैं. स्ट्रिंग में मौजूद हर वर्ण, एक दिन के बारे में बताता है. उदाहरण के लिए, "MTWHF" से पता चलता है कि तारीख की सीमा में, सोमवार से शुक्रवार तक भी इसका इस्तेमाल किया जा सकता है.

मान्य वर्ण ये हैं:

  • सोमवार को M चुकाएं
  • मंगलवार के लिए T
  • बुधवार के लिए W
  • गुरुवार के लिए H
  • शुक्रवार का F
  • शनिवार के लिए S
  • रविवार का किराया U

वर्णों का कोई भी कॉम्बिनेशन मान्य है.

TaxFeeInfo / Property / Taxes / Tax / StayDates 0..1 StayDates

एक या उससे ज़्यादा तारीख की सीमाओं के लिए कंटेनर, जो यह तय करता है कि टैक्स लागू है या नहीं. जैसे, सीज़न के हिसाब से छूट देने के लिए.

TaxFeeInfo / Property / Taxes / Tax / StayDates / @application 1 enum

इसमें बताया गया है कि टैक्स कैसे लागू किया जाना चाहिए.

मान्य मान हैं:

  • all: अगर यात्रा की योजना में दी गई सभी तारीखें, ठहरने की तारीखों से ओवरलैप होती हैं, तो यात्रा की योजना में बताई गई हर रात के लिए टैक्स लागू होता है.
  • any: अगर यात्रा की योजना में दी गई कोई तारीख, ठहरने की तारीख की सीमा में शामिल किसी तारीख से मेल खाती है, तो यात्रा की योजना में बताई गई सभी रातों पर टैक्स लागू होता है.
  • overlap: यात्रा की योजना में सिर्फ़ उन रातों पर टैक्स लागू होगा जो ठहरने की तारीखों की सीमा में एक तारीख से ओवरलैप हो रही है.

    ध्यान दें: overlap सिर्फ़ तब मान्य होता है, जब <Period> को night पर सेट किया गया हो.

इस एट्रिब्यूट की वैल्यू हमेशा सबमिट करना ज़रूरी है.

TaxFeeInfo / Property / Taxes / Tax / StayDates / DateRange 1..99 DateRange तारीख की वह सीमा जिसमें टैक्स लागू होने की तारीखें होती हैं.
TaxFeeInfo / Property / Taxes / Tax / StayDates / DateRange / @start 0..1 Date तारीख की सीमा के साथ-साथ, शुरू होने की तारीख (प्रॉपर्टी के टाइम ज़ोन के आधार पर). यह तारीख, end की तारीख से पहले की या उसी तारीख की होनी चाहिए. अगर start की जानकारी नहीं दी गई है, तो तारीख की सीमा के लिए, शुरू होने की तारीख की कोई सीमा नहीं होती.
TaxFeeInfo / Property / Taxes / Tax / StayDates / DateRange / @end 0..1 Date प्रॉपर्टी के टाइम ज़ोन के आधार पर, खत्म होने की तारीख. इसमें तारीख की सीमा भी शामिल होती है. यह तारीख, start की तारीख के बराबर या उसके बाद की होनी चाहिए. अगर end की जानकारी नहीं दी जाती है, तो तारीख की सीमा के लिए, खत्म होने की तारीख असीमित होती है.
TaxFeeInfo / Property / Taxes / Tax / StayDates / DateRange / @days_of_week 0..1 string

हफ़्ते के वे दिन जिन्हें तारीख की सीमा में अनुमति दी गई है. अगर इस बारे में जानकारी न दी गई हो, तो तारीख की सीमा में सभी दिन शामिल किए जा सकते हैं. स्ट्रिंग में मौजूद हर वर्ण, एक दिन के बारे में बताता है. उदाहरण के लिए, "MTWHF" से पता चलता है कि तारीख की सीमा में, सोमवार से शुक्रवार तक भी इसका इस्तेमाल किया जा सकता है.

मान्य वर्ण ये हैं:

  • सोमवार को M चुकाएं
  • मंगलवार के लिए T
  • बुधवार के लिए W
  • गुरुवार के लिए H
  • शुक्रवार का F
  • शनिवार के लिए S
  • रविवार का किराया U

वर्णों का कोई भी कॉम्बिनेशन मान्य है.

TaxFeeInfo / Property / Taxes / Tax / Type 1 enum

मान्य मान हैं:

  • percent: कुल किराये का प्रतिशत
  • amount: फ़ाइनल रेट में जोड़ने के लिए तय रकम
  • cumulative_percent: इस टैक्स या शुल्क का हिसाब लगाने से पहले, जमा की गई कुल दर, टैक्स, और शुल्क का प्रतिशत. अगर यह वैल्यू दी गई है, तो <Rank> भी बताना ज़रूरी है.
  • ऐसा हो सकता है कि <Brackets> और <AgeBrackets> के बारे में cumulative_percent के टाइप के तौर पर न बताया गया हो.

TaxFeeInfo / Property / Taxes / Tax / Basis 1 enum

मान्य मान हैं:

  • room: <Amount> को रूम पर लागू किया जाता है.
  • person: <Amount>, हर व्यक्ति के हिसाब से लागू होता है. यह वैल्यू सिर्फ़ तब लागू होती है, जब <Type> को रकम पर सेट किया गया हो.
TaxFeeInfo / Property / Taxes / Tax / Period 1 enum

मान्य मान हैं:

  • stay: <Amount> को ठहरने के कुल किराये में जोड़ा जाता है.
  • night: ठहरने के लिए हर रात के हिसाब से <Amount> का शुल्क लिया जाता है.
TaxFeeInfo / Property / Taxes / Tax / Currency 0..1 string टैक्स के लिए तीन अक्षर वाला मुद्रा कोड (उदाहरण के लिए: USD).

ध्यान दें: अगर <Currency> के लिए कोई वैल्यू नहीं दी गई है, लेकिन <Amount> के लिए वैल्यू दी गई है, तो <Currency> की वैल्यू डिफ़ॉल्ट रूप से बुनियादी दर की मुद्रा पर सेट हो जाती है.

TaxFeeInfo / Property / Taxes / Tax / Amount 0..1 float टैक्स की रकम या प्रतिशत की वैल्यू.
TaxFeeInfo / Property / Taxes / Tax / ApplicableNights 0..1 ApplicableNights यह वैल्यू सिर्फ़ तब लागू होती है, जब <Type> को amount और <Period> को night पर सेट किया गया हो.

यह उन रातों की संख्या को सीमित करता है जिन पर टैक्स लागू किया जा सकता है.

max या excluded में से किसी एक के बारे में बताएं, लेकिन दोनों के लिए नहीं.

TaxFeeInfo / Property / Taxes / Tax / ApplicableNights / @max 0..1 integer <ApplicableNights max="N"> से पता चलता है कि पहली N रातों के बाद की रातों को बाहर रखा जाना चाहिए.
TaxFeeInfo / Property / Taxes / Tax / ApplicableNights / @excluded 0..1 integer <ApplicableNights excluded="N"> बताता है कि पहली N रातों को शामिल नहीं किया जाना चाहिए.
TaxFeeInfo / Property / Taxes / Tax / LengthOfStay 0..1 LengthOfStay इसमें यह तय किया जाता है कि ठहरने की कितनी अवधि के लिए यह टैक्स लागू किया जा सकता है. अगर ठहरने की अवधि, तय की गई कम से कम और ज़्यादा से ज़्यादा अवधि से बाहर है, तो टैक्स नहीं लगाया जाता.
TaxFeeInfo / Property / Taxes / Tax / LengthOfStay / @min 0..1 integer टैक्स लागू करने के लिए, ठहरने की कम से कम अवधि. अगर इसकी जानकारी नहीं दी गई है, तो इसका मतलब है कि कम से कम किराया तय नहीं है.
TaxFeeInfo / Property / Taxes / Tax / LengthOfStay / @max 0..1 integer टैक्स लागू करने के लिए, ठहरने की ज़्यादा से ज़्यादा रातों की संख्या. अगर इसकी वैल्यू नहीं दी गई है, तो इसका मतलब है कि कोई ज़्यादा से ज़्यादा सीमा नहीं है.
TaxFeeInfo / Property / Taxes / Tax / Brackets 0..1 Brackets एक या ज़्यादा <Bracket> एलिमेंट के लिए कंटेनर. टैक्स ब्रैकेट के एक सेट के बारे में बताता है. यह सेट, एक-दूसरे से जुड़ा होता है और एक-दूसरे से ओवरलैप नहीं होता. उदाहरण के लिए: भारत में जीएसटी स्लैब के हिसाब से लगने वाले टैक्स.

यह एलिमेंट सिर्फ़ तब मान्य होता है, जब <Period> को night पर सेट किया गया हो और <Amount> के बारे में नहीं बताया गया हो.

TaxFeeInfo / Property / Taxes / Tax / Brackets / @base_amount 0..1 float टैक्स के प्रतिशत या रकम की वैल्यू, जो पहले ब्रैकेट की starts_at वैल्यू के नीचे, हर रात के लिए तय की गई दरों पर लागू होती है.
TaxFeeInfo / Property / Taxes / Tax / Brackets / Bracket 1..n Bracket एक रात के किराये के आधार पर टैक्स ब्रैकेट तय करता है.
TaxFeeInfo / Property / Taxes / Tax / Brackets / Bracket / @starts_at 1 float

टैक्स ब्रैकेट की निचली सीमा तय करता है. ऊपरी सीमा, अगले ब्रैकेट के starts_at फ़ील्ड में बताई गई है. आखिरी ब्रैकेट के लिए कोई ऊपरी सीमा नहीं होती.

कोई टैक्स ब्रैकेट तब चालू होता है, जब एक रात का किराया, ब्रैकेट की starts_at वैल्यू से ज़्यादा या उसके बराबर होता है. साथ ही, यह अगले ब्रैकेट की starts_at वैल्यू से भी कम होता है.

यह वैल्यू 0 से ज़्यादा होनी चाहिए.

TaxFeeInfo / Property / Taxes / Tax / Brackets / Bracket / @amount 1 float इस टैक्स ब्रैकेट पर लागू होने वाले टैक्स की वैल्यू या प्रतिशत.
TaxFeeInfo / Property / Taxes / Tax / AgeBrackets 0..1 AgeBrackets इससे, किरायेदारों की उम्र के हिसाब से टैक्स का सेट तय करने की सुविधा मिलती है.

यह एलिमेंट सिर्फ़ तब मान्य होता है, जब <Brackets> और <Amount> की वैल्यू न दी गई हो, <Basis> को person पर सेट किया गया हो, और <Type> को amount पर सेट किया गया हो.

TaxFeeInfo / Property / Taxes / Tax / AgeBrackets / AdultCharge 0..1 AdultCharge वयस्कों के लिए टैक्स की जानकारी देने वाला कंटेनर.
TaxFeeInfo / Property / Taxes / Tax / AgeBrackets / AdultCharge / @amount 1 float वयस्कों के लिए लागू होने वाला टैक्स.
TaxFeeInfo / Property / Taxes / Tax / AgeBrackets / ChildAgeBrackets 0..1 ChildAgeBrackets एक या उससे ज़्यादा <ChildAgeBracket> एलिमेंट को होल्ड करने के लिए कंटेनर.
TaxFeeInfo / Property / Taxes / Tax / AgeBrackets / ChildAgeBrackets / ChildAgeBracket 1..n ChildAgeBracket बच्चों के लिए उम्र की सीमा और उससे जुड़े टैक्स की रकम के बारे में बताता है.
TaxFeeInfo / Property / Taxes / Tax / AgeBrackets / ChildAgeBrackets / ChildAgeBracket / @max_age 1 integer

इससे बच्चे की उम्र की ऊपरी सीमा के बारे में पता चलता है. निचली सीमा, पिछले ब्रैकेट के max_age फ़ील्ड + 1 में बताई गई है. ऊपरी और निचली सीमा, दोनों में वैल्यू शामिल होती हैं. पहले ब्रैकेट के लिए, निचली सीमा 0 है.

max_age की वैल्यू 0 से 17 के बीच होनी चाहिए.

TaxFeeInfo / Property / Taxes / Tax / AgeBrackets / ChildAgeBrackets / ChildAgeBracket / @amount 1 float इस उम्र सीमा के बच्चों पर लागू होने वाला टैक्स.
TaxFeeInfo / Property / Taxes / Tax / UserCountries 0..1 UserCountries उन देशों की सूची बनाने के लिए कंटेनर जिनके लिए टैक्स को शामिल या बाहर रखा गया है. अगर यह मौजूद है, तो टैक्स सिर्फ़ उन देशों के उपयोगकर्ताओं के लिए शामिल या बाहर रखा जाएगा जिनके लिए यह तय किया गया है.
TaxFeeInfo / Property / Taxes / Tax / UserCountries / @type 0..1 enum उपयोगकर्ता देश के स्पेसिफ़िकेशन का टाइप.

मान्य वैल्यू include और exclude हैं.

अगर UserCountries type को include पर सेट किया गया है, तो टैक्स सिर्फ़ सूची में शामिल देशों के उपयोगकर्ताओं पर लागू होगा.

वहीं, अगर UserCountries type का वैल्यू exclude है, तो टैक्स सिर्फ़ सूची में शामिल देशों से बाहर के उपयोगकर्ताओं पर लागू होगा.

अगर UserCountries type को सेट नहीं किया गया है, तो हम इसे include के तौर पर इस्तेमाल करेंगे. साथ ही, टैक्स सिर्फ़ सूची में शामिल देशों के उपयोगकर्ताओं पर लागू होगा.

TaxFeeInfo / Property / Taxes / Tax / UserCountries / Country 1..n Country उपयोगकर्ता देशों की सूची में मौजूद एक देश के बारे में बताता है.
TaxFeeInfo / Property / Taxes / Tax / UserCountries / Country / @code 1 string CLDR देश का कोड, जैसे कि DE या FR. ध्यान दें कि कुछ देशों के लिए, CLDR और देश का कोड, दो अक्षरों वाले आईएसओ देश के कोड से अलग है. साथ ही, CLDR क्षेत्र कोड भी काम नहीं करते.
TaxFeeInfo / Property / Taxes / Tax / Rank 1 integer

वह रैंक जो इस टैक्स या शुल्क के लिए आवेदन का क्रम तय करती है. उदाहरण के लिए, वैल्यू 2 होने का मतलब है कि यह टैक्स दूसरे नंबर पर लागू होगा. अगर <Type> को cumulative_percent पर सेट किया गया है, तो इस एलिमेंट की वैल्यू हमेशा दी जानी चाहिए. आम तौर पर, यह क्रम टैक्स और शुल्क, दोनों पर लागू होता है. टैक्स और शुल्कों के लिए, डुप्लीकेट रैंक वैल्यू की अनुमति है. हालांकि, इससे ऐसा व्यवहार हो सकता है जिसमें टैक्स और शुल्क, मनमुताबिक और इकट्ठा किए गए तरीके से लागू किए जाएंगे. बिना रैंक वाले टैक्स और शुल्क, रैंक की गई सभी एंट्री से पहले लागू होते हैं.

<Rank> की वैल्यू 1 से 99 के बीच होनी चाहिए.

TaxFeeInfo / Property / Fees 0..1 Fees एक या ज़्यादा <Fee> एलिमेंट के लिए कंटेनर.
TaxFeeInfo / Property / Fees / Fee 1..n Fee

प्रॉपर्टी पर लागू होने वाला अलग से लिया जाने वाला शुल्क.

<Tax> के सभी चाइल्ड एलिमेंट, एक ही सिंटैक्स के साथ <Fee> के लिए भी काम करते हैं.

उदाहरण

हर प्रॉपर्टी के लिए, 300 टैक्स और शुल्क जोड़े जा सकते हैं. किसी प्रॉपर्टी से टैक्स और शुल्क हटाने के लिए, "टैक्स मिटाएं" उदाहरण देखें.

बुनियादी मैसेज

TaxFeeInfo का बुनियादी मैसेज:

<?xml version="1.0" encoding="UTF-8"?>
<TaxFeeInfo timestamp="2024-05-18T16:20:00-04:00"
            id="12345678"
            partner="partner_key">
  <Property>
    <ID>Property_1</ID>
    <Taxes>
      <Tax>
        <Type>percent</Type>
        <Basis>room</Basis>
        <Period>stay</Period>
        <Amount>10.00</Amount>
      </Tax>
    </Taxes>
    <Fees>
      <Fee>
        <Type>amount</Type>
        <Basis>person</Basis>
        <Period>night</Period>
        <Currency>USD</Currency>
        <Amount>5.00</Amount>
      </Fee>
    </Fees>
  </Property>
</TaxFeeInfo>

टैक्स मिटाना

बताए गए होटल के लिए, प्रॉपर्टी-लेवल के सभी टैक्स और शुल्क मिटाएं:

<?xml version="1.0" encoding="UTF-8"?>
<TaxFeeInfo timestamp="2024-06-16T16:20:00-04:00"
            id="12345678"
            partner="partner_key">
  <Property action="overlay"/>
    <ID>Property_1</ID>
  </Property>
</TaxFeeInfo>

स्लैब टैक्स

भारत में लागू जीएसटी स्लैब टैक्स, जो एक रात के किराये के आधार पर लागू होता है. टैक्स ब्रैकेट ये हैं:

  • अगर रात का किराया 1,000 या उससे कम है, तो कोई टैक्स नहीं लिया जाएगा.
  • अगर रात भर के किराये की दर 1,000 से ज़्यादा और 7,500 से कम है, तो 12% टैक्स.
  • अगर रात भर के ठहरने की कीमत 7,500 से ज़्यादा है, तो 18% टैक्स.
<?xml version="1.0" encoding="UTF-8"?>
<TaxFeeInfo timestamp="2024-05-18T16:20:00-04:00"
            id="12345678"
            partner="partner_key">
  <Property>
    <ID>Property_1</ID>
    <Taxes>
      <Tax>
        <Type>percent</Type>
        <Basis>room</Basis>
        <Period>night</Period>
        <Brackets base_amount="0">
          <Bracket starts_at="1000.01" amount="12"/>
          <Bracket starts_at="7500.01" amount="18"/>
        </Brackets>
      </Tax>
    </Taxes>
  </Property>
</TaxFeeInfo>

उम्र के हिसाब से टैक्स

किराये पर रहने वाले लोगों की उम्र के हिसाब से टैक्स लागू होते हैं:

  • वयस्कों के लिए 20 डॉलर का टैक्स.
  • 11 से 17 साल के बच्चों के लिए 10 डॉलर टैक्स.
  • 0 से 10 साल के बच्चों के लिए 5 डॉलर का टैक्स.
<?xml version="1.0" encoding="UTF-8"?>
<TaxFeeInfo timestamp="2024-05-18T16:20:00-04:00"
            id="12345678"
            partner="partner_key">
  <Property>
    <ID>Property_1</ID>
    <Taxes>
      <Tax>
        <Type>amount</Type>
        <Basis>person</Basis>
        <Period>night</Period>
        <AgeBrackets>
          <AdultCharge amount="20"/>
          <ChildAgeBrackets>
            <ChildAgeBracket max_age="10" amount="5"/>
            <ChildAgeBracket max_age="17" amount="10"/>
          </ChildAgeBrackets>
        </AgeBrackets>
      </Tax>
    </Taxes>
  </Property>
</TaxFeeInfo>

जवाब

सिंटैक्स

TaxFeeInfoResponse मैसेज इस सिंटैक्स का इस्तेमाल करता है:

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

एलिमेंट और एट्रिब्यूट

TaxFeeInfoResponse मैसेज में ये एलिमेंट और एट्रिब्यूट होते हैं:

एलिमेंट / @एट्रिब्यूट आवृत्तियां टाइप ब्यौरा
TaxFeeInfoResponse 1 Complex element यह रूट एलिमेंट, मिले TaxFeeInfo अनुरोध मैसेज के लिए, अनुरोध पूरा होने या उससे जुड़ी समस्याओं के बारे में बताता है.
TaxFeeInfoResponse / @timestamp 1 DateTime इस मैसेज को बनाने की तारीख और समय.
TaxFeeInfoResponse / @id 1 string इससे जुड़े TaxFeeInfo मैसेज का यूनीक आइडेंटिफ़ायर.
TaxFeeInfoResponse / @partner 1 string इस मैसेज को भेजने के लिए पार्टनर का खाता.
TaxFeeInfoResponse / Success 0..1 Success इससे पता चलता है कि TaxFeeInfo मैसेज को बिना किसी चेतावनी, गड़बड़ी या फ़ेल होने के प्रोसेस कर दिया गया है.

हर मैसेज में <Success> या <Issues> मौजूद हो.

TaxFeeInfoResponse / Issues 0..1 Issues TaxFeeInfo मैसेज को प्रोसेस करते समय, एक या उससे ज़्यादा समस्याओं के लिए कंटेनर.

हर मैसेज में <Success> या <Issues> मौजूद है.

TaxFeeInfoResponse / Issues / Issue 1..n Issue TaxFeeInfo मैसेज को प्रोसेस करते समय, मिलने वाली चेतावनी, गड़बड़ी या समस्या के बारे में जानकारी. इन समस्याओं के बारे में जानकारी, फ़ीड की स्थिति से जुड़ी गड़बड़ी के मैसेज में देखी जा सकती है.
TaxFeeInfoResponse / Issues / Issue / @code 1 integer समस्या का आइडेंटिफ़ायर.
TaxFeeInfoResponse / Issues / Issue / @status 1 enum

समस्या किस तरह की है.

मान्य वैल्यू warning, error, और failure हैं .

उदाहरण

काम हो गया

यहां TaxFeeInfo मैसेज के प्रोसेस होने का रिस्पॉन्स दिया गया है.

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

समस्याएं

यहां TaxFeeInfo मैसेज के जवाब के बारे में बताया गया है, जिसे गड़बड़ियों की वजह से प्रोसेस नहीं किया जा सका.

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