Skip to content

Add Payment

Request

The Payment step takes place in a ticketing workbench session and applies the payment sent previously in the Form of Payment request to the offer/s specified in the Payment request payload. Payment can be sent for any type of offer, including air, seats, and ancillaries. Payment can be made for multiple offers and multiple types of offers in the same request.
Form of payment information must either already be present in the reservation or the workbench. At workbench commit, tickets or EMDs are issued for any offer payment has been sent for.
Payment is also required prior to ticketing when exchanging tickets in the case of an even exchange, or an add collect (price of new itinerary is greater than existing itinerary). In the case of an add collect, send Payment with a zero amount in Amount/value. See the Exchange, Refund, and Void Guide for details."

Security
bearerAuth
Path
ReservationResource_Identifierstring, <= 128 charactersrequired

The Reservation Identifier you wish to add the payment to

Example:49f58f5f-c443-43b4-9f5d-be405fd00a01
Headers
travelportPlusSessionIdentifierstring, [ 0 .. 100 ] characters([a-zA-Z-0-9-_]*)

travelportPlusSessionIdentifier used to maintain an established agency session

Example:49f58f5f-c443-43b4-9f5d-be405fd00a01
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
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/jsonrequired

Add Payment request payload.

@typestringrequired

Discriminator classes PaymentID or Payment

Example:"Payment"
Discriminator
idstring

Customer-assigned identifier for the payment.

PaymentRefstring

Customer-assigned name for the payment.

Identifierobject(Identifier)

A globally unique identifier key often used to reference a given option (such as Pricing, Booking, Rules, or additional workflows) or to retrieve information (such as Hotel pagination). When used for ticket Identifer
Key value pairs:

  • value: Ticket number
  • authority: Value Travelport
Amountobject(CurrencyAmount)required

A monetary amount, up to 4 decimal places. Decimal place must be included.

FormOfPaymentIdentifierobject(FormOfPaymentIdentifier)

The Travelport-assigned identifier to identify the form of payment to which a payment was charged.

OfferIdentifierArray of objects, <= 100 items(OfferIdentifier)

Used to specify the offer/s to send payment for.
If the booking contains multiple offers, send an instance of OfferIdentifier for all offers you are ready to ticket or issue an EMD for.
For example, a booking could contain multiple offers for any of the following:

  • Air and one or more ancillaries or paid seats

  • Multiple air offers

  • Air and/or hotel and car offers (as support for multi-content bookings is developed)

Feesobject(Fees)
Taxesobject(Taxes)
TravelerIdentifierRefArray of objects, <= 100 items(TravelerIdentifierRef)
BaseAmountobject(CurrencyAmount)

A monetary amount, up to 4 decimal places. Decimal place must be included.

depositIndboolean

If true, the payment is a deposit on the referenced Offer; at booking the provided card is charged for deposit or prepay rate.

ExtendedPaymentobject(ExtendedPayment)

Note this field is deprecated in Payment schema and should be passed in FormOfPaymentPaymentCardExtendPayment schema.
In the subsequent Add Payment request, send in Amount/value the total amount of the reservation, not the amount of the first installment payment.
Sends payment details to pay in installments with this credit card. Supported for general use and for the Brazilian business practice Pagos Parcelados. For Pagos Parcelados, this form of payment must be a credit card issued in Brazil.
Supported on bookings with a single passenger and a single fare quote.
Also supported for an add collect when exchanging GDS tickets.
The API does not validate whether the carrier accepts payment in installments, or if the credit card is eligible for Pagos Parcelados (credit card must be issued in Brazil). If you issue a ticket using installments that is not accepted, the airline sends a debit memo.

AgencyServiceFeeIdentifierArray of objects, <= 100 items(AgencyServiceFeeIdentifier)

Optional, only used when adding agency service fees to the booking; provides the id(s) for the agency service fees. Must be the same value returned in the Travel Agency Service Fee (TASF) API response.

MiscellaneousDocumentSegmentIdentifierArray of objects, <= 10 items(MiscellaneousDocumentSegmentIdentifier)

Optional, only used when adding payment for a Miscellaneous Document Segment. Must be the same value returned in the Miscellaneous Document Segment ID returned in the ReservationResponse.

guaranteeIndboolean

If true, the payment is a guarantee for the referenced Offer; no amounts are charged at booking; the customer is to make payment in person upon arrival.

curl -i -X POST \
  https://api.pp.travelport.net/11/air/paymentoffer/reservationworkbench/49f58f5f-c443-43b4-9f5d-be405fd00a01/payments \
  -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'

Responses

OK - Successful Response - 200

Bodyapplication/json
PaymentResponseobject(PaymentResponse)

The response of a Payment endpoint request.

Response
{ "PaymentResponse": { "Payment": { "@type": "Payment", "id": "string", "PaymentRef": "string", "Identifier": { … } }, "@type": "response", "transactionId": "49f58f5f-c443-43b4-9f5d-be405fd00a01", "traceId": "TraceID_123456", "correlationId": "49f58f5f-c443-43b4-9f5d-be405fd00a01", "reservationStatus": "Success", "Result": { "@type": "Result", "status": "Complete", "Error": [ … ], "Warning": [ … ] }, "Identifier": { "value": "A0656EFF-FAF4-456F-B061-0161008D7C4E", "authority": "TVPT" }, "NextSteps": { "baseURI": "www.travelport.com", "id": "5", "NextStep": [ … ] }, "ReferenceList": [ null ], "CurrencyRateConversion": [ { … } ], "Pagination": { "@type": "Pagination", "page": 1, "pageSize": 20, "totalPages": 5, "totalItems": 100 } } }