요청
구문
OTA_HotelRateAmountNotifRQ 메시지는 다음 구문을 사용합니다.
<?xml version="1.0" encoding="UTF-8"?>
<OTA_HotelRateAmountNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05"
                            EchoToken="message_ID"
                            TimeStamp="timestamp"
                            Version="3.0"
                            NotifType="[Overlay|Delta|Remove]"
                            NotifScopeType="[ProductRate]">
  <POS>
    <Source>
      <RequestorID ID="partner_key"/>
    </Source>
  </POS>
  <RateAmountMessages HotelCode="HotelID">
    <RateAmountMessage>
      <StatusApplicationControl Start="YYYY-MM-DD"
                                End="YYYY-MM-DD"
                                Mon="boolean_value"
                                Tue="boolean_value"
                                Weds="boolean_value"
                                Thur="boolean_value"
                                Fri="boolean_value"
                                Sat="boolean_value"
                                Sun="boolean_value"
                                InvTypeCode="RoomID"
                                RatePlanCode="PackageID"
                                RatePlanType="[26]" />
      <Rates>
        <Rate>
          <BaseByGuestAmts>
            <BaseByGuestAmt AmountBeforeTax="float"
                            AmountAfterTax="float"
                            CurrencyCode="currency"
                            NumberOfGuests="integer"/>
          </BaseByGuestAmts>
          <AdditionalGuestAmounts>
            <AdditionalGuestAmount Amount="float"
                                   AgeQualifyingCode="[10|8]"
                                   MaxAge="integer"/>
          </AdditionalGuestAmounts>
        </Rate>
      </Rates>
    </RateAmountMessage>
  </RateAmountMessages>
</OTA_HotelRateAmountNotifRQ>
요소 및 속성
OTA_HotelRateAmountNotifRQ 메시지에는 다음과 같은 요소와 속성이 있습니다.
| 요소 / @Attribute | 발생 횟수 | 유형 | 설명 | 
|---|---|---|---|
| OTA_HotelRateAmountNotifRQ | 1 | Complex element | 요금 메시지의 루트 요소입니다. | 
| OTA_HotelRateAmountNotifRQ / @xmlns | 0..1 | string (URI) | XML 네임스페이스입니다. | 
| OTA_HotelRateAmountNotifRQ / @EchoToken | 1 | string | 이 요청 메시지의 고유 식별자입니다. 이 값은 응답 메시지로 반환됩니다. 허용되는 문자는 a-z,A-Z,0-9,_ (underscore),- (dash)입니다. | 
| OTA_HotelRateAmountNotifRQ / @TimeStamp | 1 | DateTime | 이 메시지의 생성 날짜 및 시간입니다. | 
| OTA_HotelRateAmountNotifRQ / @Version | 1 | decimal | OpenTravel 메시지 버전입니다. | 
| OTA_HotelRateAmountNotifRQ / @NotifType | 0..1 | enum | 모든  유효한 값은 다음과 같습니다. 이러한 속성의 작동 방식을 알아보려면 예를 확인하세요. 
 | 
| OTA_HotelRateAmountNotifRQ / @NotifScopeType | 0..1 | enum | 모든  유효한 값은 다음과 같습니다. 
 | 
| OTA_HotelRateAmountNotifRQ / POS | 0..1 | POS | 이 메시지의 파트너 계정을 지정하는 컨테이너입니다(일반적으로 백엔드에서 여러 파트너 계정의 가격 피드를 제공하는 경우 사용됨). | 
| OTA_HotelRateAmountNotifRQ / POS / Source | 1 | Source | <POS>이 있는 경우 필수입니다.<RequestorID>의 컨테이너입니다. | 
| OTA_HotelRateAmountNotifRQ / POS / RequestorID | 1 | RequestorID | <POS>이 있는 경우 필수입니다. 파트너 계정을 정의합니다. | 
| OTA_HotelRateAmountNotifRQ / POS / RequestorID / @ID | 1 | string | 이 메시지의 파트너 계정입니다. 이 문자열 값은 Hotel Center의 
        계정 설정 페이지에 표시된 '파트너 키' 값입니다. 참고: 여러 계정의 피드를 제공하는 백엔드가 있는 경우 이 값은 동일한 계정의 거래 (숙박 시설 데이터) 메시지의  | 
| OTA_HotelRateAmountNotifRQ / RateAmountMessages | 1 | RateAmountMessages | 요율을 정의하는 <RateAmountMessage>요소의 컬렉션입니다. | 
| OTA_HotelRateAmountNotifRQ / RateAmountMessages / @HotelCode | 1 | string | 숙박 시설의 고유 식별자입니다. 이 값은 호텔 목록 피드의 <listing> 요소에서 <id>를 사용하여 지정된 호텔 ID와 일치해야 합니다. 호텔 ID는 Hotel Center에도 표시됩니다. | 
| OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage | 1..n | RateAmountMessage | 객실 요금 (기간에 걸친 객실 유형 및 요금제 조합)의 가격을 설정하는 컨테이너입니다. | 
| OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl | 1 | StatusApplicationControl | 기간과 객실 유형( InvTypeCode) 및 요금제 (RatePlanCode)의 식별자를 정의합니다. | 
| OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @Start | 1 | Date | 기간의 시작일입니다 (속성의 시간대 기준, 포함). | 
| OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @End | 1 | Date | 기간의 종료일입니다 (속성의 시간대 기준, 포함). start값 이상이어야 합니다.start와end이 동일한 경우 업데이트가 해당 날짜에 적용됩니다. Google은 최대 3년의 데이터를 지원합니다. | 
| OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @Mon | 0..1 | boolean | 월요일을 명시적으로 포함하려면 true또는1로 설정합니다.
 | 
| OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @Tue | 0..1 | boolean | 화요일을 명시적으로 포함하려면 true또는1로 설정합니다.
 | 
| OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @Weds | 0..1 | boolean | 수요일을 명시적으로 포함하려면 true또는1로 설정합니다.
 | 
| OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @Thur | 0..1 | boolean | 목요일을 명시적으로 포함하려면 true또는1으로 설정합니다.
 | 
| OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @Fri | 0..1 | boolean | 금요일을 명시적으로 포함하려면 true또는1으로 설정합니다.
 | 
| OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @Sat | 0..1 | boolean | 토요일을 명시적으로 포함하려면 true또는1로 설정합니다.
 | 
| OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @Sun | 0..1 | boolean | 일요일을 명시적으로 포함하려면 true또는1으로 설정합니다.
 | 
| OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @InvTypeCode | 1 | string | 인벤토리 (객실 유형)의 고유 식별자입니다. 이 값은 트랜잭션 (숙박 시설 데이터) 메시지의 <RoomID>에 매핑됩니다. | 
| OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @RatePlanCode | 1 | string | 요금제의 고유 식별자입니다. 이 식별자는 트랜잭션 (숙박 시설 데이터) 메시지의 <PackageID>에 매핑됩니다. 요금제는<OTA_HotelRateAmountNotifRQ>및<OTA_HotelAvailNotifRQ>메시지 모두에서<StatusApplicationControl>에 추가로 정의되고 참조됩니다. | 
| OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / StatusApplicationControl / @RatePlanType | 0..1 | string | 이 가격 업데이트에 적용되는 ARI 가격 모델의 유형을 나타내는 식별자입니다. LOS 기반 가격 모델을 사용하는 경우에만 26값을 사용하여 지정해야 합니다. 이 속성이 제외되면 날짜별 가격 업데이트임을 나타냅니다. | 
| OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates | 0..1 | Rates | <Rate>요소 컬렉션의 컨테이너입니다.NotifType이"Remove"인 경우 이 요소를 지정하면 안 됩니다. 그렇지 않으면 이 요소는 정확히 한 번 지정해야 합니다. | 
| OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate | 1 | Rate | <BaseByGuestAmts>요소 컬렉션의 컨테이너입니다. | 
| OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / @RateTimeUnit | 0..1 | String | 숙박 기간이 지정되는 단위입니다. 지원되는 유일한 값은 "Day"이며, 이는 숙박 기간이 일 단위로 지정됨을 의미합니다.LOS 기반 가격 책정을 사용하려면  | 
| OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / @UnitMultiplier | 0..1 | Integer | 이 요금의 숙박 기간을 구성하는 RateTimeUnits수입니다.예를 들어  이  LOS 기반 가격 책정을 사용하려면  | 
| OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / BaseByGuestAmts | 1 | BaseByGuestAmts | 기본 요금 모음의 컨테이너입니다. | 
| OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / BaseByGuestAmts / BaseByGuestAmt | 1..n | BaseByGuestAmt | 지정된 통화로 객실 가격을 지정합니다. NumberOfGuests값이 서로 다른<BaseByGuestAmt>요소를 여러 개 사용하여 가격을 숙박 인원별로 지정할 수 있습니다.
        그렇지 않으면 가격은NumberOfGuests로 정의된 최대 숙박 인원수에 적용됩니다. | 
| OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / BaseByGuestAmts / BaseByGuestAmt / @AmountBeforeTax | 0..1 | float | 세금 및 수수료를 제외한 객실 요금의 일일 가격입니다.   프로모션을 사용하는 경우 할인이  | 
| OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / BaseByGuestAmts / BaseByGuestAmt / @AmountAfterTax | 0..1 | float | 관련 세금 및 수수료를 포함한 객실 요금의 일일 가격입니다. AmountAfterTax가 지정된 경우 속성별<TaxFeeInfo>메시지를 별도로 전송하지 않아도 됩니다. 이 속성은AmountBeforeTax와 함께 사용하여 특정 지역의 사용자에게 표시할 수 있는 기본 요율과 총 요율을 모두 제공할 수 있습니다.경고: 프로모션을 사용하는 경우  참고:  | 
| OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / BaseByGuestAmts / BaseByGuestAmt / @CurrencyCode | 1 | enum | 특정 통화 단위의 ISO 4217 (3) 알파벳 문자 코드입니다. 지원되는 통화 목록을 참고하세요. | 
| OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / BaseByGuestAmts / BaseByGuestAmt / @NumberOfGuests | 0..1 | integer | 이 요금으로 숙박할 수 있는 최대 투숙객 수입니다.
        제공되지 않으면 기본값은 게스트 2명입니다.   | 
| OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / AdditionalGuestAmounts | 0..1 | AdditionalGuestAmounts | 추가 투숙객 요금 모음의 컨테이너입니다. 이 구문은 날짜에 따라 추가 게스트 또는 아동 요금이 변경되는 경우에 유용합니다. 이러한 금액을 속성 수준에서 정적으로 정의할 수 있는 경우 더 효율적인  
 예를 들어 성인 1명과 2명의 기본 요금이 지정되어 있다고 가정해 보겠습니다. 
 | 
| OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / AdditionalGuestAmounts / AdditionalGuestAmount | 0..n | AdditionalGuestAmount | AgeQualifyingCode를 통해 지정된 게스트 유형과MaxAge를 통해 지정된 게스트의 연령(해당하는 경우)에 따라 가격을 지정합니다. | 
| OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / AdditionalGuestAmounts / AdditionalGuestAmount / @AgeQualifyingCode | 1 | enum | 추가 게스트의 유형(성인 또는 아동)을 정의합니다. 유효한 옵션은 다음과 같습니다. 
 
 
 | 
| OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / AdditionalGuestAmounts / AdditionalGuestAmount / @MaxAge | 0..1 | integer | AgeQualifyingCode이8인 경우MaxAge을 지정해야 합니다.AgeQualifyingCode이10인 경우 지정하면 안 됩니다.
 
 
 별도의  | 
| OTA_HotelRateAmountNotifRQ / RateAmountMessages / RateAmountMessage / Rates / Rate / AdditionalGuestAmounts / AdditionalGuestAmount / @Amount | 1 | float | 추가 투숙객별 기본 요금에 추가된 세금 및 수수료 전 금액입니다. 숙박객의 연령에 따라 달라지는 세금 및 수수료는  | 
예
이 섹션에서는 다음 작업을 수행하는 방법을 보여주는 코드 예시를 제공합니다.
add, overlay 또는 remove 값을 설정할 때 목표에 따라 날짜 범위가 동일하거나 다를 수 있습니다. 예를 들어 '추가 비율' 메시지에 설정된 전체 범위가 아닌 12월 휴일의 몇 주만 설정하는 데 overlay를 사용할 수 있습니다. 이렇게 하면 이 기간의 점유율만 대체됩니다.
날짜별 가격
객실 및 요금제별로 속성당 최대 50개의 점유율이 있을 수 있습니다. 모든 숙박 인원에 요금이 동일한 경우 필수 가격과 함께 최대 숙박 인원만 전송하면 됩니다. 이렇게 하면 Google은 점유율이 낮은 객실에도 동일한 기본 요금이 적용된다고 추론합니다.
기본 요금 및 총 요금 설정
예 1
기본 숙박 인원 (2인)의 기본 요금 (세금 또는 수수료 제외)입니다. 이 모델에서는 숙박 시설의 세금과 수수료를 <TaxFeeInfo> 메시지를 사용하여 정의해야 합니다. 특정 지역에서 검색하는 사용자에게는 기본 요금이 더 눈에 띄게 표시됩니다.
<?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="Property_1">
    <RateAmountMessage>
      <StatusApplicationControl Start="2020-05-18"
                                End="2020-05-23"
                                InvTypeCode="RoomID_1"
                                RatePlanCode="PackageID_1"/>
      <Rates>
        <Rate>
          <BaseByGuestAmts>
            <BaseByGuestAmt AmountBeforeTax="100.00"
                            CurrencyCode="USD"/>
          </BaseByGuestAmts>
        </Rate>
      </Rates>
    </RateAmountMessage>
  </RateAmountMessages>
</OTA_HotelRateAmountNotifRQ>예 2
기본 숙박 인원 (2인)의 기본 요금 및 총 요금입니다. 이 모델에서는 <TaxFeeInfo> 메시지를 사용하여 세금과 수수료를 별도로 정의해서는 안 됩니다. 특정 지역에서 검색하는 사용자에게는 기본 요금이 더 눈에 띄게 표시됩니다.
<?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="Property_1">
    <RateAmountMessage>
      <StatusApplicationControl Start="2020-05-18"
                                End="2020-05-23"
                                InvTypeCode="RoomID_1"
                                RatePlanCode="PackageID_1"/>
      <Rates>
        <Rate>
          <BaseByGuestAmts>
            <BaseByGuestAmt AmountBeforeTax="100.00"
                            AmountAfterTax="110.00"
                            CurrencyCode="USD"/>
          </BaseByGuestAmts>
        </Rate>
      </Rates>
    </RateAmountMessage>
  </RateAmountMessages>
</OTA_HotelRateAmountNotifRQ>예시 3
여러 숙박 인원의 총 요금 (세금 및 수수료 포함)입니다. 이 모델에서는 <TaxFeeInfo> 메시지를 사용하여 세금과 수수료를 별도로 정의해서는 안 됩니다.
<?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="Property_1">
    <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>예 4
여러 객실 유형 및 요금제의 기본 요금과 총 요금이 서로 다른 날짜 범위에 걸쳐 있습니다.
<?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="Property_1">
    <RateAmountMessage>
      <StatusApplicationControl Start="2020-05-18"
                                End="2020-05-23"
                                InvTypeCode="RoomID_1"
                                RatePlanCode="PackageID_1"/>
      <Rates>
        <Rate>
          <BaseByGuestAmts>
            <BaseByGuestAmt AmountBeforeTax="100.00"
                            AmountAfterTax="110.00"
                            CurrencyCode="USD"
                            NumberOfGuests="2"/>
          </BaseByGuestAmts>
        </Rate>
      </Rates>
    </RateAmountMessage>
    <RateAmountMessage>
      <StatusApplicationControl Start="2020-05-01"
                                End="2020-05-31"
                                InvTypeCode="RoomID_2"
                                RatePlanCode="PackageID_2"/>
      <Rates>
        <Rate>
          <BaseByGuestAmts>
            <BaseByGuestAmt AmountBeforeTax="200.00"
                            AmountAfterTax="220.00"
                            CurrencyCode="USD"
                            NumberOfGuests="2"/>
          </BaseByGuestAmts>
        </Rate>
      </Rates>
    </RateAmountMessage>
  </RateAmountMessages>
</OTA_HotelRateAmountNotifRQ>요금 추가, 오버레이, 삭제
속성당 제품(객실 유형 및 패키지 조합)은 5,000개로 제한됩니다. Overlay 또는 Remove 알림 유형을 사용하여 이전에 정의된 제품을 삭제합니다.
요금 추가
2021년 10월 20일과 2021년 12월 31일 사이에 RoomID_1 및 PackageID_1의 숙박당 요금을 추가하려면 NotifType을 Delta로 설정합니다. Google은 최대 3년의 데이터를 지원합니다.
<?xml version="1.0" encoding="UTF-8"?>
<OTA_HotelRateAmountNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05"
                            EchoToken="12345678"
                            TimeStamp="2021-10-20T20:50:37-05:00"
                            Version="3.0"
                            NotifType="Delta"
                            NotifScopeType="ProductRate">
  <RateAmountMessages HotelCode="Property_1">
    <RateAmountMessage>
      <StatusApplicationControl Start="2021-10-20"
                                End="2021-12-31"
                                InvTypeCode="RoomID_1"
                                RatePlanCode="PackageID_1"/>
      <Rates>
        <Rate>
          <BaseByGuestAmts>
            <BaseByGuestAmt AmountBeforeTax="100.00"
                            CurrencyCode="USD"
                            NumberOfGuests="1"/>
            <BaseByGuestAmt AmountBeforeTax="110.00"
                            CurrencyCode="USD"
                            NumberOfGuests="2"/>
            <BaseByGuestAmt AmountBeforeTax="120.00"
                            CurrencyCode="USD"
                            NumberOfGuests="3"/>
          </BaseByGuestAmts>
        </Rate>
      </Rates>
    </RateAmountMessage>
  </RateAmountMessages>
</OTA_HotelRateAmountNotifRQ>오버레이 비율
NotifType을 Overlay로 설정하여 2021년 10월 20일과 2021년 12월 31일 사이의 RoomID_1 및 PackageID_1의 모든 숙박당 요금을 삭제하고 새로 지정된 숙박당 요금으로 바꿉니다.
예를 들어 이 메시지가 '요금 추가' 메시지 이후에 전송된 경우 숙박 인원 1, 2, 3 요금이 삭제되고 새로운 숙박 인원 1 요금만 저장됩니다. 더 짧은 기간(예: 2021-12-20 및 2021-12-31)를 사용하여 연말연시와 같은 특정 날짜의 점유율만 대체할 수 있습니다.
<?xml version="1.0" encoding="UTF-8"?>
<OTA_HotelRateAmountNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05"
                            EchoToken="12345678"
                            TimeStamp="2021-10-20T20:50:37-05:00"
                            Version="3.0"
                            NotifType="Overlay"
                            NotifScopeType="ProductRate">
  <RateAmountMessages HotelCode="Property_1">
    <RateAmountMessage>
      <StatusApplicationControl Start="2021-10-20"
                                End="2021-12-31"
                                InvTypeCode="RoomID_1"
                                RatePlanCode="PackageID_1"/>
      <Rates>
        <Rate>
          <BaseByGuestAmts>
            <BaseByGuestAmt AmountBeforeTax="200.00"
                            CurrencyCode="USD"
                            NumberOfGuests="1"/>
          </BaseByGuestAmts>
        </Rate>
      </Rates>
    </RateAmountMessage>
  </RateAmountMessages>
</OTA_HotelRateAmountNotifRQ>요금 삭제
NotifType을 Remove로 설정하여 2021-10-20~2021-12-31 기간의 RoomID_1 및 PackageID_1에 대한 모든 숙박당 요금을 삭제합니다.
예를 들어 이 메시지가 다른 예시 메시지 중 하나가 전송된 후에 전송된 경우 점유율이 저장되지 않습니다.
<?xml version="1.0" encoding="UTF-8"?>
<OTA_HotelRateAmountNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05"
                            EchoToken="12345678"
                            TimeStamp="2021-10-20T20:50:37-05:00"
                            Version="3.0"
                            NotifType="Remove"
                            NotifScopeType="ProductRate">>
  <RateAmountMessages HotelCode="Property_1">
    <RateAmountMessage>
      <StatusApplicationControl Start="2021-10-20"
                                End="2021-12-31"
                                InvTypeCode="RoomID_1"
                                RatePlanCode="PackageID_1"/>
    </RateAmountMessage>
  </RateAmountMessages>
</OTA_HotelRateAmountNotifRQ>추가 게스트 금액 추가, 오버레이, 삭제
금액 추가
2021년 10월 20일과 2021년 12월 31일 사이에 RoomID_1 및 PackageID_1에 대해 숙박 인원 1 및 2의 기본 요금과 추가 게스트 금액을 추가하려면 NotifType을 Delta로 설정합니다.
추가 게스트 금액은 사용자 검색의 숙박 인원에 따라 결정되는 기본 요금에 추가됩니다. 사용자가 지정한 점유율은 RoomID_1의 용량 내에 있어야 합니다.
이 예에서 추가 게스트 금액은 다음과 같이 적용됩니다.
- 만 0~10세 (포함) 어린이는 5달러입니다.
- 만 11~17세 (포함) 아동의 경우 10달러
- 성인 20달러
<?xml version="1.0" encoding="UTF-8"?>
<OTA_HotelRateAmountNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05"
                            EchoToken="12345678"
                            TimeStamp="2021-10-20T20:50:37-05:00"
                            Version="3.0"
                            NotifType="Delta"
                            NotifScopeType="ProductRate">
  <RateAmountMessages HotelCode="Property_1">
    <RateAmountMessage>
      <StatusApplicationControl Start="2021-10-20"
                                End="2021-12-31"
                                InvTypeCode="RoomID_1"
                                RatePlanCode="PackageID_1"/>
      <Rates>
        <Rate>
          <BaseByGuestAmts>
            <BaseByGuestAmt AmountBeforeTax="100.00"
                            CurrencyCode="USD"
                            NumberOfGuests="1"/>
            <BaseByGuestAmt AmountBeforeTax="110.00"
                            CurrencyCode="USD"
                            NumberOfGuests="2"/>
          </BaseByGuestAmts>
          <AdditionalGuestAmounts>
            <AdditionalGuestAmount Amount="5.00" AgeQualifyingCode="8" MaxAge="10" />
            <AdditionalGuestAmount Amount="10.00" AgeQualifyingCode="8" MaxAge="17" />
            <AdditionalGuestAmount Amount="20.00" AgeQualifyingCode="10" />
          </AdditionalGuestAmounts>
        </Rate>
      </Rates>
    </RateAmountMessage>
  </RateAmountMessages>
</OTA_HotelRateAmountNotifRQ>오버레이 금액
NotifType을 Overlay로 설정하여 2021-10-20~2021-12-31 기간의 RoomID_1 및 PackageID_1에 대한 모든 숙박 인원별 요금과 모든 추가 게스트 금액을 삭제하고 새로 지정된 숙박 인원별 요금과 추가 금액으로 대체합니다.
예를 들어 이 메시지가 '요금 추가' 메시지 이후에 전송된 경우 기본 숙박 인원 1 및 2 요금이 삭제되고 새로운 기본 숙박 인원 1 요금만 저장됩니다. 이전 추가 게스트 금액 집합이 삭제되고 새 금액 집합만 저장됩니다. 이제 추가 게스트 금액은 새 숙박 인원 1 요금을 기본 요금으로 사용합니다. 이 업데이트 후에는 자녀에 대해 정의된 추가 게스트 요금이 없습니다.
<?xml version="1.0" encoding="UTF-8"?>
<OTA_HotelRateAmountNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05"
                            EchoToken="12345678"
                            TimeStamp="2021-10-20T20:50:37-05:00"
                            Version="3.0"
                            NotifType="Overlay"
                            NotifScopeType="ProductRate">
  <RateAmountMessages HotelCode="Property_1">
    <RateAmountMessage>
      <StatusApplicationControl Start="2021-10-20"
                                End="2021-12-31"
                                InvTypeCode="RoomID_1"
                                RatePlanCode="PackageID_1"/>
      <Rates>
        <Rate>
          <BaseByGuestAmts>
            <BaseByGuestAmt AmountBeforeTax="200.00"
                            CurrencyCode="USD"
                            NumberOfGuests="1"/>
          </BaseByGuestAmts>
          <AdditionalGuestAmounts>
            <AdditionalGuestAmount Amount="30.00" AgeQualifyingCode="10" />
          </AdditionalGuestAmounts>
        </Rate>
      </Rates>
    </RateAmountMessage>
  </RateAmountMessages>
</OTA_HotelRateAmountNotifRQ>금액 삭제
NotifType을 Delete로 설정하여 2021년 10월 20일과 2021년 12월 31일 사이의 RoomID_1 및 PackageID_1에 대한 모든 숙박당 기본 요율과 모든 추가 게스트 금액을 삭제합니다.
예를 들어 이 메시지가 다른 예시 메시지 중 하나가 전송된 후에 전송된 경우 점유당 기본 요금이나 추가 게스트 금액이 저장되지 않습니다.
<?xml version="1.0" encoding="UTF-8"?>
<OTA_HotelRateAmountNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05"
                            EchoToken="12345678"
                            TimeStamp="2021-10-20T20:50:37-05:00"
                            Version="3.0"
                            NotifType="Remove"
                            NotifScopeType="ProductRate">>
  <RateAmountMessages HotelCode="Property_1">
    <RateAmountMessage>
      <StatusApplicationControl Start="2021-10-20"
                                End="2021-12-31"
                                InvTypeCode="RoomID_1"
                                RatePlanCode="PackageID_1"/>
    </RateAmountMessage>
  </RateAmountMessages>
</OTA_HotelRateAmountNotifRQ>추가 게스트 금액만 삭제
<AdditionalGuestAmounts> 요소가 비어 있는 NotifType을 Delta로 설정하여 2021년 10월 20일과 2021년 12월 31일 사이의 기본 요금에 영향을 주지 않고 RoomID_1 및 PackageID_1의 모든 추가 게스트 금액을 삭제합니다.
예를 들어 이 메시지가 다른 예시 메시지 중 하나가 전송된 후에 전송된 경우 기본 금액만 저장됩니다.
<?xml version="1.0" encoding="UTF-8"?>
<OTA_HotelRateAmountNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05"
                            EchoToken="12345678"
                            TimeStamp="2021-10-20T20:50:37-05:00"
                            Version="3.0"
                            NotifType="Delta"
                            NotifScopeType="ProductRate">
  <RateAmountMessages HotelCode="Property_1">
    <RateAmountMessage>
      <StatusApplicationControl Start="2021-10-20"
                                End="2021-12-31"
                                InvTypeCode="RoomID_1"
                                RatePlanCode="PackageID_1"/>
      <Rates>
        <Rate>
          <AdditionalGuestAmounts/>
        </Rate>
      </Rates>
    </RateAmountMessage>
  </RateAmountMessages>
</OTA_HotelRateAmountNotifRQ>LOS 기반 가격 책정
LOS 기반 요금 설정
예 1
2020년 5월 18일부터 1박, 2박, 3박 숙박에 대한 요금을 설정합니다. 이 예에서 1박, 2박, 3박 숙박의 총 요금은 각각 100달러, 180달러, 240달러입니다.
<?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="Property_1">
    <RateAmountMessage>
      <StatusApplicationControl Start="2020-05-18"
                                End="2020-05-18"
                                InvTypeCode="RoomID_1"
                                RatePlanCode="PackageID_1"
                                RatePlanType="26"/>
      <Rates>
        <Rate UnitMultiplier="1" RateTimeUnit="Day">
          <BaseByGuestAmts>
            <BaseByGuestAmt AmountBeforeTax="100.00"
                            CurrencyCode="USD"
                            NumberOfGuests="2"/>
          </BaseByGuestAmts>
        </Rate>
        <Rate UnitMultiplier="2" RateTimeUnit="Day">
          <BaseByGuestAmts>
            <BaseByGuestAmt AmountBeforeTax="90.00"
                            CurrencyCode="USD"
                            NumberOfGuests="2"/>
          </BaseByGuestAmts>
        </Rate>
        <Rate UnitMultiplier="3" RateTimeUnit="Day">
          <BaseByGuestAmts>
            <BaseByGuestAmt AmountBeforeTax="80.00"
                            CurrencyCode="USD"
                            NumberOfGuests="2" />
          </BaseByGuestAmts>
        </Rate>
      </Rates>
    </RateAmountMessage>
  </RateAmountMessages>
</OTA_HotelRateAmountNotifRQ>LOS 기반 요율 추가, 오버레이, 삭제
숙박 기간 추가
LOS 기반 가격 책정에서 Delta 작업을 사용하면 <StatusApplicationControl>에 표시된 체크인 날짜 범위와 각 하위 Rate 요소의 UnitMultiplier에 표시된 모든 숙박 기간에 대해 요금을 점진적으로 업데이트할 수 있습니다.
해당하는 각 체크인 날짜와 숙박 기간에 대해 모든 점유율을 지정해야 합니다.
<?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"
                            NotifType="Delta"
                            NotifScopeType="ProductRate">
  <RateAmountMessages HotelCode="Property_1">
    <RateAmountMessage>
      <StatusApplicationControl Start="2020-05-18"
                                End="2020-05-18"
                                InvTypeCode="RoomID_1"
                                RatePlanCode="PackageID_1"
                                RatePlanType="26"/>
      <Rates>
        <Rate UnitMultiplier="3" RateTimeUnit="Day">
          <BaseByGuestAmts>
            <BaseByGuestAmt AmountBeforeTax="80.00"
                            CurrencyCode="USD"
                            NumberOfGuests="2"/>
          </BaseByGuestAmts>
        </Rate>
      </Rates>
    </RateAmountMessage>
  </RateAmountMessages>
</OTA_HotelRateAmountNotifRQ>숙박 기간 오버레이
LOS 기반 가격 책정을 사용하면 Overlay 작업이 <StatusApplicationControl>에 표시된 제품의 모든 숙박 기간 및 체크인 날짜 범위의 요금을 대체합니다.
이 메시지를 사용하면 지정된 도착 날짜의 모든 숙박 기간에 대한 1인당 요금이 삭제되고 숙박 기간 3에 대해서만 정의된 2인 숙박 요금으로 대체됩니다.
<?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"
                            NotifType="Overlay"
                            NotifScopeType="ProductRate">
  <RateAmountMessages HotelCode="Property_1">
    <RateAmountMessage>
      <StatusApplicationControl Start="2020-05-18"
                                End="2020-05-18"
                                InvTypeCode="RoomID_1"
                                RatePlanCode="PackageID_1"
                                RatePlanType="26"/>
      <Rates>
        <Rate UnitMultiplier="3" RateTimeUnit="Day">
          <BaseByGuestAmts>
            <BaseByGuestAmt AmountBeforeTax="80.00"
                            CurrencyCode="USD"
                            NumberOfGuests="2"/>
          </BaseByGuestAmts>
        </Rate>
      </Rates>
    </RateAmountMessage>
  </RateAmountMessages>
</OTA_HotelRateAmountNotifRQ>숙박 기간 삭제
숙박 기간 기반 가격 책정을 사용하면 Remove 작업이 <StatusApplicationControl>에 표시된 제품의 모든 숙박 기간 및 체크인 날짜 범위의 요금을 삭제합니다.
<?xml version="1.0" encoding="UTF-8"?>
<OTA_HotelRateAmountNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05"
                            EchoToken="12345678"
                            TimeStamp="2021-10-20T20:50:37-05:00"
                            Version="3.0"
                            NotifType="Remove"
                            NotifScopeType="ProductRate">
  <RateAmountMessages HotelCode="Property_1">
    <RateAmountMessage>
      <StatusApplicationControl Start="2021-10-20"
                                End="2021-12-31"
                                InvTypeCode="RoomID_1"
                                RatePlanCode="PackageID_1"
                                RatePlanType="26"/>
    </RateAmountMessage>
  </RateAmountMessages>
</OTA_HotelRateAmountNotifRQ>응답
구문
OTA_HotelRateAmountNotifRS 메시지는 다음 구문을 사용합니다.
<?xml version="1.0" encoding="UTF-8"?>
<OTA_HotelRateAmountNotifRS xmlns="http://www.opentravel.org/OTA/2003/05"
                            TimeStamp="timestamp"
                            EchoToken="echo_token"
                            Version="3.0">
  <!-- Either Success or Errors will be populated. -->
  <Success/>
  <Errors>
    <Error Type="12" Status="NotProcessed" ShortText="issue_code">issue_description</Error>
  </Errors>
</OTA_HotelRateAmountNotifRS>
요소 및 속성
OTA_HotelRateAmountNotifRS 메시지에는 다음 요소와 속성이 있습니다.
| 요소 / @Attribute | 발생 횟수 | 유형 | 설명 | 
|---|---|---|---|
| OTA_HotelRateAmountNotifRS | 1 | Complex element | 참석 여부 메시지에 대한 응답의 루트 요소입니다. | 
| OTA_HotelRateAmountNotifRS / @TimeStamp | 1 | DateTime | 이 메시지의 생성 날짜 및 시간입니다. | 
| OTA_HotelRateAmountNotifRS / @EchoToken | 1 | string | 연결된 OTA_HotelRateAmountNotifRQ메시지의 고유 식별자입니다. | 
| OTA_HotelRateAmountNotifRS / Success | 0..1 | Success | OTA_HotelRateAmountNotifRQ메시지가 성공적으로 처리되었음을 나타냅니다.각 메시지에  | 
| OTA_HotelRateAmountNotifRS / Errors | 0..1 | Errors | OTA_HotelRateAmountNotifRQ메시지를 처리하는 동안 발생한 하나 이상의 문제 컨테이너입니다.각 메시지에  | 
| OTA_HotelRateAmountNotifRS / Errors / Error | 1..n | Error | OTA_HotelRateAmountNotifRQ메시지를 처리하는 중에 발생한 오류에 대한 설명입니다. 이러한 오류에 대한 자세한 내용은 피드 상태 오류 메시지를 참고하세요. | 
| OTA_HotelRateAmountNotifRS / Errors / Error / @Type | 1 | integer | 오류와 관련된 OpenTravel Alliance EWT (오류 경고 유형)입니다. 12 (Processing exception)값만 사용됩니다. | 
| OTA_HotelRateAmountNotifRS / Errors / Error / @Code | 1 | integer | 오류와 관련된 OpenTravel Alliance ERR (오류 코드)입니다. 450 (Unable to process)값만 사용됩니다. | 
| OTA_HotelRateAmountNotifRS / Errors / Error / @Code | 1 | enum | 원래 요청의 상태입니다. NotProcessed값만 사용됩니다. | 
| OTA_HotelRateAmountNotifRS / Errors / Error / @ShortText | 1 | string | 문제의 Google 식별자입니다. 이러한 오류에 대한 자세한 내용은 피드 상태 오류 메시지를 참고하세요. | 
예
성공
다음은 성공적으로 처리된 OTA_HotelRateAmountNotifRQ 메시지에 대한 응답입니다.
<?xml version="1.0" encoding="UTF-8"?>
<OTA_HotelRateAmountNotifRS xmlns="http://www.opentravel.org/OTA/2003/05"
                       EchoToken="12345678"
                       TimeStamp="2021-10-20T20:50:37-05:00"
                       Version="3.0">
  <Success/>
</OTA_HotelRateAmountNotifRS>오류
다음은 오류로 인해 처리되지 않은 OTA_HotelRateAmountNotifRQ 메시지에 대한 응답입니다.
<?xml version="1.0" encoding="UTF-8"?>
<OTA_HotelRateAmountNotifRS xmlns="http://www.opentravel.org/OTA/2003/05"
                       EchoToken="12345678"
                       TimeStamp="2021-10-20T20:50:37-05:00"
                       Version="3.0">
  <Errors>
    <Error Type="12" Code="450" Status="NotProcessed" ShortText="8001">Example</Error>
  </Errors>
</OTA_HotelRateAmountNotifRS>