Add Form of Payment API Reference
POST |
payment/reservationworkbench/{workbenchID}/formofpayment For {workbenchID} send the workbench identifier returned in ReservationResponse/Identifer/value in the workbench create response. Base path: Pre-production https://api.pp.travelport.com/11/air/ Production https://api.travelport.com/11/air/ |
Related Content: Booking Guide, Ticketing Guide, Create New Workbench, Create Post-commit Workbench
You can send an Add Form of Payment (FOP) request in either a booking or ticketing workbench session. Cash and credit card are supported FOPs for both GDS and NDC; agent invoice and non-standard credit card FOPs are supported for GDS only.
If FOP is not sent during booking it is required during ticketing.
Add Multiple Forms of Payment (GDS only)
For GDS only, you can send up to two FOP in either the booking or ticketing workflow by repeating the Add Form of Payment step for each FOP. Note that at ticketing you must send a separate Add Payment request for each FOP. Multiple FOP are currently supported only for bookings with a single passenger. The additional FOP can be credit card, non-standard credit card, or cash.
Unused Ticket as Form of Payment (NDC only)
For NDC only, the JSON APIs support using an unused ticket as form of payment (FOP) to pay for a ticket. See the Ticket as FOP API Reference. You need to send FOP and payment only if the cost of the new booking exceeds the available value on the unused ticket.
Request
Also see Authorization and Common Headers.
Query Parameters
None.
Request Body
Object |
Description |
Required/Optional |
---|---|---|
FormOfPaymentPaymentCard |
Top-level for request. Includes FormOfPaymentRef, Identifier, and Payment Card objects. |
Required |
|
Boolean. Used to indicate whether a card is standard.
|
Optional |
|
String. Send a custom identifier for this FOP. Supports up to 256 alphanumeric characters. |
Required |
FormOfPaymentRef |
String. Send a custom identifier for this FOP. Supports up to 256 alphanumeric characters. Must be the same value sent in FormOfPaymentPaymentCard @id in the row above.
|
Required |
Identifier |
Identifier details. Key value pairs:
|
Required |
PaymentCard |
Credit card details. Includes the CardType, CardCode, CardHolderName, CardNumber, SeriesCode, and Address objects. |
Required |
|
String. Send a custom identifier for this payment card. Supports up to 256 alphanumeric characters. |
Required |
|
Expiration date of the card in MMYY format. |
Required |
CardType |
Type of card. This value must be 'Credit'. |
Required |
CardCode |
Code for the credit card type. |
Required |
CardHolderName |
Text string for the cardholder name. Key value pair:
|
Required |
CardNumber |
Top level object for the credit card number. Send with @type CardNumber. Includes PlainText. |
Required |
PlainText |
The credit card number. | Required |
SeriesCode |
Top level object for the CVV code. |
Required |
PlainText |
The credit card three-digit CVV code. |
Required |
Address |
Billing address details. Includes Number, Street, AddressLine, City, StateProv, Country, and PostalCode objects. |
Optional |
Number |
Top level object for street number of billing address. |
Optional |
|
Street number value. |
Optional |
Street |
Top level object for street name of billing address. |
Optional |
|
Street name value. |
Optional |
AddressLine |
Extra address line. |
Optional |
City |
The city of the billing address. |
Optional |
StateProv |
Top level object. |
Optional |
|
State or province of billing address. |
Optional |
Country |
Country of billing address. |
Optional |
PostalCode |
Postal code of billing address. |
Optional |
Object |
Description |
Required/Optional |
---|---|---|
FormOfPaymentCash |
Top level object. |
Required |
|
String. Send a custom identifier for this form of payment. Supports up to 256 alphanumeric characters. |
Required |
FormOfPaymentRef |
String. Send a custom identifier for this form of payment. Supports up to 256 alphanumeric characters. Must be the same value sent in FormOfPaymentCash/id above.
|
Required |
|
Value of true indicates agent is using its own FOP; value of false does not need to be sent and is ignored if sent. |
Required |
Identifier |
Top level object. |
Required |
|
For GDS content this value is Travelport. For NDC content this value is the issuing carrier's name. |
Required |
|
This is a placeholder value that has no use at this time. Any text can be sent. |
Required |
Object |
Description |
Required/Optional |
---|---|---|
FormOfPaymentInvoice |
Top level object. |
Required |
|
String. Send a custom identifier for this form of payment. Supports up to 256 alphanumeric characters. |
Required |
FormOfPaymentRef |
String. Send a custom identifier for thisform of payment. Supports up to 256 alphanumeric characters. |
Required |
|
Value of true indicates agent is using its own FOP; value of false does not need to be sent and is ignored if sent. |
Required |
Identifier |
Top level object. |
Required |
|
For GDS content this value is Travelport. For NDC content this value is the issuing carrier's name. |
Required |
|
This is a placeholder value that has no use at this time. Any text can be sent. |
Required |
InvoiceNumber |
Agent invoice number. |
Required |
Response
Object |
Description |
---|---|
FormofPaymentResponse |
Top level object for response. |
Identifier |
Returns confirmation. For GDS content authority is Travelport; for NDC content authority is the issuing carrier's name. identifier. The identifier in value has no subsequent use at this time. Key value pairs:
|
Example Request
The request payload below for an NDC itinerary sends a standard credit card, which is the only FOP supported in the JSON APIs for NDC. Note that for NDC you must send the CVV code in SeriesCode.
{
"FormOfPaymentPaymentCard": {
"id": "formOfPayment_5",
"FormOfPaymentRef": "formOfPayment_5",
"Identifier": {
"authority": "Travelport",
"value": "A0656EFF-FAF4-456F-B061-0161008D6FOP"
},
"PaymentCard": {
"@type": "PaymentCardDetail",
"id": "paymentCard_4",
"expireDate": "0139",
"CardType": "Credit",
"CardCode": "VI",
"CardHolderName": "JANE DOE",
"approvalCode": "123456",
"CardNumber": {
"@type": "CardNumber",
"PlainText": "4987654321098769"
},
"SeriesCode": {
"PlainText": "123"
}
}
}
}
The example request payload below sends a cash FOP. GDS only; not supported for NDC.
{
"FormOfPaymentCash": {
"id": "formOfPayment_5",
"FormOfPaymentRef": "formOfPayment_5",
"Identifier": {
"authority": "Travelport",
"value": "A0656EFF-FAF4-456F-B061-0161008D6FOP"
}
}
}
The example request payload below sends an agent invoice as FOP. GDS only; not supported for NDC.
{
"FormOfPaymentInvoice": {
"id": "1",
"FormOfPaymentRef": "1",
"Identifier": {
"value": "A0656EFF-FAF4-456F-B061-0161008D6FOP",
"authority": "Travelport"
},
"InvoiceNumber": "34324343"
}
}
The example request payload below sends a non-standard credit card (inhibitPaymentCardAuthorizationInd is sent as true for a CardCode value of HD) as FOP. GDS only; not supported for NDC.
{
"FormOfPaymentPaymentCard": {
"inhibitPaymentCardAuthorizationInd": true,
"id": "formOfPayment_5",
"FormOfPaymentRef": "formOfPayment_5",
"PaymentCard": {
"@type": "PaymentCardDetail",
"id": "paymentCard_4",
"expireDate": "0522",
"approvalCode": "Z555444",
"CardType": "Credit",
"CardCode": "HD",
"CardHolderName": "JANE DOE",
"CardNumber": {
"PlainText": "9431330036187707"
}
}
}
}
Example Response
The response returns a confirmation identifier. The value returned has no subsequent use in the workflow at this time.
{
"FormOfPaymentResponse": {
"Identifier": {
"authority": "Travelport",
"value": "558f8744-3554-4382-a1ff-3461f02e436f"
}
}
}