Airline data
Airline Itinerary Data (AID) can be submitted at either authorisation or capture, depending on when your booking system generates the ticket number. PayPal transactions also need AID supplied. To see the PayPal guide, click
Jump to
XML for airline data
To include airline data with your order you must supply:
<branchSpecificExtension>
, a child of the<order>
element<airline>
, a child of<branchSpecificExtension>
. The<airline>
element includes the mandatorycode
attribute, which contains the IATA airline code ("MY" in the below example)
An example of their position in the XML
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE paymentService PUBLIC "-//Worldpay/DTD Worldpay PaymentService v1//EN"
"http://dtd.Worldpay.com/paymentService_v1.dtd">
<paymentService version="1.4" merchantCode="YOUR_MERCHANT_CODE">
<submit>
<order orderCode="YOUR_ORDER_CODE">
<!--ORDER INFORMATION GOES HERE-->
<branchSpecificExtension>
<airline code="MY">
<!--AIRLINE DATA GOES HERE-->
</airline>
</branchSpecificExtension>
</order>
</submit>
</paymentService>
Example Direct order with Airline Itinerary Data
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE paymentService PUBLIC "-//Worldpay/DTD Worldpay PaymentService v1//EN"
"http://dtd.worldpay.com/paymentService_v1.dtd">
<paymentService version="1.4" merchantCode="YOUR_MERCHANT_CODE">
<submit>
<order orderCode="YOUR_ORDER_CODE">
<description>YOUR_DESCRIPTION</description>
<amount value="20894" currencyCode="GBP" exponent="2"/>
<orderContent><![CDATA[content here]]></orderContent>
<paymentDetails>
<CARD-SSL>
<cardNumber>4444333322221111</cardNumber>
<expiryDate><date month="01" year="2020"/></expiryDate>
<cardHolderName>JOHN B.GOOD</cardHolderName>
<cardAddress>
<address>
<address1>Apartment 6B</address1>
<address2>MAINSTR8</address2>
<address3>Milton</address3>
<city>Cambridge</city>
<state>Cambridgeshire</state>
<postalCode>5555</postalCode>
<countryCode>GB</countryCode>
<telephoneNumber>123456789</telephoneNumber>
</address>
</cardAddress>
</CARD-SSL>
<session shopperIPAddress="123.123.123.123" id="02fa6y5b20b"/>
</paymentDetails>
<branchSpecificExtension> <!--Where the airline data goes-->
<airline code="MY">
<airlineName>MyAirline</airlineName>
<passenger code="100123">JOHN PASSENGER</passenger>
<ticket code="123" restricted="0">
<issuer>
<address>
<address1>Airport venue1</address1>
<postalCode>1111</postalCode>
<city>LONDON</city>
<countryCode>UK</countryCode>
</address>
</issuer>
<flight carrierCode="M1" flightCode="501"> <!--Up to 4 flight elements per order-->
<departureAirport>LON</departureAirport>
<arrivalAirport>AMS</arrivalAirport>
<departureDate>
<date dayOfMonth="01" month="01" year="2020"/>
</departureDate>
<fare class="T" basis="TMYA"/>
<tax>
<amount value="6097" currencyCode="EUR" exponent="2"/>
</tax>
</flight>
<flight carrierCode="M5" flightCode="501">
<departureAirport>AMS</departureAirport>
<arrivalAirport>LON</arrivalAirport>
<departureDate>
<date dayOfMonth="01" month="01" year="2020"/>
</departureDate>
<fare class="V" basis="VMYA"/>
<tax>
<amount value="9043" currencyCode="EUR" exponent="2"/>
</tax>
</flight>
</ticket>
<agent code="0">MYAGENT</agent>
</airline>
</branchSpecificExtension>
</order>
</submit>
</paymentService>
Note: Worldpay's response to an airline order is the same as a standard response, covered in the
Capturing an order with Airline Itinerary Data (AID)
To capture orders with AID, use
Note: We recommend that you capture an order within 5 days of the authorisation. Otherwise, the authorisation might expire.
Example capture modification
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE paymentService PUBLIC "-//Worldpay//DTD Worldpay PaymentService v1//EN"
"http://dtd.worldpay.com/paymentService_v1.dtd">
<paymentService version="1.4" merchantCode="YOUR_MERCHANT_CODE">
<modify>
<orderModification orderCode="YOUR_ORDER_CODE">
<capture reference="YourReference"> <!--Returned if added to a capture or refund modification-->
<date dayOfMonth="01" month="01" year="2020"/>
<amount value="20894" currencycode="GBP" exponent="2">
<debitCreditIndicator="credit"/>
<branchSpecificExtension> <!--Must include all this data in the modification-->
<airline code="MY">
<airlineName>MyAirline</airlineName>
<passenger code="100123">JOHN PASSENGER</passenger>
<ticket code="123" restricted="0">
<issuer>
<address>
<address1>Airport venue1</address1>
<postalCode>1111</postalCode>
<city>LONDON</city>
<countryCode>UK</countryCode>
</address>
</issuer>
<flight carrierCode="M1" flightCode="501">
<departureAirport>LON</departureAirport>
<arrivalAirport>AMS</arrivalAirport>
<departureDate>
<date dayOfMonth="01" month="01" year="2020"/>
</departureDate>
<fare class="T" basis="TMYA"/>
<tax>
<amount value="6097" currencyCode="EUR" exponent="2"/>
</tax>
</flight>
</ticket>
<agent code="0">MYAGENT</agent>
</airline>
</branchSpecificExtension>
</capture>
</orderModification>
</modify>
</paymentService>
Note: As shown above, you can attach a reference
attribute to a capture modification, allowing you to track the modification in your system. This reference can contain up to 128 characters, including special characters. The reference used here will show in notifications for CAPTURED and SETTLED statuses. You can also see references in the Command Batch section of the MAI. For C - level, Worldpay acquired customers, you may also have the reference shown on selected acquiring reconciliation files, truncated down to a maximum of 20 characters. Contact us for further information.
IATA Optional Services Industry Sub Codes
You can submit the 3 charactersubCode
as part of the <nonTicket>
element, used in place of <ticket>
.
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE paymentService PUBLIC "-//Worldpay//DTD Worldpay PaymentService v1//EN"
"http://dtd.worldpay.com/paymentService_v1.dtd">
<paymentService version="1.4" merchantCode="YOUR_MERCHANT_CODE">
<modify>
<orderModification orderCode="YOUR_ORDER_CODE">
<capture reference="YourReference"> <!--Returned if added to a capture or refund modification-->
<date dayOfMonth="01" month="01" year="2020"/>
<amount value="20894" currencycode="GBP" exponent="2">
<debitCreditIndicator="credit"/>
<branchSpecificExtension>
<airline code="MY">
<airlineName>MyAirline</airlineName>
<passenger code="100123">JOHN PASSENGER</passenger>
<nonTicket subCode="0OM">REF123456</nonTicket> <!--Free-form field-->
</airline>
</branchSpecificExtension>
</capture>
</orderModification>
</modify>
</paymentService>
For examples of our responses to order modifications, see
XML reference
In addition to the elements/attributes covered in the<branchSpecificExtension>
:
Elements/child elements/attributes | M/O | Description |
---|---|---|
<airline> code | Mandatory | Airline used ICAO airline code. Example “BA0” |
<airlineName> | Mandatory | The name of the airline (displayed as it would be on a bill). |
<passenger> code | Mandatory | The passenger code. |
<passenger> name | Mandatory | The name of the passenger. |
<ticket> code | Mandatory | The ticket number. |
<ticket> restricted | Mandatory | Can have the value 0 (false) or 1 (true). |
<nonTicket> subCode | Optional | IATA 3 character Optional Services Industry Sub Code. Used in place of <ticket> . |
<issuer> <address1> | Mandatory | Issuer address 1. |
<issuer> <postalCode> | Mandatory | Issuer postal code. |
<issuer> <city> | Mandatory | Issuer city. |
<issuer> <countryCode> | Mandatory | Issuer country code. |
<flight> carrierCode | Mandatory | Flight number/code. 2 characters long, Note: You can have up to four |
<flight> flightCode | Mandatory | Flight code. |
<flight> stopOverCode | Optional | "1" for yes, "0" for no. Defaults to "0" if no value is supplied. |
<departureAirport> | Mandatory | Departure Airport Code (IATA Airport Code). Example “YUL” |
<arrivalAirport> | Mandatory | Arrival Airport Code (IATA Airport Code). Example “LHR” |
<departureDate> | Mandatory | Travel date, delivery date or expected date. |
<date> dayOfMonth | Mandatory | Departure date day of month. |
<date> month | Mandatory | Departure date month. |
<date> year | Mandatory | Departure date year. |
<fare> class | Mandatory | |
<fare> basis | Mandatory | |
<amount> value | Mandatory | Tax details. |
<amount> currencyCode | Mandatory | Tax details. |
<amount> exponent | Mandatory | Tax details. |
<agent> code | Mandatory | The IATA travel agency code. |
<agent> name | Mandatory | The name of the travel agent. |
<capture> debitCreditIndicator | Mandatory | Indicates that the amount is positive (“credit"). |