The NDC Refund Quote API determines what if any refund value may be available on a ticket. It is part of the NDC cancel workflow: Create a workbench session, send Refund Quote, then send Cancel to cancel the ticket and issue any refund. For supporting NDC carriers only, you can cancel only specified segments in Refund Quote instead of the entire itinerary. In this case, the ticket value is retained at Cancel. Refund Quote is mandatory when canceling a ticket outside the void period and there is any difference between a refund due and the purchase price. If Refund Quote is not sent, and a refund is not available for the exact amount of the purchase price, Cancel returns the error message 'OFFER CANNOT BE CANCELED WHEN REFUND AMOUNT DOES NOT EQUAL OFFER PRICE. PERFORM A REFUND QUOTE AND TRY AGAIN'.
The Ancillary Cancel API supports canceling baggage and/or paid seats for both GDS and NDC, and canceling non-baggage ancillaries for NDC. Canceling non-baggage ancillaries for GDS is not supported. Ancillary Cancel must be sent in a workbench session: Create a workbench, send Ancillary Cancel, and commit the workbench. You can cancel ancillaries booked in the same or a previous session. Seat and ancillary cancel support varies in the booking workflow. See the Seats Guide and Ancillary Guide for support details. Only one paid seat per workbench session can be canceled. To cancel multiple seats, send one cancel request, commit the workbench, and start a new workbench to cancel the next seat. For paid bags, you can send multiple cancel requests in a post-commit workbench session. You cannot cancel ancillaries or seats from a ticketed itinerary.
If true, the Offer will be cancelled when the user commits workbench. Refund Quote will not be returned when this indicator is set to true.
- Mock serverhttps://developer.travelport.com/_mock/apis/flights/air/book/airoffer/reservationworkbench/{ReservationResource_Identifier}/offers/canceloffer
- https://api.pp.travelport.net/11https://api.pp.travelport.net/11/air/book/airoffer/reservationworkbench/{ReservationResource_Identifier}/offers/canceloffer
- https://api.travelport.net/11https://api.travelport.net/11/air/book/airoffer/reservationworkbench/{ReservationResource_Identifier}/offers/canceloffer
- Refund quote
- Cancel seat or bag
curl -i -X POST \
https://developer.travelport.com/_mock/apis/flights/air/book/airoffer/reservationworkbench/49f58f5f-c443-43b4-9f5d-be405fd00a01/offers/canceloffer \
-H 'Authorization: Bearer <YOUR_JWT_HERE>' \
-H 'Content-Type: application/json' \
-H 'TVP-PCC-Core: DU7_1G' \
-H 'TraceId: TraceID_123456789' \
-H 'XAUTH_TRAVELPORT_ACCESSGROUP: 19Y88702-C27A-4E5D-829A-89D7016688B1' \
-H 'travelportPlusSessionIdentifier: 49f58f5f-c443-43b4-9f5d-be405fd00a01' \
-d '{
"@type": "OfferQueryCancelOffer",
"BuildFromOffer": {
"@type": "BuildFromOfferAir",
"OfferIdentifier": {
"Identifier": {
"value": "fbf50c96-b7th-58e2-80a7-c4c965e36e8a"
}
}
}
}'OK - Successful Response - 200
{ "OfferListResponse": { "OfferID": [ { … } ], "@type": "response", "transactionId": "49f58f5f-c443-43b4-9f5d-be405fd00a01", "traceId": "TraceID_123456", "correlationId": "48fb4cd3-2ef6-4479-bea1-7c92721b988c", "reservationStatus": "Success", "Result": { "@type": "Result", "status": "Complete", "Error": [ … ], "Warning": [ … ] }, "Identifier": { "value": "A0656EFF-FAF4-456F-B061-0161008D7C4E", "authority": "TVPT" }, "NextSteps": { "baseURI": "string", "id": "5", "NextStep": [ … ] }, "ReferenceList": [ { … } ], "CurrencyRateConversion": [ { … } ], "Pagination": { "@type": "Pagination", "page": 1, "pageSize": 20, "totalPages": 5, "totalItems": 100 } } }