Capture a Ticket Payment

This section describes how to capture an airline ticket payment, such as when a person is purchasing a ticket on your e-commerce store.

Capture Restrictions

For a ticket purchase with multiple passengers,
Cybersource
recommends sending separate capture requests for each passenger. The original authorization may be a single request.
When ancillary purchases are made at the same time as the ticket purchase,
Cybersource
recommends sending separate capture requests for the ticket and ancillary purchases.

Airline Travel Legs

FDC Nashville Global
requires you to include travel leg fields in your requests, even for direct flights. For more information about how to format travel leg fields, see Airline Travel Legs.

Leg Limitations

FDC Nashville Global
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 processor and card type.
FDC Nashville Global
Leg Limitations
Supported Card Types
Maximum Number of Trip Legs
American Express
4
Discover
4
Mastercard
99
Visa
4

Endpoint

Set the
ccCaptureService_run
field to
true
.
Send the request to
https://ics2ws.ic3.com/commerce/1.x/transactionProcessor
.

Required Fields for Capturing a Ticket Payment

Include these required fields to capture an airline payment for tickets.
Replace the
#
character with the number
0
for the first leg and consecutive numbers for any additional legs.
Replace the
#
character with the number
0
for the first leg and consecutive numbers for any additional legs.
Replace the
#
character with the number
0
for the first leg and consecutive numbers for any additional legs.
Replace the
#
character with the number
0
for the first leg and consecutive numbers for any additional legs.
Replace the
#
character with the number
0
for the first leg and consecutive numbers for any additional legs.
airlineData_ticketNumber
Set to
true
.
ccCapture_industryDataType
Set to
airline
.
Set to the
merchant_ref_number
field value used in the corresponding authorization request.

Card-Specific Fields for Capturing a Ticket Payment

This section includes card-specific information required to capture a payment for tickets.

Discover

Include these fields in addition to the required fields when using a Discover card.
Replace the
#
character with the number
0
for the first leg and consecutive numbers for any additional legs.
Replace the
#
character with the number
0
for the first leg and consecutive numbers for any additional legs.
Set to
A
or
P
.
Replace the
#
character with the number
0
for the first leg and consecutive numbers for any additional legs.
Replace the
#
character with the number
0
for the first leg and consecutive numbers for any additional legs.
Set to
A
or
P
.
Replace the
#
character with the number
0
for the first leg and consecutive numbers for any additional legs.
Replace the
#
character with the number
0
for the first leg and consecutive numbers for any additional legs.
Replace the
#
character with the number
0
for the first leg and consecutive numbers for any additional legs.

Mastercard

Include these fields in addition to the required fields when using a Mastercard card.
Replace the
#
character with the number
0
for the first leg and consecutive numbers for any additional legs.
Replace the
#
character with the number
0
for the first leg and consecutive numbers for any additional legs.
Replace the
#
character with the number
0
for the first leg and consecutive numbers for any additional legs.

Visa

Include this field in addition to the required fields when using a Visa card.
Set to
0
for refundable.
Set to
1
for nonrefundable.

Optional Fields for an Airline Capture

Choose from these optional fields to include additional information when capturing an airline payment for direct flight tickets.
airlineData_clearingCount
airlineData_clearingSequence
Replace the
#
character with the number
0
for the first leg and consecutive numbers for any additional legs.
Replace the
#
character with the number
0
for the first leg and consecutive numbers for any additional legs.
Replace the
#
character with the number
0
for the first leg and consecutive numbers for any additional legs.
Replace the
#
character with the number
0
for the first leg and consecutive numbers for any additional legs.
Replace the
#
character with the number
0
for the first leg and consecutive numbers for any additional legs.
Set to
O
(capital letter "O") to indicate the leg of a trip is allowed to stopover. Default value.
Set to
X
to indicate the leg of a trip is not allowed to stopover.
Replace the
#
character with the number
0
for the first leg and consecutive numbers for any additional legs.
Replace the
#
character with the number
0
for the first leg and consecutive numbers for any additional legs.
airlineData_totalClearingAmount

Simple Order
Example: Capturing a Visa Airline Payment

Light Dark
Request
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
<merchantID></merchantID> <merchantReferenceCode>TLPANI6-28-1</merchantReferenceCode> <purchaseTotals> <currency>USD</currency> <taxAmount>3</taxAmount> <grandTotalAmount>50.00</grandTotalAmount> </purchaseTotals> <otherTax> <localTaxAmount>20</localTaxAmount> </otherTax> <ccCaptureService run="true"> <authRequestID>6841863354646003603681</authRequestID> <industryDatatype>airline</industryDatatype> </ccCaptureService> <airlineData> <agentName>Thomascook</agentName> <ticketNumber>asd23</ticketNumber> <passengerName>John</passengerName> <customerCode>LDTYOU789</customerCode> <totalFee>200</totalFee> <leg id="0"> <carrierCode>AA</carrierCode> <originatingAirportCode>PDX</originatingAirportCode> <class>1</class> <stopoverCode>O</stopoverCode> <departureDate>20231010</departureDate> <destination>SJ</destination> <exchangeTicket>tickeT12</exchangeTicket> <endorsementsRestrictions>Endorsement123456789</endorsementsRestrictions> <fee>999.99</fee> <tax>99</tax> </leg> <leg id="1"> <carrierCode>AA</carrierCode> <originatingAirportCode>PDX</originatingAirportCode> <class>1</class> <stopoverCode>O</stopoverCode> <departureDate>20231010</departureDate> <destination>SJ</destination> <exchangeTicket>tickeT12</exchangeTicket> <endorsementsRestrictions>Endorsement123456789</endorsementsRestrictions> <fee>999.99</fee> <tax>99</tax> </leg> <leg id="2"> <carrierCode>AA</carrierCode> <originatingAirportCode>PDX</originatingAirportCode> <class>1</class> <stopoverCode>O</stopoverCode> <departureDate>20231010</departureDate> <destination>SJ</destination> <exchangeTicket>tickeT12</exchangeTicket> <departureTime>1720</departureTime> <endorsementsRestrictions>Endorsement123456789</endorsementsRestrictions> <fee>999.99</fee> <tax>99</tax> </leg> <leg id="3"> <carrierCode>AA</carrierCode> <originatingAirportCode>PDX</originatingAirportCode> <class>1</class> <stopoverCode>O</stopoverCode> <departureDate>20231010</departureDate> <destination>SJ</destination> <exchangeTicket>tickeT12</exchangeTicket> <departureTime>1720</departureTime> <endorsementsRestrictions>Endorsement123456789</endorsementsRestrictions> <fee>999.99</fee> <tax>99</tax> </leg> <planNumber>2B</planNumber> <exchangeTicketAmount>87654</exchangeTicketAmount> <exchangeTicketFee>32345</exchangeTicketFee> </airlineData>
Response to a Successful Request
12345678910111213
<merchantReferenceCode>+d0lTRmBZOSpG6gheF3JyRat</merchantReferenceCode> <requestID>6859997862716741203010</requestID> <decision>ACCEPT</decision> <reasonCode>100</reasonCode> <purchaseTotals> <currency>USD</currency> </purchaseTotals> <ccCaptureReply> <reasonCode>100</reasonCode> <requestDateTime>2023-06-05T21:16:26Z</requestDateTime> <amount>50.00</amount> <reconciliationID>702280482IIXTJ8K</reconciliationID> </>
Request
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103
<merchantID></merchantID> <merchantReferenceCode>TLPANI6-28-1</merchantReferenceCode> <purchaseTotals> <currency>USD</currency> <taxAmount>3</taxAmount> <grandTotalAmount>50.00</grandTotalAmount> </purchaseTotals> <otherTax> <localTaxAmount>20</localTaxAmount> </otherTax> <ccCaptureService run="true"> <authRequestID>6917686812546643503007</authRequestID> <industryDatatype>airline</industryDatatype> </ccCaptureService> <airlineData> <agentCode>AGC12345</agentCode> <agentName>Thomascook</agentName> <ticketIssuerAddress>123 Happy St</ticketIssuerAddress> <ticketNumber>asd23</ticketNumber> <passengerName>John</passengerName> <customerCode>LDTYOU789</customerCode> <totalFee>200</totalFee> <leg id="0"> <carrierCode>AA</carrierCode> <flightNumber>123456789</flightNumber> <originatingAirportCode>PDX</originatingAirportCode> <class>1</class> <stopoverCode>O</stopoverCode> <departureDate>20231010</departureDate> <destination>SJ</destination> <fareBasis>AB1234</fareBasis> <exchangeTicket>tickeT12</exchangeTicket> <departureTime>1720</departureTime> <departureTimeSegment>P</departureTimeSegment> <arrivalTime>2220</arrivalTime> <arrivalTimeSegment>P</arrivalTimeSegment> <endorsementsRestrictions>Endorsement123456789</endorsementsRestrictions> <fare>100000000</fare> <fee>999.99</fee> <tax>99</tax> </leg> <leg id="1"> <carrierCode>AA</carrierCode> <flightNumber>456789123</flightNumber> <originatingAirportCode>PDX</originatingAirportCode> <class>1</class> <stopoverCode>O</stopoverCode> <departureDate>20231010</departureDate> <destination>SJ</destination> <fareBasis>AB1234</fareBasis> <exchangeTicket>tickeT12</exchangeTicket> <departureTime>1720</departureTime> <departureTimeSegment>P</departureTimeSegment> <arrivalTime>2220</arrivalTime> <arrivalTimeSegment>P</arrivalTimeSegment> <endorsementsRestrictions>Endorsement123456789</endorsementsRestrictions> <fare>100000000</fare> <fee>999.99</fee> <tax>99</tax> </leg> <leg id="2"> <carrierCode>AA</carrierCode> <flightNumber>987654321</flightNumber> <originatingAirportCode>PDX</originatingAirportCode> <class>1</class> <stopoverCode>O</stopoverCode> <departureDate>20231010</departureDate> <destination>SJ</destination> <fareBasis>AB1234</fareBasis> <exchangeTicket>tickeT12</exchangeTicket> <departureTime>1720</departureTime> <departureTimeSegment>P</departureTimeSegment> <arrivalTime>2220</arrivalTime> <arrivalTimeSegment>P</arrivalTimeSegment> <endorsementsRestrictions>Endorsement123456789</endorsementsRestrictions> <fare>100000000</fare> <fee>999.99</fee> <tax>99</tax> </leg> <leg id="3"> <carrierCode>AA</carrierCode> <originatingAirportCode>PDX</originatingAirportCode> <class>1</class> <stopoverCode>O</stopoverCode> <departureDate>20231010</departureDate> <destination>SJ</destination> <fareBasis>AB1234</fareBasis> <exchangeTicket>tickeT12</exchangeTicket> <departureTime>1720</departureTime> <departureTimeSegment>P</departureTimeSegment> <arrivalTime>2220</arrivalTime> <arrivalTimeSegment>P</arrivalTimeSegment> <endorsementsRestrictions>Endorsement123456789</endorsementsRestrictions> <fare>100000000</fare> <fee>999.99</fee> <tax>99</tax> </leg> <ticketIssueDate>20231010</ticketIssueDate> <planNumber>2B</planNumber> <arrivalDate>20230917</arrivalDate> <exchangeTicketAmount>87654</exchangeTicketAmount> <exchangeTicketFee>32345</exchangeTicketFee> </>
Response to a Successful Request
12345678910111213
<merchantReferenceCode>Postman-1691769389</> <requestID>6917693897226880503009</requestID> <decision>ACCEPT</decision> <reasonCode>100</reasonCode> <purchaseTotals> <currency>USD</currency> </purchaseTotals> <ccCaptureReply> <reasonCode>100</reasonCode> <requestDateTime>2023-08-11T15:56:29Z</requestDateTime> <amount>50.00</amount> <reconciliationID>79955177DL62B711</reconciliationID> </>
Request
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283
<merchantID></merchantID> <merchantReferenceCode>TLPANI6-28-1</merchantReferenceCode> <purchaseTotals> <currency>USD</currency> <taxAmount>3</taxAmount> <grandTotalAmount>50.00</grandTotalAmount> </purchaseTotals> <otherTax> <localTaxAmount>20</localTaxAmount> </otherTax> <ccCaptureService run="true"> <authRequestID>6917735883576902203011</authRequestID> <industryDatatype>airline</industryDatatype> </ccCaptureService> <airlineData> <agentName>Thomascook</agentName> <ticketNumber>asd23</ticketNumber> <passengerName>John</passengerName> <customerCode>LDTYOU789</customerCode> <totalFee>200</totalFee> <leg id="0"> <carrierCode>AA</carrierCode> <flightNumber>123456789</flightNumber> <originatingAirportCode>PDX</originatingAirportCode> <class>1</class> <stopoverCode>O</stopoverCode> <departureDate>20231010</departureDate> <destination>SJ</destination> <fareBasis>1</fareBasis> <exchangeTicket>tickeT12</exchangeTicket> <departureTime>1235</departureTime> <endorsementsRestrictions>Endorsement123456789</endorsementsRestrictions> <fee>999.99</fee> <tax>99</tax> </leg> <leg id="1"> <carrierCode>AA</carrierCode> <flightNumber>987654321</flightNumber> <originatingAirportCode>PDX</originatingAirportCode> <class>1</class> <stopoverCode>O</stopoverCode> <departureDate>20231010</departureDate> <destination>SJ</destination> <fareBasis>1</fareBasis> <exchangeTicket>tickeT12</exchangeTicket> <departureTime>1640</departureTime> <endorsementsRestrictions>Endorsement123456789</endorsementsRestrictions> <fee>999.99</fee> <tax>99</tax> </leg> <leg id="2"> <carrierCode>AA</carrierCode> <flightNumber>78945612</flightNumber> <originatingAirportCode>PDX</originatingAirportCode> <class>1</class> <stopoverCode>O</stopoverCode> <departureDate>20231010</departureDate> <destination>SJ</destination> <fareBasis>1</fareBasis> <exchangeTicket>tickeT12</exchangeTicket> <departureTime>2245</departureTime> <endorsementsRestrictions>Endorsement123456789</endorsementsRestrictions> <fee>999.99</fee> <tax>99</tax> </leg> <leg id="3"> <carrierCode>AA</carrierCode> <originatingAirportCode>PDX</originatingAirportCode> <class>1</class> <stopoverCode>O</stopoverCode> <departureDate>20231010</departureDate> <destination>SJ</destination> <fareBasis>1</fareBasis> <exchangeTicket>tickeT12</exchangeTicket> <departureTime>2345</departureTime> <endorsementsRestrictions>Endorsement123456789</endorsementsRestrictions> <fee>999.99</fee> <tax>99</tax> </leg> <planNumber>2B</planNumber> <exchangeTicketAmount>87654</exchangeTicketAmount> <exchangeTicketFee>32345</exchangeTicketFee> </airlineData>
Response to a Successful Request
12345678910111213
<merchantReferenceCode>Postman-1691773605</> <requestID>6917736057356909103011</requestID> <decision>ACCEPT</decision> <reasonCode>100</reasonCode> <purchaseTotals> <currency>USD</currency> </purchaseTotals> <ccCaptureReply> <reasonCode>100</reasonCode> <requestDateTime>2023-08-11T17:06:45Z</requestDateTime> <amount>50.00</amount> <reconciliationID>79959505DL62B7XL</reconciliationID> </>
Request
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
<merchantID></merchantID> <merchantReferenceCode>TLPANI6-28-1</merchantReferenceCode> <purchaseTotals> <currency>USD</currency> <taxAmount>3</taxAmount> <grandTotalAmount>50.00</grandTotalAmount> </purchaseTotals> <otherTax> <localTaxAmount>20</localTaxAmount> </otherTax> <ccCaptureService run="true"> <authRequestID>6841863354646003603681</authRequestID> <industryDatatype>airline</industryDatatype> </ccCaptureService> <airlineData> <agentName>Thomascook</agentName> <ticketNumber>asd23</ticketNumber> <restrictedTicketIndicator>1</restrictedTicketIndicator> <passengerName>John</passengerName> <customerCode>LDTYOU789</customerCode> <totalFee>200</totalFee> <leg id="0"> <carrierCode>AA</carrierCode> <originatingAirportCode>PDX</originatingAirportCode> <class>1</class> <stopoverCode>O</stopoverCode> <departureDate>20231010</departureDate> <destination>SJ</destination> <exchangeTicket>tickeT12</exchangeTicket> <endorsementsRestrictions>Endorsement123456789</endorsementsRestrictions> <fee>999.99</fee> <tax>99</tax> </leg> <leg id="1"> <carrierCode>AA</carrierCode> <originatingAirportCode>PDX</originatingAirportCode> <class>1</class> <stopoverCode>O</stopoverCode> <departureDate>20231010</departureDate> <destination>SJ</destination> <exchangeTicket>tickeT12</exchangeTicket> <endorsementsRestrictions>Endorsement123456789</endorsementsRestrictions> <fee>999.99</fee> <tax>99</tax> </leg> <leg id="2"> <carrierCode>AA</carrierCode> <originatingAirportCode>PDX</originatingAirportCode> <class>1</class> <stopoverCode>O</stopoverCode> <departureDate>20231010</departureDate> <destination>SJ</destination> <exchangeTicket>tickeT12</exchangeTicket> <endorsementsRestrictions>Endorsement123456789</endorsementsRestrictions> <fee>999.99</fee> <tax>99</tax> </leg> <leg id="3"> <carrierCode>AA</carrierCode> <originatingAirportCode>PDX</originatingAirportCode> <class>1</class> <stopoverCode>O</stopoverCode> <departureDate>20231010</departureDate> <destination>SJ</destination> <exchangeTicket>tickeT12</exchangeTicket> <endorsementsRestrictions>Endorsement123456789</endorsementsRestrictions> <fee>999.99</fee> <tax>99</tax> </leg> <planNumber>2B</planNumber> <exchangeTicketAmount>87654</exchangeTicketAmount> <exchangeTicketFee>32345</exchangeTicketFee> </airlineData>
Response to a Successful Request
12345678910111213
<merchantReferenceCode>+d0lTRmBZOSpG6gheF3JyRat</merchantReferenceCode> <requestID>6859975187656465603010</requestID> <decision>ACCEPT</decision> <reasonCode>100</reasonCode> <purchaseTotals> <currency>USD</currency> </purchaseTotals> <ccCaptureReply> <reasonCode>100</reasonCode> <requestDateTime>2023-06-05T20:38:39Z</requestDateTime> <amount>50.00</amount> <reconciliationID>702412146IIXPP78</reconciliationID> </>