menu

Important Implementations

PAN & Passport Validation

Client need to refer the below nodes in FareQuote response to check whether PAN/Passport is required at Book/Ticket method. If value is 'True' then it is mandatory to pass the details--

"IsPanRequiredAtTicket"
"IsPanRequiredAtBook"
"IsPassportRequiredAtTicket"
"IsPassportRequiredAtBook"

If above PAN/Passport node is 'False' and client is providing then it should be the correct one else booking will be failed.

Validation Points to Remember:

  • In case of Adult, pax need to pass his/her name according to the PAN/Passport number and should only pass correct PAN/Passport number to avoid booking failure.
  • In case of Adult(18+), Parent/Guardian PAN will not be considered and booking will be failed. So client need to contact ops team for offline booking, if adult pax pan/passport is not available.
  • In case of Age between (12 to 18), if pax is providing PAN/Passport then we will consider only pax pan/passport and Parent/Guardian details will be discarded. If pax PAN/Passport is incorrect then booking will be failed.
  • In case of Child/Infant, pax need to pass Parent/Guardian's PAN/Passport number & name (as mentioned in PAN/Passport) to avoid booking failure.
  • Below additional node need to be passed in Book/Ticket request-

    "GuardianDetails":
    {
    "Title": "Mr",
    "FirstName": "ANKIT",
    "LastName": "MEHTA",
    "PAN": "GSBPM2112A"
    },

    CorporateCode in Search

    Client can pass corporate code in search request to get the related fares. Below is the sample-

    {
    "AdultCount": "1",
    "ChildCount": "0",
    "InfantCount": "0",
    "DirectFlight": "false",
    "OneStopFlight": "false",
    "JourneyType": "1",
    "EndUserIp": "192.168.10.36",
    "TokenId": "*****************",
    "PreferredAirlines": [],
    "CorporateCodes" :
    [
    {
    "PCC": "OTI011",
    "AirlineKeys" :
    [
    {
    "Airline": "6E",
    "CorporateCode":"152634,123654"
    }
    ]
    },
    {
    "PCC": "APITRVBOUTON",
    "AirlineKeys" :
    [
    {
    "Airline": "AK",
    "CorporateCode":"753951"
    }
    ]
    }
    ],

    "Segments": [
    {
    "Origin": "DEL",
    "Destination": "BOM",
    "PreferredDepartureTime": "2022-08-29T00:00:00",
    "PreferredArrivalTime": "2022-08-29T00:00:00",
    "FlightCabinClass": 1
    }
    ],
    "Sources": null,
    "IsBaseCurrencyRequired": "true",
    "PreferredCurrency": "INR"
    }

    FareClassification

    We have introduced fare classification node in search response which will used to identify the classification type along with color code:

  • Type value will be Publish/ Web/ SME / Crp etc. Type will be in string.
  • "FareClassification" :
    {
    "Color" : "lightBlue",
    "Type" : "Publish"
    }

    Mini Fare Rule

    We have introduced Mini Fare Rule, it will be avaiable in API response from Search to Ticket method except Farerule method. You can get cancellation and reissuance charges in the same node from supplier side.

    JourneyPoints: Sector list on which it is applicable
    Type: Cancellation/ Reissue
    From & To: Numeric value of Time
    Unit: Unit of Time
    Details: Amount or Percentage charged

    Important Note:

  • In the case NULL/ EMPTY in From & To, the same Cancellation/ Reissue charges will be applied from dept datetime to arrival datetime (journey wise OW/ RT).
  • One way Journey :

    [
    [{
    "JourneyPoints" : "DEL-VNS-BOM",
    "Type" : "Reissue",
    "From" : "0",
    "To" : "72",
    "Unit" : "Hours",
    "Details" : "20% of booking fee"
    }
    {
    "JourneyPoints" : "DEL-VNS-BOM",
    "Type" : "Cancellation",
    "From" : "0",
    "To" : "12",
    "Unit" : "Hours",
    "Details" : "10% of booking fee"
    }]
    ]

    Return Journey :

    "MiniFareRules":
    [
    [
    {
    "JourneyPoints": "KWI-DXB",
    "Type": "Cancellation",
    "From": "0",
    "To": "15",
    "Unit": "Hours",
    "Details": "20% of booking fee"
    }
    {
    "JourneyPoints": "KWI-DXB",
    "Type": "Reissue",
    "From": "0",
    "To": "72",
    "Unit": "Hours",
    "Details": "20% of booking fee"
    }
    ],
    [
    {
    "JourneyPoints": "DXB-KWI",
    "Type": "Cancellation",
    "From": "0",
    "To": "15",
    "Unit": "Hours",
    "Details": "20% of booking fee"
    }
    {
    "JourneyPoints": "DXB-KWI",
    "Type": "Reissue",
    "From": "0",
    "To": "72",
    "Unit": "Hours",
    "Details": "20% of booking fee"
    }
    ]
    ]

    NDC Implementations

    Airlines Available:

  • BritishAirways
  • Lufthansa
  • SingaporeAirline
  • SaudiaAirline
  • OmanAir
  • Emirates
  • EtihadAirways

    Below are the details for NDC Validation-

    1. EmailId is mandatory.
    2. Passport full Details (Passport No, expiry, issue date) mandatory at book.
    3. Dot(.) not allowed in firstName & LastName.
    4. CellCountryCode is mandatory in Book.
    5. Title validation - {"Mr", "Mstr", "Mrs", "Ms", "Miss", "Master", "DR", "CHD", "MST", "PROF", "Inf"}

    Functionalities:

  • Cancellation will be done online with infant also.
  • Import will not work for NDC.
  • SSR charges will be non refundable.

    Search Criteria:

    BA/LH - Del to LON / (ACC-TXL & INN-PRG - SN airline for EMD in LH)
    SQ- Del to SIN
    Departure Date - greater than 3 months

  • NDC booking Validation Sample File:
    NDC booking Validation Search Request Log

    Bundled Fare

    We have implemented Bundled Fare for G9(AirArabia):

  • In Bundled Fare, it is mandatory to pass Seat/Meal/Baggage whichever is required from airline end. Client need to refer the below nodes in Search & FareQuote response to check which Bundle is mandatory to pass-
  • "RequiredFieldValidators":
    {
    "IsBaggageRequired": true,
    "IsMealRequired": true,
    "IsSeatRequired": true
    }

  • If value is True for all these three nodes then client need to select and pass all the details else booking will get failed.
  • Student Fare and Senior Citizen and Armed Force Fare

    We have implemented Student Fare for 6E(Indigo), SG(SpiceJet), I5(AirAsia) & GDS:

    Service URL (REST) to be used:
    http://api.tektravels.com/BookingEngineService_Air/AirService.svc/rest/Search

  • Client need to pass 'ResultFareType' node to get the Student fare and below are the enums for the same-

  • RegularFare: 2
    ResultFareType:3 (StudentFare )
    ResultFareType:4 (Armed Force)
    ResultFareType:5 (Senior Citizen)

  • StudentId is mandatory in case of 6E & SG.
  • SeniorCitizen is mandatory id's in case of Indigo airline only.
  • AkasaAir is available only for Armed Force Fare.
  • Indigo, SpiceJet both are available for Senior Citizen Fare.
  • Upsell

    Please consider the below flow for creating Upsell booking:

    SEARCH - UPSELL -FARE RULE - FAREQUOTE - SSR - BOOK - TICKET - GETBOOKINGDETAIL


    Service URL (REST) to be used:
    http://api.tektravels.com/BookingEngineService_Air/AirService.svc/rest/FareUpsell

  • Upsell is a special service through which we can get package of available services from airline like-

  • > Meal Services
    > Priority Baggage Handling
    > Priority Check-In
    > Lounge Access
    > Upgrade Eligibility

    These services can be Included in the booking charges or on Chargeable basis.

  • Currently, Upsell option is available only for GDS airlines.
  • Sample File:
    Download Upsell Logs

    Re-Issuance

    We have implemented Re-Issuance for LCC and only for Full Issuance. Client can reissue the ticket for any future date.

    Please consider the below flow to reissue the ticket:

    SEARCH - FAREQUOTE - TICKETREISSUE


  • Above flow should be followed only if you have already created a booking and want to reissue the same.

  • Service URL (REST) to be used:
    http://api.tektravels.com/BookingEngineService_Air/AirService.svc/rest/TicketReissue

    Search & FareQuote method urls will be the same as mentioned in Search and FareQuote method structure.

    Point 1: Below mentioned new nodes added in search. These nodes are mandatory only in case of Re-issue not in normal search request.


    > SearchType(Enum: Normal search - 0, Re-issue - 1, Reissue with creditshell - 2)
    > Pnr(For which reissuance need to be done)
    > Bookingid(Need to pass the bookingid obtained in the original ticket)

    Point 2 : In farequote api user will get the "SupplierReissueCharges".

    > SupplierReissueCharges - This is the extra charge to be paid for ticket modification.

    Point 3: For re-issue api user need to call Ticket reissue method instead the ticket.

    > In this method, we have an object “TicketData” with values “TourCode, Endorsement, CorporateCode & AgentDealCode” parameters. These values are obtained from the ticket of the original flight, the same has to be passed for the modification request.

  • The status of the original booking ID will be 'reissued' and a new booking id will be issued to the customer . If customer further wants to cancel the booking, the new bookingid must be used.
  • Re-Issued pnr will be the same as original pnr.