Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Overview

The main purpose of the payment catalogue is for the airline to inform a seller

  • Which methods are accepted as payment

    • At a high level

    • At a granular level

  •  Any additional information* that may be required for processing

    • Card Type

    • Authentication need

    • Supported 3DS

    • Information regarding redirection expected or not

  • How the payment method will be processed

    • Offline

    • Online

  • Any processing fees at a precise level

    • expressed as a percentage

    • expressed as a range of values and/or percentages

  • Information relating to clearance method

Info

Note
*Authentication need
This was relevant for 3DSv1 where the Airline was in control of initiating the authentication. With the deprecation of 3DSv1 from October 2022 we only have the flow left where the Seller autonomously initiates the authentication and forwards the results. In this flow, an Airline can indicate that for a payment method authentication is required (VerificationInd set to TRUE). If the airline does leave this decision to Seller then VerificationInd may not be provided. However at the payment time Airline can decide to demand Seller to authenticate.

Accepted Payment Methods

The type of payment can be expressed at different levels of granularity using PaymentTypeCode and, optionally, PaymentBrandCode.

Code Block
languagemarkup
<PaymentSupportedMethod>
	<PaymentBrandCode>VI</PaymentBrandCode>
	<PaymentMethodAddlInfo>
		<PaymentCardAddlInfo>
			<CardProductTypeCode>Consumer</CardProductTypeCode>
			<CardTypeText>debit card</CardTypeText>
		</PaymentCardAddlInfo>
	</PaymentMethodAddlInfo>
	<PaymentTypeCode>CC</PaymentTypeCode>
</PaymentSupportedMethod>

 Additional information can be added depending on the payment type as illustrated below.

Additional Payment Information

Some payment methods require different data and even different flows, such as 3D Secure for authentication. Additional precision relating to a payment method and any additional information that may be required in processing it, can be specified using elements within PaymentMethodAddlInfo.

Card

Within PaymentCardAdditionalInfo, further precision relating to a payment method can be identified here:

Code Block
languagemarkup
<PaymentSupportedMethod>
	<PaymentMethodAddlInfo>
		<PaymentCardAddlInfo>
			<CardProductTypeCode>Consumer</CardProductTypeCode>
			<CardTypeText>debit card</CardTypeText>
		</PaymentCardAddlInfo>
	</PaymentMethodAddlInfo>
</PaymentSupportedMethod>

Further requirements for processing can be identified too, such as the need to verify and the supported version of 3D secure:

Code Block
languagemarkup
<PaymentSupportedMethod>
	<PaymentMethodAddlInfo>
		<PaymentCardAddlInfo>
			<SecurePaymentAuthenticationVersion>
				<SupportedVersionText>3DS2</SupportedVersionText>
			</SecurePaymentAuthenticationVersion>
			<VerificationInd>true</VerificationInd>
		</PaymentCardAddlInfo>
	</PaymentMethodAddlInfo>
</PaymentSupportedMethod>

Other

OtherPaymentAddlInfo is designed to allow further information relating to a payment method if necessary. A common use may be to identify additional characteristics needed for payment types marked "other". In the following example, Remarks are used to identify acceptance of a payment method called "New Payment Brand".

Code Block
languagemarkup
<PaymentSupportedMethod>
	<PaymentBrandCode>OT</PaymentBrandCode>
	<PaymentMethodAddlInfo>
		<PaymentOtherMethodAddlInfo>
			<Remark>
				<DisplayInd>true</DisplayInd>
				<RemarkText>Paypal</RemarkText>
			</Remark>
		</PaymentOtherMethodAddlInfo>
	</PaymentMethodAddlInfo>
	<PaymentRedirectionInd>true</PaymentRedirectionInd>
	<PaymentTypeCode>CF</PaymentTypeCode>
</PaymentSupportedMethod>
Info

Note
This example is provided by way of illustration only.

Payment Method Processing

Some payments happen "offline" to the NDC messages, some "online" within them. If an airline needs to explicitly tell a Seller that a payment instrument will be processed via redirection, which is an "offline" capability, the "PaymentRedirectionIndicator" element should be populated as "true":

Code Block
languagemarkup
<PaymentSupportedMethod>
	<PaymentRedirectionInd>true</PaymentRedirectionInd>
</PaymentSupportedMethod>

Otherwise, the payment process is implicit in the PaymentType code used. 

Info

Note
General information relating to the relationship between payment process, payment transaction type and payment methods is provided here.

Payment Fees

Payment Fees can be communicated in PaymentCatalogue in different ways, either as 

  • Estimated values for information purposes

  • Precise values

  • Information that could be used by a seller to calculate a close estimate of the final fee

Estimated values

Estimated ranges represent information a seller can use to indicate a maximum and minimum payment fee. They can be expressed as percentages or values 

Mimimum and Maximum Percentage

Code Block
languagemarkup
<PaymentFunctions>
	<PaymentSurcharge>
		<PercentRangeMaximumPercent>5.00</PercentRangeMaximumPercent>
		<PercentRangeMinimumPercent>0.00</PercentRangeMinimumPercent>
	</PaymentSurcharge>
</PaymentFunctions>

Mimimum and Maximum Values

If only maximum and/or minimum amounts are provided, this information can be used to provide further estimation functionality by a Seller. In the following example, we see:

  1. A maximum amount that would be charged for a given payment method

  2. A minimum amount that would be charged for a given payment method

Code Block
languagemarkup
<PaymentFunctions>
	<PaymentSurcharge>
		<AmountRangeMaximumAmount CurCode="GBP">50.00</AmountRangeMaximumAmount>
		<AmountRangeMinimumAmount CurCode="GBP">5.00</AmountRangeMinimumAmount>
	</PaymentSurcharge>
</PaymentFunctions>

Precision Values

Precision values can be used to specify a specific percentage or a specific amounts 

Precise Percentage

Code Block
languagemarkup
<PaymentFunctions>
	<PaymentSurcharge>
		<PrecisePercent>2.00</PrecisePercent>
	</PaymentSurcharge>
</PaymentFunctions>

Precise Amount

Code Block
languagemarkup
<PaymentFunctions>
	<PaymentSurcharge>
		<PreciseAmount CurCode="GBP">1.99</PreciseAmount>
	</PaymentSurcharge>
</PaymentFunctions>

Information for calculations

If maximum and minimum amounts and precise percentages are used in combination, this information can be used to provide further estimation functionality by a seller. In the following example, we see:

  1. A maximum amount that would be charged for a given payment method - i.e.,  a payment fee cap

  2. A minimum amount that would be charged for a given payment method - i.e., a payment fee floor

  3. A percentage that would be charged for a given payment method - i.e., a variable to help estimate the fee in between the floor and the cap

Code Block
languagemarkup
<PaymentFunctions>
	<PaymentSurcharge>
		<AmountRangeMaximumAmount CurCode="GBP">50.00</AmountRangeMaximumAmount>
		<AmountRangeMinimumAmount CurCode="GBP">5.00</AmountRangeMinimumAmount>
		<PrecisePercent>2.00</PrecisePercent>
	</PaymentSurcharge>
</PaymentFunctions>