Function createReservation

Arguments

  • params :
        array
            (
              [ 'idTrip' ] = '' ;
              [ 'reservationMode' ] = '' ; // query | request | option | reservation
                                           // default value is 'request'
    
              [ 'payer' ][ 'sex' ] = '' ;                 // 'male' | 'female' | 'other' ( default is other )
              [ 'payer' ][ 'name' ] = '' ;                // required
              [ 'payer' ][ 'surname' ] = '' ;             // required
              [ 'payer' ][ 'address' ] = '' ;             // required
              [ 'payer' ][ 'city' ] =  '' ;               // required
              [ 'payer' ][ 'postCode' ] =  '' ;           // required
              [ 'payer' ][ 'phoneNumber' ] =  '' ;        // required ( optional if email is set )
              [ 'payer' ][ 'email' ] =  '' ;              // required ( optional if phoneNumber is set )
              [ 'payer' ][ 'companyName' ] =  '' ;        // optional
              [ 'payer' ][ 'crmIdPerson' ] = '' ;         // optional
    
              [ 'loyaltyProgram' ][ 'groupName' ] = '' ;  // optional
              [ 'loyaltyProgram' ][ 'cardNumber' ] = '' ; // optional
              [ 'agency' ][ 'id' ] = '' ;                 // optional
              [ 'agency' ][ 'idPerson' ] = '' ;           // optional
              [ 'agency' ][ 'subCode' ] = '' ;            // optional - for external systems Agency ID
    
              [ 'participants' ] [ 0 ][ 'birthDate' ] = '1981-04-30' ; // YYY-MM-DD, required, 
              [ 'participants' ] [ 0 ][ 'sex' ] = '' ;                 // 'male' | 'female' | 'other' ( default is other )
              [ 'participants' ] [ 0 ][ 'name' ] = '' ;                // required
              [ 'participants' ] [ 0 ][ 'surname' ] = '' ;             // required
              [ 'participants' ] [ 0 ][ 'address' ] = '' ;             // optional ( if empty will be  copied from payer )
              [ 'participants' ] [ 0 ][ 'city' ] =  '' ;               // optional ( if empty will be  copied from payer )
              [ 'participants' ] [ 0 ][ 'postCode' ] =  '' ;           // optional ( if empty will be  copied from payer )
              [ 'participants' ] [ 0 ][ 'phoneNumber' ] =  '' ;        // optional ( if empty will be  copied from payer )
              [ 'participants' ] [ 0 ][ 'email' ] =  '' ;              // optional ( if empty will be  copied from payer )
              [ 'participants' ] [ 0 ][ 'country' ] =  '' ;            // optional
              [ 'participants' ] [ 0 ][ 'pesel' ] =  '' ;              // optional
              [ 'participants' ] [ 0 ][ 'citizenship' ] =  '' ;        // optional
              [ 'participants' ] [ 0 ][ 'document1Number' ] =  '' ;    // optional          
              [ 'participants' ] [ 0 ][ 'document1DateExp' ] =  '' ;   // optional
              [ 'participants' ] [ 0 ][ 'document2Number' ] =  '' ;    // optional          
              [ 'participants' ] [ 0 ][ 'document2DateExp' ] =  '' ;   // optional
              [ 'participants' ] [ 0 ][ 'visa' ] =  '' ;               // optional
              [ 'participants' ] [ 0 ][ 'crmIdPerson' ] = '' ;         // optional 
    
              [ 'participants' ] [ 0 ][ 'dynCol_1' ] = '' ;            // optional dynamic data
              [ 'participants' ] [ 0 ][ 'dynCol_2' ] = '' ;            // optional dynamic data
              
              ...
              
              [ 'participants' ] [ 0 ][ 'dynCol_16' ] = '' ;           // optional dynamic data
              
    
              [ 'participants' ] [ 1 ] ...
              
              ...
              
              [ 'participants' ] [ n ]                                 // n is personNumber
              
              
              [ 'services' ][0][ 'personNumber' ] = personNumber ; // when personNumber is empty string => service for all reservation
              [ 'services' ][0][ 'idService' ] = idService ; 
              ...
              [ 'services' ][n][ 'personNumber' ] = ...
              ...
              
              ['note1']  // optional text
              ['note2']  // optional text
              ['note3']  // optional text
              ['info']   // optional text
            )
            
            WARNING: personNumber value must start from 0.
        

Returns

Array including price details informations ( same as chechAvailability() ) and reservation create status.

Example


  require_once ( 'classUddsOx.php' ) ;

  $udds = new classUddsOx ;
  $udds->customerCode = [your_customerCode] ;
  $udds->login = [your_login] ;
  $udds->password = [your_password] ;
  $udds->serverUrl = 'http://api.dlaoperatora.pl/udds/' ;
  
  $myParams = array();
  
  $myParams [ 'idTrip' ] = 1277; ;
  $myParams [ 'reservationMode' ] = 'option' ;

  $myParams [ 'payer' ][ 'sex' ] = 'male' ;
  $myParams [ 'payer' ][ 'name' ] = 'Lucyfian' ;
  $myParams [ 'payer' ][ 'surname' ] = 'Boruta' ;
  $myParams [ 'payer' ][ 'address' ] = 'ul. Mrocznych czeluści  6/98' ;
  $myParams [ 'payer' ][ 'city' ] = 'Hel' ;
  $myParams [ 'payer' ][ 'postCode' ] = '98-123' ;
  $myParams [ 'payer' ][ 'phoneNumber' ] = '123 432 909';
  $myParams [ 'payer' ][ 'email' ] = 'maciej.szczepanski@ksimedia.pl' ;
  
  $myParams [ 'participants' ] = array();
  $myParams [ 'participants' ][0][ 'birthDate' ] = '1981-04-30' ;
  $myParams [ 'participants' ][0][ 'sex' ] = 'male' ;
  $myParams [ 'participants' ][0][ 'name' ] = 'Krystian' ;
  $myParams [ 'participants' ][0][ 'surname' ] = 'Mariańczyk' ;
  
  $myParams [ 'participants' ][1][ 'birthDate' ] = '1981-05-24' ;
  $myParams [ 'participants' ][1][ 'sex' ] = 'female' ;
  $myParams [ 'participants' ][1][ 'name' ] = 'Paulina' ;
  $myParams [ 'participants' ][1][ 'surname' ] = 'Jaźń-Świąd' ;

  $myParams [ 'participants' ][2][ 'birthDate' ] = '2015-04-05' ;
  $myParams [ 'participants' ][2][ 'sex' ] = 'male' ;
  $myParams [ 'participants' ][2][ 'name' ] = 'Grzymisław' ;
  $myParams [ 'participants' ][2][ 'surname' ] = 'Brzęczykąśłówski' ;
  $myParams [ 'participants' ][2][ 'address' ] = 'ul. Czerśniowa 94/18' ;
  $myParams [ 'participants' ][2][ 'city' ] = 'Łódź' ;
  $myParams [ 'participants' ][2][ 'postCode' ] = '13-123' ;
  $myParams [ 'participants' ][2][ 'phoneNumber' ] = '878 367 983';
  $myParams [ 'participants' ][2][ 'email' ] = 'maciej.szczepanski@gmail.com' ;
  $myParams [ 'participants' ][2][ 'document1Number' ] = 'APU 637362' ;
  $myParams [ 'participants' ][2][ 'document1DateExp' ] = '2060-11-02' ;

  $myParams [ 'services' ] = array();
  $myParams [ 'services' ][0]['personNumber'] = 0 ;
  $myParams [ 'services' ][0]['idService'] = 39 ;
  $myParams [ 'services' ][1]['personNumber'] = 1 ;
  $myParams [ 'services' ][1]['idService'] = 39 ;
  $myParams [ 'services' ][2]['personNumber'] = 2 ;
  $myParams [ 'services' ][2]['idService'] = 39 ;  
  $myParams [ 'services' ][3]['personNumber'] = 4 ;
  $myParams [ 'services' ][3]['idService'] = 37 ;
  $myParams [ 'services' ][4]['personNumber'] = '' ;
  $myParams [ 'services' ][4]['idService'] = 14 ;
  $myParams [ 'services' ][5]['personNumber'] = '' ;
  $myParams [ 'services' ][5]['idService'] = 14 ;
  
  
  $ret = $udds->createReservation( $myParams );
  

Returns $ret =
Array ( [0] => Array ( [flight] => Array ( [to] => Array ( [departureFromCode] => [departureToCode] => [codeExt1] => [codeExt2] => [carrierCode] => SP [departure] => Array ( [time] => 13:26 ) [arrival] => Array ( [time] => 17:26 ) [carrierName] => Small Planet [departureFromName] => [departureToName] => [flightNumber] => ) [from] => Array ( [departure] => Array ( [time] => 19:12 ) [arrival] => Array ( [time] => 22:16 ) ) ) [transport] => B [catalog] => LAST [dateFrom] => 01-12-2018 [durationNights] => 9 [offerCode] => TEST003 [serviceCode] => [roomCode] => DBL [feedingCode] => O [additionalBitInfo] => 0 [maxPax] => 2 [price] => 666 [currency] => PLN [multiUse1] => [multiUse2] => [offerName] => Przykładowa oferta do Gdańska ! [city] => Gdańsk [roomDescription] => Double [maintenanceDescription] => 2x dziennie [hotelCategory] => 4 [catalogName] => -Wczasy [status] => OK [availHotel] => 99 [availFlight] => 99 [mxTypeCode] => [mxHotelTypeCode] => H [availInfants] => 1 [roomType] => 0 [minAdt] => 1 [minPax] => 1 [mxaPax] => 2 [maxAdt] => 2 [defaultPax] => 2 [productNumber] => 1044 [flightClass] => [dates] => [region] => Pomorze [hotelPriceID] => 1044 [ageGroup1From] => 1 [ageGroup1To] => 0 [ageGroup1Price] => 0 [ageGroup2From] => 1 [ageGroup2To] => [ageGroup2Price] => [ageGroup3From] => 1 [ageGroup3To] => [ageGroup3Price] => [infantsMinAge] => 0 [infantsMaxAge] => 0 [infantsPrice] => 0 [adult2Price] => 0 [adult3Price] => 0 [adult4Price] => 0 [adult5Price] => 0 [priceDescription] => [bedsBooking] => 0 [apartmentPriceDetails1] => 0 [apartmentPriceDetails2] => 0 [description] => [flightFromCode] => [baseBusStop] => [realDepartureDate] => 01-12-2018 [hotelTypeNum] => 0 [additionalServices] => Array ( [0] => Array ( [ID_OFERTY_BP_DOPLATY] => 9 [ID_OFERTY] => 4 [TYP] => osoba [KOD] => SKIPASS [NAZWA] => SKIPASS [OPIS] => [WARTOSC] => 4000 [WALUTA] => EUR [ID_ZRODLA] => 0 [ZRODLO] => [ID_FIRMY] => 1 [DATA_WPROWADZENIA] => 2016-05-10 [GODZINA_WPROWADZENIA] => 12:00:44 [ID_WPROWADZAJACEGO] => 1 [DATA_MODYFIKACJI] => 2016-05-10 [GODZINA_MODYFIKACJI] => 12:01:20 [ID_MODYFIKUJACEGO] => 1 [ZMIANA] => [MAX_ILOSC] => 0 [WIDOCZNA_NA_WWW] => 1 [LP] => 0 ) ) ) [1] => Array ( [flight] => Array ( [to] => Array ( [departureFromCode] => [departureToCode] => [codeExt1] => [codeExt2] => [carrierCode] => SP [departure] => Array ( [time] => 13:26 ) [arrival] => Array ( [time] => 17:26 ) [carrierName] => Small Planet [departureFromName] => [departureToName] => [flightNumber] => ) [from] => Array ( [departure] => Array ( [time] => 19:12 ) [arrival] => Array ( [time] => 22:16 ) ) ) [transport] => B [catalog] => LAST [dateFrom] => 01-12-2018 [durationNights] => 9 [offerCode] => TEST003 [serviceCode] => [roomCode] => DBL [feedingCode] => O [additionalBitInfo] => 0 [maxPax] => 2 [price] => 666 [currency] => PLN [multiUse1] => [multiUse2] => [offerName] => Przykładowa oferta do Gdańska ! [city] => Gdańsk [roomDescription] => Double [maintenanceDescription] => 2x dziennie [hotelCategory] => 4 [catalogName] => -Wczasy [status] => OK [availHotel] => 99 [availFlight] => 99 [mxTypeCode] => [mxHotelTypeCode] => H [availInfants] => 1 [roomType] => 0 [minAdt] => 1 [minPax] => 1 [mxaPax] => 2 [maxAdt] => 2 [defaultPax] => 2 [productNumber] => 1045 [flightClass] => [dates] => [region] => Pomorze [hotelPriceID] => 1045 [ageGroup1From] => 1 [ageGroup1To] => 0 [ageGroup1Price] => 0 [ageGroup2From] => 1 [ageGroup2To] => [ageGroup2Price] => [ageGroup3From] => 1 [ageGroup3To] => [ageGroup3Price] => [infantsMinAge] => 0 [infantsMaxAge] => 0 [infantsPrice] => 0 [adult2Price] => 0 [adult3Price] => 0 [adult4Price] => 0 [adult5Price] => 0 [priceDescription] => [bedsBooking] => 0 [apartmentPriceDetails1] => 0 [apartmentPriceDetails2] => 0 [description] => [flightFromCode] => [baseBusStop] => [realDepartureDate] => 01-12-2018 [hotelTypeNum] => 0 [additionalServices] => Array ( [0] => Array ( [ID_OFERTY_BP_DOPLATY] => 9 [ID_OFERTY] => 4 [TYP] => osoba [KOD] => SKIPASS [NAZWA] => SKIPASS [OPIS] => [WARTOSC] => 4000 [WALUTA] => EUR [ID_ZRODLA] => 0 [ZRODLO] => [ID_FIRMY] => 1 [DATA_WPROWADZENIA] => 2016-05-10 [GODZINA_WPROWADZENIA] => 12:00:44 [ID_WPROWADZAJACEGO] => 1 [DATA_MODYFIKACJI] => 2016-05-10 [GODZINA_MODYFIKACJI] => 12:01:20 [ID_MODYFIKUJACEGO] => 1 [ZMIANA] => [MAX_ILOSC] => 0 [WIDOCZNA_NA_WWW] => 1 [LP] => 0 ) ) ) ( ... )