On This Page
Airline Processing
This section describes how to use this developer guide and where to find further
information.
Audience and Purpose
This guide is written for application developers who want to use the
Cybersource
REST API
to integrate credit card processing with airline data into their
order management system.Implementing the
Cybersource
credit card services requires software development skills. You
must write code that uses the API request and reply fields to integrate the credit card
services into your existing order management system.Conventions
The following special statements are used in this document:
IMPORTANT
An
Important
statement contains information essential to
successfully completing a task or learning a concept.Customer Support
For support information about any service, visit the Support Center:
Recent Revisions to This Document
24.01
This revision contains only editorial changes and no technical updates.
23.02
This revision contains only editorial changes and no technical updates.
23.01
This revision contains only editorial changes and no technical updates.
19.02
This revision contains only editorial changes and no technical updates.
19.01
Visa Platform Connect
: added the field.18.04
Visa Platform Connect
: added the following acquirers. - Banco Safra
- BC Card Co., Ltd.
- Vietnam Technological and Commercial Joint-stock Bank
18.03
Visa Platform Connect
: made technical corrections and improvements to the XML
examples.VISA Platform Connect: Specifications and Conditions for Resellers/Partners
The following are specifications and conditions that apply to a Reseller/Partner
enabling its merchants through
Cybersource for Visa Platform Connect
(“VPC”) processing
. Failure to meet any of the specifications and
conditions below is subject to the liability provisions and indemnification
obligations under Reseller/Partner’s contract with Visa/Cybersource.- Before boarding merchants for payment processing on a VPC acquirer’s connection, Reseller/Partner and the VPC acquirer must have a contract or other legal agreement that permits Reseller/Partner to enable its merchants to process payments with the acquirer through the dedicated VPC connection and/or traditional connection with such VPC acquirer.
- Reseller/Partner is responsible for boarding and enabling its merchants in accordance with the terms of the contract or other legal agreement with the relevant VPC acquirer.
- Reseller/Partner acknowledges and agrees that all considerations and fees associated with chargebacks, interchange downgrades, settlement issues, funding delays, and other processing related activities are strictly between Reseller and the relevant VPC acquirer.
- Reseller/Partner acknowledges and agrees that the relevant VPC acquirer is responsible for payment processing issues, including but not limited to, transaction declines by network/issuer, decline rates, and interchange qualification, as may be agreed to or outlined in the contract or other legal agreement between Reseller/Partner and such VPC acquirer.
DISCLAIMER: NEITHER VISA NOR CYBERSOURCE WILL BE RESPONSIBLE OR LIABLE FOR ANY ERRORS
OR OMISSIONS BY THE VISA PLATFORM CONNECT ACQUIRER IN PROCESSING TRANSACTIONS.
NEITHER VISA NOR CYBERSOURCE WILL BE RESPONSIBLE OR LIABLE FOR RESELLER/PARTNER
BOARDING MERCHANTS OR ENABLING MERCHANT PROCESSING IN VIOLATION OF THE TERMS AND
CONDITIONS IMPOSED BY THE RELEVANT VISA PLATFORM CONNECT ACQUIRER.
Introduction to Airline Processing
Airline data processing exceeds basic payment processing by enabling you to process
specific travel data. To make use of this capability, you must submit additional
information, such as:
- Carrier (airline)
- Departure date
- Destination airport
- Purchase date
- Originating airport
- Ticket class
- Travel legs (segments)
Cybersource Airline Data Processing
Cybersource
Airline Data ProcessingCybersource
does not store airline data. Instead, it functions as a
pass-through service for the data. Cybersource
enforces only the minimal
level of field validation.When you request an airline service,
Cybersource
responds with certain
fields and values to indicate whether the airline data was processed. The response
fields for each service are:- Authorization:processingInformation.enhancedDataEnabled
- Capture:processingInformation.enhancedDataEnabled
- Credit:processingInformation.enhancedDataEnabled
The possible values for the response fields are:
- N: the airline data was not included in the request to the processor.
- Y: the airline data was included in the request to the processor.
IMPORTANT
Cybersource
temporarily disables your account's airline
data processing capability and contacts you if your airline data transactions produce
batching errors when the information is sent to the processor. If this happens, your
request is not rejected, but you receive one of the above listed fields with the
N
value in the response indicating that airline data in the request
has been ignored and not sent to the processor. Airline Travel Legs
Some processors require travel legs in the API service request, even for direct flights.
This section describes how to successfully include travel legs in an API request.
Using Travel Legs
To include travel legs in an airline transaction, include one or more
travel legs in the
legs[]
array. For example, these three travel legs are valid:
"travelInformation": { "transit": { "airline": { "legs": [ { "carrierCode": "XX" }, { "carrierCode": "XZ" }, { "carrierCode": "XX" } ] }
Travel Leg Limitations
Some processors limit the number of travel legs for each trip based on the card type.
Visa Platform Connect Airline Processing
Visa Platform Connect
Airline ProcessingThis section describes how to process airline payments using
Visa Platform Connect
.Requirement
When you are ready to go live with airline data processing, contact
Cybersource
Customer
Support to have your account configured to process airline data. If your account is not
enabled, and you try to send airline transactions, you will receive an error for invalid
data.Related Information
- See Airline Data for information about and requirements for processing payments that include airline data.
- See Airline Data Reference Information for a list and description of the different document type and ancillary service category codes that are used when processing payments that include airline data.
Authorizations
This section describes how to process an airline authorization.
Authorization Restrictions
Ticket purchases that include multiple passengers may be included in a single authorization
request, but you must make separate capture requests for every passenger.
If any ancillary purchases are made at the same time as the ticket purchase, you may
include all items in a single authorization request, but you must separate the ancillary
and ticket purchases into their own capture requests.
If any ancillary purchases are made not at the same time as the ticket purchase, you
must send separate authorization and capture requests for the ancillary and ticket
purchases.
Endpoint
Production:
POST
https://api.cybersource.com
/pts/v2/paymentsTest:
POST
https://apitest.cybersource.com
/pts/v2/paymentsRequired Fields for Authorizing an Airline Payment
Include these required fields for authorizing an airline payment.
IMPORTANT
When relaxed requirements for address data and the expiration date are being used, not all fields
in this list are required. It is your responsibility to determine whether your
account is enabled to use this feature and which fields are required. For details
about relaxed requirements, see Relaxed Requirements for Address Data and Expiration Date in Payment Transactions.
- Set toairline.
REST Example: Authorizing an Airline Payment
Use this example as a reference for authorizing an airline payment.
Request
{ "processingInformation": { "industryDataType": "airline" }, "paymentInformation": { "card": { "number": "4111111111111111", "expirationMonth": "12", "expirationYear": "2031" } }, "orderInformation": { "amountDetails": { "totalAmount": "500.00", "currency": "usd" }, "billTo": { "firstName": "John", "lastName": "Doe", "address1": "123 Happy St.", "locality": "Sunny Town", "administrativeArea": "CA", "postalCode": "12345-1234", "country": "US", "email": "test@cybs.com" } } }
Response to a Successful Request
{ "_links": { "authReversal": { "method": "POST", "href": "/pts/v2/payments/6823009451126309503954/reversals" }, "self": { "method": "GET", "href": "/pts/v2/payments/6823009451126309503954" }, "capture": { "method": "POST", "href": "/pts/v2/payments/6823009451126309503954/captures" } }, "clientReferenceInformation": { "code": "1682300945230" }, "id": "6823009451126309503954", "orderInformation": { "amountDetails": { "authorizedAmount": "500.00", "currency": "usd" } }, "paymentAccountInformation": { "card": { "type": "001" } }, "paymentInformation": { "tokenizedCard": { "type": "001" }, "card": { "type": "001" } }, "pointOfSaleInformation": { "terminalId": "111111" }, "processorInformation": { "approvalCode": "888888", "networkTransactionId": "123456789619999", "transactionId": "123456789619999", "responseCode": "100", "avs": { "code": "X", "codeRaw": "I1" } }, "reconciliationId": "67720603YGMSE5JE", "status": "AUTHORIZED", "submitTimeUtc": "2023-04-24T01:49:05Z" }
Captures for Ticket Purchases
This section describes how to capture an airline payment for ticket purchases.
Captures for ticket purchases must be made separately from captures for ancillary
purchases. For more information about how to capture an ancillary purchase, see Captures for Ancillary Purchases.
Travel Legs
You can use travel leg fields for trips that have multiple legs. For more information
on how to use travel leg fields, see Airline Data.
Leg Limitations
Visa Platform Connect
limits the maximum number of legs for each trip based on card
type. This table describes the maximum number of legs for each trip based on card type.Supported Card Types | Maximum Number of Trip Legs |
---|---|
American Express | 4 |
Discover | 4 |
Mastercard | 4 |
Visa | 4 |
Endpoint
Production:
POST
https://api.cybersource.com
/pts/v2/payments/{id}/capturesTest:
POST
https://apitest.cybersource.com
/pts/v2/payments/{id}/capturesThe
{id}
is the transaction
ID returned in the authorization response.Required Fields for Capturing an Airline Payment
Include these required fields to capture an airline payment for ticket
purchases.
Card-Specific Field to Capture an Airline Payment
This section includes card-specific information.
Mastercard
Use this card-specific field in addition to the required fields when capturing an
authorization with a Mastercard.
- travelInformation.transit.airline.ticketIssuer.code
Optional Fields for Capturing an Airline Payment
You can use these optional fields to include additional information when capturing an
airline payment.
Related Information
REST Example: Capturing an Airline Payment
Use this example as a reference for capturing an airline payment.
Request
{ "clientReferenceInformation": { "code": "TC50171_3" }, "processingInformation": { "industryDataType": "airline" }, "orderInformation": { "amountDetails": { "totalAmount": "500.00", "currency": "USD" } } }
Response to a Successful Request
{ "_links": { "void": { "method": "POST", "href": "/pts/v2/captures/6823025890736075903954/voids" }, "self": { "method": "GET", "href": "/pts/v2/captures/6823025890736075903954" } }, "clientReferenceInformation": { "code": "TC50171_3" }, "id": "6823025890736075903954", "orderInformation": { "amountDetails": { "totalAmount": "500.00", "currency": "USD" } }, "reconciliationId": "67720603YGMSE5JE", "status": "PENDING", "submitTimeUtc": "2023-04-24T02:16:29Z" }
Captures for Ancillary Purchases
This section describes how to capture an airline payment for ancillary
purchases.
Ancillary purchases are any additional services, such as baggage, meals, and paid seats,
that your customers can purchase. Captures for ancillary purchases must be made
separately from captures for ticket purchases.
Endpoint
Production:
POST
https://api.cybersource.com
/pts/v2/payments/{id}/capturesTest:
POST
https://apitest.cybersource.com
/pts/v2/payments/{id}/capturesThe
{id}
is the transaction
ID returned in the authorization response.Required Fields for Capturing an Authorization for Ancillary Purchases
Include these required fields to capture an airline payment for ancillary
purchases.
Related Information
Ancillary Fields for Capturing an Authorization for an Ancillary Purchase
Choose from these optional ancillary fields to add additional information when
capturing an ancillary purchase.
REST Example: Capturing an Authorization for an Ancillary Purchase
Use this example as a reference for capturing an ancillary purchase with the
ancillary fields.
Request
{ "clientReferenceInformation": { "code": "TC50171_3" }, "processingInformation": { "industryDataType": "airline" }, "orderInformation": { "amountDetails": { "totalAmount": "500.00", "currency": "USD" } }, "travelInformation": { "transit": { "airline": { "ancillaryInformation": { "ticketNumber": "123456789123456", "passengerName": "John Doe", "connectedTicketNumber": "654321987654321" } } } } }
Response to a Successful Request
{ "_links": { "void": { "method": "POST", "href": "/pts/v2/captures/6823030661646093703954/voids" }, "self": { "method": "GET", "href": "/pts/v2/captures/6823030661646093703954" } }, "clientReferenceInformation": { "code": "TC50171_3" }, "id": "6823030661646093703954", "orderInformation": { "amountDetails": { "totalAmount": "500.00", "currency": "USD" } }, "reconciliationId": "67221841NGMV8WOT", "status": "PENDING", "submitTimeUtc": "2023-04-24T02:24:26Z" }
Refunds
Refunds
This topic describes how to process an airline refund.
This service returns the funds used in the initial capture and requires the original
capture ID.
Endpoint
Production:
POST
https://api.cybersource.com
/pts/v2/payments/{id}
/refundsTest:
POST
https://apitest.cybersource.com
/pts/v2/payments/{id}
/refundsThe is the transaction ID
returned in the capture or sale response.
{id}
Required Fields for Processing an Airline Refund
Refund
Include these required fields to process an airline refund.
Related Information
Optional Fields for Processing an Airline Refund
Refund
This section includes these types of optional fields for an airline
refund
:General Optional Fields
You can use these optional fields to include additional information in any airline
purchase.
- travelInformation.agency.code
- travelInformation.agency.name
- travelInformation.transit.airline.arrivalDate
- travelInformation.transit.airline.carrierName
- travelInformation.transit.airline.clearingCount
- travelInformation.transit.airline.clearingSequence
- travelInformation.transit.airline.creditReasonIndicator
- travelInformation.transit.airline.customerCode
- travelInformation.transit.airline.documentType
- For a list of possible values, see Airline Document Type Codes.
- travelInformation.transit.airline.electronicTicketIndicator
- travelInformation.transit.airline.exchangeTicketFeeAmount
- travelInformation.transit.airline.numberOfPassengers
- travelInformation.transit.airline.passengerName
- travelInformation.transit.airline.planNumber
- travelInformation.transit.airline.purchaseType
- travelInformation.transit.airline.reservationSystemCode
- travelInformation.transit.airline.restrictedTicketDesciption
- travelInformation.transit.airline.restrictedTicketIndicator
- travelInformation.transit.airline.ticketChangeIndicator
- travelInformation.transit.airline.ticketIssueDate
- travelInformation.transit.airline.ticketIssuer.locality
- travelInformation.transit.airline.ticketNumber
- travelInformation.transit.airline.totalClearingAmount
- travelInformation.transit.airline.totalFeeAmount
- travelInformation.transit[].exchangeTicketAmount
Airline Optional Fields for Ticket Purchases
You can use these optional fields to include additional information when requesting
an airline
credit
for a ticket purchase.- travelInformation.transit.airline.legs[].arrivalTime
- travelInformation.transit.airline.legs[].arrivalTimeMeridian
- travelInformation.transit.airline.legs[].carrierCode
- travelInformation.transit.airline.legs[].class
- travelInformation.transit.airline.legs[].conjunctionTicket
- travelInformation.transit.airline.legs[].couponNumber
- travelInformation.transit.airline.legs[].departureDate
- travelInformation.transit.airline.legs[].departureTime
- travelInformation.transit.airline.legs[].departureTimeMeridian
- travelInformation.transit.airline.legs[].destinationAirportCode
- travelInformation.transit.airline.legs[].endorsementsRestrictions
- travelInformation.transit.airline.legs[].exchangeTicketNumber
- travelInformation.transit.airline.legs[].fareBasis
- travelInformation.transit.airline.legs[].feeAmount
- travelInformation.transit.airline.legs[].flightNumber
- travelInformation.transit.airline.legs[].originatingAirportCode
- travelInformation.transit.airline.legs[].stopoverIndicator
- travelInformation.transit.airline.legs[].taxAmount
- travelInformation.transit.airline.legs[].totalFareAmount
Ancillary Optional Fields
You can use these optional fields to include additional information when requesting
an airline
credit
for an ancillary purchase.- travelInformation.transit.airline.ancillaryInformation.connectedTicketNumber
- travelInformation.transit.airline.ancillaryInformation.creditReasonIndicator
- travelInformation.transit.airline.ancillaryInformation.passengerName
- travelInformation.transit.airline.ancillaryInformation.service[].categoryCode
- For a list of possible values, see Ancillary Service Category Codes.
- travelInformation.transit.airline.ancillaryInformation.service[].subCategoryCode
- travelInformation.transit.airline.ancillaryInformation.ticketNumber
Related Information
REST Example: Processing an Airline Refund
Use this example as a reference for processing an airline refund.
Request
{ "clientReferenceInformation": { "code": "TC50171_3" }, "processingInformation": { "industryDataType": "airline" }, "orderInformation": { "amountDetails": { "totalAmount": "500", "currency": "USD" } } }
Response to a Successful Request
{ "_links": { "void": { "method": "POST", "href": "/pts/v2/refunds/6823038625416445403955/voids" }, "self": { "method": "GET", "href": "/pts/v2/refunds/6823038625416445403955" } }, "clientReferenceInformation": { "code": "TC50171_3" }, "id": "6823038625416445403955", "orderInformation": { "amountDetails": { "currency": "USD" } }, "processorInformation": { "approvalCode": "888888", "responseCode": "100" }, "reconciliationId": "67722608EGMV6Q7V", "refundAmountDetails": { "currency": "USD", "refundAmount": "500.00" }, "status": "PENDING", "submitTimeUtc": "2023-04-24T02:37:42Z" }
Credits
Credits
This topic describes how to process an airline credit.
This service distributes funds without requiring a capture ID.
IMPORTANT
All fields used in the original transaction must be included in your
request.
Endpoint
Production:
POST
https://api.cybersource.com
/pts/v2/credits/Test:
POST
https://apitest.cybersource.com
/pts/v2/credits/Required Fields for Processing an Airline Credit
Credit
Include these required fields to process an airline credit.
IMPORTANT
When relaxed requirements for address data and the expiration date are being used, not all fields
in this list are required. It is your responsibility to determine whether your
account is enabled to use this feature and which fields are required. For details
about relaxed requirements, see Relaxed Requirements for Address Data and Expiration Date in Payment Transactions.
- Set toairline.
Optional Fields for Processing an Airline Credit
Credit
This section includes these types of optional fields for an airline
credit
:General Optional Fields
You can use these optional fields to include additional information in any airline
purchase.
- travelInformation.agency.code
- travelInformation.agency.name
- travelInformation.transit.airline.arrivalDate
- travelInformation.transit.airline.carrierName
- travelInformation.transit.airline.clearingCount
- travelInformation.transit.airline.clearingSequence
- travelInformation.transit.airline.creditReasonIndicator
- travelInformation.transit.airline.customerCode
- travelInformation.transit.airline.documentType
- For a list of possible values, see Airline Document Type Codes.
- travelInformation.transit.airline.electronicTicketIndicator
- travelInformation.transit.airline.exchangeTicketFeeAmount
- travelInformation.transit.airline.numberOfPassengers
- travelInformation.transit.airline.passengerName
- travelInformation.transit.airline.planNumber
- travelInformation.transit.airline.purchaseType
- travelInformation.transit.airline.reservationSystemCode
- travelInformation.transit.airline.restrictedTicketDesciption
- travelInformation.transit.airline.restrictedTicketIndicator
- travelInformation.transit.airline.ticketChangeIndicator
- travelInformation.transit.airline.ticketIssueDate
- travelInformation.transit.airline.ticketIssuer.locality
- travelInformation.transit.airline.ticketNumber
- travelInformation.transit.airline.totalClearingAmount
- travelInformation.transit.airline.totalFeeAmount
- travelInformation.transit[].exchangeTicketAmount
Airline Optional Fields for Ticket Purchases
You can use these optional fields to include additional information when requesting
an airline
credit
for a ticket purchase.- travelInformation.transit.airline.legs[].arrivalTime
- travelInformation.transit.airline.legs[].arrivalTimeMeridian
- travelInformation.transit.airline.legs[].carrierCode
- travelInformation.transit.airline.legs[].class
- travelInformation.transit.airline.legs[].conjunctionTicket
- travelInformation.transit.airline.legs[].couponNumber
- travelInformation.transit.airline.legs[].departureDate
- travelInformation.transit.airline.legs[].departureTime
- travelInformation.transit.airline.legs[].departureTimeMeridian
- travelInformation.transit.airline.legs[].destinationAirportCode
- travelInformation.transit.airline.legs[].endorsementsRestrictions
- travelInformation.transit.airline.legs[].exchangeTicketNumber
- travelInformation.transit.airline.legs[].fareBasis
- travelInformation.transit.airline.legs[].feeAmount
- travelInformation.transit.airline.legs[].flightNumber
- travelInformation.transit.airline.legs[].originatingAirportCode
- travelInformation.transit.airline.legs[].stopoverIndicator
- travelInformation.transit.airline.legs[].taxAmount
- travelInformation.transit.airline.legs[].totalFareAmount
Ancillary Optional Fields
You can use these optional fields to include additional information when requesting
an airline
credit
for an ancillary purchase.- travelInformation.transit.airline.ancillaryInformation.connectedTicketNumber
- travelInformation.transit.airline.ancillaryInformation.creditReasonIndicator
- travelInformation.transit.airline.ancillaryInformation.passengerName
- travelInformation.transit.airline.ancillaryInformation.service[].categoryCode
- For a list of possible values, see Ancillary Service Category Codes.
- travelInformation.transit.airline.ancillaryInformation.service[].subCategoryCode
- travelInformation.transit.airline.ancillaryInformation.ticketNumber
REST Example: Processing an Airline Credit
Use this example as a reference for crediting an airline payment.
Request
{ "paymentInformation": { "card": { "number": "4111111111111111", "expirationMonth": "12", "expirationYear": "31" } }, "orderInformation": { "amountDetails": { "totalAmount": "500.00", "currency": "USD" }, "billTo": { "firstName": "John", "lastName": "Doe", "address1": "123 Happy St.", "locality": "Sunnyville", "administrativeArea": "CA", "postalCode": "12345", "country": "US", "email": "johndoe@test.com" } } }
Response to a Successful Request
{ "_links": { "void": { "method": "POST", "href": "/pts/v2/credits/6823065885666134104951/voids" }, "self": { "method": "GET", "href": "/pts/v2/credits/6823065885666134104951" } }, "clientReferenceInformation": { "code": "1682306588644" }, "creditAmountDetails": { "currency": "USD", "creditAmount": "500.00" }, "id": "6823065885666134104951", "orderInformation": { "amountDetails": { "currency": "USD" } }, "paymentAccountInformation": { "card": { "type": "001" } }, "paymentInformation": { "tokenizedCard": { "type": "001" }, "card": { "type": "001" } }, "processorInformation": { "approvalCode": "888888", "responseCode": "100" }, "reconciliationId": "74259417PGM9TXHT", "status": "PENDING", "submitTimeUtc": "2023-04-24T03:23:08Z" }
Airline Data Reference Information
This section contains reference information that is useful when using Airline Data.
Airline Document Type Codes
To indicate the purpose of a purchase, set the
travelInformation.transit.airline.documentType
field to a value listed in the Code column.Code | Description |
---|---|
01 | Passenger ticket |
02 | Additional collection |
03 | Excess baggage |
04 | Miscellaneous charge order (MCO) or
prepaid ticket authorization |
05 | Special service ticket |
06 | Supported refund |
07 | Unsupported refund |
08 | Lost ticket application |
09 | Tour order voucher |
10 | Ticket by mail |
11 | Undercharge adjustment |
12 | Group ticket |
13 | Exchange adjustment |
14 | SPD or air freight |
15 | In-flight adjustment |
16 | Agency passenger ticket |
17 | Agency tour order or voucher |
18 | Agency miscellaneous charge order
(MCO) |
19 | Agency exchange order |
20 | Agency group ticket |
21 | Debit adjustment for duplicate
refund or use |
22 | In-flight merchandise order |
23 | Catalogue merchandise order |
24 | In-flight phone charges |
25 | Frequent flyer fee or
purchase |
26 | Kennel charge |
27 | Animal transportation charge |
28 | Firearms case |
29 | Upgrade charge |
30 | Credit for unused
transportation |
31 | Credit for class of service
adjustment |
32 | Credit for denied boarding |
33 | Credit for miscellaneous
refund |
34 | Credit for lost ticket
refund |
35 | Credit for exchange refund |
36 | Credit for overcharge
adjustment |
37 | Credit for multiple Unused
tickets |
38 | Exchange order |
39 | Self-service ticket |
41 | In-flight duty-free purchase |
42 | Senior citizen discount
booklets |
43 | Club membership fee |
44 | Coupon book |
45 | In-flight charges |
46 | Tour deposit |
47 | Frequent flyer overnight delivery
charge |
48 | Frequent flyer fulfillment |
49 | Small package delivery |
50 | Vendor sale |
51 | Miscellaneous taxes or fees |
52 | Travel agency fee |
60 | Vendor refund or credit |
64 | Duty free sale |
65 | Preferred seat upgrade |
66 | Cabin upgrade |
67 | Lounge or club access or day
pass |
68 | Agent assisted reservation or
ticketing fee |
69 | Ticket change or cancel fee |
70 | Trip insurance |
71 | Unaccompanied minor |
72 | Standby fee |
73 | Curbside baggage |
74 | In-flight medical equipment |
75 | Ticket or pass print fee |
76 | Checked sporting or special
equipment |
77 | Dry ice fee |
78 | Mail or postage fee |
79 | Club membership fee or temporary
trial |
80 | Frequent flyer activation or
reinstatement |
81 | Gift certificate |
82 | Onboard or in-flight prepaid
voucher |
83 | Optional services fee |
84 | Advance purchase for excess
baggage |
85 | Advance purchase for preferred seat
upgrade |
86 | Advance purchase for cabin
upgrade |
87 | Advance purchase for optional
services |
88 | Wi-Fi |
89 | Packages |
90 | In-flight entertainment or internet
access |
91 | Overweight bag fee |
92 | Sleep sets |
93 | Special purchase fee |
Ancillary Service Category Codes
To indicate the service provided in an ancillary purchase, set the
travelInformation.transit.airline.ancillaryInformation.service[].categoryCode
and travelInformation.transit.airline.ancillaryInformation.service[].subCategoryCode
fields to a value listed in the Ancillary Service Category Code column.Ancillary Service Category
Codes | Description |
---|---|
BF | Bundled service |
BG | Baggage fee |
CF | Change fee |
CG | Cargo |
CO | Carbon offset |
FF | Frequent flyer |
GF | Gift card |
GT | Ground transport |
IE | In-flight entertainment |
LG | Lounge |
MD | Medical |
ML | Meal or beverage |
OT | Other |
PA | Passenger assist fee |
PT | Pets |
SA | Seat fees |
SB | Standby |
SF | Service fee |
ST | Store |
TS | Travel service |
UN | Unaccompanied travel |
UP | Upgrades |
WI | Wi-Fi |
Airline Data
Airline data processing goes beyond basic payment transactions by allowing you to process
specific travel data. This requires you to submit additional information, such as:
- Carrier
- Departure Date
- Destination Airport
- Purchase Date
- Originating Airport
- Ticket Class
- Trip Legs
Supported Card Types
- American Express
- Discover
- Mastercard
- Visa
Supported Acquirers
These
Visa Platform Connect
acquirers are supported for airline data
processing:- Agricultural Bank of China (ABC)
- Ahli United Bank in Bahrain
- Arab African International Bank (AAIB)
- Asia Commercial Bank (ACB)
- Auckland Savings Bank (ASB)
- Axis Bank Ltd. of India
- Bangkok Bank Ltd.
- Bank Muscat of Oman
- Bank of Ayudhya (BAY)
- Bank of China (BOC)
- Bank of Communications
- Bank Sinarmas (Omise Ltd.)
- Banque Pour Le Commerce Exterieur Lao (BCEL)
- Barclays Bank Mauritius Ltd.
- Barclays Bank Botswana
- Barclays Bank of Ghana Ltd., Barclays Bank of Tanzania Ltd., and Barclays Bank of Uganda Ltd.
- Barclays Bank of Kenya
- Barclays Bank of Zambia
- Barclays Bank Seychelles
- BC Card Co., Ltd.
- BLOM Bank
- Cathay United Bank (CUB)
- Citibank Hongkong and Macau
- Citibank Singapore Ltd.
- Commercial Bank of Qatar
- CrediMax (Bahrain)
- CTBC Bank Ltd.
- FirstRand Bank
- Global Payments Asia Pacific
- Habib Bank Ltd. (HBL)
- HDFC Bank Ltd. of India
- I&M Bank
- ICICI of India
- Korea Exchange Bank (KEB)
- Mashreq
- National Bank of Abu Dhabi (NBAD)
- National Bank of Kuwait (NBK)
- National Commercial Bank
- Network International
- Overseas Chinese Banking Corp (OCBC)
- Promerica in Honduras and Nicaragua
- Qatar National Bank (QNB Group)
- Raiffeisenbank
- Rosbank
- Taishin Bank Ltd.
- United Overseas Bank (UOB) in Singapore and Vietnam
- United Overseas Bank (UOB) in Thailand
- Vietcombank
- VTB24
- Wing Lung Bank
Requirement
When you are ready to go live with airline data processing, contact
Cybersource
Customer
Support to have your account configured to process airline data. If your account is not
enabled, and you try to send airline transactions, you will receive an error for invalid
data.Related Information
- See Airline Data Processing for information that shows you how to process payments that include airline data.
Airline Data Processing
This section describes how to process airline payments.
Requirement
When you are ready to go live with airline data processing, contact
Cybersource
Customer
Support to have your account configured to process airline data. If your account is not
enabled, and you try to send airline transactions, you will receive an error for invalid
data.Related Information
- See Airline Data for information about and requirements for processing payments that include airline data.
- See Airline Data Reference Information for a list and description of the different document type and ancillary service category codes that are used when processing payments that include airline data.
Relaxed Requirements for Address Data and Expiration Date in Payment Transactions
With relaxed requirements for address data and the expiration date, not all standard payment request fields are required. It is your responsibility to determine whether your account is enabled to use this feature and which fields are required.