NDC Cancel API Reference

POST

receipt/reservations/{workbenchID}/receipts?OfferIdentifier="{OfferID}"

For {workbenchID} send the workbench identifier returned in ReservationResponse/Identifer/value in the workbench create response.

For {OfferID} send the offer identifier from Offer/Identifier/value in the Create Workbench response.

Base path:

Pre-production https://api.pp.travelport.com/11/air/

Production https://api.travelport.com/11/air/

Related Content: Exchange, Refund, and Void Guide

NDC only; not supported for GDS.

Use the Cancel API to void or cancel NDC tickets or reservations (held bookings not yet ticketed).

Create a workbench session before sending Cancel. You may need to send Refund Quote before the Cancel request. See the Exchange, Refund, and Void Guide for workflows.

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, Order Cancel returns the error message OFFER CANNOT BE CANCELED WHEN REFUND AMOUNT DOES NOT EQUAL OFFER PRICE. PERFORM A REFUND QUOTE AND TRY AGAIN.
For differences between GDS and NDC in the JSON APIs, see the support tables for seats, ancillaries, fare rules, and exchanges, and the NDC and GDS Functionality Comparison.
For differences within NDC by individual carriers, see NDC capabilities by airline through JSON API in the Travelport Knowledge Base. If you need login assistance, see Knowledge Base NDC Resources.

Request

Header Parameters

In addition to the Common Air Headers, in the Cancel API, the RetainFlag header parameter determines the type of cancellation.

Parameter

Description

Required/Optional

RetainFlag

Determines the type of cancel operation. Supported values:

false: Default. Either omit or send with value of false for all of the following scenarios:

  • Void a ticket within the void period (issues a refund if sent within the void period)

  • Cancel a ticket outside the void period (a full or partial refund is issued if the ticket is eligible for a refund per the fare rules; Cancel should be preceded with a Refund Quote request for all refunds)

  • Cancel a held booking if unticketed

true: For supporting NDC carriers only, send with true to cancel the ticket and the offer but retain the ticket value instead of issuing a refund. You can then reticket the itinerary by sending a new Form of Payment and Payment. Or, you may be able to apply the value of the ticket to another booking using the Ticket as FOP API.

For carrier support for retaining the ticket value and using the retained ticket value as FOP on another booking, see the sections Retain Tickets and Deferred Payment in NDC capabilities by airline through JSON API in the Travelport Knowledge Base.

Required

Query Parameters

Also see note above on the RetainFlag header parameter.

Parameter

Description

Required/Optional

OfferIdentifier

Send the offer identifier for the offer to cancel or void. Returned in the Create Workbench response in Offer/Identifier/value.

Required

Request Body

No message payload.

In the HTTP header parameters, set the RetainFlag parameter per above to indicate the cancel operation.

Response

The content of the response depends on the offer canceled:

  • When RetainFlag is set to false in the request:
    • For a reservation, the booking is canceled. The response does not return a ticket number because no ticket was issued.
    • For a ticket, if the ticket is inside the void period determined by the airline, the ticket is voided and any available refund credited to the original form of payment.
    • For a ticket, if the ticket is outside the void period or not eligible for a full refund, the ticket is canceled and no refund or a partial refund is issued.
  • When RetainFlag is set to true in the request, the ticket and segments are canceled but the ticket value is retained and can be applied to a subsequent booking. Supported NDC carriers only.

Example Request

No message body. Example POST request:

https://api.pp.travelport.com/11/air/receipt/reservations/reservations/1ace440f-66e9-4898-9802-3fc35b24bfd1/receipts?OfferIdentifier=QUEwMDEzRjZCOTJDNHxQb1BDQzQxOTIxMS1CQ0I3LT
Q5NEYtOUFBMy0xLTF8UG9QQ0M0MTkyMTEtQkNCNy00OTRGLTlBQTMtMS0y

Example Response

In all cancel scenarios, a successful cancellation returns at least one instance of ReceiptID@type ReceiptCancellation/Cancellation@type CancellationHold:

    "Cancellation": {
     "@type": "CancellationHold",
     "Locator": {
      "source": "SQ",
      "sourceContext": "VendorLocator",
      "value": "5EI5CB"
     }

For tickets, cancel and void requests also return an instance of ReceiptID@type ReceiptPayment in which Document@type indicates the void or refund; see the table above for possible values.

In the following example, the ticket was voided with the void period (ReceiptID@type ReceiptPayment/Document@type=DocumentTicketVoid and VoidInd=true) and the full ticket value was refunded. The response for a canceled and refunded ticket is similar.

The response for a canceled reservation is also similar but does not return an instance of ReceiptID with @type ReceiptPayment because no payment was made.