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, clickhere.

Jump toreference table.

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 mandatory code attribute, which contains the IATA airline code ("MY" in the below example)

An example of their position in the XML

Copied!
<?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

Copied!
<?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 theDirect payment requestsorHosted payment requestspages.

Capturing an order with Airline Itinerary Data (AID)

To capture orders with AID, usemodification requestsor ourbatched modificationservice. Make sure you include the airline data in the modification message.

Note: We recommend that you capture an order within 5 days of the authorisation. Otherwise, the authorisation might expire.

Example capture modification

Copied!
<?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 characterIATAsubCode as part of the <nonTicket> element, used in place of <ticket>.

Copied!
<?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, seeTypes of modification and how they're used.

XML reference

In addition to the elements/attributes covered in theDirect payment requestsorHosted payment requestspages, these are the child elements of <branchSpecificExtension>:

Elements/child elements/attributesM/ODescription
<airline>
code
MandatoryAirline used ICAO airline code.
Example “BA0”
<airlineName>MandatoryThe name of the airline (displayed as it would be on a bill).
<passenger>
code
MandatoryThe passenger code.
<passenger>
name
MandatoryThe name of the passenger.
<ticket>
code
MandatoryThe ticket number.
<ticket>
restricted
MandatoryCan have the value 0 (false) or 1 (true).
<nonTicket>
subCode
OptionalIATA 3 character Optional Services Industry Sub Code. Used in place of <ticket>.
<issuer>
<address1>
MandatoryIssuer address 1.
<issuer>
<postalCode>
MandatoryIssuer postal code.
<issuer>
<city>
MandatoryIssuer city.
<issuer>
<countryCode>
MandatoryIssuer country code.
<flight>
carrierCode
MandatoryFlight number/code.
2 characters long,

Note: You can have up to four <flight> elements in a single order.

<flight>
flightCode
MandatoryFlight code.
<flight>
stopOverCode
Optional"1" for yes, "0" for no. Defaults to "0" if no value is supplied.
<departureAirport>MandatoryDeparture Airport Code (IATA Airport Code).
Example “YUL”
<arrivalAirport>MandatoryArrival Airport Code (IATA Airport Code).
Example “LHR”
<departureDate>MandatoryTravel date, delivery date or expected date.
<date>
dayOfMonth
MandatoryDeparture date day of month.
<date>
month
MandatoryDeparture date month.
<date>
year
MandatoryDeparture date year.
<fare>
class
Mandatory
<fare>
basis
Mandatory
<amount>
value
MandatoryTax details.
<amount>
currencyCode
MandatoryTax details.
<amount>
exponent
MandatoryTax details.
<agent>
code
MandatoryThe IATA travel agency code.
<agent>
name
MandatoryThe name of the travel agent.
<capture>
debitCreditIndicator
MandatoryIndicates that the amount is positive (“credit").