ข้อความภาษีและค่าธรรมเนียม

ภาพรวม

ข้อความ TaxFeeInfo จะกำหนดภาษีและค่าธรรมเนียมที่มีผลกับผู้ใช้เมื่อจองที่พัก และอิงตามกฎระเบียบด้านภาษีของที่พักที่ระบุไว้ในเว็บไซต์ หากต้องการเพิ่มข้อมูลภาษีและค่าธรรมเนียม ให้ใช้ข้อความเกี่ยวกับราคา (OTA_HotelRateAmountNotifRQ)

การดำเนินการที่รองรับสำหรับข้อความนี้มีเพียง overlay ซึ่งใช้แทนข้อมูลภาษีและค่าธรรมเนียมสำหรับที่พักแต่ละแห่ง คุณต้องส่งข้อมูลอัปเดตเกี่ยวกับภาษีและค่าธรรมเนียมทุกครั้งที่มีการเปลี่ยนแปลง

วิธีเพิ่มภาษีและค่าธรรมเนียม

การเพิ่มภาษีและค่าธรรมเนียมทำได้ 2 วิธีทั่วไป ดังนี้

ในวิธีแรก คุณต้องระบุ AmountAfterTax ในข้อความเกี่ยวกับราคา และเพิ่มภาษีและค่าธรรมเนียมโดยส่งข้อความเกี่ยวกับราคาที่มีทั้งราคาฐานต่อคืน (ไม่รวมภาษีและค่าธรรมเนียมทั้งหมด) และราคารวมต่อคืน (รวมภาษีและค่าธรรมเนียมทั้งหมด) เนื่องจากราคาเหล่านี้เป็นราคาต่อคืน แนวทางนี้จึงใช้ได้กับภาษีและค่าธรรมเนียมแบบเปอร์เซ็นต์หรือจำนวนเงินคงที่ต่อคืนเท่านั้น และจะใช้ภาษีและค่าธรรมเนียมต่อการเข้าพักไม่ได้

วิธีที่สอง (แนะนำ) คือส่งเฉพาะราคาฐานต่อคืนที่ยังไม่รวมภาษีและค่าธรรมเนียมในข้อความราคา และใช้ TaxFeeInfo เพื่อแสดงภาษีและค่าธรรมเนียมที่ระดับที่พัก ภาษีและค่าธรรมเนียมแต่ละรายการจะยังคงกำหนดขอบเขตเป็นประเภทห้องพักและแพ็กเกจราคาที่เจาะจงได้ ซึ่งมีผลกับช่วงวันที่ที่เจาะจง

หน้านี้อธิบายและอ้างอิงเฉพาะวิธีการที่แนะนำในการใช้ TaxFeeInfo เท่านั้น ไม่ใช่วิธีการระบุ AmountAfterTax ในข้อความการให้คะแนน (OTA_HotelRateAmountNotifRQ)

วิธีกำหนดภาษี

คุณมีตัวเลือกต่อไปนี้ในการกำหนดภาษี

  • Basis = [room|person]
  • ระยะเวลา = [stay|night]
  • ประเภท = [percent|amount]

เมื่อระยะเวลาเป็น stay และประเภทเป็น percent ทาง Google จะเรียกเก็บภาษีและค่าธรรมเนียมสำหรับการเข้าพักทั้งหมด แม้ว่าวันที่เดียวในแผนการเดินทางจะซ้อนทับกับช่วงStayDatesก็ตาม คุณไม่สามารถระบุเฉพาะวันที่ที่มีภาษีและค่าธรรมเนียมได้ในกรณีที่วันที่ทั้งหมดในแผนการเดินทางทับซ้อนกับช่วงวันที่เข้าพัก สำหรับช่วงวันที่ที่เข้าพักหลายช่วงซึ่งทับซ้อนกัน ระบบจะระบุช่วง StayDates ในช่วงที่เปิดอยู่ช่วงเดียว ดูตัวอย่าง TaxFeeInfo

ดูตัวอย่างสถานการณ์ต่างๆ ที่เกี่ยวข้องกับภาษีได้ที่วิธีการ ตัวอย่างนี้ครอบคลุมสถานการณ์ภาษีที่สำคัญบางประการ รวมถึงวิธีดำเนินการต่อไปนี้

  1. ภาษีแบบคงที่และภาษีแบบเปอร์เซ็นต์ที่เรียกเก็บต่อที่พัก
  2. ภาษีแบบเปอร์เซ็นต์จะมีผลกับคืนหลังคืนแรกเท่านั้น
  3. วิธีแทนที่ภาษีเก่าด้วยภาษีใหม่
  4. รวมหรือยกเว้นภาษีสำหรับประเทศ
  5. กำหนดภาษีอัตราขั้นต่ำสูงสุดที่มีวงเล็บ
  6. กำหนดภาษีและค่าธรรมเนียมที่ต้องเสียภาษี

ส่วนต่อไปนี้ครอบคลุมหลักเกณฑ์ทั่วไป ตัวอย่างพื้นฐาน และสถานการณ์ต่างๆ เกี่ยวกับวิธีเริ่มต้นเพิ่มและอัปเดตข้อมูลภาษี

องค์ประกอบที่จำเป็นและไม่บังคับ

ข้อมูลอ้างอิง XML มีคำอธิบายองค์ประกอบที่จำเป็นและที่ไม่บังคับ ดูรายละเอียดเกี่ยวกับแอตทริบิวต์และองค์ประกอบย่อยได้ที่TaxFeeInfo องค์ประกอบและแอตทริบิวต์

ไวยากรณ์และสคีมา

ใช้ตัวอย่างTaxFeeInfo ไวยากรณ์เป็นข้อมูลอ้างอิงเมื่อสร้างข้อความเพื่อให้แน่ใจว่าคุณใช้รูปแบบที่ถูกต้อง คุณสามารถใช้เครื่องมือ XML ของบุคคลที่สาม เช่น โปรแกรม xmllint เพื่อตรวจสอบฟีดกับสคีมาที่เผยแพร่แล้วก่อนที่จะส่งไปยัง Google สําหรับสคีมาข้อความ TaxFeeinfo โปรดดูสคีมาโฆษณาโรงแรม

หลักเกณฑ์

ส่วนนี้ครอบคลุมหลักเกณฑ์ทั่วไปและวิธีการพิเศษในการกำหนดภาษีและค่าธรรมเนียม

การทำงาน

ซ้อนทับ
ใช้การดำเนินการ overlay เพื่อแทนที่ภาษีทั้งหมดของพร็อพเพอร์ตี้ การดำเนินการ overlay เป็นการดำเนินการเริ่มต้นและเป็นการดำเนินการเดียวที่รองรับ ระบบจะล้างภาษีและค่าธรรมเนียมก่อนหน้านี้ของที่พักนี้ออกเมื่อใช้การอัปเดตนี้

ทั่วไป

  • ระบบจะประเมิน Tax แต่ละรายการและคำนวณตามจำนวน AmountBeforeTax ที่ระบุไว้ใน BaseByGuestAmt (หากมี)

  • หลังจากคำนวณภาษีและค่าธรรมเนียมที่เกี่ยวข้องทั้งหมดแล้ว ระบบจะเพิ่มภาษีและค่าธรรมเนียมเหล่านั้นลงในราคาฐานเพื่อให้เป็นราคารวม

  • ไวยากรณ์ของ <Tax> และ <Fee> จะเหมือนกัน

  • ภาษีและค่าธรรมเนียมอาจมีข้อจำกัด เช่น

    • ใช้ได้กับประเภทห้องพักและแพ็กเกจราคาบางรายการเท่านั้น
    • มีผลกับวันที่เข้าพักที่ระบุเท่านั้น

    ข้อจำกัดเหล่านี้เป็นข้อจำกัดที่ไม่บังคับ และคุณไม่จำเป็นต้องตั้งค่าข้อจำกัดทุกประเภท คุณสามารถปล่อยช่องเหล่านี้ว่างไว้ได้หากข้อจำกัดมีผลกับทุกประเภท

  • ส่งการอัปเดต TaxFeeInfo เมื่อใดก็ตามที่มีการเปลี่ยนแปลงภาษีหรือค่าธรรมเนียม

ตัวอย่าง

ส่วนนี้จะแสดงตัวอย่างพื้นฐานของข้อความ TaxFeeInfo โดยใช้องค์ประกอบที่ต้องระบุและองค์ประกอบที่ไม่บังคับ เมื่อเตรียมไฟล์แล้ว คุณจะต้องส่งไฟล์ไปยัง Google โดยใช้ข้อความ POST ไปยังปลายทางนี้

https://www.google.com/travel/hotels/uploads/taxes

ดูข้อมูลเพิ่มเติมเกี่ยวกับวิธีพุช/โพสต์ข้อความได้ที่การพุชข้อความ

สำหรับแอตทริบิวต์ hotel_id ให้ใช้รหัสโรงแรมที่ไม่ซ้ำกันซึ่งคุณใช้ในระบบเพื่อระบุที่พัก ค่านี้ต้องตรงกับรหัสโรงแรมที่ระบุโดยใช้ <id> ในองค์ประกอบ <listing> ในฟีดข้อมูลโรงแรม ความสอดคล้องกับระบบเป็นสิ่งสำคัญในการช่วยให้ Google แสดงข้อมูลของคุณได้อย่างถูกต้อง

ตัวอย่างนี้แสดงวิธีตั้งค่าเปอร์เซ็นต์ภาษี 10% และจำนวนค่าธรรมเนียม $50 สำหรับที่พักสำหรับการเข้าพักทั้งหมด (ไม่ใช่ต่อคืน)

<?xml version="1.0" encoding="UTF-8"?>
<TaxFeeInfo timestamp="2022-08-20T16:20:00-04:00"
            partner="partner_key"
            id="12345678">
  <Property>
    <ID>HOTELID</ID>
    <Taxes>
      <Tax>
        <Type>percent</Type>
        <Basis>room</Basis>
        <Period>stay</Period>
        <Amount>10</Amount>
      </Tax>
    </Taxes>
    <Fees>
      <Fee>
        <Type>amount</Type>
        <Basis>room</Basis>
        <Period>stay</Period>
        <Amount>50</Amount>
        <Currency>USD</Currency>
      </Fee>
    </Fees>
  </Property>
</TaxFeeInfo>

ดูตัวอย่างการเพิ่มภาษีที่เกี่ยวข้องกับอายุและตัวอย่างอื่นๆ ได้ที่ตัวอย่างภาษี

วิธีการ

ส่วนนี้จะแสดงวิธีแก้ปัญหาสำหรับสถานการณ์ที่คุณอาจพบขณะตั้งค่าภาษีและค่าธรรมเนียม

สถานการณ์ 1: วิธีเพิ่มภาษีแบบคงที่

ตัวอย่างภาษีนี้แสดงวิธีตั้งค่าภาษีแบบคงที่ต่อที่พัก

คำอธิบาย

คุณต้องการใช้ภาษีแบบคงที่สำหรับห้องพักหรือการเข้าพักต่อที่พักแทนภาษีแบบเปอร์เซ็นต์

โซลูชัน

ใช้ amount แทน percentage เพื่อเพิ่มตัวเลือกภาษีแบบคงที่

ตัวอย่าง

ตัวอย่างนี้แสดงวิธีเพิ่มภาษีแบบคงที่โดยใช้ amount แทน percentage

<?xml version="1.0" encoding="UTF-8"?>
<TaxFeeInfo timestamp="2022-08-16T16:20:00-04:00"
            id="12345678"
            partner="partner_key">
  <Property>
    <ID>Property_1</ID>
    <Taxes>
      <Tax>
        <Type>amount</Type>
        <Basis>room</Basis>
        <Period>stay</Period>
        <Amount>30</Amount>
      </Tax>
    </Taxes>
  </Property>
</TaxFeeInfo>

สถานการณ์ที่ 2: วิธีกําหนดเป้าหมายภาษีโดยใช้ ApplicableNights

คำอธิบาย

คุณต้องการใช้ภาษีแบบอัตราคงที่กับคืนหลังคืนแรกเท่านั้น เช่น มีการกำหนดค่าธรรมเนียมบังคับสำหรับการใช้สิ่งอำนวยความสะดวกบางอย่างในแต่ละวัน ซึ่งจะไม่รวมอยู่ในคืนแรกเนื่องจากแขกไม่มีสิทธิ์ใช้สิ่งอำนวยความสะดวกดังกล่าว

โซลูชัน

ใช้ <ApplicableNights excluded="1"/> เพื่อควบคุมจำนวนคืนที่มีการเก็บภาษี

ตัวอย่าง

ตัวอย่างนี้แสดงวิธีใช้ ApplicableNights

<?xml version="1.0" encoding="UTF-8"?>
<TaxFeeInfo timestamp="2022-08-16T16:20:00-04:00"
            id="12345678"
            partner="partner_key">
  <Property>
    <ID>Property_1</ID>
    <Taxes>
      <Tax>
        <Type>amount</Type>
        <Basis>room</Basis>
        <Period>night</Period>
        <Amount>50</Amount>
        <ApplicableNights excluded="1"/>
      </Tax>
    </Taxes>
  </Property>
</TaxFeeInfo>

สถานการณ์ที่ 3: วิธีแทนที่ภาษีและค่าธรรมเนียมใหม่แทนที่เก่า

คำอธิบาย

ภาษีและค่าธรรมเนียมปัจจุบันมีการเปลี่ยนแปลงและจำเป็นต้องแทนที่ด้วยรายการใหม่

โซลูชัน

ใช้การดำเนินการ overlay เพื่อนำภาษีและค่าธรรมเนียมที่มีอยู่ทั้งหมดออก

ตัวอย่าง

ตัวอย่างต่อไปนี้แสดงวิธีนำภาษีและค่าธรรมเนียมทั้งหมดของที่พักออก

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

สถานการณ์ 4: วิธีรวมหรือยกเว้นภาษีสำหรับประเทศ

คำอธิบาย

คุณต้องรวมภาษีสำหรับบางประเทศไว้ ในขณะที่ยกเว้นภาษีจากอีกประเทศหนึ่ง ตัวอย่างเช่น คุณต้องยกเว้นภาษีสำหรับสมาพันธ์ขนาดเล็กที่มีภาษีนอกสหภาพยุโรปขณะที่เรียกเก็บภาษีจากประเทศอื่นๆ ทั้งหมด

โซลูชัน

ใช้ตัวเลือก include หรือ exclude สำหรับ UserCountries type ใช้ include เพื่อเรียกเก็บภาษีกับประเทศที่ระบุไว้เท่านั้น หรือใช้ exclude เพื่อเรียกเก็บภาษีกับทุกประเทศยกเว้นประเทศที่ระบุไว้

ตัวอย่าง

ตัวอย่างต่อไปนี้แสดงวิธีกำหนดภาษีสำหรับผู้ใช้ที่อยู่นอกประเทศของโรงแรม (อิสราเอล)

<?xml version="1.0" encoding="UTF-8"?>
<TaxFeeInfo timestamp="2022-08-16T16: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>
        <UserCountries type="exclude">
          <Country code="IL"/>
        </UserCountries>
      </Tax>
    </Taxes>
  </Property>
</TaxFeeInfo>

สถานการณ์ 5: วิธีตั้งค่าภาษีอัตราขั้นต่ำที่มีวงเล็บ

คำอธิบาย

คุณต้องการเพิ่มเกณฑ์ภาษี GST ในการคำนวณตามราคาต่อคืน

โซลูชัน

สำหรับสถานการณ์นี้ สมมติว่าช่วงภาษี GST ของประเทศเป้าหมายมีดังนี้

  • ไม่ต้องเสียภาษีหากราคาต่อคืนต่ำกว่าหรือเท่ากับ 1,000
  • เสียภาษี 12% หากราคาต่อคืนสูงกว่า 1,000 และต่ำกว่าหรือเท่ากับ 7,500
  • เสียภาษี 18% หากราคาต่อคืนสูงกว่า 7,500

ตัวอย่าง

ตัวอย่างต่อไปนี้แสดงวิธีตั้งค่าภาษีอัตราขั้นต่ำสูงสุดที่มีวงเล็บ

<?xml version="1.0" encoding="UTF-8"?>
<TaxFeeInfo timestamp="2022-08-28T16: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>

สถานการณ์ 6: วิธีตั้งค่าภาษีและค่าธรรมเนียมที่ต้องเสียภาษี

คำอธิบาย

คุณต้องการเพิ่มภาษี เช่น VAT และค่าบริการอีกรายการที่มีผลกับภาษีดังกล่าวด้วย

โซลูชัน

สถานการณ์นี้พิจารณาตัวอย่าง Use Case ของค่าธรรมเนียมที่ต้องเสียภาษี 2 กรณีดังนี้

  • ทั้งภาษีและค่าธรรมเนียมที่ต้องเสียภาษีจะกำหนดเป็นการเรียกเก็บเงินแบบเปอร์เซ็นต์
  • โดยภาษีจะคิดเป็นเปอร์เซ็นต์ ส่วนค่าธรรมเนียมที่ต้องเสียภาษีจะเป็นจำนวนเงินคงที่ต่อการเข้าพัก 1 ครั้ง

ตัวอย่าง

ค่าธรรมเนียมที่ต้องเสียภาษีเป็นเปอร์เซ็นต์

ตัวอย่างนี้มี AmountBeforeTax เป็น $100, ภาษี GST 18% และค่าบริการเพิ่มเติม 5% ซึ่งทำให้เปอร์เซ็นต์ค่าธรรมเนียมทั้งหมดที่ต้องเสียภาษีเป็น 5.9% (5*1.18) และจำนวนเงินทั้งหมดที่เรียกเก็บเป็น $123.90 [= $118 (GST 18%) + $5.9 (ค่าบริการ 5.9%)]

ข้อมูลโค้ดต่อไปนี้กำหนดภาษี (GST) และค่าธรรมเนียมที่ต้องเสียภาษี (ค่าบริการ) เป็นเปอร์เซ็นต์

<TaxFeeInfo timestamp="2022-08-16T16: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>18</Amount>
      </Tax>
    </Taxes>
    <Fees>
      <Fee>
        <Type>percent</Type>
        <Basis>room</Basis>
        <Period>stay</Period>
        <Amount>5.9</Amount>
      </Fee>
    </Fees>
  </Property>
</TaxFeeInfo>

ค่าธรรมเนียมที่ต้องเสียภาษีเป็นจำนวนเงิน

ในตัวอย่างนี้ AmountBeforeTax มีมูลค่า $100, ภาษี GST 18% และค่าธรรมเนียมอัตราคงที่เพิ่มเติม $20 ซึ่งทำให้ค่าธรรมเนียมทั้งหมดที่ต้องเสียภาษีเท่ากับ $23.60 ($20*1.18) และอัตราค่าบริการทั้งหมดเท่ากับ $141.60 [= $118 (GST 18%) + $23.60 ($20 อัตราคงที่)]

ข้อมูลโค้ดต่อไปนี้จะกำหนดภาษี (GST) เป็นเปอร์เซ็นต์และค่าธรรมเนียมที่ต้องเสียภาษี (ค่าบริการ) เป็นจำนวนเงินคงที่

<TaxFeeInfo timestamp="2022-08-16T16: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>18</Amount>
      </Tax>
    </Taxes>
    <Fees>
      <Fee>
        <Type>amount</Type>
        <Basis>room</Basis>
        <Period>stay</Period>
        <Amount>23.6</Amount>
      </Fee>
    </Fees>
  </Property>
</TaxFeeInfo>