AirFrance KL - OrderCreate This document describes the AirFrance KL OrderCreate Service Document Version: 1.0 Document Status: Approved Date of last Update: 10/26/2017 Document Location: https://developer.airfranceklm.com/ Revision History Date Version Summary of Changes 25/10/2017 1.0 Document 1 st release Linked Documents Document Filename Version Location TABLE OF CONTENTS 1. Overview... 1 2. Invocation... 2 2.1. OrderCreateRQ... 2 2.2. OrderViewRS... 4 3. Process Steps... 6 4. Business Rules... 7 4.1. Parties... 7 4.1.1. Sender... 7 4.1.2. Participant... 7 4.1.3. Recipient... 7 4.2. Order Response... 7 4.2.1. Order definition... 7 4.2.2. Order item definition... 7 4.3. Payment Time Limit... 8 4.3.1. Definition... 8 4.3.2. Rule... 8 4.3.3. Specificity... 8 4.4. Cabins... 8 4.5. Credit Cards... 8 4.6. Corporates... 9 4.6.1. Rules... 9 4.6.2. Corporate ID (OIN) verification... 9 4.6.3. Corporate Bookings... 9 4.7. Payment Options... 9 Document : BSD SOA Business Service Description.doc Page: ii
5. Business Exceptions... 9 5.1. andatory fields... 9 5.2. Travel agency information... 9 5.3. Offer time limit exceeded... 9 5.4. All error codes... 9 6. Policies... 11 Document : BSD SOA Business Service Description.doc Page: iii
1. Overview Goal: AFKL order creation message corresponds to the IATA NDC OrderCreate schema version 17.1. It allows to create a booking from a selected offer, within the offer time limit. The travel agent selects an offer, completes with passenger information (inc. Flying blue number and Corporate OIN if needed) and confirms that he wants to book it. In response he receives an order with all details, payment time limit and payment options. (or an error if the booking can not be made, or if there is missing information) This service does not allow the payment and ticket issuance, only the booking. Payment and ticket issuance can be performed thanks to AirDocIssue message. Result(s): When called the service returns a detailed order including an order status (confirmed or rejected). The result also contains the form of payment (with surcharges if applicable) that can be used to pay and issue the tickets) An order contains only AF or KL marketed flights. Ancillaries are out of scope (will be included in a later release). SCOPE IN Scope equals to global/shopping scope : One way, round trip, 1 to 9 passengers, ADT, CHD, INF, AF and KL marketing flights, Public and Corporate fares, only flights, no ancillaries. Request : Offer ID Results: One Order with : - Reference - status - Details - Form of payment and CC surcharge SCOPE Coming Soon Ancillaries Seats and Bags. Youth/senior Abonnés (subscribers cards) SCOPE To be planned Private fares Rich Content ulti City (Open Jaw, Stop) HOP marketing flights U Interaction Type: Request/Reply Pre-Condition(s): An offer has been selected by the seller from the shopping reply provided and thus he requests to convert this offer into an order. Post-Condition(s): Page: 1
N/A Support Process 1. If any issues are encountered on the services, the third party support will do a 1 st analysis to exclude a problem on third party side 2. If the issue comes from AFKL, the third party support will raise an incident ticket to AFKL support. 3. AFKL wil analyse and resolve the issue and revert to the Third Party 2. Invocation This service is triggered by a request received from an external actor (travel agency, aggregator etc.). 2.1. OrderCreateRQ = andatory; O = Optional; C = Conditional Business Information Description /O Remark Offer ID Sender : travel agency Offer to be converted into an order, it is identified by an ID O Alphanumeric 36 characters: a9f2e740-94ca-46fe-b737-607f0fb69f24 Agency name Name of the travel agency Example: Tour Travel Type Type of agency O Example: TA, OTA, TC IATA number Example: 67890890 Pseudo-city Pseudo city code of the travel agency Example: PAR11LL Agency ID ID of the travel agency This field is mandatory in the NDC grammar, but AFKL will not use it. Recommendation is to put the IATA number in this field. Agency contact information N/A for OTA Contact details Email or phone contact of the agent Example: Test@Test.nl Participants NDC Enabled System Participant is the party through who the message will pass O Name Name of the enabled system participant ust be decided between the third party and AFKL System ID Unique external system ID ust be decided between the third party and AFKL. Aggregator participant C Needed if aggregator in the transaction Name Name of the aggregator Example: Travel Fusion C ust be decided Page: 2
between the third party and AFKL. Aggregator ID Unique external ID of the aggregator Example: TF ust be decided between the third party and AFKL. Corporate participant C Needed if the order is done for a corporate. It has to be the same as the one indicated in the offer process. But it can also be provided only at order step. Name Name of the corporate Example: SHELL The name is mandatory in NDC grammar but will not be used by AFKL. Only the ID will be used. ID OIN of the corporate Example: KV07 Recipient Is the airline which receives the request ORA Recipient Offer Responsible Airline who receives the request AF or KL Name Name of the airline O Possible values: Air France or KL Airline ID IATA code of the airline Possible Values : AF or KL. Passenger information Passenger information needed for an order to be created Information to be repeated according to the number of passengers that cannot exceed 9 Reference Passenger reference id Example: PAX1 Type Typology of the passenger Example: ADT Currently supported: ADT, CHD, INF ; will come later: YCD, YTH Title Title of the passenger (rs. etc.) Example: r. Surname Surname of the passenger Example: DUPONT Name Name of the passenger Example: John Email Address andatory for the booker C Example: dupont@john Phone number Phone number of the passenger O Example: 0123456789 Page: 3
Date of birth andatory for CHD and INF Example: 12-01-17 Loyalty Account Number Flying Blue number O Example: 56788098 2.2. OrderViewRS = andatory; O = Optional; C = Conditional Business Information Description /O Remark Order ID ID of the order created An order refers to an offer PNR reference Booking reference An order can include one or multiple Amadeus booking reference Total Order Price Total price of the order (base amount + taxes) and currency Example: 100EUR Payment time limit Order valid until ticketing time limit Example: 10 October 2017 10:00 Status Status of the order O Not used by AFKL for the moment. Order Item ID Offer item ID Service ID associations Associating each order item to its corresponding offer item and services Example: Order ID a1f4127e-f672-48d0- a185-a3f1d61f9845 Example: Offer ID: a1f4127e-f672-48d0- a185-a3f1d61f9848 Example: Service ID: a1f4127e-f672-48d0- a185-a3f1d61f988 Order ID item ID of the order item created The order item corresponds to an offer item Price of the order item Detailed price of the order item (base amount + taxes) and currency Example : 100EUR Tax Details Details of the tax included in this item Example: 5EUR Payment time limit Order item valid until ticketing timeo limit Ticket issuance must be requested before ticketing time limit Page: 4
Passenger references An order item includes passengers Passengers information is provided with the same price Below Segment references References to the flight segments provided in the order item Segment information is provided below Passenger Information Information of the passenger referenced in the order item Same information is provided for each passenger Type Typology of the passenger Example: ADT Title Title of the passenger Example:. First name First name of the passenger Example: John Last name Last Name of the passenger Example: Dupont Email address andatory for the booker C andatory for ADT Phone number Phone number of the passenger O Example: +33156876987 Loyalty Program O Program Name Flying Blue program O Example: KL Account number Flying blue account number O Example: 56788098 Tier name Tier level of the passenger O Example: IVORY Origin & Destination Countries and cities of origin and destination Total Journey Total journey duration between origin and destination Example: P0Y00DT2H50.000S Segment information (list) Details of the segment referenced in the order item Same information is provided for each departure/arrival segment of inbound/outbound Departure/Arrival Airport Name Departure/Arrival Airport Code Name of the airport of Departure/Arrival Code of the airport of Departure/Arrival Ex: Charles de Gaulle Ex: CDG Page: 5
Departure/Arrival Date and time Date and time of the travel of Departure/Arrival Change of day If applicable at landing C Ex: (+1) Cabin Name of the cabin Ex: Business arketing flight Flight number and carrier code Ex: AF 6789 Operating flight Flight number and carrier code Ex: KL 1234 Ex: January 24 th 2017, 09:10 Equipment Equipment Ex: Aircraft Code and name (318/ Airbus) Ticket Conditions Checked baggage allowance Number of checked baggage authorised Example: 2 Advance purchase Condition of advance purchase : C Example: P0Y20DT0H00.000S Advance stay Condition of minimum and maximum stay C Example: 6 months Cancellation/Change Cancellation or change of the order C Application Allowed before or after departure C Possible values : - ADE= After Departure - PDE = Prior to Departure Penalties Penalties to pay if cancellation or changec Example: 150 EUR applied No Show Possibility to board on another flight C Value = NOS if No show is accepted, empty if not. Fare description Fare Basis Code of the fare basis Example: UAFPREV Fare Code Public or Private fare IATA PADIS Codeset Corporate Payment options OIN of the corporate if the booking is a corporate booking. All payment options available to the customer O Example: KV08 Cash BSP Payment C Example : NDC-CASH Credit Card Debit Card Credit card accepted by AFKL for this order C Example: CC Debit card accepted by AFKL for this order C Example: DC Surcharges Surcharges associated to each card C Example: 1EUR 3. Process Steps The OrderCreate service can be used in the following sequence of services: - AirShoppingRQ/RS - FlightPriceRQ/RS - Optional - OrderCreateRQ/OrderViewRS - AirDocIssueRQ/OrderViewRS Page: 6
4. Business Rules 4.1. Parties 4.1.1. Sender The Sender must be the travel agent requesting for the order. It has to be the same as the one who received the Offers 4.1.2. Participant The Participant is either the party through which the NDC message (aggregator or NDC enabled system) or the party on behalf which the request is done (a corporate). 4.1.3. Recipient The recipient is the party receiving the NDC message. It is either Air France or KL. 4.2. Order Response 4.2.1. Order definition An order contains flights a passenger is entitled to, and that need to be delivered. The content of an Order includes one or multiple Order Items (with a unique Airline-assigned Order Item ID), individually priced items within the Order. 4.2.2. Order item definition An order item has a one to one relationship with an offer item. An offer item is converted into an order item. An order item includes one or multiple passengers travelling on the same segments and consuming the same services at the same price. A service can either be flights or ancillaries (currently AFKL does not offer any ancillary). Page: 7
4.3. Payment Time Limit 4.3.1. Definition The payment time limit defines the time limit until when an order has to be paid. After this limit the order will be automatically cancelled. 4.3.2. Rule A payment time limit is applied at the order and at the order item level. If different payment time limit is provided in the order items: the payment time limit applied at the order level is the most constraining one. 4.3.3. Specificity The payment time limit will be provided for AF order at order creation. However for KL, the order will have to be retrieved to receive the payment time limit. 4.4. Cabins apping between IATA and AFKL cabin codes. IATA code AIR FRANCE KL AFKL code 1 First Business F/C 2 Business Business C 3 Economy Economy 4 Premium Economy Economy W/ 5 Economy Economy 6 Economy Economy 7 All : not available All : not available N/A 4.5. Credit Cards The Sender needs to acknowledge the scope of debit/credit cards is entitled to. Credit card surcharges can vary from one credit/debit card and from one market to another. Following credit cards with their associated surcharges are provided in the OrderViewRS: - American Express - UATP - aestro - aster card/eurocard - Visa card - Visa Electron - Visa Debit - Diners Club card - AFKL Amex card - JCB card Page: 8
4.6. Corporates 4.6.1. Rules For a client to benefit from its corporate negotiated fares, it needs to send its corporate ID (OIN) at shopping request. If this corporate ID is sent at order creation, the public fare selected at shopping time will be applied. The corporate ID will be used for corporate recognition only. 4.6.2. Corporate ID (OIN) verification When receiving an OrderCreateRQ with corporate ID, AFKL NDC application will confirm the corporate ID (OIN) of the corporate contract before sending the booking creation request to the order management component. 4.6.3. Corporate Bookings If the sender selects a corporate offer and requests an order creation, the order created by the order management component is quoted based on the corporate account code. 4.7. Payment Options If no payment options are available at order creation. The sender can retrieve the order to receive a list of payment options and surcharges applied. 5. Business Exceptions 5.1. andatory fields If one of the mandatory elements are not provided in the request, an error message should be sent to the consumer. 5.2. Travel agency information If one of the following travel agency information does not exist in our NDC agency database, an error message «Incorrect agency information» is sent to the Sender: - IATA number - PCC/Office ID 5.3. Offer time limit exceeded At the OrderCreateRQ, if the offer time limit is expired, no order can be created. NDC application sends back to the sender Offer time limit expired. 5.4. All error codes List of all the functional return codes returned by the Software Service: Code Error message (ShortText) Description 911 Internal error (unknown internal technical error) 911 ORDER_PAYENT_REQUEST_ISSING_ORDER_ITES 911 NO_ORDER_ITES Page: 9
129 NO_OPEN_ORDER No PNR atch Found 911 ORDER_ITE_NOT_FOUND 911 ORDER_TRANSACTION_NOT_FOUND 911 OFFER_ERROR 293 OFFER_EXPIRED Unable to Sell Due to Sales Limit being Reached 911 OFFER_ITE_NOT_FOUND 911 OFFER_ITE_PASSENGER_NOT_ATCHING 260 FREQUENT_FLYER_PROGRA_ISATCH Invalid Frequent Traveler Number 911 ULTIPLE_ACCOUNT_CODES 467 FLIGHT_SEGENT_NOT_FOUND Flight segment not found in carriers PNR 911 OFFER_ALREADY_IN_ORDER 911 ORDER_CHANGE_NOT_ALLOWED 466 NO_PAYENTS_IN_REQUEST Form of payment missing or invalid for ticket/document 911 PAYENT_ALREADY_STARTED 911 ORDER_PAYENT_REQUEST_ISSING_ORDER_ITES 911 UNABLE_TO_CREATE_AIR_PRODUCT_LAST_SEAT_SOLD 129 UNABLE_TO_CREATE_AIR_PRODUCT 376 UNABLE_TO_QUOTE_AIR_PRODUCT 376 UNABLE_TO_QUOTE_SERVICES Pricing/ticketing error, text information specified 911 UNABLE_TO_RESERVE_SERVICES 318 VALIDAITON_ERROR_PASSENGERFIELD 911 PASSENGER_ATTRIBUTE_UNEXPECTED 911 FIELD_ISSING 911 DATE_OF_BIRTH_IN_FUTURE 911 PASSENGERTYPE_DATE_OF_BIRTH_ISATCH Page: 10
6. Policies Business Criticality <Sensitive > Business Volume < xxx > Business Use <7/24> Information classification according AF/KL Security office Availability 3 Critical Downtime cannot exceed 4 hours (impact > 1) 2 Sensitive / Significant Downtime may exceed 4 hours but is less than a maximum defined in the GOA General Operating Agreement or specified in chapter 6. 1 - Normal Best effort (impact < 10 K) Confidentiality Integrity Accountability Specification of additional availability requirements 3 Secret Information whose unauthorized disclosure (even within the organization) would cause serious damage to the interests of AFKL 2 Confidential Information whose unauthorized disclosure (even within the organization) would cause significant harm to the interests of AFKL) 1 Internal use only Information whose unauthorized disclosure, particularly outside of AFKL, would be inappropriate and inconvenient 0 Unrestricted Public domain information which requires no special protection measures As well as the above classifications it is possible to make use of the following qualifiers: Under Embargo The information is to be put and remain at a certain classification level until a predetermined date. At that time the embargo is lifted and the information will revert to a lower classification. Both classifications and the date of change should be indicated Personal The information is intended for an individual and may contain sensitive personal information and should therefore be treated as Addressee only. Access is limited therefore to the person for whom the information is intended. Specification of additional confidentiality requirements 3 high No loss of integrity is tolerated and corrective measures are in place to prevent any change to the original state of the information 2 medium Loss of integrity would significantly damage AFKL interests and corrective measures are in place to restore to the original state within a predetermined amount of time 1 low Loss of integrity should be logged Specification of additional integrity requirements 3 High Authentication and access to the information must be logged and preserved for a fixed period. Non-adherence of these constraints would cause serious harm to the interests of AFKL 2 medium Access to the information must be logged and preserved for a fixed period 1 low Access to the information need not be logged Specification of additional accountability requirements Page: 11
Interface Variant Specification of requirements for additional variation in interface Page: 12