Skip to content

NDC Refund Quote and Seat/Ancillary Cancel

Request

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.

Security
bearerAuth
Path
ReservationResource_Identifierstring, <= 128 charactersrequired

The Reservation Identifier

Example:49f58f5f-c443-43b4-9f5d-be405fd00a01
Headers
TraceIdstring, [ 10 .. 89 ] characters

Identifier used to correlate Air API invocations across a multi-call business flows.

Example:TraceID_123456789
XAUTH_TRAVELPORT_ACCESSGROUPstring, = 36 characters([a-zA-Z-0-9-_]*)

Identifies the Travelport access group with which the caller is associated

Example:19Y88702-C27A-4E5D-829A-89D7016688B1
travelportPlusSessionIdentifierstring, [ 0 .. 100 ] characters([a-zA-Z-0-9-_]*)

travelportPlusSessionIdentifier used to maintain an established agency session

Example:49f58f5f-c443-43b4-9f5d-be405fd00a01
TVP-PCC-Corestring^[a-zA-Z\d]{3,4}_\w{2}$

Allows user to pass PCC instead of Access Group ID

Example:DU7_1G
Bodyapplication/json
@typestringrequired
Example:"OfferQueryCancelOffer"
BuildFromOfferobject(BuildFromOffer)required
TravelerIdentifierArray of objects, <= 8 items(TravelerIdentifierRef)
cancelAtCommitWorkbenchIndboolean

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.

Example:true
divideReservationByTravelerIndboolean

If true, this refund quote request will result in the original reservation being divided and cancelled for the specified traveler. When true, TravelerRef is mandatory in the request payload.

Example:true
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"
        }
      }
    }
  }'

Responses

OK - Successful Response - 200

Bodyapplication/json
OfferListResponseobject(OfferListResponse)

The response of an Offer list endpoint request, such as AirPrice and Add Offer calls.
Defines one or more air offers returned including the offer identifiers and related response data needed for subsequent booking steps.

Response
{ "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 } } }