====== getUnitPricesByParams method ====== Get unit prices. ===== Valid content types ===== * ''hotel'' (at the moment only this content type is supported) ===== Description ===== public array getUnitPricesByParams( array $searchData, array $headerData) ===== Parameters ===== * ''searchData (array)'' : search parameters. Required serach parameters: ''toc'', (either ''objectId'' or ''unitId'' are also mandatory) * ''headerData (array)'' : in addition to [[soap_header|SOAP Header Information]] , you'll need an export account credentials (''xuser'', ''xpass'') ===== Return Values ===== Returns an availability in selected period Array ( [units] => Array ( [17281] => Array ( [id] => 17281 [unitName] => A2+2 [unitType] => AP [unitView] => pool [ratePlans] => Array ( [0] => Array ( [id] => 26481 [name] => [basicService] => OV [productCode] => 2SI408126481 [priceType] => price_per_unit [prices] => Array ( [0] => Array ( [price] => 156 [additionalServiceTypes] => Array ( [0] => Array ( [serviceType] => HP [serviceDescription] => Half board [price] => 5 ) ) [periods] => Array ( [0] => Array ( [dateFrom] => 2015-07-25 [dateTo] => 2015-08-21 [arrivalDays] => Array ( [monday] => 1 [tuesday] => 1 [wednesday] => 1 [thursday] => 1 [friday] => 1 [saturday] => 1 [sunday] => 1 ) [departureDays] => Array ( [monday] => 1 [tuesday] => 1 [wednesday] => 1 [thursday] => 1 [friday] => 1 [saturday] => 1 [sunday] => 1 ) ) [1] => Array ( [dateFrom] => 2015-02-18 [dateTo] => 2015-02-19 [arrivalDays] => Array ( [monday] => 1 [tuesday] => 1 [wednesday] => 1 [thursday] => 1 [friday] => 0 [saturday] => 0 [sunday] => 1 ) [departureDays] => Array ( [monday] => 1 [tuesday] => 1 [wednesday] => 1 [thursday] => 0 [friday] => 0 [saturday] => 1 [sunday] => 1 ) ) ) ) [1] => Array ( [price] => 140 [periods] => Array ( [0] => Array ( [dateFrom] => 2015-07-11 [dateTo] => 2015-07-24 [arrivalDays] => Array ( [monday] => 1 [tuesday] => 1 [wednesday] => 1 [thursday] => 1 [friday] => 1 [saturday] => 1 [sunday] => 1 ) [departureDays] => Array ( [monday] => 1 [tuesday] => 1 [wednesday] => 1 [thursday] => 1 [friday] => 1 [saturday] => 1 [sunday] => 1 ) ) [1] => Array ( [dateFrom] => 2015-02-18 [dateTo] => 2015-02-19 [arrivalDays] => Array ( [monday] => 1 [tuesday] => 1 [wednesday] => 1 [thursday] => 1 [friday] => 0 [saturday] => 0 [sunday] => 1 ) [departureDays] => Array ( [monday] => 1 [tuesday] => 1 [wednesday] => 1 [thursday] => 0 [friday] => 0 [saturday] => 1 [sunday] => 1 ) ) ) ) [minimumStay] => Array ( [generalMinLength] => 0 [generalMaxLength] => 0 [periods] => Array ( [0] => Array ( [dateFrom] => 2015-04-06 [dateTo] => 2015-07-10 [minLength] => 3 [arrivalDays] => Array ( [monday] => 1 [tuesday] => 1 [wednesday] => 1 [thursday] => 1 [friday] => 1 [saturday] => 1 [sunday] => 1 ) ) [1] => Array ( [dateFrom] => 2015-07-11 [dateTo] => 2015-07-24 [minLength] => 4 [arrivalDays] => Array ( [monday] => 1 [tuesday] => 1 [wednesday] => 1 [thursday] => 1 [friday] => 1 [saturday] => 1 [sunday] => 1 ) ) [2] => Array ( [dateFrom] => 2015-07-25 [dateTo] => 2015-08-21 [minLength] => 5 [arrivalDays] => Array ( [monday] => 1 [tuesday] => 1 [wednesday] => 1 [thursday] => 1 [friday] => 1 [saturday] => 1 [sunday] => 1 ) ) [3] => Array ( [dateFrom] => 2015-08-22 [dateTo] => 2015-10-17 [minLength] => 3 [arrivalDays] => Array ( [monday] => 1 [tuesday] => 1 [wednesday] => 1 [thursday] => 1 [friday] => 1 [saturday] => 1 [sunday] => 1 ) ) ) ) [releases] => Array ( [generalReleaseDays] => 400 [dates] => Array ( [2015-02-18] => Array ( [release_days] => 3 [arrivalDays] => Array ( [monday] => 1 [tuesday] => 1 [wednesday] => 1 [thursday] => 1 [friday] => 1 [saturday] => 1 [sunday] => 1 ) ) [2015-02-19] => Array ( [release_days] => 3 [arrivalDays] => Array ( [monday] => 1 [tuesday] => 1 [wednesday] => 1 [thursday] => 1 [friday] => 1 [saturday] => 1 [sunday] => 1 ) ) [2015-02-20] => Array ( [release_days] => 3 [arrivalDays] => Array ( [monday] => 1 [tuesday] => 1 [wednesday] => 1 [thursday] => 1 [friday] => 1 [saturday] => 1 [sunday] => 1 ) ) [2015-02-21] => Array ( [release_days] => 3 [arrivalDays] => Array ( [monday] => 1 [tuesday] => 1 [wednesday] => 1 [thursday] => 1 [friday] => 1 [saturday] => 1 [sunday] => 1 ) ) [2015-02-22] => Array ( [release_days] => 3 [arrivalDays] => Array ( [monday] => 1 [tuesday] => 1 [wednesday] => 1 [thursday] => 1 [friday] => 1 [saturday] => 1 [sunday] => 1 ) ) ) ) [supplements] => Array ( [gratisDays] => Array ( [0] => Array ( [type] => gratis [description] => [isOnlyForThisUnit] => false [isOnlyForThisRatePlan] => true [checkInPeriod_from] => 2015-06-20 [checkInPeriod_to] => 2015-07-04 [checkInDays] => Array ( [monday] => 1 [tuesday] => 1 [wednesday] => 1 [thursday] => 1 [friday] => 1 [saturday] => 1 [sunday] => 1 ) [gratisDays] => 7=6 [isOnlyForBasicServiceType] => true [notWhenFirstminuteIsApplied] => true [priceType] => price per unit [price] => +0 ) ) [firstMinute] => Array ( [1] => Array ( [type] => earlybird [description] => [isOnlyForThisUnit] => false [isOnlyForThisRatePlan] => true [reservationDate_from] => 2015-11-10 [reservationDate_to] => 2015-01-31 [checkInPeriod_from] => 2015-05-23 [checkInPeriod_to] => 2015-09-12 [checkInDays] => Array ( [monday] => 1 [tuesday] => 1 [wednesday] => 1 [thursday] => 1 [friday] => 1 [saturday] => 1 [sunday] => 1 ) [numberOfNights1] => >=5 [isOnlyForBasicServiceType] => true [notWhenGratisDaysIsApplied] => true [priceType] => price per unit [price] => -15% ) ) ) ... ===== Return parameters ===== * ''units'' (array) : list of units * ''id'' : unit ID * ''unitName'' : unit name * ''unitType'' : unit type * ''unitView'' : unit view * ''ratePlans'' (array) : rate plans (offers) * ''id'' : rate id * ''name'' : rate name * ''basicService'' : basic service type * ''productCode'' : product code * ''priceType'' : price type (price_per_unit or price_per_person) * ''prices'' (array) : price list * ''price'' : price per day * ''additionalServiceTypes'' (array) : a list of additional service types * ''serviceType'' : service type code * ''serviceDescription'' : service type description * ''price'' : price per day * ''periods'' : different periods for this price * ''dateFrom'' : date from * ''dateTo'' : date to * ''arrivalDays'' array() : possible arrival days for this period * ''departureDays'' array() : possible departure days for this period * ''minimumStay'' array() : minimum stay information * ''generalMinLength'' : general minimum length (''dates'' overwrite this value) * ''generalMaxLength'' : general maximum length * ''periods'' array() : minimum stay periods * ''dateFrom'' : date from * ''dateTo'' : date to * ''minLength'' : minimum length for this date * ''arrivalDays'' array() : minimum length is valid only for this arrival days * ''releases'' array() : release days information * ''generalReleaseDays'' : general release days (''dates'' overwrite this value) * ''dates'' array() : release days for some of the dates * ''release_days'' : release days for this date * ''arrivalDays'' array() : release days is valid only for this arrival days * ''supplements'' array() : a list of supplements and discounts * ''gratisDays'' : type of discount that deducts price of gratis days (ie. 7=6 , means that if you travel for 7 hights you'll only pay for 6 nights. The cheapest days is usually deducted). * ''firstMinute'' : discounts for first minute promotions * ''lastMinute'' : discounts for last minute promotions * ''discount'' : this are generic discounts (depending on set attributes) * ''promoCode'' : by entering the corect promo code, user can receive this discount * ''childDiscount'' : discounts for children (sometimes this is also used for adults) * ''supplement'' : this is a generic supplement(depending on set attributes) * ''bookingFee'' : special supplement used for setting booking fees * ''touristTax'' : special supplement used for setting tourist taxes * **attributes**: discount/supplement is deducted/added when all this parameters are met * ''type'' : type of discount * ''description'' : discount description (when promoCode discount is used, this is actually a promo code user must enter) * ''reservationDate_from'' (YYYY-MM-DD) : used when reservation date is grater or equal then... * ''reservationDate_to''(YYYY-MM-DD) : used when reservation date is less or equal then... * ''checkInPeriod_from''(YYYY-MM-DD) : used when check-In date is grater or equal then... * ''checkInPeriod_to''(YYYY-MM-DD) : used when check-In date is less or equal then... * ''exactCheckInPeriod'' (bool) : used if ''check-In = checkInPeriod_from'' and ''check-Out = checkInPeriod_to'' * ''betweenCheckInPeriod'' (bool) : used if ''check-In >= checkInPeriod_from'' and ''check-Out <= checkInPeriod_to'' * ''daysUntilCheckIn'' : used if number of days until check-In match this criteria * ''checkInDays'' : used if check-In is one of the following * ''numberOfNights1'' : used if number of nights staying match this criteria * ''numberOfNights2'' : same as ''numberOfNights1'' (can be used together for options like "from" - "to" number of nights) * ''stayFromDayOfTheWeek'' : day of the week (from) * ''stayToDayOfTheWeek'' : day of the week (to) * ''roomType'' : used if room type match this criteria * ''serviceType'' : used if service type match this criteria * ''personType'' (adult or child) : used if person type match this criteria * ''personAge'' (min-max) : used if person age is between this value. (ie. 5-12 ... means: >= 5 years and < 12 years. If person is exactly 12 age or older, this criteria is not met!) * ''numberOfAdults'' : used if number of adults is the same as this value * ''whichAdult'' : used if adult number is the same as this value (ie. 2 ... means: discount is only for second adult) * ''numberOfChildren'' : used if number of childrens is the same as this value * ''whichChild'' : used if child number is the same as this value (ie. 1 ... means: discount is only for first child) * ''whichBasicBed'' : used if bed number is the same as this value (ie. 2 ... means: discount is only for person on second bed) * ''whichExtraBed'' : used if extra bed number is the same as this value (ie. 2 ... means: discount is only for person on second extra bed) * ''gratisDays'' (max=min): used if number of nights is the same as ''max'' value. ''min'' value states how many nights are paid for (the cheapest nights are deducted) * ''lessThenMinimumStayAllowed'' (bool) : if true, then this supplement is added when person stay is less then minimum stay set for this rate plan * ''isOnlyForBasicServiceType'' (bool) : if true, then this discount is only used when person is booking basic service. For other additional service types this discount does not matter. * ''notWhenFirstminuteIsApplied'' (bool) : don't use this discount if firstMinute discount is already been used * ''ignoreFirstminuteDiscount'' (bool) : if true, then ignore first minute discounts * ''notWhenGratisDaysIsApplied'' (bool) : don't use this discount if gratisDays discount is already been used * ''discountIsAddedToOtherDiscounts'' (bool) : if true then discount value is calculated from previous used discount, if false then discount is calculated from original unit price. * ''priceType'' : price type ('price per person', 'price per unit', 'price per person per stay', 'price per stay') * ''price'' : discount price. (ie. -10% , +30, -10) ===== Examples ===== * Example : prices for entire object $searchParams = array( 'toc' => 'APP', // touroperator code 'objectId' => '4081', // unit id ); $prices = $soapClient->orsxml_hotel_api_call( 'getUnitPricesByParams', $searchParams, $header ); * Example : prices for selected unit $searchParams = array( 'toc' => 'APP', // touroperator code 'unitId' => '17281', // unit id ); $prices = $soapClient->orsxml_hotel_api_call( 'getUnitPricesByParams', $searchParams, $header );