What is it?
The Booking Management API lets you manage your Sabre reservations/bookings in a more efficient way by providing a normalized set of services that manage both Sabre Passenger Name Records (PNRs) and Sabre Orders. These implementations are simplified to ensure that both experts and novices alike can integrate and adopt Sabre APIs in the most seamless way possible.
Currently, this API contains six methods:
- Get Booking
- Create Booking
- Cancel Booking
- Void Flight Tickets
- Check Flight Tickets
- Refund Flight Tickets
Get Booking
Get Booking provides a normalized view of reservations by combining both PNRs and orders.
This is achieved by executing internal calls to the PNR and Order domains respectively, and then consolidating the information into a single normalized response.
Additionally, this API sources extra content from other Sabre internal domains (Ticketing, Pricing, etc.) to provide a holistic view of Sabre reservations and to support traveler-oriented use cases (for example, "can I change my ticket?").
Create Booking
Create Booking provides a single, unified service to create a booking for different content sources (NDC, ATPCO, LCC, CSL hotels, cars and legacy GDS hotels). This is achieved by executing internal calls to the PNR, Order, Pricing, Hotel and Car domains respectively. The newly created Order and/or Sabre Passenger Name Record (PNR) information is then consolidated into a single normalized response.
Cancel Booking
Cancel Booking provides a single, unified service to cancel the entire reservation, or a part of the reservation, irrespective of what it contains (flight, hotel, car, others) and where it is created (NDC, Sabre, CSL). This includes an option to void or refund corresponding electronic documents for flights (ATPCO & NDC).
Void Flight Tickets
Void Flight Tickets provides a single, unified service to void a list of electronic documents (ATPCO). This includes electronic tickets and electronic miscellaneous documents (EMD).
Check Flight Tickets
Check Flight Tickets provides a single, unified service to verify voidability and refundability for a list of electronic documents (ATPCO) or the entire reservation using a confirmationId
(ATPC & NDC). The ability to check for refunds is currently limited to electronic tickets.
Refund Flight Tickets
Refund Flight Tickets provides a single, unified service to refund a list of electronic documents (ATPCO). The service allows you to specify refund qualifiers for electronic tickets.
Why use it?
With the recent introduction of new content types such as NDC and CSL in the Sabre system, the Booking Management API will call the appropriate API for managing reservations/bookings within the Sabre portfolio.
Get Booking
- Simplifies the booking retrieval process by removing the need to use individual/granular APIs to retrieve a reservation
- Retrieves a normalized view of the reservation regardless of the content sources (PNR, NDC Order)
- Provides additional data relevant for travelers (e.g. fare rules) as well as data elements that are not stored in the Sabre PNR (e.g. ticket details and more)
- Retrieves reservation in a stateless way
Create Booking
- Simplifies the booking process by removing the need to use individual/granular APIs to create a reservation
- Completes the reservation regardless of the air content sources (PNR, NDC Order)
- Completes the reservation for the hotel content
- Completes the reservation for the car content
- Retrieves a normalized view of the new booking regardless of the content sources (PNR, NDC Order)
- Adds capability to specify a different target city (Pseudo City Code, or PCC) for booking creation
- Generates a booking in a stateless way
Cancel Booking
- Simplifies the cancellation process by removing the need to use individual/granular APIs to cancel a reservation
- Cancels any content from the reservation
- Cancels the entire reservation
- Voids or refunds corresponding electronic documents for flights
- Cancels the reservation in a stateless way
- Adds capability to specify a different target city (Pseudo City Code, or PCC) for the cancelation of the PNR
- Adds capability to define the API's behavior when encountering errors (halt on error or allow partial cancel)
- Allows the assignment of a printer profile or dedicated printers for the transaciton
Void Flight Tickets
- Simplifies the ticket cancellation process by removing the need to use individual/granular APIs to void an electronic document
- Cancels multiple electronic documents (up to 12) from one reservation in a single call
- Voids electronic documents and update the reservation in a stateless way
- Adds capability to specify a different target city (Pseudo City Code, or PCC) and post-processing options (email or queue placement) for the refund of the electronic document
- Adds capability to define the API's behavior when encountering errors (halt on error or allow partial cancel)
- Allows the assignment of a printer profile or dedicated printers for the transaciton
Check Flight Tickets
- Simplifies the ticket validation process by removing the need to use individual/granular APIs to validate options for void or refund of an electronic document
- Checks for multiple electronic documents (up to 12) from one reservation in a single call
- Adds capability to specify a different target city (Pseudo City Code, or PCC) for the validation of the electronic document
- Supports refund qualifiers to price specific refund options
- Adds capability to define the API's behavior when encountering errors (halt on error or allow partial cancel)
Refund Flight Tickets
- Simplifies the ticket refund process by removing the need to use individual/granular APIs to refund an electronic document
- Refunds multiple electronic documents (up to 12) from one reservation in a single call
- Refunds electronic documents and updates the reservation in a stateless way
- Adds capability to specify a different target city (Pseudo City Code, or PCC) and post-processing options (email or queue placement) for the refund of the electronic document
- Supports refund qualifiers to price specific refund options
- Adds capability to define the API's behavior when encountering errors (halt on error or allow partial cancel)
- Allows the assignment of a printer profile or dedicated printers for the transaciton
How it works
Get Booking
Get Booking executes the following steps to display a booking:
- Retrieves reservation data by the given
confirmationID
(PNR locator and Order ID). - Calls proper downline services to retrieve additional data.
- Maps retrieved data to a normalized data model.
Create Booking
Create Booking executes the following steps to complete the creation of a booking:
- Populates traveler information based on the request payload or profile data.
- Calls proper downline booking creation services.
- Creates an NDC air order and/or a traditional PNR for ATPCO, LCC air content.
- Creates a hotel booking irrespective of content (CSL or legacy GDS).
- Creates a car booking by the use of a booking key.
- Maps the newly created booking data to a normalized data model.
Cancel Booking
Cancel Booking executes the following steps in order to complete the cancellation process of a specific product:
- Retrieves reservation data by the given
confirmationID
(PNR locator and Order ID). - Validates the cancel request against reservation content.
- Calls proper cancellation downline services.
- Finalizes/commits the transaction in the event of a success or partial success.
- Retrieves booking details after cancellation (optional).
Additionally, the following steps are executed when using VOID
for flightTicketOperation
:
- Retrieves all electronic documents contained in the PNR or Order.
- Matches the coupons of each document to the correct segment(s).
- Validates the coupon status.
- Validates the void period.
- Calls the Void Air Ticket downline service (includes a recovery strategy in case of failure).
- Finalizes/commits the transaction in the event of a success or partial success.
- Continues with the steps above.
Additionally, the following steps are executed when using REFUND
for flightTicketOperation
:
- Validates the coupon status.
- Validates the void period.
- Supports additional refund qualifiers.
- Calls the Automated Refunds downline service (includes a recovery strategy in case of failure).
- Finalizes/commits the transaction in the event of a success or partial success.
Additionally, the following step is executed when using offerItemId
:
- Forwards the ID to the orders/cancel request
Notes:
- This is applicable only to NDC orders.
- The ID determines which action should be taken on the tickets related to the order.
Void Flight Tickets
- Retrieves all electronic documents by the given
electronic Document Number
orconfirmationId
. - Validates the coupon status.
- Validates the void period.
- Calls the Void Air Ticket downline service (includes a recovery strategy in case of failure).
- Finalizes/commits the transaction in the event of a success or partial success.
Check Flight Tickets
- Retrieves all electronic documents by the given
electronic Document Number
orconfirmationId
. - Validates the coupon status.
- Validates the void period.
- Validates refundablity and amounts.
- Supports additional refund qualifiers for ATPCO tickets.
- Calls the Void Air Ticket downline service (includes a recovery strategy in case of failure).
- Calls the Automated Refunds downline service (includes a recovery strategy in case of failure).
Refund Flight Tickets
- Retrieves all electronic documents by the given
electronic Document Number
orconfirmationId
. - Validates the coupon status.
- Validates the void period.
- Supports additional refund qualifiers.
- Calls the Automated Refunds downline service (includes a recovery strategy in case of failure).
- Finalizes/commits the transaction in the event of a success or partial success.
How to use
Get Booking
Display booking
To ensure successful booking retrieval, the request should contain the below information:
Add confirmationId
(PNR Locator or Order Id) in the Get Booking request:
"confirmationId": "XXXXXX"
}
Display booking and validate surname
To ensure successful booking retrieval with surname validation, the request should contain the below information:
- Add
confirmationId
(PNR Locator or Order Id) in the Get Booking Request. - Add
surname
in the Get Booking Request.
Note: The API will validate if the surname matches the data in the reservation before retrieving it.
"confirmationId": "XXXXXX",
"surname": "Smith"
}
Display selected elements of the booking
To ensure successful booking retrieval with a limited number of elements in the response, the request should contain the below information:
- Add
confirmationId
(PNR Locator or Order Id) in the Get Booking Request. - Add the
returnOnly
element in the Get Booking Request with the selected list of elements you want to retrieve.
Note: The full list of possible returnOnly
values can be found in the OpenAPI specification under the Reference Documentation tab.
"confirmationId": "XXXXXX",
"surname": "Smith",
"returnOnly":[
"TRAVELERS", "FLIGHTS"
]
}
Create Booking
Create booking for NDC content type (Order)
To ensure a successful booking, pass a valid offerID
, selectedOfferItems
, and the traveler id
returned by the Offer Price API.
"flightOffer": {
"offerId": "{{price_offer_id}}",
"selectedOfferItems": [
"{{price_offer_item_id}}"
]
},
"travelers": [
{
"id": "{{price_passenger_id}}",
"givenName": "John",
"surname": "Kowalski",
"birthDate": "1970-01-23",
"passengerCode": "ADT",
"customerNumber": "1234567"
}
],
"contactInfo":
{
"emails": [
"travel@sabre.com"
],
"phones": [
"123456"
]
}
}
The successful booking will contain a booking reference with a confirmationId
(PNR Locator) and a normalized view of the reservation will be provided in the API response.
Create booking for ATPCO content
Note: By following this step, you can also request to have the booking priced and its price validated against the desired pricing.
Pass valid traveler information and the full details of each flight:
"agency": {
"address": {
"name": "John Smith",
"street": "1230 Ellen Ave, apt 10",
"city": "Dallas",
"stateProvince": "TX",
"postalCode": "75063",
"countryCode": "US",
"freeText": "John Smith\n1230 Ellen Ave, apt 10\nDallas, TX 75063\nUS"
},
"agencyCustomerNumber": "1234567",
"ticketingPolicy": "TODAY"
},
"travelers": [
{
"givenName": "John",
"surname": "Smith",
"birthDate": "1970-01-23",
"passengerCode": "ADT"
},
{
"givenName": "Mary",
"surname": "Smith",
"birthDate": "2014-01-23",
"passengerCode": "CNN"
}
],
"contactInfo": {
"emails": [
"travel@sabre.com",
"travel2@sabre.com"
],
"phones": [
"+123456"
]
},
"flightDetails": {
"flights": [
{
"flightNumber": 463,
"airlineCode": "EY",
"fromAirportCode": "MEL",
"toAirportCode": "AUH",
"departureDate": "2021-03-30",
"departureTime": "16:55",
"bookingClass": "Y",
"marriageGroup": false,
"flightStatusCode": "NN"
},
{
"flightNumber": 462,
"airlineCode": "EY",
"fromAirportCode": "AUH",
"toAirportCode": "MEL",
"departureDate": "2021-04-15",
"departureTime": "09:00",
"bookingClass": "Y",
"marriageGroup": false,
"flightStatusCode": "NN"
}
],
"flightPricing": [
{
"priceComparisons": [
{
"desiredAmount": "5300.00",
"comparisonType": "INCREASE_BY_AMOUNT",
"amount": "30.00"
},
{
"desiredAmount": "5300.00",
"comparisonType": "DECREASE_BY_AMOUNT",
"amount": "30.00"
}
]
}
]
},
"payment": {
"billingAddress": {
"name": "John Smith",
"street": "1230 Ellen Ave, apt 10",
"city": "Dallas",
"stateProvince": "TX",
"postalCode": "75063",
"countryCode": "US"
}
}
}
The successful booking will contain a booking reference with a confirmationId
(PNR Locator) and a normalized view of the reservation will be provided in the API response.
Create booking for hotel content
To ensure a successful booking, pass a valid bookingKey
returned by the Hotel Price Check API.
"agency": {
"address": {
"name": "John Smith",
"street": "1230 Ellen Ave, apt 10",
"city": "Dallas",
"stateProvince": "TX",
"postalCode": "75063",
"countryCode": "US",
"freeText": "John Smith\n1230 Ellen Ave, apt 10\nDallas, TX 75063\nUS"
},
"agencyCustomerNumber": "1234567",
"ticketingPolicy": "TODAY"
},
"travelers": [
{
"givenName": "John",
"surname": "Kowalski",
"passengerCode": "ADT"
},
{
"givenName": "Junior",
"surname": "Kowalski",
"passengerCode": "INF",
"age": 3
}
],
"contactInfo": {
"emails": [
"travel@sabre.com",
"travel2@sabre.com"
],
"phones": [
"+123456"
]
},
"hotel": {
"bookingKey": "{{bookingKey}}",
"rooms": [
{
"travelerIndices": [
1,
2
]
}
],
"paymentPolicy": "DEPOSIT",
"formOfPayment": 1
},
"payment": {
"formsOfPayment": [
{
"type": "PAYMENTCARD",
"cardTypeCode": "VI",
"cardNumber": "4487971000000006",
"cardSecurityCode": "123",
"expiryDate": "2022-10",
"cardHolder": {
"givenName": "John",
"surname": "Smith",
"email": "john@smith.family.priv",
"phone": "+1-555-123-4567",
"address": {
"street": "1230 Ellen Ave, apt 10",
"city": "Dallas",
"stateProvince": "TX",
"postalCode": "75063",
"countryCode": "US"
}
}
}
]
}
}
The successful booking will contain a booking reference with a confirmationId
(PNR Locator) and a normalized view of the reservation will be provided in the API response.
Create booking for hotel content, while using traveler profiles
To ensure a successful booking, pass a valid bookingKey
returned by the Hotel Price Check API.
"profiles": [
{
"uniqueId": "231448659",
"profileTypeCode": "TVL",
"domainId": "G7RE"
},
{
"uniqueId": "231448673",
"profileTypeCode": "TVL",
"domainId": "G7RE"
}
],
"agency": {
"address": {
"name": "John Smith",
"street": "1230 Ellen Ave, apt 10",
"city": "Dallas",
"stateProvince": "TX",
"postalCode": "75063",
"countryCode": "US",
"freeText": "John Smith\n1230 Ellen Ave, apt 10\nDallas, TX 75063\nUS"
}
},
"hotel": {
"bookingKey": "{{bookingKey}}",
"rooms": [
{
"travelerIndices": [
1,
2
]
}
],
"paymentPolicy": "DEPOSIT",
"formOfPayment": 1
},
"payment": {
"formsOfPayment": [
{
"type": "AGENCY_NAME",
"agencyAddress": {
"name": "John Smith",
"street": "1230 Ellen Ave, apt 10",
"city": "Dallas",
"stateProvince": "TX",
"postalCode": "75063",
"countryCode": "US"
}
}
]
}
}
The successful booking will contain a booking reference with a confirmationId
(PNR Locator) and a normalized view of the reservation will be provided in the API response.
Create booking for ancillaries (ATPCO)
To ensure a successful booking, pass valid ancillary details returned by the Get Ancillary Offers API.
"agency": {
"address": {
"name": "John Smith",
"street": "1230 Ellen Ave, apt 10",
"city": "Dallas",
"stateProvince": "TX",
"postalCode": "75063",
"countryCode": "US",
"freeText": "John Smith\n1230 Ellen Ave, apt 10\nDallas, TX 75063\nUS"
},
"agencyCustomerNumber": "1234567",
"ticketingPolicy": "TODAY"
},
"travelers": [
{
"givenName": "John",
"surname": "Smith",
"birthDate": "1970-01-23",
"passengerCode": "ADT",
"ancillaries": [
{
"reasonForIssuance": "BAGGAGE",
"reasonForIssuanceSubcode": "0C2",
"airlineCode": "EY",
"electronicMiscellaneousDocumentType": "FLIGHT_COUPON_ASSOCIATED",
"basePrice": "528.00",
"currencyCode": "USD",
"groupCode": "BG",
"flightIndices": [
1
]
}
]
},
{
"givenName": "Mary",
"surname": "Smith",
"birthDate": "1970-01-23",
"passengerCode": "ADT"
}
],
"contactInfo": {
"emails": [
"travel@sabre.com",
"travel2@sabre.com"
],
"phones": [
"+123456"
]
},
"flightDetails": {
"flights": [
{
"flightNumber": 78,
"airlineCode": "EY",
"fromAirportCode": "AMS",
"toAirportCode": "AUH",
"departureDate": "2021-11-19",
"departureTime": "20:25",
"bookingClass": "V",
"flightStatusCode": "NN"
},
{
"flightNumber": 77,
"airlineCode": "EY",
"fromAirportCode": "AUH",
"toAirportCode": "AMS",
"departureDate": "2021-11-26",
"departureTime": "09:00",
"bookingClass": "V",
"flightStatusCode": "NN"
}
],
"flightPricing": [
{}
]
},
"payment": {
"billingAddress": {
"name": "John Smith",
"street": "1230 Ellen Ave, apt 10",
"city": "Dallas",
"stateProvince": "TX",
"postalCode": "75063",
"countryCode": "US"
}
}
}
The successful booking will contain a booking reference with a confirmationId
(PNR Locator) and a normalized view of the reservation will be provided in the API response.
Create booking for car content
To ensure a successful booking, pass a valid bookingKey
returned by the Vehicle Price Check API.
"agency": {
"address": {
"name": "John Smith",
"street": "1230 Ellen Ave, apt 10",
"city": "Dallas",
"stateProvince": "TX",
"postalCode": "75063",
"countryCode": "US",
"freeText": "John Smith\n1230 Ellen Ave, apt 10\nDallas, TX 75063\nUS"
},
"agencyCustomerNumber": "1234567",
"ticketingPolicy": "TODAY"
},
"travelers": [
{
"givenName": "John",
"surname": "Kowalski",
"passengerCode": "ADT"
},
{
"givenName": "Junior",
"surname": "Kowalski",
"passengerCode": "INF",
"age": 3
}
],
"contactInfo": {
"emails": [
"travel@sabre.com",
"travel2@sabre.com"
],
"phones": [
"+123456"
]
},
"car": {
"bookingKey": "{{carBookingKey}}"
},
"payment": {
"formsOfPayment": [
{
"type": "PAYMENTCARD",
"cardTypeCode": "VI",
"cardNumber": "4487971000000006",
"cardSecurityCode": "123",
"expiryDate": "2022-10",
"cardHolder": {
"givenName": "John",
"surname": "Smith",
"email": "john@smith.family.priv",
"phone": "+1-555-123-4567",
"address": {
"street": "1230 Ellen Ave, apt 10",
"city": "Dallas",
"stateProvince": "TX",
"postalCode": "75063",
"countryCode": "US"
}
}
}
]
}
}
The successful booking will contain a booking reference with a confirmationId
(PNR Locator) and a normalized view of the reservation will be provided in the API response.
Cancel Booking
A few examples of using Cancel Booking are mentioned below. Additional examples can be found in the OpenAPI specification under the Reference Documentation tab and the Help tab.
Cancel specific flight/hotels/cars
To ensure the successful cancellation of specific flights/hotels/cars, your request should contain the below information:
- Add
confirmationId
(PNR Locator or Order Id). - Add the list of cars/flights/hotels:
itemId
can be retrieved fromGetBookingResponse.(flights|cars|hotels).itemId
orGetReservationRS/Reservation/PassengerReservation/Segments/Segment/Product/@id
.{
"confirmationId": "XXXXXX",
"cars": [
{
"itemId": 1
}
],
"flights": [
{
"itemId": 2
}
],
"hotels": [
{
"itemId": 12
}
]
}
Cancel whole reservation
To ensure the successful cancellation of an entire reservation, your request should contain the below information:
- Add
confirmationId
(PNR Locator or Order Id). - Add and set the
cancelAll
flag totrue
("cancelAll": true
).{
"confirmationId": "XXXXXX",
"cancelAll": true
}
Cancel whole reservation and sign change with specific entry
To ensure the successful cancellation of an entire reservation and signature with the desired entry, your request should contain the below information:
- Add
confirmationId
(PNR Locator or Order Id). - Add and set the
cancelAll
flag totrue
("cancelAll": true
). - Add
receivedFrom
.{
"confirmationId": "XXXXXX",
"cancelAll": true,
"receivedFrom": "DOE"
}
Cancel specific segments by ID or sequence
To ensure the successful cancellation of specific flights/hotels/cars, your request should contain the below information:
- Add
confirmationId
(PNR Locator or Order Id). - Add the list of segments:
id
can be retrieved fromGetBookingResponse.flights(cars/hotels).itemId
orGetReservationRS/Reservation/PassengerReservation/Segments/Segment/Product/@id
.sequence
can be retrieved fromGetReservationRS/Reservation/PassengerReservation/Segments/Segment/Product/@sequence
{
"confirmationId": "XXXXXX",
"segments": [
{
"id": 1,
"sequence": 2
}
]
}
Cancel and retrieve booking
To ensure the successful cancellation of, and to retrieve the state of the booking after cancellation, your request should contain the below information:
- Add
confirmationId
(PNR Locator or Order Id). - Add and set the
retrieveBooking
flag totrue
("retrieveBooking": true
).{
"confirmationId": "XXXXXX",
"retrieveBooking": true,
"flights": [
{
"itemId": 2
}
]
}
Cancel with "allow partial cancel" error policy
To ensure a successful cancellation with the option to allow a partial cancellation (continue with processing in the event of an error), your request should contain the below information:
- Add
confirmationId
(PNR Locator or Order Id). - Add and set the
errorHandlingPolicy
flag toALLOW_PARTIAL_CANCEL
("errorHandlingPolicy": "ALLOW_PARTIAL_CANCEL"
).{
"confirmationId": "XXXXXX",
"errorHandlingPolicy": "ALLOW_PARTIAL_CANCEL",
"flights": [
{
"itemId": 2
}
],
"hotels": [
{
"itemId": 12
}
]
}
Cancel whole reservation and void corresponding tickets
To ensure the successful cancellation of a complete reservation, the request should contain the below information:
- Add
confirmationId
(PNR Locator or Order Id). - Add and set the
cancelAll
flag totrue
("cancelAll": "true"
). - Add and set
flightTicketOperation
toVOID
("flightTicketOperation": "VOID"
).{
"confirmationId": "XXXXXX",
"cancelAll": true,
"flightTicketOperation": "VOID"
}
Cancel whole reservation and refund corresponding tickets
To ensure the successful cancellation of a complete reservation, the request should contain the below information:
- Add
confirmationId
(PNR Locator or Order Id). - Add and set the
cancelAll
flag totrue
("cancelAll": "true"
). - Add and set
flightTicketOperation
toREFUND
("flightTicketOperation": "REFUND"
).{
"confirmationId": "XXXXXX",
"cancelAll": true,
"flightTicketOperation": "REFUND"
}
Cancel specific flight and void corresponding tickets
To ensure the successful cancellation of a specific flight within a complete reservation, the request should contain the below information:
- Add
confirmationId
(PNR Locator or Order Id). - Add the list of flights:
itemId
can be retrieved fromGetBookingResponse.(flights|cars|hotels).itemId
orGetReservationRS/Reservation/PassengerReservation/Segments/Segment/Product/@id
.
- Add and set
flightTicketOperation
toVOID
("flightTicketOperation": "VOID"
).{
"confirmationId": "XXXXXX",
"flightTicketOperation": "VOID",
"flights": [
{
"itemId": 2
}
]
}
Cancel specific flight and refund corresponding tickets
To ensure the successful cancellation of a specific flight within a complete reservation, the request should contain the below information:
- Add
confirmationId
(PNR Locator or Order Id). - Add the list of flights:
itemId
can be retrieved fromGetBookingResponse.(flights|cars|hotels).itemId
orGetReservationRS/Reservation/PassengerReservation/Segments/Segment/Product/@id
.
- Add and set
flightTicketOperation
toREFUND
("flightTicketOperation": "REFUND"
).{
"confirmationId": "XXXXXX",
"flightTicketOperation": "REFUND",
"flights": [
{
"itemId": 2
}
]
}
Cancel whole reservation and take action on tickets (NDC)
To ensure the successful cancellation of a complete reservation and take action on the tickets (void or refund), the request should contain the below information:
- Add
confirmationId
(PNR Locator or Order Id). - Add the offerItemId:
offerItemId
can be retrieved fromCheckTicketsResponse.cancelOffer.offerItemId
or/v1/offers/reshop/cancelOrder form response.reshopOffers.offerId
.
- Add
offerItemId
("offerItemId": "cb7778589bcbklg7tkkp8sdo50"
).{
"confirmationId": "XXXXXX",
"offerItemId": "cb7778589bcbklg7tkkp8sdo50"
}
Void Flight Tickets
A few examples of using Void Flight Tickets are mentioned below. Additional examples can be found in the OpenAPI specification under the Reference Documentation tab and the Help tab.
Cancel single electronic document with "allow partial cancel" error policy
To ensure the successful cancellation of the document, the request should contain the below information:
- Add
tickets
(13 digit electronic document number) orconfirmationId
(PNR Locator or Order Id). - Add and set the
errorHandlingPolicy
flag toALLOW_PARTIAL_CANCEL
("errorHandlingPolicy": "ALLOW_PARTIAL_CANCEL"
).{
"tickets": [
"6071237616558"
],
"errorHandlingPolicy": "ALLOW_PARTIAL_CANCEL"
}
The electronic document was voided and the reservation was updated:
TKT/TIME LIMIT
1.T-06AUG-AB12*A12
2.TE 6071237616558-AT ABC/D AB12*A12 0427/06AUG*
TV 6071237616558-AT *VOID* AB12*A12 0428/06AUG*E
Cancel multiple electronic document with "halt on error" error policy
To ensure the successful cancellation of the document, the request should contain the below information:
- Add
tickets
(13 digit electronic document number). - Add and set the
errorHandlingPolicy
flag toHALT_ON_ERROR
("errorHandlingPolicy": "HALT_ON_ERROR"
).{
"tickets": [
"6071237616558",
"6074567616559",
"6077897616560"
],
"errorHandlingPolicy": "ALLOW_PARTIAL_CANCEL"
}
The electronic documents were voided and the reservation was updated:
TKT/TIME LIMIT
1.T-06AUG-AB12*A12
2.TE 6071237616558-AT ABC/D AB12*A12 0427/06AUG*
3.TE 6074567616559-AT ABC/D AB12*A12 0427/06AUG*
4.TE 6077897616560-AT ABC/D AB12*A12 0427/06AUG*
TV 6071237616558-AT *VOID* AB12*A12 0429/06AUG*E
TV 6074567616559-AT *VOID* AB12*A12 0429/06AUG*E
TV 6077897616560-AT *VOID* AB12*A12 0429/06AUG*E
Check Flight Tickets
A few examples of using Check Flight Tickets are mentioned below. Additional examples can be found in the OpenAPI specification under the Reference Documentation tab and the Help tab.
Check single electronic document with additional refund qualifier
To ensure the successful validation of the document, the request should contain the below information:
- Add
tickets
(13 digit electronic document number) orconfirmationId
(PNR Locator or Order Id). - Add and define the
refundQualifiers
as required. For example, you can override the cancel fee by settingoverrideCancelFee
("overrideCancelFee": "100.00"
).{
"tickets": [
{
"number": "0017489825123",
"refundQualifiers": {
"overrideCancelFee": "100.00"
}
}
]
}
The API will now check voidability and refundability. For the refund flow, the refund qualifiers will be applied:
"tickets": [
{
"number": "0017489825123",
"isVoidable": false,
"isrefundable": true,
"refundTotals": {
"subtotal": "498.00",
"taxes": "87.13",
"total": "585.13",
"currencyCode": "USD"
}
}
]
}
Check multiple electronic documents with different refund qualifiers
To ensure the successful validation of the document, the request should contain the below information:
- Add
tickets
(13 digit electronic document number). - Add and define the
refundQualifiers
as required for each ticket.{
"tickets": [
{
"number": "0017489825123",
"refundQualifiers": {
"overrideCancelFee": "100.00"
}
},
{
"number": "017489825124",
"refundQualifiers": {
"overrideTaxes": [
{
"taxCode": "XF",
"taxAmount": "5.00",
"airportTaxBreakdowns": [
{
"taxAmount": "5.5",
"airportCode": "DFW"
}
]
},
{
"taxCode": "SQ",
"taxAmount": "15.00"
}
],
"waiverCode": "123456789ABCDEF*"
}
}
]
}
The electronic documents were validated and the refund options priced:
"tickets": [
{
"number": "017489825123",
"isVoidable": false,
"isrefundable": true,
"refundTotals": {
"subtotal": "498.00",
"taxes": "87.13",
"total": "585.13",
"currencyCode": "USD"
}
},
{
"number": "017489825124",
"isVoidable": false,
"isrefundable": true,
"refundTotals": {
"subtotal": "598.00",
"taxes": "87.13",
"total": "685.13",
"currencyCode": "USD"
}
}
]
}
Refund Flight Tickets
An example of using Refund Flight Tickets is mentioned below. Additional examples can be found in the OpenAPI specification under the Reference Documentation tab and the Help tab.
Refund single electronic document without refund qualifiers
To ensure the successful refund of the document, the request should contain the below information:
- Add
tickets
(13 digit electronic document number) orconfirmationId
(PNR Locator or Order Id). - Add and set the
errorHandlingPolicy
flag toHALT_ON_ERROR
("errorHandlingPolicy": "HALT_ON_ERROR"
).{
"tickets": [
{
"number": "6077531704032"
}
],
"errorHandlingPolicy": "HALT_ON_ERROR"
}
The API will now check for refundability. For a successful validation and refund, the API will return the refundTotals
per ticket:
"tickets": [
{
"number": "6077531704032",
"refundTotals": {
"subtotal": "498.00",
"taxes": "87.13",
"total": "585.13",
"currencyCode": "USD"
}
}
]
}
Ticket was refunded:
ELECTRONIC TICKET RECORD CRS CODE:0011
INV: CUST: PNR:ABCDEF
TKT:6077531704032 ISSUED:02FEB21 PCC:G7RE IATA:9998999
NAME:PIPPEN/SCOTTY
FORM OF PAYMENT FCI: 0
1 CASH
CPN A/L FLT CLS DATE BRDOFF TIME ST F/B STAT
1 EY 2 Y 10JUN FRAAUH 1120A OK YLF1DE RFND
NVB:10JUN NVA:10JUN BAG:35K
and the booking was updated accordingly:
TKT/TIME LIMIT
1.T-02FEB-G7RE*AWX
2.TE 6077531704032-AT PIPPE/S G7RE*AWX 0321/02FEB*
3.TE 6077531704033-AT JORDA/M G7RE*AWX 0321/02FEB*
4.TR 6077531704032-AT PIPPE/S G7RE*AWX 0438/02FEB*I