Open Wallet

Depending on the wallet provider, this operation initiates a wallet interaction.

For the MasterPass Online wallet, use this operation to initiate a wallet interaction. You reference the MasterPass JavaScript client library in your page, and use the response parameters from this operation in the checkoutButton method to open the MasterPass lightbox. The gateway will manage all of the back-end interactions with MasterCard.

POST https://test-nbkpayment.mtf.gateway.mastercard.com/api/rest/version/57 / merchant / {merchantId} / session / {sessionId}

Authentication Copied to clipboard

This operation requires authentication via one of the following methods:


  • Certificate authentication.
  • Basic HTTP authentication as described at w3.org. Provide 'merchant.<your gateway merchant ID>' in the userid portion and your API password in the password portion.

Request Copied to clipboard

URL Parameters Copied to clipboard

{merchantId} Copied to clipboard Alphanumeric + additional characters REQUIRED

The unique identifier issued to you by your payment provider.


This identifier can be up to 12 characters in length.


Data may consist of the characters 0-9, a-z, A-Z, '-', '_'

Min length: 1 Max length: 40
{sessionId} Copied to clipboard ASCII Text REQUIRED

The identifier of the payment session.


Data consists of ASCII characters

Min length: 31 Max length: 35

Fields Copied to clipboard

correlationId Copied to clipboard String OPTIONAL

A transient identifier for the request, that can be used to match the response to the request.

The value provided is not validated, does not persist in the gateway, and is returned as provided in the response to the request.

Data can consist of any characters

Min length: 1 Max length: 100
order Copied to clipboard REQUIRED

order

order.amount Copied to clipboard Decimal OPTIONAL

The total amount for the order. This is the net amount plus any surcharge.

If you provide any sub-total amounts, then the sum of these amounts (order.itemAmount, order.taxAmount, order.shippingAndHandlingAmount, order.cashbackAmount, order.gratuityAmount), minus the order.discountAmount must equal the net amount.

The value of this field in the response is zero if payer funds are not transferred.

Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.

Min length: 1 Max length: 14
order.cashbackAmount Copied to clipboard Decimal OPTIONAL

The amount the payer has chosen to receive as cash in addition to the amount they are paying for the goods or services they are purchasing from you.

The cash back amount is included in the total amount of the order you provide in order.amount.

This field corresponds to EMV tag 9F03

Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.

Min length: 1 Max length: 14
order.currency Copied to clipboard Upper case alphabetic text OPTIONAL

The currency of the order expressed as an ISO 4217 alpha code, e.g. USD.

Data must consist of the characters A-Z

Min length: 3 Max length: 3
order.description Copied to clipboard String OPTIONAL

Short textual description of the contents of the order.

Data can consist of any characters

Min length: 1 Max length: 127
order.discount Copied to clipboard OPTIONAL

Information about a price reduction you have applied to the order.

For example, you may apply discounts for trade, employees, bulk purchase, or a sales promotion.

order.discount.amount Copied to clipboard Decimal OPTIONAL

The total amount of the discount you have applied to the order.

Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.

Min length: 1 Max length: 14
order.discount.code Copied to clipboard String OPTIONAL

The code you use to identify the reason for the discount.

Data can consist of any characters

Min length: 1 Max length: 40
order.discount.description Copied to clipboard String OPTIONAL

A description of your reason for the discount.

Data can consist of any characters

Min length: 1 Max length: 127
order.gratuityAmount Copied to clipboard Decimal OPTIONAL

The amount the payer has chosen to provide as a gratuity or tip in addition to the amount they are paying for the goods or services they are purchasing from you.

The gratuity amount is included in the total amount of the order you provide in order.amount.

Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.

Min length: 1 Max length: 14
order.shippingAndHandlingAmount Copied to clipboard Decimal OPTIONAL

The total shipping and handling amount for the order.

Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.

Min length: 1 Max length: 14
order.tax[n] Copied to clipboard OPTIONAL

Use this parameter group to provide a breakdown of tax types, amount per tax type, and rate per tax type included in order.taxAmount.

order.tax[n].amount Copied to clipboard Decimal OPTIONAL

The tax amount included in this order for the tax type.

Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.

Min length: 1 Max length: 14
order.tax[n].rate Copied to clipboard Decimal OPTIONAL

The tax rate (percentage) used to determine the tax amount included in this order for the tax type.

Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.

Min length: 1 Max length: 6
order.tax[n].type Copied to clipboard String OPTIONAL

The type of tax included in the order amount.

The correct value as used by your acquirer may have to be provided. Contact your payment service provider for details.

Data can consist of any characters

Min length: 1 Max length: 50
order.taxAmount Copied to clipboard Decimal OPTIONAL

The total tax amount for the order.

If you do not provide this value but provide line item data, then this amount is calculated as the sum of the item.quantity times the item.unitTaxAmount for all the line items (total tax amount).
If you provide both this value and line item data, then the order.taxAmount MUST equal the total tax amount.

Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.

Min length: 1 Max length: 14
order.walletProvider Copied to clipboard Enumeration REQUIRED

Select the wallet provider for this interaction.

Value must be a member of the following list. The values are case sensitive.

AMEX_EXPRESS_CHECKOUT

Amex Express Checkout wallet provider.

APPLE_PAY

Apple Pay mobile wallet provider.

CHASE_PAY

Chase Pay wallet provider.

GOOGLE_PAY

Google Pay mobile wallet provider.

MASTERPASS_ONLINE

MasterPass Online wallet provider.

SAMSUNG_PAY

Samsung Pay mobile wallet provider.

VISA_CHECKOUT

Visa Checkout wallet provider.

session.version Copied to clipboard ASCII Text OPTIONAL

Use this field to implement optimistic locking of the session content.

Do this if you make business decisions based on data from the session and wish to ensure that the same data is being used for the request operation.

To use optimistic locking, record session.version when you make your decisions, and then pass that value in session.version when you submit your request operation to the gateway.

If session.version provided by you does not match that stored against the session, the gateway will reject the operation with error.cause=INVALID_REQUEST.

See Making Business Decisions Based on Session Content.

Data consists of ASCII characters

Min length: 10 Max length: 10
wallet.masterpass Copied to clipboard OPTIONAL

Information about the payer's MasterPass wallet.

wallet.masterpass.originUrl Copied to clipboard Url OPTIONAL

The URL of the page that will initialize the MasterPass lightbox.

Ensure that the URL begins with 'https' and is longer than 11 characters.

wallet.masterpass.secondaryOriginUrl Copied to clipboard Url OPTIONAL

The URL of the outer or parent page that will initialize the MasterPass lightbox.

Provide this field only when the Lightbox will be invoked from a frame that's on a merchant site, and when that frame has a different domain than the merchant site.

Ensure that the URL begins with 'https' and is longer than 11 characters.


Response Copied to clipboard

Fields Copied to clipboard

agreement Copied to clipboard CONDITIONAL

A series of related orders that execute one commercial agreement.

For example, linking the orders for a series of recurring payments (a mobile phone subscription), split tenders (one payment using two cards), or when the merchant offers to take payments by a series of installments (hire purchase).

agreement.expiryDate Copied to clipboard Date CONDITIONAL

Date at which your agreement with the payer to process payments expires.

Data must comply with ISO 8601 extended date format, yyyy-mm-dd

agreement.id Copied to clipboard String CONDITIONAL

Your identifier for the agreement you have with the payer to process payments.

When you collect cards from your payers and store them for later use, you must provide an agreement ID when you use the stored values for:

  • Recurring payments: you have an agreement with the payer that authorizes you to automatically debit their account at agreed intervals for fixed or variable amounts. For example, gym membership, phone bills, or magazine subscriptions.
  • Installment payments: you have an agreement with the payer that authorizes you to process multiple payments over an agreed period of time for a single purchase. For example, the payer purchases an item for $1000 and pays for it in four monthly installments.
  • Unscheduled: you have an agreement with the payer that authorizes you to process future payments when required. For example, the payer authorizes you to process an account top-up transaction for a transit card when the account balance drops below a certain threshold.
When you first establish an agreement with the payer you should also specify the type of agreement in agreement.type.

Data can consist of any characters

Min length: 1 Max length: 100
agreement.recurring Copied to clipboard CONDITIONAL

Information about agreements for recurring payments.

agreement.recurring.amountVariability Copied to clipboard Enumeration CONDITIONAL

Indicates if all the payments within the agreement use the same amount or if the amount differs between the payments.

Value must be a member of the following list. The values are case sensitive.

FIXED

All payments in the recurring payment agreement have the same amount. Examples include magazine subscriptions or gym memberships.

VARIABLE

The amount for the payments within the recurring payment agreement differs between payments. Examples include usage-based charges like utility or phone bills.

agreement.recurring.daysBetweenPayments Copied to clipboard Integer CONDITIONAL

The minimum number of days between payments agreed with the payer under your agreement with them.

JSON number data type, restricted to being positive or zero. In addition, the represented number may have no fractional part.

Min value: 1 Max value: 999
agreement.recurring.numberOfPayments Copied to clipboard Integer CONDITIONAL

The number of merchant-initiated payments within the recurring payment agreement.

JSON number data type, restricted to being positive or zero. In addition, the represented number may have no fractional part.

Min value: 1 Max value: 9999
agreement.type Copied to clipboard Enumeration CONDITIONAL

The type of commercial agreement that the payer has with you.

Specify the agreement type when you have provided a value for agreement.id and this payment is the first in a series of payments. The default value is OTHER.

The gateway will use the value you specify for subsequent payments in the series.

Value must be a member of the following list. The values are case sensitive.

INSTALLMENT

An agreement where the payer authorizes the payment for a single purchase to be split into a number of payments processed at agreed intervals. For example, pay for a purchase in six monthly installments.

OTHER

An agreement where the merchant wants to link related payments for any purpose other than processing recurring, installment, or unscheduled payments. For example, split tender payments.

RECURRING

An agreement where the payer authorizes the merchant to process payments for recurring bills or invoices at agreed intervals (for example, weekly, monthly). The amount might be fixed or variable.

UNSCHEDULED

An agreement where the payer authorizes the merchant to automatically deduct funds for a payment for an agreed purchase when required (unscheduled). For example, auto top-ups when the account value falls below a threshold.

airline Copied to clipboard CONDITIONAL

Airline industry specific data.

airline.bookingReference Copied to clipboard Alphanumeric CONDITIONAL

The record locator used to access a specific Passenger Name Record (PNR).

PNR is a record in the database of a booking system that contains the itinerary for a passenger, or a group of passengers traveling together.

Data may consist of the characters 0-9, a-z, A-Z

Min length: 6 Max length: 15
airline.documentType Copied to clipboard Enumeration CONDITIONAL

The type of charge associated with the transaction.

Document Type Code

Value must be a member of the following list. The values are case sensitive.

ADDITIONAL_COLLECTION

Additional Collection

AGENCY_EXCHANGE_ORDER

Agency Exchange Order

AGENCY_GROUP_TICKET

Agency Group Ticket

AGENCY_MISCELLANEOUS_CHARGE_ORDER

Agency Misc. Charge Order (MCO)

AGENCY_PASSENGER_TICKET

Agency Passenger Ticket

AGENCY_TOUR_ORDER_OR_VOUCHER

Agency Tour Order/Voucher

AIR_FREIGHT

SPD/Air Freight

ANIMAL_TRANSPORTATION_CHARGE

Animal Transportation Charge

CATALOGUE_MERCHANDISE_ORDERED

Catalogue Merchandise Ordered

CLUB_MEMBERSHIP_FEE

Club Membership Fee

COUPON_BOOK

Coupon Book

CREDIT_CLASS_SERVICE_ADJUSTMENT

Credit Class of Service Adjustment

CREDIT_DENIED_BOARDING

Credit Denied Boarding

CREDIT_EXCHANGE_REFUND

Credit Exchange Refund

CREDIT_LOST_TICKET_REFUND

Credit Lost Ticket Refund

CREDIT_MISCELLANEOUS_REFUND

Credit Misc. Refund

CREDIT_MULTIPLE_UNUSED_TICKETS

Credit Multiple Unused Tickets

CREDIT_OVERCHARGE_ADJUSTMENT

Credit Overcharge Adjustment

CREDIT_UNUSED_TRANSPORTATION

Credit Unused Transportation

DEBT_ADJUSTMENT_DUPLICATE_REFUND_OR_USE

Debt Adjustment Duplicate Refund/Use

DUTY_FREE_SALE

Duty Free Sale

EXCESS_BAGGAGE

Excess Baggage

EXCHANGE_ADJUSTMENT

Exchange Adjustment

EXCHANGE_ORDER

Exchange Order

FIREARMS_CASE

Firearms Case

FREQUENT_FLYER_FEE_OR_PURCHASE

Frequent Flyer Fee/Purchase

FREQUENT_FLYER_FULFILLMENT

Frequent Flyer Fulfillment

FREQUENT_FLYER_OVERNIGHT_DELIVERY_CHARGE

Frequent Flyer Overnight Delivery Charge

GROUP_TICKET

Group Ticket

IN_FLIGHT_ADJUSTMENT

In-flight Adjustment

IN_FLIGHT_CHARGES

In-flight Charges

IN_FLIGHT_DUTY_FREE_PURCHASE

In-flight Duty Free Purchase

IN_FLIGHT_MERCHANDISE_ORDERED

In-flight Merchandise Ordered

IN_FLIGHT_PHONE_CHARGES

In-flight Phone Charges

KENNEL_CHARGE

Kennel Charge

LOST_TICKET_APPLICATION

Lost Ticket Application

MISCELLANEOUS_CHARGE_ORDER_OR_PREPAID_TICKET_ADVICE

Misc. Charge Order (MCO) / Prepaid Ticket Auth.

MISCELLANEOUS_TAXES_FEES

Miscellaneous Tax(es) Fee(s)

PASSENGER_TICKET

Passenger Ticket

SELF_SERVICE_TICKETS

Self-Service Ticket(s)

SENIOR_CITIZEN_DISCOUNT_BOOKLETS

Senior Citizen Discount Booklets

SMALL_PACKAGE_DELIVERY

Small Package Delivery

SPECIAL_SERVICE_TICKET

Special Service Ticket

SUPPORTED_REFUND

Supported Refund

TICKET_BY_MAIL

Ticket by Mail

TOUR_DEPOSIT

Tour Deposit

TOUR_ORDER_VOUCHER

Tour Order Voucher

UNDERCHARGE_ADJUSTMENT

Undercharge Adjustment

UNSUPPORTED_REFUND

Unsupported Refund

UPGRADE_CHARGE

Upgrade Charge

VENDOR_REFUND_CREDIT

Vendor Refund Credit

VENDOR_SALE

Vendor Sale

airline.itinerary Copied to clipboard CONDITIONAL

Itinerary details

airline.itinerary.leg[n] Copied to clipboard CONDITIONAL

Travel leg details.

airline.itinerary.leg[n].carrierCode Copied to clipboard Regex CONDITIONAL

The 2-character IATA airline code or 3 digit accounting code or both of the airline carrier for the trip leg.

Data must match regex

regex \w{2}|\d{3}|\w{2}/\d{3} message Carrier code must be 2 characters, 3 digits or a combination of both in the format: ZZ/999
airline.itinerary.leg[n].conjunctionTicketNumber Copied to clipboard Alphanumeric CONDITIONAL

The ticket containing the coupon for this leg for an itinerary with more than four trip legs.

Data may consist of the characters 0-9, a-z, A-Z

Min length: 11 Max length: 16
airline.itinerary.leg[n].couponNumber Copied to clipboard Alphanumeric CONDITIONAL

The coupon number on the ticket for the trip leg.

Each trip leg requires a separate coupon. The coupon within the series is identified by the coupon number.

Data may consist of the characters 0-9, a-z, A-Z

Min length: 1 Max length: 1
airline.itinerary.leg[n].departureAirport Copied to clipboard Upper case alphabetic text CONDITIONAL

The 3 character IATA airport code of the departure airport for the trip leg.

Data must consist of the characters A-Z

Min length: 3 Max length: 3
airline.itinerary.leg[n].departureDate Copied to clipboard Date CONDITIONAL

Date of departure for the trip leg.

Data must comply with ISO 8601 extended date format, yyyy-mm-dd

airline.itinerary.leg[n].departureTax Copied to clipboard Decimal CONDITIONAL

Tax payable on departure for the trip leg.

Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.

Min length: 1 Max length: 14
airline.itinerary.leg[n].departureTime Copied to clipboard Time CONDITIONAL

Departure time in local time for the departure airport for this trip leg.

Data must comply with ISO 8601 extended time formats, hh:mm[:ss]Z or hh:mm[:ss](+/-)hh[:mm]

airline.itinerary.leg[n].destinationAirport Copied to clipboard Upper case alphabetic text CONDITIONAL

The 3 character IATA airport code for the destination airport for the trip leg.

Data must consist of the characters A-Z

Min length: 3 Max length: 3
airline.itinerary.leg[n].destinationArrivalDate Copied to clipboard Date CONDITIONAL

Arrival date in local time for the destination airport for this trip leg.

Data must comply with ISO 8601 extended date format, yyyy-mm-dd

airline.itinerary.leg[n].destinationArrivalTime Copied to clipboard Time CONDITIONAL

Arrival time in local time for the destination airport for this trip leg.

Data must comply with ISO 8601 extended time formats, hh:mm[:ss]Z or hh:mm[:ss](+/-)hh[:mm]

airline.itinerary.leg[n].endorsementsRestrictions Copied to clipboard Alphanumeric CONDITIONAL

Restrictions (e.g. non-refundable) or endorsements applicable to the trip leg.

Data may consist of the characters 0-9, a-z, A-Z

Min length: 1 Max length: 20
airline.itinerary.leg[n].exchangeTicketNumber Copied to clipboard Alphanumeric CONDITIONAL

New ticket number issued when a ticket is exchanged for the trip leg.

Data may consist of the characters 0-9, a-z, A-Z

Min length: 11 Max length: 16
airline.itinerary.leg[n].fare Copied to clipboard Decimal CONDITIONAL

Total fare payable for the trip leg.

Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.

Min length: 1 Max length: 14
airline.itinerary.leg[n].fareBasis Copied to clipboard Alphanumeric CONDITIONAL

Code defining the rules forming the basis of the fare (type of fare, class entitlement, etc.)

Data may consist of the characters 0-9, a-z, A-Z

Min length: 1 Max length: 24
airline.itinerary.leg[n].fees Copied to clipboard Decimal CONDITIONAL

Total fees payable for the trip leg.

Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.

Min length: 1 Max length: 14
airline.itinerary.leg[n].flightNumber Copied to clipboard Alphanumeric CONDITIONAL

The flight number for the trip leg.

Data may consist of the characters 0-9, a-z, A-Z

Min length: 4 Max length: 6
airline.itinerary.leg[n].stopoverPermitted Copied to clipboard Boolean CONDITIONAL

Indicates if a stopover is permitted for the trip leg.

JSON boolean values 'true' or 'false'.

airline.itinerary.leg[n].taxes Copied to clipboard Decimal CONDITIONAL

Total taxes payable for the trip leg.

Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.

Min length: 1 Max length: 14
airline.itinerary.leg[n].travelClass Copied to clipboard Alphanumeric CONDITIONAL

The industry code indicating the class of service (e.g. Business, Coach) for the leg.

Data may consist of the characters 0-9, a-z, A-Z

Min length: 1 Max length: 3
airline.itinerary.numberInParty Copied to clipboard Digits CONDITIONAL

Number of passengers associated with this booking.

Data is a string that consists of the characters 0-9.

Min length: 1 Max length: 3
airline.itinerary.originCountry Copied to clipboard Upper case alphabetic text CONDITIONAL

The 3 character ISO 3166-1 alpha-3 country code of the country of origin for the itinerary.

Data must consist of the characters A-Z

Min length: 3 Max length: 3
airline.passenger[n] Copied to clipboard CONDITIONAL

Passenger details

airline.passenger[n].firstName Copied to clipboard String CONDITIONAL

First name of the passenger to whom the ticket is being issued.

Data can consist of any characters

Min length: 1 Max length: 50
airline.passenger[n].frequentFlyerNumber Copied to clipboard String CONDITIONAL

Frequent Flyer or Loyalty Program number for this passenger.

Data can consist of any characters

Min length: 1 Max length: 20
airline.passenger[n].lastName Copied to clipboard String CONDITIONAL

Last name of the passenger to whom the ticket is being issued.

Data can consist of any characters

Min length: 1 Max length: 20
airline.passenger[n].middleName Copied to clipboard String CONDITIONAL

Middle name of the passenger to whom the ticket is being issued.

Data can consist of any characters

Min length: 1 Max length: 50
airline.passenger[n].specificInformation Copied to clipboard Alphanumeric CONDITIONAL

Passenger specific information recorded on the ticket.

Data may consist of the characters 0-9, a-z, A-Z

Min length: 1 Max length: 59
airline.passenger[n].title Copied to clipboard String CONDITIONAL

Title of the passenger to whom the ticket is being issued.

Data can consist of any characters

Min length: 1 Max length: 20
airline.planNumber Copied to clipboard Alphanumeric CONDITIONAL

Plan number supplied by the airline for this booking.

Data may consist of the characters 0-9, a-z, A-Z

Min length: 2 Max length: 2
airline.ticket Copied to clipboard CONDITIONAL

Ticket details

airline.ticket.conjunctionTicketIndicator Copied to clipboard Boolean CONDITIONAL

Indicates if a conjunction ticket with additional coupons was issued.

Conjunction ticket refers to two or more tickets concurrently issued to a passenger and which together constitute a single contract of carriage.

JSON boolean values 'true' or 'false'.

airline.ticket.eTicket Copied to clipboard Boolean CONDITIONAL

Indicates if an electronic ticket was issued.

JSON boolean values 'true' or 'false'.

airline.ticket.exchangedTicketNumber Copied to clipboard Alphanumeric CONDITIONAL

The original ticket number when this is a transaction for an exchanged ticket.

Data may consist of the characters 0-9, a-z, A-Z

Min length: 11 Max length: 16
airline.ticket.issue Copied to clipboard CONDITIONAL

Ticket issue information.

airline.ticket.issue.address Copied to clipboard String CONDITIONAL

The address where the ticket was issued.

Data can consist of any characters

Min length: 1 Max length: 16
airline.ticket.issue.carrierCode Copied to clipboard Regex CONDITIONAL

The 2-character IATA airline code or 3 digit accounting code or both of the airline carrier issuing the ticket.

Data must match regex

regex \w{2}|\d{3}|\w{2}/\d{3} message Carrier code must be 2 characters, 3 digits or a combination of both in the format: ZZ/999
airline.ticket.issue.carrierName Copied to clipboard Alphanumeric CONDITIONAL

Name of airline carrier issuing the ticket.

Data may consist of the characters 0-9, a-z, A-Z

Min length: 1 Max length: 25
airline.ticket.issue.city Copied to clipboard Alphanumeric CONDITIONAL

The city/town where the ticket was issued.

Data may consist of the characters 0-9, a-z, A-Z

Min length: 1 Max length: 18
airline.ticket.issue.country Copied to clipboard Upper case alphabetic text CONDITIONAL

The 3 character ISO 3166-1 alpha-3 country code of the country where the ticket was issued.

Data must consist of the characters A-Z

Min length: 3 Max length: 3
airline.ticket.issue.date Copied to clipboard Date CONDITIONAL

The date the ticket was issued.

Data must comply with ISO 8601 extended date format, yyyy-mm-dd

airline.ticket.issue.travelAgentCode Copied to clipboard Alphanumeric CONDITIONAL

Industry code of the travel agent issuing the ticket.

Data may consist of the characters 0-9, a-z, A-Z

Min length: 8 Max length: 9
airline.ticket.issue.travelAgentName Copied to clipboard Alphanumeric CONDITIONAL

Name of the travel agent issuing the ticket.

Data may consist of the characters 0-9, a-z, A-Z

Min length: 1 Max length: 30
airline.ticket.restricted Copied to clipboard Boolean CONDITIONAL

Indicates if the issued ticket is refundable.

JSON boolean values 'true' or 'false'.

airline.ticket.taxOrFee[n] Copied to clipboard CONDITIONAL

Breakdown of the ticket taxes, airport taxes, charges and fees for an airline ticket purchase.

The total of the amounts in this group should equal the sum of the airline.ticket.totalFees and airline.ticket.totalTaxes fields.

airline.ticket.taxOrFee[n].amount Copied to clipboard Decimal CONDITIONAL

The tax, charge or fee amount payable.

Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.

Min length: 1 Max length: 14
airline.ticket.taxOrFee[n].type Copied to clipboard Alphanumeric CONDITIONAL

The tax, charge or fee type code as assigned by IATA.

For example, the IATA tax/ charge/ fee type for Passenger Movement Charge (PMC) in Australia is TT1.

Data may consist of the characters 0-9, a-z, A-Z

Min length: 3 Max length: 3
airline.ticket.ticketNumber Copied to clipboard Alphanumeric CONDITIONAL

The airline ticket number associated with the transaction.

Data may consist of the characters 0-9, a-z, A-Z

Min length: 11 Max length: 16
airline.ticket.totalFare Copied to clipboard Decimal CONDITIONAL

Total fare for all trip legs on the ticket.

Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.

Min length: 1 Max length: 14
airline.ticket.totalFees Copied to clipboard Decimal CONDITIONAL

Total fee for all trip legs on the ticket.

Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.

Min length: 1 Max length: 14
airline.ticket.totalTaxes Copied to clipboard Decimal CONDITIONAL

Total taxes for all trip legs on the ticket.

Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.

Min length: 1 Max length: 14
airline.transactionType Copied to clipboard Enumeration CONDITIONAL

The type of transaction performed against this airline booking.

Transaction Type

Value must be a member of the following list. The values are case sensitive.

EXCHANGE_TICKET

Exchange Ticket

MISCELLANEOUS_CHARGE

Miscellaneous Charge

REFUND

Refund

REVERSAL

Reversal

TICKET_PURCHASE

Ticket Purchase

TOUR_ORDER

Tour Order

authentication Copied to clipboard CONDITIONAL

Information about how the payer's identity is verified.

For example, using 3-D Secure authentication.

This parameter group include payer authentication options available to you, parameters you need to perform payer authentication for an available method, and the results of payer authentication.

authentication.3ds Copied to clipboard CONDITIONAL

Information about payer authentication using 3-D Secure authentication.

Only provide these fields if you authenticated the payer using a different 3-D Secure service provider. If you authenticated the payer using the gateway, then provide authentication.transactionId instead.

Parameters in this group apply to both 3-D Secure authentication version 1 and 3-D Secure Authentication version 2.

Depending on the 3-D Secure authentication version applicable you will also need additional parameters:

- 3-D Secure authentication version 1: see the authentication.3ds1 parameter group.
- 3-D Secure authentication version 2: see the authentication.3ds2 parameter group.

authentication.3ds.acsEci Copied to clipboard Alphanumeric CONDITIONAL

Indicates the security level of the transaction.

This is the Electronic Commerce Indicator (ECI) value provided by the issuer's Access Control Server (ACS) to indicate the results of the attempt to authenticate the payer.

Data may consist of the characters 0-9, a-z, A-Z

Min length: 1 Max length: 2
authentication.3ds.authenticationToken Copied to clipboard Base64 CONDITIONAL

The base64 encoded value generated by the issuer.

The authentication token Included in subsequent transaction request messages and used by the card scheme to verify that the authentication occurred and the values provided are valid. The token should be used unaltered. For 3DS version 1, this field corresponds to the Cardholder Authentication Verification Value (CAVV) for Visa, the Accountholder Authentication Value (AAV) for MasterCard and JCB, or the American Express Verification Value (AEVV) for American Express.

For 3DS version 2, this field corresponds to the Authentication Value.

Data is Base64 encoded

allowable lengths 28 or 32
authentication.3ds.transactionId Copied to clipboard String CONDITIONAL

A unique identifier for the 3-D Secure authentication transaction.

For 3DS version 1, this field corresponds to the XID. The XID is an identifier generated by the gateway on behalf of the merchant.

For 3DS version 2, this field corresponds to the identifier assigned by the scheme directory server.


This identifier should be used in subsequent operation requests unaltered.

An XID submitted in this field must be in base64 format.

Data can consist of any characters

Min length: 1 Max length: 50
authentication.3ds1 Copied to clipboard CONDITIONAL

Information about payer authentication using 3-D Secure authentication version 1.

Only provide these fields if you authenticated the payer using a different 3-D Secure service provider. If you authenticated the payer using the gateway, then provide authentication.transactionId instead.

authentication.3ds1.paResStatus Copied to clipboard Alpha CONDITIONAL

Indicates the result of payer authentication with the issuer.

This is the value returned in the transaction status field of the Payer Authentication Response (PARes) message from the card Issuer's Access Control Server (ACS). For example, Y, N, A, or U. Refer to the relevant documentation for Mastercard SecureCode™, Verified by Visa™, JCB J/Secure™, American Express SafeKey™, or Diners Club ProtectBuy™.

Data may consist of the characters a-z, A-Z

Min length: 1 Max length: 1
authentication.3ds1.veResEnrolled Copied to clipboard Alpha CONDITIONAL

Indicates whether or not payer authentication is available for the card number you provided.

This is for experts only - most users should use the response.gatewayRecommendation field.

This is the value returned in the 'enrolled' field of the Verify Enrollment Response (VERes) message from the card scheme's Directory Server. For example, Y, N, or U. Refer to the relevant documentation for Mastercard SecureCode™, Verified by Visa™, JCB J/Secure™, American Express SafeKey™, or Diners Club ProtectBuy™.

Data may consist of the characters a-z, A-Z

Min length: 1 Max length: 1
authentication.3ds2 Copied to clipboard CONDITIONAL

Information about payer authentication using 3-D Secure authentication version 2.

authentication.3ds2.protocolVersion Copied to clipboard Alphanumeric + additional characters CONDITIONAL

The version of the EMV 3-D Secure protocol used to perform 3-D Secure authentication, in the format specified by EMVCo.

For example, 2.1.0

Data may consist of the characters 0-9, a-z, A-Z, '.'

Min length: 1 Max length: 20
authentication.3ds2.sdk Copied to clipboard CONDITIONAL

Information provided by the 3-D Secure Software Development Kit (SDK) that is used by an app on the payer's device to enable 3-D Secure authentication of the payer to be performed in-app.

You must populate the fields in this parameter group when you authenticate the payer in-app using 3-D Secure authentication version 2.

authentication.3ds2.sdk.appId Copied to clipboard String CONDITIONAL

A unique identifier for the app on the payer's device.

The 3-D Secure SDK generates this identifier each time the app is installed or updated.

This field corresponds to EMVCo field sdkAppID

Data can consist of any characters

Min length: 36 Max length: 36
authentication.3ds2.sdk.encryptedData Copied to clipboard String CONDITIONAL

Information about the payer's device collected and encrypted by the 3-D Secure SDK.

The data is a JSON Web Encryption (JWE) object in JSON format. When using the REST/JSON gateway API, express this as a JSON string (i.e. the embedded quotes will be escaped).

This field corresponds to EMVCo field sdkEncData

Data can consist of any characters

Min length: 0 Max length: 64000
authentication.3ds2.sdk.ephemeralPublicKey Copied to clipboard JSON Text CONDITIONAL

A public key generated by the 3-D Secure SDK.

This key is used to establish a secure session between the 3DS SDK and the issuer's Access Control Server (ACS) when the payer is required to be presented with an authentication challenge.

The key is a JSON Web Key (JWK) object in JSON format. When using the REST/JSON gateway API, express this as a JSON string (i.e the embedded quotes will be escaped).

This field corresponds to EMVCo field sdkEphemPubKey

Data is valid Json Format

Min length: 0 Max length: 256
authentication.3ds2.sdk.interface Copied to clipboard Enumeration CONDITIONAL

The User Interface (UI) formats that the payer's device supports.

These are the formats that can be used to render the screens presented to the payer during an authentication challenge.

You only need to provide this value if you only support one of these formats.

This field corresponds to EMVCo data element sdkInterface in the field deviceRenderOptions.

Value must be a member of the following list. The values are case sensitive.

HTML

The device supports HTML format.

NATIVE

The device supports the UI format native to the payer's device.

authentication.3ds2.sdk.referenceNumber Copied to clipboard String CONDITIONAL

An identifier of the vendor and version of the 3-D Secure SDK assigned by EMVCo.

This field corresponds to EMVCo field sdkReferenceNumber

Data can consist of any characters

Min length: 1 Max length: 32
authentication.3ds2.sdk.timeout Copied to clipboard Integer CONDITIONAL

The duration (in seconds) available to the payer to authenticate.

Will default to 900 if not provided. Note: The value will be rounded up to the nearest minute.

This field corresponds to EMVCo field sdkMaxTimeout

JSON number data type, restricted to being positive or zero. In addition, the represented number may have no fractional part.

Min value: 300 Max value: 900
authentication.3ds2.sdk.transactionId Copied to clipboard String CONDITIONAL

A unique identifier assigned by the 3-D Secure SDK for the transaction.

This field corresponds to EMVCo field sdkTransID

Data can consist of any characters

Min length: 36 Max length: 36
authentication.3ds2.sdk.uiType Copied to clipboard Comma separated enumeration CONDITIONAL

Indicates the UI types which the SDK supports for displaying authentication challenges within the app.

A comma separated list of the payer authentication methods that you will accept for this payment.

You only need to provide this value if all of these values are not supported.

Note: OTHER_HTML is only supported when authentication.3ds2.sdk.interface allows a HTML UI format.

This field corresponds to EMVCo data element sdkUiType in the field deviceRenderOptions.

Value must be one or more comma separated members of the following list. The values are case sensitive.

TEXT

The payer is asked to enter text into a field displayed on the UI. For example, ask the payer to enter a One Time Password sent to their registered mobile phone number.

SINGLE_SELECT

The payer is asked to select a single option from a number of presented options. For example, ask the payer if they want a One Time Password to be sent to either their email address or mobile phone number registered with their issuer.

MULTI_SELECT

The payer is asked to select multiple options from a number of presented options. For example, ask the payer to select valid responses to a question.

OUT_OF_BAND

The payer is presented with screens rendered by an out-of-band service during an authentication challenge, For example, the payer is asked to confirm the payment from their banking app.

OTHER_HTML

The payer is presented with an authentication challenge using other mechanisms supported in HTML but not in the native UI format. For example, the payer is asked to confirm an image presented on the screen.

authentication.3ds2.statusReasonCode Copied to clipboard String CONDITIONAL

A code indicating the reason for the transaction status returned in authentication.3ds2.transactionStatus.

Refer to the EMVCo specification for 3-D Secure.

Data can consist of any characters

Min length: 2 Max length: 2
authentication.3ds2.transactionStatus Copied to clipboard Alpha CONDITIONAL

Indicates the result of payer authentication with the issuer.

This is the value returned in the transaction status field from the issuer's Access Control Server (ACS). For example, Y, N, U, A, R

Refer to the EMVCo specification for 3-D Secure.

Data may consist of the characters a-z, A-Z

Min length: 1 Max length: 1
authentication.acceptVersions Copied to clipboard Comma Separated Enumeration CONDITIONAL

A comma separated list of the payer authentication methods that you will accept for this payment.

You only need to provide a value if you want to restrict the authentication methods you will accept.

If you do not specify a value, then the gateway treats it as if you will accept all available authentication methods.

If you accept both 3DS2 and 3DS1, then the gateway will use 3-D Secure version 2 if supported by the issuer and fallback to use 3-D Secure version 1 if it is not.

Value must be one or more comma separated members of the following list. The values are case sensitive.

3DS1

3-D Secure Version 1

3DS2

3-D Secure Version 2

authentication.challengePreference Copied to clipboard Enumeration CONDITIONAL

Indicates if you want the payer to be presented with an authentication challenge for this transaction.

You can use this to support local mandates or your risk tolerance. For example, you may prefer that a challenge is always performed when you store card details on file.

If you do not provide a value, the gateway will use NO_PREFERENCE. If there is no payer present (for example, recurring payments), then the gateway will ignore this field and use NO_CHALLENGE.

Note: 'challenge' means requiring the payer to take action to identify themselves, for example, entering a password.

Value must be a member of the following list. The values are case sensitive.

CHALLENGE_MANDATED

The merchant requires that the payer is presented with an authentication challenge.

CHALLENGE_PREFERRED

The merchant prefers that the payer is presented with an authentication challenge.

NO_CHALLENGE

The merchant prefers that the payer is not presented with an authentication challenge.

NO_PREFERENCE

The issuer determines whether or not the payer should be presented with an authentication challenge. The merchant does not have a preference.

REQUEST_WHITELISTING

Tells the issuer that you prefer them to present the payer with a challenge and that you want them to invite the payer to add you to their list of trusted merchants. If the payer whitelists you, they can skip authentication for any future payments. You will be able to tell whether the payer has added you to their list of trusted merchants by looking at authentication.psd2.whitelistStatus in the authentication response following the completion of the challenge.

authentication.channel Copied to clipboard Enumeration CONDITIONAL

Indicates the channel in which the authentication request is being initiated.

Value must be a member of the following list. The values are case sensitive.

MERCHANT_REQUESTED

The merchant is requesting authentication of a cardholder without the payer being available for interaction (for example. as part of processing of a recurring payment).

PAYER_APP

Payer is interacting via an application on their device which uses an EMVCo-certified SDK.

PAYER_BROWSER

Payer is interacting via web browser (for example, with the merchant's ecommerce web-site).

authentication.goodsDescription Copied to clipboard String CONDITIONAL

Description of the goods being purchased.

If supported, this description will be displayed on the authentication UI presented to the payer.

Data can consist of any characters

Min length: 0 Max length: 30
authentication.psd2 Copied to clipboard CONDITIONAL

This parameter group is only applicable if you are subject to the Regulatory Technical Standards (RTS) requirements for Strong Customer Authentication (SCA) under the Payment Services Directive 2 (PSD2) regulations in the European Economic Area.

It provides details about SCA exemptions under PSD2.

authentication.psd2.exemption Copied to clipboard Enumeration CONDITIONAL

Indicates why this payment qualifies for exemption from Strong Customer Authentication (SCA) under the Payment Services Directive 2 (PSD2).

Note:

  • For recurring payments provide the RECURRING_PAYMENT value only if the amount is the same. If the amount varies, provide MERCHANT_INITIATED_TRANSACTION instead.

Value must be a member of the following list. The values are case sensitive.

LOW_RISK

Exemption is claimed because the acquirer has a low fraud rate.

LOW_VALUE_PAYMENT

Exemption is claimed as the amount is below 30 Euro.

MERCHANT_INITIATED_TRANSACTION

The transaction is excluded as it was initiated by the merchant based on an agreement with the payer. For example, a recurring payment (for a varied or fixed amount), installment payment, or account top-up. In these cases, the payer is not present and cannot participate in an authentication interaction. Merchant initiated transactions are only applicable to subsequent transactions on the order and are out of scope of the PSD2 RTS on Strong Customer Authentication (SCA). The payer must be authenticated during the first transaction that established the agreement.

NONE

An exemption is not claimed for this transaction. The merchant requires Strong Customer Authentication (SCA) be performed.

RECURRING_PAYMENT

The transaction is exempt as it was initiated by the merchant based on an agreement with the payer for a recurring payment for a fixed amount. This value is only applicable to subsequent transactions on the order. In this case, the payer is not present and cannot participate in an authentication interaction. The payer must be authenticated during the first transaction that established the agreement.

SECURE_CORPORATE_PAYMENT

The transaction is exempt as it is a corporate or Business-to-Business (B2B) payment performed using dedicated payment processes and protocols that are not available to consumers and offer at least equivalent security levels.

WHITELISTED_MERCHANT

The transaction is exempt because the payer has added you to the list of their trusted merchants (as maintained by the issuer).

authentication.purpose Copied to clipboard Enumeration CONDITIONAL

Indicates the context in which payer authentication is being requested.

If you do not provide a value, the gateway will use PAYMENT_TRANSACTION as the default.

Note:

  • • If you set this value to ADD_CARD or MAINTAIN_CARD, then set order.amount to zero and order.currency to any currency you support.
  • • If the authentication scheme that applies to the account does not support the purpose that you have requested, this call will return an authenticationStatus of AUTHENTICATION_NOT_SUPPORTED.

Value must be a member of the following list. The values are case sensitive.

ADD_CARD

Authentication performed before a payer's card is stored on file either directly by the merchant or using the gateway's tokenization feature. A payment is not being processed.

MAINTAIN_CARD

Authentication performed before updating details of a payer's card stored on file either directly by the merchant or using the gateway's tokenization feature. A payment is not being processed.

PAYMENT_TRANSACTION

Authentication performed when of processing a card payment.

authentication.redirectResponseUrl Copied to clipboard Url CONDITIONAL

The URL to which you want to redirect the payer after completing the payer authentication process.

This will be a URL on your website, with the URL encoded as defined in RFC3986. This means special characters such spaces, hyphens, etc must be encoded.

You must provide this URL, unless you are certain that there will be no interaction with the payer.

Ensure that the URL begins with 'https' and is longer than 11 characters.

authentication.transactionId Copied to clipboard String CONDITIONAL

The transactionId you used for the Initiate Authentication operation.

Data can consist of any characters

Min length: 1 Max length: 40
authorizationResponse Copied to clipboard CONDITIONAL

Authorisation response fields for a standalone capture request.

authorizationResponse.avsCode Copied to clipboard ASCII Text CONDITIONAL

The acquirer AVS response code generated by the card issuing institution.

Data consists of ASCII characters

Min length: 1 Max length: 100
authorizationResponse.cardLevelIndicator Copied to clipboard String CONDITIONAL

Indicates the card level result returned by the issuer.

Data can consist of any characters

Min length: 1 Max length: 2
authorizationResponse.cardSecurityCodeError Copied to clipboard String CONDITIONAL

CSC Incorrect Indicator.

An indicator, provided by the Issuer in the authorization response, to identify the presence of an invalid card security code (CSC). If there is an error, the Issuer will respond with the 1-byte CSC Error Code (Y).

Data can consist of any characters

Min length: 1 Max length: 1
authorizationResponse.cardSecurityCodePresenceIndicator Copied to clipboard Alphanumeric CONDITIONAL

An Indicator, if a Card security code was provided for the Transaction, as returned by the acquirer.

Data may consist of the characters 0-9, a-z, A-Z

Min length: 1 Max length: 2
authorizationResponse.commercialCard Copied to clipboard String CONDITIONAL

Indicates if the card used is a commercial card.

Data can consist of any characters

Min length: 1 Max length: 3
authorizationResponse.commercialCardIndicator Copied to clipboard String CONDITIONAL

Indicates the type of commercial card as returned by the card issuer.

Data can consist of any characters

Min length: 1 Max length: 1
authorizationResponse.financialNetworkCode Copied to clipboard String CONDITIONAL

Indicates the code of the financial network that was used to process the transaction with the issuer.

Data can consist of any characters

Min length: 1 Max length: 3
authorizationResponse.financialNetworkDate Copied to clipboard Date CONDITIONAL

The date for the Authorization as returned by the financial network.

For transactions processed via the MasterCard Network this is the MasterCard Network Reference Date.

Data must comply with ISO 8601 extended date format, yyyy-mm-dd

authorizationResponse.marketSpecificData Copied to clipboard String CONDITIONAL

Indicates the market or the industry associated with the payment.

For example, B may indicate "bill payment" depending on the acquirer.

Data can consist of any characters

Min length: 1 Max length: 1
authorizationResponse.posData Copied to clipboard String CONDITIONAL

Indicates the specific card information conditions for capture that are available when the card transaction occurs at point of service.

Data can consist of any characters

Min length: 1 Max length: 13
authorizationResponse.posEntryMode Copied to clipboard String CONDITIONAL

The POS Entry Mode provided to Discover (JCB (US Domestic only), and Diners) for the authorization.

Bytes 1-2: Discover (JCB (US Domestic only), and Diners) POS Entry Mode
Byte 3: Discover (JCB (US Domestic only), and Diners) Pin Entry Capability
Byte 4: RFU (Always zero)

Note: Only the first 3 bytes are required for settlement processing.

Data can consist of any characters

Min length: 1 Max length: 4
authorizationResponse.processingCode Copied to clipboard String CONDITIONAL

Identifies the type of Card Transaction sent to Card Acceptor.

Data can consist of any characters

Min length: 1 Max length: 6
authorizationResponse.responseCode Copied to clipboard String CONDITIONAL

The response code which indicates the status of the transaction.

Data can consist of any characters

Min length: 1 Max length: 3
authorizationResponse.returnAci Copied to clipboard String CONDITIONAL

The ACI (Authorization Characteristics Indicator) returned by the issuer.

Data can consist of any characters

Min length: 1 Max length: 1
authorizationResponse.trackQuality Copied to clipboard String CONDITIONAL

Indicates the magnetic stripe condition and the vulnerability for fraud in Discover Network Card Transactions.

Data can consist of any characters

Min length: 1 Max length: 2
authorizationResponse.transactionIdentifier Copied to clipboard String CONDITIONAL

The unique identifier for the transaction returned by the issuer.

Data can consist of any characters

Min length: 1 Max length: 15
authorizationResponse.transactionIntegrityClass Copied to clipboard Alphanumeric CONDITIONAL

The Transaction Integrity Class (TIC) is an indicator defined by the scheme to evaluate the safety and security of the transaction.

The indicator is only supported by some schemes and for all regions.

Data may consist of the characters 0-9, a-z, A-Z

Min length: 1 Max length: 2
authorizationResponse.validationCode Copied to clipboard String CONDITIONAL

The validation code returned by the issuer.

This value must be stored to be sent with the capture transaction.

Data can consist of any characters

Min length: 1 Max length: 4
billing Copied to clipboard CONDITIONAL

Details of the payer's billing address.

billing.address Copied to clipboard CONDITIONAL

The payer's billing address.

This data may be used to qualify for better interchange rates on corporate purchase card transactions.

billing.address.city Copied to clipboard String CONDITIONAL

The city portion of the address.

Data can consist of any characters

Min length: 1 Max length: 100
billing.address.company Copied to clipboard String CONDITIONAL

The name of the company associated with this address.

Data can consist of any characters

Min length: 1 Max length: 100
billing.address.country Copied to clipboard Upper case alphabetic text CONDITIONAL

The 3 letter ISO standard alpha country code of the address.

Data must consist of the characters A-Z

Min length: 3 Max length: 3
billing.address.postcodeZip Copied to clipboard Alphanumeric + additional characters CONDITIONAL

The post code or zip code of the address.

Data may consist of the characters 0-9, a-z, A-Z, ' ', '-'

Min length: 1 Max length: 10
billing.address.stateProvince Copied to clipboard String CONDITIONAL

The state or province of the address.

Data can consist of any characters

Min length: 1 Max length: 20
billing.address.stateProvinceCode Copied to clipboard String CONDITIONAL

The three character ISO 3166-2 country subdivision code for the state or province of the address.

Providing this field might improve your payer experience for 3-D Secure payer authentication.

Data can consist of any characters

Min length: 1 Max length: 3
billing.address.street Copied to clipboard String CONDITIONAL

The first line of the address.

For example, this may be the street name and number, or the Post Office Box details.

Data can consist of any characters

Min length: 1 Max length: 100
billing.address.street2 Copied to clipboard String CONDITIONAL

The second line of the address (if provided).

Data can consist of any characters

Min length: 1 Max length: 100
browserPayment Copied to clipboard CONDITIONAL

Information required by the gateway to manage interactions with a browser payment provider's website.

browserPayment.operation Copied to clipboard Enumeration CONDITIONAL

The type of transaction you want to create for this payment.You can choose between an Authorization and a Payment transaction.

For a successful Authorization transaction, you must submit a CAPTURE request to move the funds from the payer's account to your account.

Value must be a member of the following list. The values are case sensitive.

AUTHORIZE

The transaction created in the gateway is an AUTHORIZATION transaction.

PAY

The transaction created in the gateway is a PAYMENT transaction.

browserPayment.paypal Copied to clipboard CONDITIONAL

Additional information you can provide to control the user interaction flow presented to the payer by PayPal.

browserPayment.paypal.agreementConfirmation Copied to clipboard Enumeration CONDITIONAL

Indicates the action that PayPal displays to the payer prior to being redirected back to your website.

This field is only required when requesting a PayPal billing agreement.

Value must be a member of the following list. The values are case sensitive.

AGREE

After the payer has approved the billing agreement and their browser has been returned to your website, you will not process a payment against this billing agreement at that time.

AGREE_AND_PAY

After the payer has approved the billing agreement and their browser has been returned to your website, you will process a payment against this billing agreement.

browserPayment.paypal.displayShippingAddress Copied to clipboard Boolean CONDITIONAL

Indicates whether you want PayPal to display the shipping address to the payer on the PayPal website.

By default, the shipping address is displayed to the payer. For more detailed information about displaying the shipping address on the PayPal website, see PayPal Integration: Display/Override Shipping Address.

JSON boolean values 'true' or 'false'.

browserPayment.paypal.overrideShippingAddress Copied to clipboard Boolean CONDITIONAL

Indicates whether you want to allow the payer to change the shipping address for the payment on the PayPal website.

By default, the payer is allowed to change the shipping address. For more detailed information about the payer overriding the shipping address on the PayPal website, see PayPal Integration: Display/Override Shipping Address.

JSON boolean values 'true' or 'false'.

browserPayment.paypal.paymentConfirmation Copied to clipboard Enumeration CONDITIONAL

Indicates where in the checkout flow you want the payer to commit to the payment - on the PayPal website or on your website after returning from the PayPal website.

With the latter option, you must confirm the payment using the CONFIRM_BROWSER_PAYMENT operation.

Value must be a member of the following list. The values are case sensitive.

CONFIRM_AT_MERCHANT

The payer commits to the payment on your website.

CONFIRM_AT_PROVIDER

The payer commits to the payment on the PayPal website.

browserPayment.preferredLanguage Copied to clipboard String CONDITIONAL

The language that you prefer the payment provider to use for pages displayed to the payer.

Provide the IETF language tag for the language in accordance with RFC 5646. You can provide either the two-letter primary language tag (for example, en, fr) or the two-letter primary language tag plus the region sub-tag (for example, en-US, fr-CA).

Data must be a language identifier or IETF language tag

Min length: 2 Max length: 35
browserPayment.returnUrl Copied to clipboard Url CONDITIONAL

The URL to which you want the payer's browser to be redirected on completing the payment at the payment provider's website.

The same redirect URL will be used by the gateway to redirect the payer's browser irrespective of the success or otherwise of the payment.

Ensure that the URL begins with 'https' and is longer than 11 characters.

constraints Copied to clipboard CONDITIONAL

Information about any constraints that apply to this transaction.

Specify constraints to ensure that the transaction conforms to predefined criteria. This is useful if your integration does not directly collect all the transaction values (e.g. a session-based integration or a checkout integration).

constraints.paymentPlans Copied to clipboard CONDITIONAL

Information about the payment plan constraints which apply for this transaction.

Specify payment plan constraints to restrict the available payment plan options for this transaction.

constraints.paymentPlans.numberOfDeferrals Copied to clipboard Integer CONDITIONAL

The allowable number of deferral months for the payment plan.

JSON number data type, restricted to being positive or zero. In addition, the represented number may have no fractional part.

Min value: 0 Max value: 99
constraints.paymentPlans.numberOfPayments Copied to clipboard Integer CONDITIONAL

The allowable number of installments for the payment plan.

JSON number data type, restricted to being positive or zero. In addition, the represented number may have no fractional part.

Min value: 1 Max value: 99
constraints.paymentPlans.supported[n] Copied to clipboard String CONDITIONAL

The identifiers for the payment plans supported for this transaction.

If you wish to offer any payment plans to the payer, provide the plan identifiers in this field else pass it as empty.

See Payment Plans for the supported payment plans and their identifiers.

Data can consist of any characters

Min length: 1 Max length: 40
correlationId Copied to clipboard String CONDITIONAL

A transient identifier for the request, that can be used to match the response to the request.

The value provided is not validated, does not persist in the gateway, and is returned as provided in the response to the request.

Data can consist of any characters

Min length: 1 Max length: 100
cruise Copied to clipboard CONDITIONAL

Cruise industry data.

cruise.bookingReference Copied to clipboard String CONDITIONAL

The cruise booking reference.

Data can consist of any characters

Min length: 1 Max length: 12
cruise.company Copied to clipboard CONDITIONAL

Information about the cruise line.

cruise.company.address Copied to clipboard CONDITIONAL

Address of the cruise line.

cruise.company.address.city Copied to clipboard String CONDITIONAL

The city portion of the address.

Data can consist of any characters

Min length: 1 Max length: 100
cruise.company.address.country Copied to clipboard Upper case alphabetic text CONDITIONAL

The 3 letter ISO standard alpha country code of the address.

Data must consist of the characters A-Z

Min length: 3 Max length: 3
cruise.company.address.postCodeZip Copied to clipboard Alphanumeric + additional characters CONDITIONAL

The post code or zip code of the address.

Data may consist of the characters 0-9, a-z, A-Z, ' ', '-'

Min length: 1 Max length: 10
cruise.company.address.stateProvince Copied to clipboard String CONDITIONAL

The state or province of the address.

Data can consist of any characters

Min length: 1 Max length: 20
cruise.company.address.street Copied to clipboard String CONDITIONAL

The first line of the address.

Data can consist of any characters

Min length: 1 Max length: 100
cruise.company.address.street2 Copied to clipboard String CONDITIONAL

The second line of the address (if provided).

Data can consist of any characters

Min length: 1 Max length: 100
cruise.company.contact Copied to clipboard CONDITIONAL

Contact details of the cruise line.

cruise.company.contact.companyPhone Copied to clipboard Telephone Number CONDITIONAL

The cruise line registered office telephone number in ITU-T E123 format.

Data consists of '+', country code (1, 2 or 3 digits), 'space', and national number (which may embed single space characters for readability)

Mandatory country code: true Max total digits: 15
cruise.company.contact.customerServicePhone Copied to clipboard Telephone Number CONDITIONAL

The customer service phone number in ITU-T E123 format.

Data consists of '+', country code (1, 2 or 3 digits), 'space', and national number (which may embed single space characters for readability)

Mandatory country code: true Max total digits: 15
cruise.departureDate Copied to clipboard Date CONDITIONAL

The cruise departure/ sail date.

This field is required when cruise industry data is provided.

The value entered must be equal to or earlier than cruise.returnDate.

Data must comply with ISO 8601 extended date format, yyyy-mm-dd

cruise.passenger[n] Copied to clipboard CONDITIONAL

Cruise passenger details.

cruise.passenger[n].firstName Copied to clipboard String CONDITIONAL

The first name of the passenger.

Data can consist of any characters

Min length: 1 Max length: 50
cruise.passenger[n].folioNumber Copied to clipboard String CONDITIONAL

The folio number assigned to the passenger.

Data can consist of any characters

Min length: 1 Max length: 30
cruise.passenger[n].lastName Copied to clipboard String CONDITIONAL

The last name of the passenger.

Data can consist of any characters

Min length: 1 Max length: 50
cruise.passenger[n].middleName Copied to clipboard String CONDITIONAL

The middle name of the passenger.

Data can consist of any characters

Min length: 1 Max length: 50
cruise.passenger[n].title Copied to clipboard String CONDITIONAL

The title of the passenger.

Data can consist of any characters

Min length: 1 Max length: 50
cruise.returnDate Copied to clipboard Date CONDITIONAL

The cruise return/ sail end date.

This field is required when cruise.departureDate is provided and the value must be equal to or later than cruise.departureDate.

Data must comply with ISO 8601 extended date format, yyyy-mm-dd

cruise.shipName Copied to clipboard String CONDITIONAL

The name of the cruise ship.

Data can consist of any characters

Min length: 1 Max length: 50
cruise.travelAgentCode Copied to clipboard Alphanumeric CONDITIONAL

The industry code of the travel agent booking the cruise.

Data may consist of the characters 0-9, a-z, A-Z

Min length: 8 Max length: 9
cruise.travelAgentName Copied to clipboard String CONDITIONAL

The name of the travel agent booking the cruise.

Data can consist of any characters

Min length: 1 Max length: 30
cruise.travelPackageItems Copied to clipboard Comma separated enumeration CONDITIONAL

A comma separated list of the travel items that are included as part of a cruise travel package.

If the value CRUISE_ONLY is provided then other items are not permitted in the list.

Value must be one or more comma separated members of the following list. The values are case sensitive.

CAR_RENTAL

Car rental is included in the travel package.

CRUISE_ONLY

No additional items are included in the cruise travel package.

FLIGHT

Flights are included in the travel package.

currencyConversion Copied to clipboard CONDITIONAL

Information specific to the use of dynamic currency conversion (DCC).

If you requested a rate quote via the gateway, provide the requestId as returned in the PAYMENT_OPTIONS_INQUIRY response. For rate quote requests performed outside the gateway, you must at least provide payer amount, payer currency, provider and payer exchange rate.

You can only provide DCC information on the initial transaction for an order. If provided on subsequent transactions or an order, DCC information will be ignored.

currencyConversion.exchangeRateTime Copied to clipboard DateTime CONDITIONAL

The timestamp of when the conversion rate is effective.

The timestamp may need to be displayed to the payer on the merchant site to satisfy regulatory requirements.

An instant in time expressed in ISO8601 date + time format - "YYYY-MM-DDThh:mm:ss.SSSZ"

currencyConversion.marginPercentage Copied to clipboard Decimal CONDITIONAL

The foreign exchange markup applied as a percentage to the transaction amount for providing the conversion service.

The margin percentage may need to be displayed to the payer on the merchant site to satisfy regulatory requirements.

Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.

Min length: 1 Max length: 8
currencyConversion.payerAmount Copied to clipboard Decimal CONDITIONAL

The total amount of the transaction in the payer's currency.

You must include this field if the payer accepted the DCC offer you presented to them.

Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.

Min length: 1 Max length: 14
currencyConversion.payerCurrency Copied to clipboard Upper case alphabetic text CONDITIONAL

The currency of the DCC rate quote provided by your DCC Service Provider.

The currency must be expressed as an ISO 4217 alpha code, e.g. USD and must be different to that provided for transaction currency. You must include this field if the payer accepted the DCC offer you presented to them.

Data must consist of the characters A-Z

Min length: 3 Max length: 3
currencyConversion.payerExchangeRate Copied to clipboard Decimal CONDITIONAL

The exchange rate used to convert the transaction amount into the payer's currency.

The payer exchange rate includes the foreign exchange markup (marginPercentage). The payer exchange rate is displayed to the payer on the merchant site.

Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.

Min length: 1 Max length: 19
currencyConversion.provider Copied to clipboard Enumeration CONDITIONAL

This identifies the name of the provider of the DCC quote.

This data is for information purposes, and may be useful if you use multiple DCC providers.

Value must be a member of the following list. The values are case sensitive.

FEXCO
FTT
GLOBAL_PAYMENTS
IBM
TRAVELEX_CURRENCY_SELECT
UNICREDIT
currencyConversion.providerReceipt Copied to clipboard String CONDITIONAL

The quote provider's unique reference to the rate quote.

Data can consist of any characters

Min length: 1 Max length: 100
currencyConversion.requestId Copied to clipboard String CONDITIONAL

The unique identifier for your DCC quote request as returned in the PAYMENT_OPTIONS_INQUIRY response.

Data can consist of any characters

Min length: 1 Max length: 100
currencyConversion.uptake Copied to clipboard Enumeration CONDITIONAL

Indicates how DCC applies to the order.

If not provided, this value defaults to NOT_REQUIRED.

Value must be a member of the following list. The values are case sensitive.

ACCEPTED

The payer accepted the DCC offer and pays in their own currency. The conditions of the rate quote are applied in the processing of this transaction.

DECLINED

The payer declined the DCC offer and pays in your transaction currency.

NOT_AVAILABLE

A rate quote was requested, but no DCC offer was provided. For rate quotes via the gateway the PAYMENT_OPTION_INQUIRY response contains a currencyConversion.gatewayCode other than QUOTE_PROVIDED.

NOT_REQUIRED

DCC is not required for this transaction.

customer Copied to clipboard CONDITIONAL

Information associated with the customer's source of transaction.

customer.ani Copied to clipboard String CONDITIONAL

The telephone number captured by ANI (Automatic Number Identification) when the customer calls to place the order.

Data can consist of any characters

Min length: 1 Max length: 10
customer.aniCallType Copied to clipboard String CONDITIONAL

The 2 digit ANI information identifier provided by the telephone company to indicate the call type, for example, cellular (61-63), toll free (24,25), etc.

Data can consist of any characters

Min length: 1 Max length: 2
customer.browser Copied to clipboard String CONDITIONAL

The User-Agent header of the browser the customer used to place the order.

For example, MOZILLA/4.0 (COMPATIBLE; MSIE 5.0; WINDOWS 95)

Data can consist of any characters

Min length: 1 Max length: 255
customer.dateOfBirth Copied to clipboard Date CONDITIONAL

The payer's date of birth.

Data must comply with ISO 8601 extended date format, yyyy-mm-dd

customer.email Copied to clipboard Email CONDITIONAL

The email address of the customer.

The field format restriction ensures that the email address is longer than 3 characters and adheres to a generous subset of valid RFC 2822 email addresses.

Ensures that the email address is longer than 3 characters and adheres to a generous subset of valid RFC 2822 email addresses

customer.firstName Copied to clipboard String CONDITIONAL

The payer's first name.

Data can consist of any characters

Min length: 1 Max length: 50
customer.hostname Copied to clipboard String CONDITIONAL

The name of the server to which the customer is connected.

Data can consist of any characters

Min length: 1 Max length: 60
customer.ipAddress Copied to clipboard String CONDITIONAL

The IP address of the computer used by the customer, in nnn.nnn.nnn.nnn format.

Data can consist of any characters

Min length: 7 Max length: 15
customer.lastName Copied to clipboard String CONDITIONAL

The payer's last or surname.

Data can consist of any characters

Min length: 1 Max length: 50
customer.mobilePhone Copied to clipboard Telephone Number CONDITIONAL

The payer's mobile phone or cell phone number in ITU-T E123 format, for example +1 607 1234 5678

The number consists of:

  • '+'
  • country code (1, 2 or 3 digits)
  • 'space'
  • national number ( which may embed single spaces characters for readability).

Data consists of '+', country code (1, 2 or 3 digits), 'space', and national number (which may embed single space characters for readability)

Mandatory country code: true Max total digits: 15
customer.nationalId Copied to clipboard String CONDITIONAL

An identifier for the payer assigned by a government authority.

For example, in Mexico this could be the CURP (Clave Única de Registro de Población), RFC (Registro Federal del Contribuyente), or INE (Instituto Nacional Electoral) number. In Brazil this could be the CPF (Cadastro de Pessoas Físicas) or CNPJ (Cadastro Nacional de Pessoas Jurídicas).

Data can consist of any characters

Min length: 1 Max length: 30
customer.phone Copied to clipboard Telephone Number CONDITIONAL

The payer's phone number in ITU-T E123 format, for example +1 607 1234 456

The number consists of:

  • '+'
  • country code (1, 2 or 3 digits)
  • 'space'
  • national number ( which may embed single spaces characters for readability).

Data consists of '+', country code (1, 2 or 3 digits), 'space', and national number (which may embed single space characters for readability)

Mandatory country code: true Max total digits: 15
customer.taxRegistrationId Copied to clipboard String CONDITIONAL

The tax registration identifier of the customer.

Data can consist of any characters

Min length: 1 Max length: 30
debtRepayment Copied to clipboard CONDITIONAL

Details about debt repayment transactions.

If your Merchant Category Code is 6012 (Merchandise and Services—Customer Financial Institutions) or 6051 ( (Non-Financial Institutions – Foreign Currency, Non-Fiat Currency)) you may be required to provide some or all the details in this parameter group when submitting a debt repayment transaction.

debtRepayment.indicator Copied to clipboard Boolean CONDITIONAL

Use this field to indicate if the transaction is for a debt repayment.

If your Merchant Category Code is 6012 (Merchandise and Services—Customer Financial Institutions) or 6051 ( (Non-Financial Institutions – Foreign Currency, Non-Fiat Currency)) you must provide this field when submitting a debt repayment transaction.

JSON boolean values 'true' or 'false'.

debtRepayment.paymentRecipient Copied to clipboard CONDITIONAL

Details about the recipient of the payment and the destination account for the payment.

debtRepayment.paymentRecipient.accountIdentifier Copied to clipboard String CONDITIONAL

The account identifier for the payment recipient's account.

For payments into a card account provide the card number. For payments into other accounts (for example a bank account) provide the account number. The value provided will be returned masked in the response.

Data can consist of any characters

Min length: 1 Max length: 50
debtRepayment.paymentRecipient.dateOfBirth Copied to clipboard Date CONDITIONAL

The date of birth of the primary payment recipient in yyyy-mm-dd format.

Data must comply with ISO 8601 extended date format, yyyy-mm-dd

debtRepayment.paymentRecipient.lastName Copied to clipboard String CONDITIONAL

Last name of the primary payment recipient.

Data can consist of any characters

Min length: 1 Max length: 50
debtRepayment.paymentRecipient.postcodeZip Copied to clipboard String CONDITIONAL

Postcode of the primary payment recipient.

Data can consist of any characters

Min length: 1 Max length: 10
device Copied to clipboard CONDITIONAL

Information about the device used by the payer for this transaction.

device.ani Copied to clipboard String CONDITIONAL

The telephone number captured by ANI (Automatic Number Identification) when the customer calls to place the order.

Data can consist of any characters

Min length: 1 Max length: 10
device.aniCallType Copied to clipboard String CONDITIONAL

The 2 digit ANI information identifier provided by the telephone company to indicate the call type, for example, cellular (61-63), toll free (24,25), etc.

Data can consist of any characters

Min length: 1 Max length: 2
device.browser Copied to clipboard String CONDITIONAL

The User-Agent header of the browser the customer used to place the order.For example, MOZILLA/4.0 (COMPATIBLE; MSIE 5.0; WINDOWS 95)

You must provide a value in this field if you are performing 3-D Secure authentication of the payer and set authentication.channel = PAYER_BROWSER.

Data can consist of any characters

Min length: 1 Max length: 255
device.browserDetails Copied to clipboard CONDITIONAL

Detailed information about the payer's browser.

If you are using 3-D Secure authentication to authenticate the payer, then this information is used by the issuer's Access Control Server (ACS) to identify the capabilities of the payers browser so that it can render content appropriately when authenticating the payer.

You must provide values for fields in this parameter group if you are performing 3-D Secure authentication of the payer and set authentication.channel = PAYER_BROWSER.

device.browserDetails.3DSecureChallengeWindowSize Copied to clipboard Enumeration CONDITIONAL

Dimensions of the challenge window (in width x height in pixels) displayed to the payer during 3D-Secure authentication.

This must be provided for authentication operations where authentication.channel is PAYER_BROWSER.

Value must be a member of the following list. The values are case sensitive.

250_X_400
390_X_400
500_X_600
600_X_400
FULL_SCREEN
device.browserDetails.acceptHeaders Copied to clipboard String CONDITIONAL

The content of the Accept request-header field as sent from the payer's browser.

This is used to determine which content types are supported by the browser.

This must be provided for authentication operations where authentication.channel is PAYER_BROWSER.

Data can consist of any characters

Min length: 1 Max length: 2048
device.browserDetails.colorDepth Copied to clipboard Integer CONDITIONAL

The bit depth (in bits per pixel) of the color palette for displaying images.

You obtain this value from the screen.colorDepth property of the payer's browser.

This must be provided for authentication operations where authentication.channel is PAYER_BROWSER.

JSON number data type, restricted to being positive or zero. In addition, the represented number may have no fractional part.

Min value: 1 Max value: 48
device.browserDetails.javaEnabled Copied to clipboard Boolean CONDITIONAL

Indicates whether or not the payer's browser supports Java.

You obtain this value from the navigator.javaEnabled property of the payer's browser

This must be provided for authentication operations where authentication.channel is PAYER_BROWSER.

JSON boolean values 'true' or 'false'.

device.browserDetails.javaScriptEnabled Copied to clipboard Boolean CONDITIONAL

Indicates whether or not the payer's browser supports JavaScript.

You can determine this by setting the relevant value in a form to false, and then attempting to update it to true using JavaScript.

JSON boolean values 'true' or 'false'.

device.browserDetails.language Copied to clipboard String CONDITIONAL

The language supported for the payer's browser as defined in IETF BCP47.

You obtain this value from the navigator.language property of the payer's browser.

This must be provided for authentication operations where authentication.channel is PAYER_BROWSER.

Data can consist of any characters

Min length: 1 Max length: 8
device.browserDetails.screenHeight Copied to clipboard Integer CONDITIONAL

The total height of the payer's browser screen in pixels.

You obtain this value from the screen.height property of the payer's browser

This must be provided for authentication operations where authentication.channel is PAYER_BROWSER.

JSON number data type, restricted to being positive or zero. In addition, the represented number may have no fractional part.

Min value: 1 Max value: 999999
device.browserDetails.screenWidth Copied to clipboard Integer CONDITIONAL

The total width of the payer's browser screen in pixels.

You obtain this value from the screen.width property of the payer's browser

This must be provided for authentication operations where authentication.channel is PAYER_BROWSER.

JSON number data type, restricted to being positive or zero. In addition, the represented number may have no fractional part.

Min value: 1 Max value: 999999
device.browserDetails.timeZone Copied to clipboard Browser Time Zone Offset CONDITIONAL

Time difference between UTC time and the Cardholder browser local time, in minutes.

The time zone offset is the difference, in minutes, between UTC and local time. Note that this means that the offset is positive if the local time zone is behind UTC and negative if it is ahead. For example, for time zone UTC+10:00 (Australian Eastern Standard Time, Vladivostok Time, Chamorro Standard Time), -600 would be presented.

This must be provided for authentication operations where authentication.channel is PAYER_BROWSER.

Browser time zone offset between -840 to +840.

device.fingerprint Copied to clipboard String CONDITIONAL

Information collected about a remote computing device for the purpose of providing a unique identifier for the device.

For example, session ID, blackbox ID.

Data can consist of any characters

Min length: 1 Max length: 4000
device.hostname Copied to clipboard String CONDITIONAL

The name of the server to which the customer is connected.

Data can consist of any characters

Min length: 1 Max length: 60
device.ipAddress Copied to clipboard String CONDITIONAL

The IP address of the device used by the payer, in nnn.nnn.nnn.nnn format.

Data can consist of any characters

Min length: 7 Max length: 15
device.mobilePhoneModel Copied to clipboard String CONDITIONAL

The mobile phone manufacturer's identifier for the model of the mobile device used to initiate the payment.

Data can consist of any characters

Min length: 1 Max length: 255
gatewayEntryPoint Copied to clipboard Enumeration CONDITIONAL

The interface through which the transaction is submitted to the gateway.

Value must be a member of the following list. The values are case sensitive.

AUTO

The transaction was automatically generated by the gateway. For example, a Capture transaction for Auto-Capture or an order reversal transaction for risk rejected orders.

BATCH

The transaction was submitted as part of a merchant batch. Batches can either be uploaded via Batch or via Merchant Administration.

CHECKOUT

The transaction was created via checkout integration.

MERCHANT_ADMINISTRATION

The transaction was initiated in the Merchant Administration.

SERVICE_PROVIDER_API

The transaction was reported by an acquirer or alternate payment provider.

WEB_SERVICES_API

The transaction was submitted via Web Services API.

lineOfBusiness Copied to clipboard String CONDITIONAL

Your payment service provider might have configured your merchant profile to support several lines of business.

Each line of business can have different payment parameters, such as bank account, supported cards or such.

For example, lineOfBusiness = TICKET_SALES can have a different bank account from lineOfBusiness = MERCHANDISING. One line of business on your profile might be "null". To use that, do not provide the lineOfBusiness field.

Data can consist of any characters except space

Min length: 1 Max length: 100
locale Copied to clipboard String CONDITIONAL

A language identifier or IETF language tag to control the language of the payment interaction with the payer (e.g. en_US, es, fr-CA).

By default, the language is determined from your configuration. Supply a value for this field only if you wish to override the default behavior. If the language you specify is not supported by the gateway, the payment is displayed in the best matching language.

See Dynamic Currency Conversion for more detail.

Data must be a language identifier or IETF language tag

Min length: 2 Max length: 5
merchant Copied to clipboard Alphanumeric + additional characters ALWAYS PROVIDED

The unique identifier issued to you by your payment provider.

This identifier can be up to 12 characters in length.

Data may consist of the characters 0-9, a-z, A-Z, '-', '_'

Min length: 1 Max length: 40
order Copied to clipboard ALWAYS PROVIDED

order

order.acceptPartialAmount Copied to clipboard Boolean CONDITIONAL

Indicates whether you will accept a payment less than order.amount, e.g. when using a gift card.

If not set or set to FALSE, and the full amount is not available, the transaction will be rejected.
Unless you have been advised by your payment service provider that the gateway supports partial approvals for your acquirer, you can ignore this field.
If the gateway supports partial approvals for your acquirer you must set this field to TRUE else the transaction is rejected by the gateway.

JSON boolean values 'true' or 'false'.

order.amount Copied to clipboard Decimal CONDITIONAL

The total amount for the order.

Data is a decimal number.

Max value: 2140000000 Min value: 0.001 Max post-decimal digits: 3
order.cashAdvance Copied to clipboard Boolean CONDITIONAL

Set this flag if the transaction is a manual cash disbursement transaction, i.e. cash is disbursed upon the acceptance of a card by a financial institution teller.

JSON boolean values 'true' or 'false'.

order.cashbackAmount Copied to clipboard Decimal CONDITIONAL

The amount the payer has chosen to receive as cash in addition to the amount they are paying for the goods or services they are purchasing from you.

The cash back amount is included in the total amount of the order you provide in order.amount.

This field corresponds to EMV tag 9F03

Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.

Min length: 1 Max length: 14
order.certainty Copied to clipboard Enumeration CONDITIONAL

Indicates if you expect to capture the full order amount for which you are requesting authorization.

If you do not provide a value for order.certainty the default configured for you by your payment service provider will be used. The value provided in the response shows the value the gateway sent to the acquirer

Value must be a member of the following list. The values are case sensitive.

ESTIMATED

The amount authorized is an estimate of the amount that will be captured. It is possible that the amount captured will be less, or might not be captured at all.

FINAL

The full authorized amount is expected to be captured within the mandated time. The order will only be cancelled in exceptional circumstances (for example, the payer cancelled their purchase).

order.currency Copied to clipboard Upper case alphabetic text CONDITIONAL

The currency of the order expressed as an ISO 4217 alpha code, e.g. USD.

Data must consist of the characters A-Z

Min length: 3 Max length: 3
order.custom Copied to clipboard String CONDITIONAL

Information about this order that is of interest to you.

For example order.custom.X, where 'X' is defined by you and must be less than 100 characters from the set A-Z, a-z, 0-9. For example, order.custom.salesRegion. You can specify up to 50 such fields. They are not sent to acquirers.

Data can consist of any characters

Min length: 1 Max length: 250
order.customerNote Copied to clipboard String CONDITIONAL

A note from the payer about this order.

Data can consist of any characters

Min length: 1 Max length: 250
order.customerOrderDate Copied to clipboard Date CONDITIONAL

The date the payer placed the order.

Data must comply with ISO 8601 extended date format, yyyy-mm-dd.

order.customerReference Copied to clipboard ASCII Text CONDITIONAL

The payer's own reference for the order.

This reference may assist the payer to identify the order in their system. For example, a purchase order number, project identifier, or cost center.

Data consists of ASCII characters

Min length: 0 Max length: 25
order.description Copied to clipboard String CONDITIONAL

Short textual description of the contents of the order for display to the payer on the payment provider's website.

Data can consist of any characters

Min length: 1 Max length: 127
order.discount Copied to clipboard CONDITIONAL

Information about a price reduction you have applied to the order.

For example, you may apply discounts for trade, employees, bulk purchase, or a sales promotion.

order.discount.amount Copied to clipboard Decimal CONDITIONAL

The total amount of the discount you have applied to the order.

Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.

Min length: 1 Max length: 14
order.discount.code Copied to clipboard String CONDITIONAL

The code you use to identify the reason for the discount.

Data can consist of any characters

Min length: 1 Max length: 40
order.discount.description Copied to clipboard String CONDITIONAL

A description of your reason for the discount.

Data can consist of any characters

Min length: 1 Max length: 127
order.expectedNumberOfCaptures Copied to clipboard Digits CONDITIONAL

This field only applies if you intend to receive the payer's funds in several Capture operations.

You must provide this value where you want the gateway to automatically reverse the outstanding Authorization amount you do not intend to capture. Note that this requires your merchant profile to be configured accordingly. Contact your payment service provider if you are unsure about your configuration.
The field indicates the total number of Capture requests you intend to submit for an order. For example, if you intend to deliver the goods in two shipments and will capture part of the total authorized amount when you make each shipment, set the value of this field to 2.
If the value equals or drops below the actual number of successful Captures, then the gateway will prevent further Captures and void the outstanding Authorization amount (depending on your merchant profile configuration). If you are unsure of the number of Captures, set the value to 99, and to one on your last Capture.
If you do not provided a value for this field, but had previously provided one, the previous value is applied. For example, if you provide a value 2 on the first Capture for the order and then submit a second Capture without a value, the gateway assumes that the value is still 2.

Data is a number between 1 and 99 represented as a string.

order.gratuityAmount Copied to clipboard Decimal CONDITIONAL

The amount the payer has chosen to provide as a gratuity or tip in addition to the amount they are paying for the goods or services they are purchasing from you.

The gratuity amount is included in the total amount of the order you provide in order.amount.

Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.

Min length: 1 Max length: 14
order.id Copied to clipboard String CONDITIONAL

A unique identifier for this order to distinguish it from any other order you create.

Use this identifier when referring to this order in subsequent transactions and in retrieval operations. This value must be unique for every order you create using your merchant profile.

Data can consist of any characters

Min length: 1 Max length: 40
order.invoiceNumber Copied to clipboard String CONDITIONAL

The invoice number you issued for this order.

Data can consist of any characters

Min length: 1 Max length: 25
order.localTaxRegistrationId Copied to clipboard String CONDITIONAL

Your tax registration identifier provided by the Local/State/Province tax authority.

If you are a Canadian merchant, use this field to provide your Tax Registration ID for paying Provincial Sales Tax (PST).

Data can consist of any characters

Min length: 1 Max length: 25
order.merchantCategoryCode Copied to clipboard Digits CONDITIONAL

A 4-digit code used to classify your business by the type of goods or services it offers.

This is also known as the Merchant Category Code (MCC).
You only need to provide the MCC if you want to override the default value configured for your acquirer link.The value you provide must match one of those configured by your payment service provider.

Data is a string that consists of the characters 0-9.

Min length: 4 Max length: 4
order.netAmount Copied to clipboard Decimal CONDITIONAL

The amount payable for the order before surcharging is applied.

If you specify a net amount the gateway will calculate the surcharge for you. Alternatively, you can specify the surcharge amount (order.surchargeAmount) yourself.

Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.

Min length: 1 Max length: 14
order.notificationUrl Copied to clipboard Url CONDITIONAL

The URL to which the gateway will send Webhook notifications when an order is created or updated.

To receive notifications at this URL, you must enable Webhook notifications in Merchant Administration. Ensure the URL is HTTPS

Ensure that the URL begins with 'https' and is longer than 11 characters.

order.owningEntity Copied to clipboard String CONDITIONAL

Your identifier for the part of your organization that is responsible for the order.

You might provide this data when you want to track the accountability for the order. For example, store number, sales region, branch, or profit center

Data can consist of any characters

Min length: 1 Max length: 40
order.reference Copied to clipboard String CONDITIONAL

The identifier of the order.

For example, a shopping cart number, an order number, or an invoice number.

Data can consist of any characters

Min length: 1 Max length: 40
order.requestorName Copied to clipboard String CONDITIONAL

The name of the person who requested the goods or services.

Data can consist of any characters

Min length: 1 Max length: 100
order.reward Copied to clipboard CONDITIONAL

Information about reward points earned using a card enrolled in a rewards program that are being redeemed as full or part payment for this order.

order.reward.amount Copied to clipboard Decimal CONDITIONAL

The amount that the payer has chosen to pay by redeeming reward points earned using a card enrolled in a rewards program for full or part payment for this purchase.

The reward amount is included in the total amount of the order you provide in order.amount.You must provide this value if the rewards program supports a payer-nominated amount (availableBalance.reward.payerNominatedAmount returned from the Balance Inquiry operation has a value of 'true').

Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.

Min length: 1 Max length: 14
order.reward.balanceId Copied to clipboard Alphanumeric + additional characters CONDITIONAL

An identifier generated by the gateway when you have requested the balance available for a credit or debit card.

The presence of this field indicates that rewards are to be redeemed.The gateway will use the details stored against this identifier when authorizing the payment with your acquirer.

Data may consist of the characters 0-9, a-z, A-Z, '-', '_', ' ', '&', '+', '!', '$', '%', '.', '='

Min length: 1 Max length: 100
order.shippingAndHandlingAmount Copied to clipboard Decimal CONDITIONAL

The total shipping and handling amount for the order.

Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.

Min length: 1 Max length: 14
order.statementDescriptor Copied to clipboard CONDITIONAL

Contact information provided by you for printing on payer's account statements.

order.statementDescriptor.address Copied to clipboard CONDITIONAL

Descriptor address of the merchant.

order.statementDescriptor.address.city Copied to clipboard String CONDITIONAL

The city portion of the address.

Data can consist of any characters

Min length: 1 Max length: 100
order.statementDescriptor.address.company Copied to clipboard String CONDITIONAL

The name of the company associated with this address.

Data can consist of any characters

Min length: 1 Max length: 100
order.statementDescriptor.address.country Copied to clipboard Upper case alphabetic text CONDITIONAL

The 3 letter ISO standard alpha country code of the address.

Data must consist of the characters A-Z

Min length: 3 Max length: 3
order.statementDescriptor.address.postcodeZip Copied to clipboard Alphanumeric + additional characters CONDITIONAL

The post code or zip code of the address.

Data may consist of the characters 0-9, a-z, A-Z, ' ', '-'

Min length: 1 Max length: 10
order.statementDescriptor.address.stateProvince Copied to clipboard String CONDITIONAL

The state or province of the address.

Data can consist of any characters

Min length: 1 Max length: 20
order.statementDescriptor.address.street Copied to clipboard String CONDITIONAL

The first line of the address.

For example, this may be the street name and number, or the Post Office Box details.

Data can consist of any characters

Min length: 1 Max length: 100
order.statementDescriptor.address.street2 Copied to clipboard String CONDITIONAL

The second line of the address (if provided).

Data can consist of any characters

Min length: 1 Max length: 100
order.statementDescriptor.name Copied to clipboard String CONDITIONAL

Descriptor name of the merchant.

Data can consist of any characters

Min length: 1 Max length: 100
order.statementDescriptor.phone Copied to clipboard String CONDITIONAL

Descriptor phone number of the merchant's business.

Data can consist of any characters

Min length: 1 Max length: 20
order.subMerchant Copied to clipboard CONDITIONAL

Provide these parameters if you are a payment aggregator or facilitator and process payments on behalf of other merchants.

These merchants are referred to as your sub-merchants.

The sub-merchant's details you provide may be displayed on the payer's cardholder statement.

Note that your acquirer may require you to register with the card scheme(s) before allowing you to submit sub-merchant details with a transaction.

This data must be on the initial transaction of an order, subsequent transactions with sub-merchant will be rejected.

Note: If you are requesting payer authentication using 3-D Secure Version 2 then you must provide values for order.subMerchant.address.country and order.subMerchant.bankIndustryCode.

order.subMerchant.address Copied to clipboard CONDITIONAL

The sub-merchant's address.

order.subMerchant.address.city Copied to clipboard String CONDITIONAL

The city portion of the address.

Data can consist of any characters

Min length: 1 Max length: 100
order.subMerchant.address.company Copied to clipboard String CONDITIONAL

The name of the company associated with this address.

Data can consist of any characters

Min length: 1 Max length: 100
order.subMerchant.address.country Copied to clipboard Upper case alphabetic text CONDITIONAL

The 3 letter ISO standard alpha country code of the address.

Data must consist of the characters A-Z

Min length: 3 Max length: 3
order.subMerchant.address.postcodeZip Copied to clipboard Alphanumeric + additional characters CONDITIONAL

The post code or zip code of the address.

Data may consist of the characters 0-9, a-z, A-Z, ' ', '-'

Min length: 1 Max length: 10
order.subMerchant.address.stateProvince Copied to clipboard String CONDITIONAL

The state or province of the address.

Data can consist of any characters

Min length: 1 Max length: 20
order.subMerchant.address.stateProvinceCode Copied to clipboard String CONDITIONAL

The three character ISO 3166-2 country subdivision code for the state or province of the address.

Providing this field might improve your payer experience for 3-D Secure payer authentication.

Data can consist of any characters

Min length: 1 Max length: 3
order.subMerchant.address.street Copied to clipboard String CONDITIONAL

The first line of the address.

For example, this may be the street name and number, or the Post Office Box details.

Data can consist of any characters

Min length: 1 Max length: 100
order.subMerchant.address.street2 Copied to clipboard String CONDITIONAL

The second line of the address (if provided).

Data can consist of any characters

Min length: 1 Max length: 100
order.subMerchant.authentication[n] Copied to clipboard CONDITIONAL

Information about the sub-merchant's registration to use a payer authentication protocol.

For example, using 3-D Secure authentication.

order.subMerchant.authentication[n].3DS2 Copied to clipboard CONDITIONAL

Information about the sub-merchant's registration to use 3-D Secure authentication version 2.

These details are used to identify the sub-merchant to the card scheme's directory server.

order.subMerchant.authentication[n].3DS2.requestorId Copied to clipboard String CONDITIONAL

The unique identifier assigned to the merchant by the card scheme directory server when the merchant registered to use 3-D Secure authentication version 2 with their acquirer.

Do not provide this value for Mastercard SecureCode or Verified by Visa. For these authentication schemes, it will be generated by the gateway.

Data can consist of any characters

Min length: 1 Max length: 35
order.subMerchant.authentication[n].3DS2.requestorName Copied to clipboard String CONDITIONAL

The unique name assigned to the merchant by the card scheme directory server when the merchant registered to use 3-D Secure authentication version 2 with their acquirer.

Do not provide this value for Mastercard SecureCode or Verified by Visa. For these authentication schemes, it will be generated by the gateway.

Data can consist of any characters

Min length: 1 Max length: 40
order.subMerchant.authentication[n].protocol Copied to clipboard Enumeration CONDITIONAL

The protocol used for payer authentication.

Value must be a member of the following list. The values are case sensitive.

AMEX_SAFEKEY

American Express SafeKey EMV 3DS authentication

UNIONPAY

UnionPay EMV 3DS authentication

VERIFIED_BY_VISA

Visa Verified by Visa EMV 3DS authentication

order.subMerchant.bankIndustryCode Copied to clipboard Digits CONDITIONAL

Code used by acquirer to describe the business or industry the sub-merchant operates in.

You must provide a value if you want the gateway to perform 3-D Secure Version 2 authentication of the payer.

Data is a string that consists of the characters 0-9.

Min length: 4 Max length: 4
order.subMerchant.email Copied to clipboard Email CONDITIONAL

The sub-merchant's email address.

Ensures that the email address is longer than 3 characters and adheres to a generous subset of valid RFC 2822 email addresses

order.subMerchant.identifier Copied to clipboard String CONDITIONAL

Your identifier for the sub-merchant.

You can use this identifier in searches and reports in the gateway.

Data can consist of any characters

Min length: 1 Max length: 100
order.subMerchant.phone Copied to clipboard String CONDITIONAL

The sub-merchant's phone number

Data can consist of any characters

Min length: 1 Max length: 20
order.subMerchant.registeredName Copied to clipboard String CONDITIONAL

The legal name of the sub-merchant.

Data can consist of any characters

Min length: 1 Max length: 100
order.subMerchant.tradingName Copied to clipboard String CONDITIONAL

The trading name of the sub-merchant, also known as doing business as (DBA), operating as or trading as.

For MasterCard transactions the name must not exceed 21 characters. For American Express transactions the name must not exceed 27 characters (or 36 characters including the aggregator name). The trading name may be displayed on the payer's cardholder statement. Therefore if you need to shorten it, use an abbreviation that will be meaningful to the payer when displayed on their statement.

Data can consist of any characters

Min length: 1 Max length: 100
order.subMerchant.websiteUrl Copied to clipboard Url CONDITIONAL

The URL of the sub-merchant's website.

Ensure that the URL begins with 'https' and is longer than 11 characters.

order.supply Copied to clipboard CONDITIONAL

Information about orders for items not yet available (pre-order) or for items previously purchased (reorder).

order.supply.preorder Copied to clipboard Boolean CONDITIONAL

Indicates that the purchase includes merchandise with a future availability or release date.

JSON boolean values 'true' or 'false'.

order.supply.preorderAvailabilityDate Copied to clipboard Date CONDITIONAL

The date that preordered items are expected to be available.

Provide this field if the payer is ordering items before you have them available for purchase.

Data must comply with ISO 8601 extended date format, yyyy-mm-dd

order.supply.reorder Copied to clipboard Boolean CONDITIONAL

Indicates that the purchase includes merchandise that the payer has previously ordered.

JSON boolean values 'true' or 'false'.

order.surchargeAmount Copied to clipboard Decimal CONDITIONAL

A fee charged by you to cover the cost of accepting a payment method.

This is an additional amount charged by you for accepting one payment method (e.g. a credit card) instead of another (e.g. cash).
If you provide a surcharge amount, you should include it in the total amount for the order.

Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.

Min length: 1 Max length: 14
order.tax[n] Copied to clipboard CONDITIONAL

Allows you to provide a breakdown of the types of taxes and amount per type of tax included in order.taxAmount.

order.tax[n].amount Copied to clipboard Decimal CONDITIONAL

Provide the amount for this type of tax.

Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.

Min length: 1 Max length: 14
order.tax[n].rate Copied to clipboard Decimal CONDITIONAL

The tax rate (percentage) used to determine the tax amount included in this order for the tax type.

Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.

Min length: 1 Max length: 6
order.tax[n].type Copied to clipboard String CONDITIONAL

Provide the name for the type of tax for order.taxAmount.

Data can consist of any characters

Min length: 1 Max length: 50
order.taxAmount Copied to clipboard Decimal CONDITIONAL

The total amount of tax included in this order.

This value will be used for all pay orders and full capture transactions unless you provide us with a different amount in the transaction.taxAmount.

This data may be used to qualify for better interchange rates on corporate purchase card transactions.

This amount is the sum of the tax amount for all the items contained in the order. If you supply both this value and any line item details, then this amount MUST equal the sum of the item.quantity times the item.unitTaxAmount for all the line items.

Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.

Min length: 1 Max length: 14
order.taxRegistrationId Copied to clipboard String CONDITIONAL

Your tax registration identifier provided by the Federal/National tax authority (for example, federal tax identification number, ABN).

If you are a Canadian merchant, use this field to provide your Tax Registration ID for paying Harmonized Sales Tax (HST) or Goods and Services Tax (GST) collected by the Canada Revenue Agency.

Data can consist of any characters

Min length: 1 Max length: 30
order.taxStatus Copied to clipboard Enumeration CONDITIONAL

Indicates your tax status for this order.

Value must be a member of the following list. The values are case sensitive.

EXEMPT

Indicates that you are exempt from tax.

NOT_EXEMPT

Indicates that you are not exempt from tax.

NOT_PROVIDED

Indicates that you are not providing information about being exempt from tax.

order.valueTransfer Copied to clipboard CONDITIONAL

Information about payments that transfer money to another store of value, such as a gift card or gaming chips.

order.valueTransfer.accountType Copied to clipboard Enumeration CONDITIONAL

The type of value store to which money is being transferred.

The default value is NOT_A_TRANSFER.

Value must be a member of the following list. The values are case sensitive.

NOT_A_TRANSFER

This payment is not for the purpose of transferring money to another store of value. It is a payment for goods or services.

PREPAID_LOAD

Payment to add funds to a prepaid card or gift card.

QUASI_CASH_TRANSACTION

Payment for items that are directly convertible to cash. For example, money orders, casino gaming chips, or traveller's checks.

order.valueTransfer.amount Copied to clipboard Decimal CONDITIONAL

The amount of money being transferred, in units of order.valueTransfer.currency.

The default value is order.amount

Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.

Min length: 1 Max length: 14
order.valueTransfer.currency Copied to clipboard Upper case alphabetic text CONDITIONAL

The currency of the store.

If the money is being transferred to multiple currencies, then use the currency of the highest transferred value.

The default value is order.currency.

Data must consist of the characters A-Z

Min length: 3 Max length: 3
order.valueTransfer.numberOfCards Copied to clipboard Integer CONDITIONAL

The number of prepaid or gift card being purchased.

The default value is one when you set order.valueTransfer.accountType = PREPAID_LOAD. For all other values of order.valueTransfer.accountType the default is zero.

JSON number data type, restricted to being positive or zero. In addition, the represented number may have no fractional part.

Min value: 0 Max value: 999
order.walletIndicator Copied to clipboard String CONDITIONAL

The wallet indicator as returned by the wallet provider.

Data can consist of any characters

Min length: 3 Max length: 3
order.walletProvider Copied to clipboard Enumeration ALWAYS PROVIDED

Select the wallet provider for this interaction.

Value must be a member of the following list. The values are case sensitive.

AMEX_EXPRESS_CHECKOUT

Amex Express Checkout wallet provider.

APPLE_PAY

Apple Pay mobile wallet provider.

CHASE_PAY

Chase Pay wallet provider.

GOOGLE_PAY

Google Pay mobile wallet provider.

MASTERPASS_ONLINE

MasterPass Online wallet provider.

SAMSUNG_PAY

Samsung Pay mobile wallet provider.

VISA_CHECKOUT

Visa Checkout wallet provider.

partnerSolutionId Copied to clipboard String CONDITIONAL

If, when integrating with the gateway, you are using a solution (e.g. a shopping cart or e-commerce solution) provided, supported or certified by your payment service provider, enter the solution ID issued by your payment service provider here.

If your payment service provider has not provided you with a solution ID, you should ignore this field.

Data can consist of any characters

Min length: 1 Max length: 40
paymentPlan Copied to clipboard CONDITIONAL

Information about the payment plan selected by the cardholder.

Payment Plan is a payment option available to cardholders who wish to repay the purchase amount in a number of monthly installments with or without a deferral period.

paymentPlan.numberOfDeferrals Copied to clipboard Digits CONDITIONAL

The number of months for which the payment is deferred.

Data is a number between 0 and 99 represented as a string.

paymentPlan.numberOfPayments Copied to clipboard Digits CONDITIONAL

The number of monthly payments payable by the cardholder.

Data is a number between 1 and 99 represented as a string.

paymentPlan.planId Copied to clipboard String CONDITIONAL

The identifier for the payment plan.

See Payment Plans for the supported payment plans and their identifiers.

Data can consist of any characters

Min length: 1 Max length: 40
paymentType Copied to clipboard Enumeration CONDITIONAL

The payment method the payer wishes to use to pay for this order.

Value must be a member of the following list. The values are case sensitive.

ACH
ALIPAY
BANCANET
BOLETO_BANCARIO
CARD
ENETS
GIFT_CARD
GIROPAY
IDEAL
OXXO
PAYPAL
PBBA
POLI
SEPA
SOFORT
UNION_PAY
WECHAT_PAY
responseControls Copied to clipboard CONDITIONAL

Container for fields that control the response returned for the request.

responseControls.sensitiveData Copied to clipboard String CONDITIONAL

Indicates how sensitive data is returned in the response.

Data can consist of any characters

Min length: 1 Max length: 50
result Copied to clipboard Enumeration ALWAYS PROVIDED

A system-generated high level overall result of the operation.

Value must be a member of the following list. The values are case sensitive.

ERROR

ERROR

SUCCESS

SUCCESS

risk Copied to clipboard CONDITIONAL

Information relevant to risk assessment.

risk.bypassMerchantRiskRules Copied to clipboard Enumeration CONDITIONAL

The risk rules you wish to bypass when performing risk assessment for an order.

Value must be a member of the following list. The values are case sensitive.

ALL
risk.custom Copied to clipboard String CONDITIONAL

Additional data passed to third-party risk assessment providers.

This field is only relevant if you use a third-party risk assessment provider, and you have agreed with them the values to provide (maximum 100 characters in a field name from the set A-Z, a-z, 0-9, maximum 4kB in length of values across all custom risk fields). An example might be:
Field: risk.custom.headOfficeLocation
Value: London UK

Data can consist of any characters

Min length: 1 Max length: 4000
risk.paymentRecipient Copied to clipboard CONDITIONAL

Details about the recipient of the payment and the destination account for the payment.

Your acquirer may require you to provide these details if you are a financial institution (Merchant Category Code 6012) submitting a transaction for a person paying off outstanding debts. Otherwise, do not provide these data elements.

risk.paymentRecipient.accountIdentifier Copied to clipboard String CONDITIONAL

The account identifier for the payment recipient's account.

For payments into a card account provide the card number. For payments into other accounts (for example a bank account) provide the account number. The value provided will be returned masked in the response.

Data can consist of any characters

Min length: 1 Max length: 50
risk.paymentRecipient.dateOfBirth Copied to clipboard Date CONDITIONAL

The date of birth of the primary payment recipient in yyyy-mm-dd format.

Data must comply with ISO 8601 extended date format, yyyy-mm-dd

risk.paymentRecipient.lastName Copied to clipboard String CONDITIONAL

Last name of the primary payment recipient.

Data can consist of any characters

Min length: 1 Max length: 50
risk.paymentRecipient.postcodeZip Copied to clipboard String CONDITIONAL

Postcode of the primary payment recipient.

Data can consist of any characters

Min length: 1 Max length: 10
session.id Copied to clipboard ASCII Text ALWAYS PROVIDED

session carrying the details to be used by the operation rather than the details being provided in the request.

The payment details collected at the wallet provider will be stored against this session.

Data consists of ASCII characters

Min length: 31 Max length: 35
session.version Copied to clipboard ASCII Text ALWAYS PROVIDED

Use this field to implement optimistic locking of the session content.

Do this if you make business decisions based on data from the session and wish to ensure that the same data is being used for the request operation.

To use optimistic locking, record session.version when you make your decisions, and then pass that value in session.version when you submit your request operation to the gateway.

See Making Business Decisions Based on Session Content.

Data consists of ASCII characters

Min length: 10 Max length: 10
shipping Copied to clipboard CONDITIONAL

Shipping information for this order.

shipping.address Copied to clipboard CONDITIONAL

The address to which this order will be shipped.

shipping.address.city Copied to clipboard String CONDITIONAL

The city portion of the address.

Data can consist of any characters

Min length: 1 Max length: 100
shipping.address.company Copied to clipboard String CONDITIONAL

The name of the company associated with this address.

Data can consist of any characters

Min length: 1 Max length: 100
shipping.address.country Copied to clipboard Upper case alphabetic text CONDITIONAL

The 3 letter ISO standard alpha country code of the address.

Data must consist of the characters A-Z

Min length: 3 Max length: 3
shipping.address.postcodeZip Copied to clipboard Alphanumeric + additional characters CONDITIONAL

The post code or zip code of the address.

Data may consist of the characters 0-9, a-z, A-Z, ' ', '-'

Min length: 1 Max length: 10
shipping.address.sameAsBilling Copied to clipboard Enumeration CONDITIONAL

Indicates whether the shipping address provided is the same as the payer's billing address.

Provide this value if you are not providing the full shipping and billing addresses, but you can affirm that they are the same or different.

The default value for this field is:

SAME - if the shipping and billing address are supplied, and all fields are the same (ignoring non-alphanumerics).
DIFFERENT - if the shipping and billing address are supplied, and at least one field is different (ignoring non-alphanumerics).
UNKNOWN - either shipping address or billing address is absent.

Value must be a member of the following list. The values are case sensitive.

DIFFERENT

The shipping and billing addresses are different.

SAME

The shipping and billing addresses are the same.

UNKNOWN

It is not known if the shipping and billing addresses are the same.

shipping.address.source Copied to clipboard Enumeration CONDITIONAL

How you obtained the shipping address.

Value must be a member of the following list. The values are case sensitive.

ADDRESS_ON_FILE

Order shipped to an address that you have on file.

NEW_ADDRESS

Order shipped to an address provided by the payer for this transaction.

shipping.address.stateProvince Copied to clipboard String CONDITIONAL

The state or province of the address.

Data can consist of any characters

Min length: 1 Max length: 20
shipping.address.stateProvinceCode Copied to clipboard String CONDITIONAL

The three character ISO 3166-2 country subdivision code for the state or province of the address.

Providing this field might improve your payer experience for 3-D Secure payer authentication.

Data can consist of any characters

Min length: 1 Max length: 3
shipping.address.street Copied to clipboard String CONDITIONAL

The first line of the address.

For example, this may be the street name and number, or the Post Office Box details.

Data can consist of any characters

Min length: 1 Max length: 100
shipping.address.street2 Copied to clipboard String CONDITIONAL

The second line of the address (if provided).

Data can consist of any characters

Min length: 1 Max length: 100
shipping.contact Copied to clipboard CONDITIONAL

Details of the contact person at the address the goods will be shipped to.

shipping.contact.email Copied to clipboard Email CONDITIONAL

The contact person's email address.

The field format restriction ensures that the email address is longer than 3 characters and adheres to a generous subset of valid RFC 2822 email addresses.

Ensures that the email address is longer than 3 characters and adheres to a generous subset of valid RFC 2822 email addresses

shipping.contact.firstName Copied to clipboard String CONDITIONAL

The first name of the person to whom the order is being shipped.

Data can consist of any characters

Min length: 1 Max length: 50
shipping.contact.lastName Copied to clipboard String CONDITIONAL

The last name or surname of the person to whom the order is being shipped.

Data can consist of any characters

Min length: 1 Max length: 50
shipping.contact.mobilePhone Copied to clipboard Telephone Number CONDITIONAL

The contact person's mobile phone or cell phone number in ITU-T E123 format, for example +1 607 1234 5678

The number consists of:

  • '+'
  • country code (1, 2 or 3 digits)
  • 'space'
  • national number ( which may embed single spaces characters for readability).

Data consists of '+', country code (1, 2 or 3 digits), 'space', and national number (which may embed single space characters for readability)

Mandatory country code: true Max total digits: 15
shipping.contact.phone Copied to clipboard Telephone Number CONDITIONAL

The contact person's phone number in ITU-T E123 format, for example +1 607 1234 456

The number consists of:

  • '+'
  • country code (1, 2 or 3 digits)
  • 'space'
  • national number ( which may embed single spaces characters for readability).

Data consists of '+', country code (1, 2 or 3 digits), 'space', and national number (which may embed single space characters for readability)

Mandatory country code: true Max total digits: 15
shipping.contact.sameAsBilling Copied to clipboard Enumeration CONDITIONAL

Indicates whether the supplied name for the recipient of shipping matches the cardholder name.

Provide this value if you are not providing the full name or cardholder name, but you can affirm that they are the same or different.

Default value is UNKNOWN

Value must be a member of the following list. The values are case sensitive.

DIFFERENT

The shipping and billing addresses are different.

SAME

The shipping and billing addresses are the same.

UNKNOWN

It is not known if the shipping and billing addresses are the same.

shipping.method Copied to clipboard Enumeration CONDITIONAL

The shipping method used for delivery of this order.

Value must be a member of the following list. The values are case sensitive.

ELECTRONIC

Electronic delivery.

GROUND

Ground (4 or more days).

NOT_SHIPPED

Order for goods that are not shipped (for example, travel and event tickets)

OVERNIGHT

Overnight (next day).

PICKUP

Shipped to a local store for pick up.

PRIORITY

Priority (2-3 days).

SAME_DAY

Same day.

origin.postcodeZip Copied to clipboard Alphanumeric + additional characters CONDITIONAL

The post code or zip code of the address the order is shipped from.

Data may consist of the characters 0-9, a-z, A-Z, ' ', '-'

Min length: 1 Max length: 10
sourceOfFunds Copied to clipboard CONDITIONAL

The details describing the source of the funds to be used.

For card payments these may be represented by combining one or more of the following: explicitly provided card details, a session identifier which the gateway will use to look up the card details and/or a card token. Precedence rules will be applied in that explicitly provided card details will override session card details which will override card token details. Each of these may represent partial card details, however the combination must result in a full and complete set of card details. See Using Multiple Sources of Card Details for examples.

sourceOfFunds.provided Copied to clipboard CONDITIONAL

Information about the source of funds when it is directly provided (as opposed to via a token or session).

For browser payments, the source of funds details are usually collected from the payer on the payment provider's website and provided to you when you retrieve the transaction details (for a successful transaction). However, for some payment types (such as giropay), you must collect the information from the payer and supply it here.

sourceOfFunds.provided.ach Copied to clipboard CONDITIONAL

For ACH payments (sourceOfFunds.type=ACH) you must provide values for all fields within this parameter group, including details about the payers bank account as well as the type of ACH payment.

It is your responsibility to authenticate the payer and obtain authorization from the payer in accordance with the NACHA Operating Rules and Guidelines for the Standard Entry Class (SEC) associated with this payment. For details please refer to https://www.nacha.org/.

sourceOfFunds.provided.ach.accountType Copied to clipboard Enumeration CONDITIONAL

An indicator identifying the type of bank account.

  • Consumer (checking or savings), or
  • Business

For pre-arranged payments (sourceOfFunds.provided.ach.secCode=PPD) retrieve this information from the payer.

If payments were telephone-initiated (sourceOfFunds.provided.ach.secCode=TEL) or internet-initiated (sourceOfFunds.provided.ach.secCode=WEB) you may choose to limit the payer's options (e.g. only support consumer checking accounts), depending on your type of business (e.g. B2C online webshop).

Value must be a member of the following list. The values are case sensitive.

CONSUMER_CHECKING

Consumer Checking Account

CONSUMER_SAVINGS

Consumer Savings Account

CORPORATE_CHECKING

Business Checking Account

sourceOfFunds.provided.ach.bankAccountHolder Copied to clipboard String CONDITIONAL

The name of the bank account holder, as it appears on the account at the receiving financial institution.

Retrieve this information from the payer.

Data can consist of any characters

Min length: 1 Max length: 28
sourceOfFunds.provided.ach.bankAccountNumber Copied to clipboard Alphanumeric + additional characters CONDITIONAL

The identifier of the bank account at the receiving financial institution.

Retrieve this information from the payer.

Data may consist of the characters 0-9, a-z, A-Z, ' ', '-', '/'

Min length: 1 Max length: 17
sourceOfFunds.provided.ach.routingNumber Copied to clipboard Digits CONDITIONAL

The identifier of the receiving financial institution.

Also known as:

  • Routing number,
  • Transit number, or
  • ABA number

Retrieve this information from the payer.

See also http://en.wikipedia.org/wiki/Routing_transit_number.

Data is a string that consists of the characters 0-9.

Min length: 9 Max length: 9
sourceOfFunds.provided.ach.secCode Copied to clipboard Enumeration CONDITIONAL

Identifies the Standard Entry Class (SEC) code to be sent to the issuer.

The SEC is defined by NACHA and describes the origin and intent of the payment. For details please refer to https://www.nacha.org/.

Value must be a member of the following list. The values are case sensitive.

PPD

An ACH debit or credit payment (B2C) that has been authorized by an authenticated customer in written form (signed or similarly authenticated). PPD is used for pre-arranged payments (e.g. employee payroll, mortgage payments, expense reimbursement).

TEL

An ACH debit payment (B2C) that has been authorized by an authenticated customer via phone. TEL may only be used if a relationship already exists between you and the consumer, or, the consumer initiates the contact with you.

WEB

An ACH debit payment (B2C) that has been authorized by an authenticated customer via the internet or a wireless network.

sourceOfFunds.provided.alipay Copied to clipboard CONDITIONAL

For Alipay payments (sourceOfFunds.type=ALIPAY) you must provide values for all fields within this parameter group.

sourceOfFunds.provided.alipay.payerCode Copied to clipboard String CONDITIONAL

Payer code is a one-time code used by Alipay to identify the payer.

It is generated by the Alipay wallet app on the payer's mobile device.

Data can consist of any characters

Min length: 1 Max length: 255
sourceOfFunds.provided.boletoBancario Copied to clipboard CONDITIONAL

Additional details related to a Boleto Bancario browser payment.

When processing a Boleto Bancario payment you must also provide the payer's national identifier (customer.nationalId), your reference to the payer (customer.id) and the payer's date of birth (customer.dateOfBirth)

sourceOfFunds.provided.boletoBancario.actionType Copied to clipboard Enumeration CONDITIONAL

The action to take if the payment is not honored.

Value must be a member of the following list. The values are case sensitive.

WRITE_OFF

Write off the Boleto.

sourceOfFunds.provided.boletoBancario.bankAccountHolder Copied to clipboard String CONDITIONAL

The name of the bank account holder for the payer's bank account.

Data can consist of any characters

Min length: 1 Max length: 255
sourceOfFunds.provided.boletoBancario.customerType Copied to clipboard Enumeration CONDITIONAL

Type of the Customer i.e. Individual or Company.

If the value is not provided it will be defaulted to INDIVIDUAL.

Value must be a member of the following list. The values are case sensitive.

COMPANY

Customer is an organization.

INDIVIDUAL

Customer is an individual.

sourceOfFunds.provided.boletoBancario.daysBeforeAction Copied to clipboard Digits CONDITIONAL

Number of days granted by you to the customer after the due date of Boleto payment before the specified action is taken.

Data is a string that consists of the characters 0-9.

Min length: 1 Max length: 2
sourceOfFunds.provided.boletoBancario.dueDate Copied to clipboard Date CONDITIONAL

The date by which the Boleto amount needs to be paid.

Data must comply with ISO 8601 extended date format, yyyy-mm-dd

sourceOfFunds.provided.card Copied to clipboard CONDITIONAL

Details as shown on the card.

sourceOfFunds.provided.card.accountType Copied to clipboard Enumeration CONDITIONAL

You can provide this field for card types that have a savings/checking option, such as Maestro cards.

If you do not provide a value, we will use the acquirer's default. You can use paymentTypes.card.cardTypes in the 'Retrieve Payment Options' operation response to determine the card type.

Value must be a member of the following list. The values are case sensitive.

CHECKING
SAVINGS
sourceOfFunds.provided.card.devicePayment Copied to clipboard CONDITIONAL

Details about the card that you have sourced using digital payment methods.

Use this parameter group when you have sourced payment details using:

  • • Device payment methods such as Apple Pay, Android Pay, Samsung Pay, or Google Pay.
  • • Digital wallets such as Masterpass, Visa Checkout or Amex Express Checkout.
  • • Card scheme tokens. This applies when you have tokenized the payer's card number using a card scheme tokenization service such as Mastercard Digital Enablement Service (MDES).

sourceOfFunds.provided.card.devicePayment.3DSecure Copied to clipboard CONDITIONAL

Details used to process a digital payment where the payment data keys for the online payment cryptogram are provided using the 3-D Secure format.

Use this parameter group for:

  • • Device payments: if you decrypt the payment token yourself. In this case, you source these fields directly from the decrypted payment token.
    You do not need to use this parameter group if you provide the payment token in sourceOfFunds.provided.card.devicePayment.paymentToken.
  • • Card scheme tokens: if you decrypt the transaction credentials yourself.

sourceOfFunds.provided.card.devicePayment.3DSecure.eciIndicator Copied to clipboard Digits CONDITIONAL

The Electronic Commerce Indicator generated for payments made using a device payment method.

You source this field directly from the decrypted payment token.

This field is not applicable for payments using digital wallets or card scheme tokens.

Data is a string that consists of the characters 0-9.

Min length: 1 Max length: 2
sourceOfFunds.provided.card.devicePayment.3DSecure.onlinePaymentCryptogram Copied to clipboard Base64 CONDITIONAL

A cryptogram used to authenticate the transaction.Use this field for:

  • • Device payments: source this field directly from the decrypted payment token.
  • • Card scheme tokens: source this field directly from the decrypted transaction credentials.

Data is Base64 encoded

Min length: 1 Max length: 128
sourceOfFunds.provided.card.devicePayment.cryptogramFormat Copied to clipboard Enumeration CONDITIONAL

The format of the cryptogram provided for the digital payment.Use this field for:

  • • Device payments: provide the cryptogram format when you decrypt the payment token and provide the payment details (including the online payment cryptogram) in the transaction request.

This field does not apply to Card Scheme token payments.

Value must be a member of the following list. The values are case sensitive.

3DSECURE

The payment data keys for the online payment cryptogram are provided using the 3-D Secure format.

EMV

The payment data keys for the online payment cryptogram are provided using the EMV format.

sourceOfFunds.provided.card.devicePayment.paymentToken Copied to clipboard String CONDITIONAL

This is the payment token that you received from the device's payment SDK.

For example:

For Apple Pay - this is the PKPaymentToken.paymentData value.

For Google - this is PaymentMethodToken.getToken().

Note 1: The gateway API considers this value to be a string, NOT JSON itself. Therefore when using the JSON gateway API, this field will typically look like:

"sourceOfFunds": {
"provided": {
"card": {
"devicePayment": {
"paymentToken": "{\"data\":\"869ss19ew ....

Note 2: The gateway will ignore the currency and amount information in the payment token, and will instead use the values passed on the amount and currency fields. For normal usage, you should populate those fields with the exact same values as you got from the SDK.

Data can consist of any characters

Min length: 1 Max length: 16384
sourceOfFunds.provided.card.emvRequest Copied to clipboard String CONDITIONAL

This field only applies to transactions that originate from an EMV capable terminal.

It contains selected EMV fields as provided by the terminal.

For the list of field tags to include (if provided by the terminal), see Card Present Payments. Requests with any other tags are rejected by the gateway.

Some of the tags represent data that can occur on explicit fields in this API. You can submit the value either in this field, or in both places. For example, the PAN can be presented as EMV tag 5A in this field, or included both the sourceOfFunds.provided.card.number API field and in EMV tag 5A in this field.

If you specify the EMV tag only, we can populate the explicit field in the API. Fields where this is supported have the text "This field corresponds to EMV tag <tag name>" in their field descriptions.

If you specify both places, there will be no population of the explicit field or validation that the data matches.

The API response will not contain PCI sensitive fields.

Data can consist of any characters

Min length: 1 Max length: 250
sourceOfFunds.provided.card.expiry Copied to clipboard CONDITIONAL

Expiry date, as shown on the card.

sourceOfFunds.provided.card.expiry.month Copied to clipboard Digits CONDITIONAL

Month, as shown on the card.

Months are numbered January=1, through to December=12.

Data is a number between 1 and 12 represented as a string.

sourceOfFunds.provided.card.expiry.year Copied to clipboard Digits CONDITIONAL

Year, as shown on the card.

The Common Era year is 2000 plus this value.

Data is a string that consists of the characters 0-9.

Min length: 2 Max length: 2
sourceOfFunds.provided.card.maskedFpan Copied to clipboard Masked digits CONDITIONAL

The Funding Primary Account Number (FPAN) of the payer's account in 6.4 masking format, for example, 000000xxxxxx0000.

You should use this value for display on confirmation or receipt pages presented to the payer.

RequestNormally you do not need to populate this field, as the gateway will populate this field in the session, and populate it into the payment request when you submit the payment using the session. You would only provide this value, if you had access to FPAN information that was not available to the gateway. On responses, the gateway populates it with a form that the payer would recognize (also explained in more detail below).

Retrieve session response

The gateway always populates this field with its best understanding of the masked FPAN.If you are showing PAN data from the session to the payer, then use this field rather than sourceOfFunds.provided.card.number from the session. This is because this field contains a PAN that the payer will recognize whereas sourceOfFunds.provided.card.number could contain a scheme token, or device PAN which the payer will not recognize. After the payment is processed, the gateway will populate the sourceOfFunds.provided.card.number in the payment response with its best understanding of the masked FPAN. You can show this value to the payer after the payment is complete. This logic also applies to the maskedFpanExpiry field.

Data is a string that consists of the characters 0-9, plus 'x' for masking

Min length: 9 Max length: 19
sourceOfFunds.provided.card.maskedFpanExpiry Copied to clipboard CONDITIONAL

Expiry date, The expiry date of the Funding Primary Account Number (FPAN) in sourceOfFunds.provided.card.maskedFpan.

sourceOfFunds.provided.card.maskedFpanExpiry.month Copied to clipboard Digits CONDITIONAL

The expiration month for the Funding Primary Account Number (FPAN).

Months are numbered January=1, through to December=12.

Data is a number between 1 and 12 represented as a string.

sourceOfFunds.provided.card.maskedFpanExpiry.year Copied to clipboard Digits CONDITIONAL

The expiration year for the Funding Primary Account Number (FPAN).

The Common Era year is 2000 plus this value.

Data is a string that consists of the characters 0-9.

Min length: 2 Max length: 2
sourceOfFunds.provided.card.mobileWallet Copied to clipboard CONDITIONAL

If the payer chose to pay using a mobile device you must provide details from the wallet in this parameter group.

Use this parameter group when accepting payments from mobile wallet providers such as Apple Pay, Android Pay or Samsung Pay.

sourceOfFunds.provided.card.mobileWallet.3DSecure Copied to clipboard CONDITIONAL

Cryptogram data for mobile wallet payments provided in 3DSecure format.

sourceOfFunds.provided.card.mobileWallet.3DSecure.eciIndicator Copied to clipboard Digits CONDITIONAL

The Electronic Commerce Indicator generated for the mobile wallet payment.

It indicates the level of security and authentication of the transaction.

Data is a string that consists of the characters 0-9.

Min length: 1 Max length: 2
sourceOfFunds.provided.card.mobileWallet.3DSecure.onlinePaymentCryptogram Copied to clipboard Base64 CONDITIONAL

The unique transaction cryptogram generated for the mobile wallet payment.

This will be in Base64 format for MasterCard and Visa transactions and binary format for American Express transactions.

Data is Base64 encoded

Min length: 1 Max length: 128
sourceOfFunds.provided.card.mobileWallet.cryptogramFormat Copied to clipboard Enumeration CONDITIONAL

The format of the cryptogram provided for the device payment.

You must provide the cryptogram format when you decrypt the payment token and provide the payment details (including the online payment cryptogram) in the transaction request.

Value must be a member of the following list. The values are case sensitive.

3DSECURE

The payment data keys for the online payment cryptogram are provided using the 3-D Secure format.

EMV

The payment data keys for the online payment cryptogram are provided using the EMV format.

sourceOfFunds.provided.card.nameOnCard Copied to clipboard String CONDITIONAL

The cardholder's name as printed on the card.

Data can consist of any characters

Min length: 1 Max length: 256
sourceOfFunds.provided.card.number Copied to clipboard Digits CONDITIONAL

Credit card number as printed on the card.

Data is a string that consists of the characters 0-9.

Min length: 9 Max length: 19
sourceOfFunds.provided.card.provided.card.p2pe Copied to clipboard CONDITIONAL

This holds the PAN in the case where it is encrypted by the terminal using DUKPT key exchange.

sourceOfFunds.provided.card.provided.card.p2pe.cardBin Copied to clipboard Digits CONDITIONAL

The BIN of the card.

If you provide this, the gateway will check that the decrypted PAN has these leading six digits. If the check fails, the gateway will reject the transaction.

If you do not provided this, the gateway will not perform this check.

Data is a string that consists of the characters 0-9.

Min length: 1 Max length: 6
sourceOfFunds.provided.card.provided.card.p2pe.encryptionState Copied to clipboard String CONDITIONAL

The P2PE encryption state as determined by the terminal.

INVALID means the terminal detected some form of error in the encryption process. The gateway will decline transactions with INVALID encryption state. This field may be omitted when the value is VALID.

Data can consist of any characters

Min length: 5 Max length: 7
sourceOfFunds.provided.card.provided.card.p2pe.initializationVector Copied to clipboard Hex CONDITIONAL

The initialization vector supplied by the terminal to seed the encryption of this payload.

Omit this value if the terminal is not using an initialization vector to seed encryption.

Data is hexadecimal encoded

Min length: 16 Max length: 16
sourceOfFunds.provided.card.provided.card.p2pe.keySerialNumber Copied to clipboard Hex CONDITIONAL

The DUKPT key serial number supplied by the terminal.

Data is hexadecimal encoded

Min length: 20 Max length: 20
sourceOfFunds.provided.card.provided.card.p2pe.payload Copied to clipboard Hex CONDITIONAL

The DUKPT encrypted payload supplied by the terminal.

Data is hexadecimal encoded

Min length: 32 Max length: 1024
sourceOfFunds.provided.card.provided.card.prefix Copied to clipboard Digits CONDITIONAL

The first 10 digits of the card number, as printed on the card.

Data is a string that consists of the characters 0-9.

Min length: 10 Max length: 10
sourceOfFunds.provided.card.securityCode Copied to clipboard Digits CONDITIONAL

Card verification code, as printed on the back or front of the card or as provided for a card scheme token.

Data is a string that consists of the characters 0-9.

Min length: 3 Max length: 4
sourceOfFunds.provided.card.sequenceNumber Copied to clipboard Digits CONDITIONAL

A number used to differentiate between cards with the same Primary Account Number (PAN).

This field corresponds to EMV tag 5F34

Data is a number between 0 and 999 represented as a string.

sourceOfFunds.provided.card.storedOnFile Copied to clipboard Enumeration CONDITIONAL

This field only applies if you collect cards from your payers, store them, and either you or your payers use the stored value for subsequent payments.

If you store using gateway tokenization then you can ignore this field, unless you do payments with both stored and non-stored cards. If you do both, then you must supply the NOT_STORED value for the non-stored case.

If you use Scheme Tokenization services like MDES and store the tokens provided, you have to provide the value STORED and if you pass the token value with out storing them, provide the value NOT_STORED.

If you store yourself, you have to provide the TO_BE_STORED or STORED values for all payments.

Value must be a member of the following list. The values are case sensitive.

NOT_STORED

Set this value if the card or token details provided will not be stored. This is the default value for merchants without tokenization.

STORED

Set this value if the card or token details provided have been stored previously. This is the default value when paying with a gateway token.

TO_BE_STORED

Set this value if this is the first transaction using the card and you intend to store the card or token details on success. This is the default value for tokenization merchants who present a payment with a PAN.

sourceOfFunds.provided.ebt Copied to clipboard CONDITIONAL

If the payer chose to pay using a Electronic Benefits Transfer card, you must submit sourceOfFunds.type=EBT_CARD and provide the payer's card details in this parameter group.

sourceOfFunds.provided.ebt.accountType Copied to clipboard Enumeration CONDITIONAL

Indicates the type of benefits account used for the payment.

Value must be a member of the following list. The values are case sensitive.

CASH_BENEFITS

Benefits provided as cash.

EWIC_BENEFITS

Benefits provided under the Special Supplemental Nutrition Program for Women, Infants, and Children.

SNAP_BENEFITS

Benefits provided under the Supplemental Nutrition Assistance Program.

sourceOfFunds.provided.ebt.manualAuthorizationCode Copied to clipboard Digits CONDITIONAL

Value provided to you by the EBT merchant helpline when you requested manual authorization of the payment because you were unable to authorize the payment online.

For example, your point of sale (POS) machine is not working. When you manually authorize a payment you also need to provided the voucher number used to record the payment in sourceOfFunds.provided.EBT.voucherNumber.

Data is a string that consists of the characters 0-9.

Min length: 1 Max length: 6
sourceOfFunds.provided.ebt.merchantFns Copied to clipboard Digits CONDITIONAL

The identifier assigned to you by the USDA Food and Nutrition Service (FNS) when they authorized you to accept EBT payments at your store.

Data is a string that consists of the characters 0-9.

Min length: 1 Max length: 7
sourceOfFunds.provided.ebt.voucherNumber Copied to clipboard Digits CONDITIONAL

The number of the paper form (voucher) that you used to record details of an EBT payment when you were unable to authorize the payment online.

For example, your point of sale (POS) machine is not working. When you use a voucher you also need to provide an authorization code in sourceOfFunds.provided.benefits.ebt.manualAuthorizationCode.

Data is a string that consists of the characters 0-9.

Min length: 1 Max length: 15
sourceOfFunds.provided.enets Copied to clipboard CONDITIONAL

Additional details related to an eNETS browser payment.

Note: if you provide data for an eNETS payment, then you must also provide an email address for the customer in customer.email and a phone number for the customer in either customer.phone or customer.mobilePhone

sourceOfFunds.provided.enets.bankAccountHolder Copied to clipboard String CONDITIONAL

The name of the bank account holder for the payer's bank account.

Data can consist of any characters

Min length: 1 Max length: 255
sourceOfFunds.provided.giftCard Copied to clipboard CONDITIONAL

If the payer chose to pay using a gift card, you must submit sourceOfFunds.type=GIFT_CARD and provide the payer's gift card details in this parameter group.

sourceOfFunds.provided.giftCard.expectedLocalBrand Copied to clipboard String CONDITIONAL

Do not provide this field in your request unless instructed to do so by your payment service provider.

The field is required, if your gift card numbers do not use ISO BIN rules and therefore not allowing the gateway to identify the local brand.

Data can consist of any characters

Min length: 4 Max length: 50
sourceOfFunds.provided.giftCard.number Copied to clipboard Digits CONDITIONAL

Card number as printed or embossed on the gift card.

Data is a string that consists of the characters 0-9.

Min length: 9 Max length: 19
sourceOfFunds.provided.giftCard.pin Copied to clipboard Digits CONDITIONAL

PIN number for the gift card.

Data is a string that consists of the characters 0-9.

Min length: 4 Max length: 8
sourceOfFunds.provided.giropay Copied to clipboard CONDITIONAL

Additional information required by the gateway to initiate a giropay browser payment.

sourceOfFunds.provided.giropay.bankIdentifier Copied to clipboard Digits CONDITIONAL

German bank identifier (Bankleitzahl) for the payer's bank account.

Data is a string that consists of the characters 0-9.

Min length: 8 Max length: 8
sourceOfFunds.provided.giropay.bic Copied to clipboard Alphanumeric CONDITIONAL

The international Business Identifier Code (BIC) for the payer's bank account.

Data may consist of the characters 0-9, a-z, A-Z

Min length: 8 Max length: 11
sourceOfFunds.provided.ideal Copied to clipboard CONDITIONAL

Additional details related to an iDEAL browser payment.

When processing an iDEAL payment you can also provide the payer's bank identification code (ideal.bic),

sourceOfFunds.provided.ideal.bic Copied to clipboard Alphanumeric CONDITIONAL

The international Business Identifier Code (BIC) for the payer's bank account.

Data may consist of the characters 0-9, a-z, A-Z

Min length: 8 Max length: 11
sourceOfFunds.provided.openBankingBankTransfer Copied to clipboard CONDITIONAL

Additional details related to Open Banking Bank Transfer.

sourceOfFunds.provided.openBankingBankTransfer.aspspId Copied to clipboard String CONDITIONAL

Identifier of the payer's bank, also known as ASPSP (Account Servicing Payment Services Provider)

Data can consist of any characters

Min length: 1 Max length: 256
sourceOfFunds.provided.oxxo Copied to clipboard CONDITIONAL

Additional details related to an OXXO browser payment.

When processing an OXXO payment you must also provide the payer's national identifier (customer.nationalId), your reference to the payer (customer.id) and the payer's date of birth (customer.dateOfBirth).

sourceOfFunds.provided.oxxo.bankAccountHolder Copied to clipboard String CONDITIONAL

The name of the bank account holder for the payer's bank account.

Data can consist of any characters

Min length: 1 Max length: 255
sourceOfFunds.provided.oxxo.dueDate Copied to clipboard Date CONDITIONAL

The date by which your payer has to make the payment.

Do not provide a due date for USD currency transactions.

Data must comply with ISO 8601 extended date format, yyyy-mm-dd

sourceOfFunds.provided.paypal Copied to clipboard CONDITIONAL

Information about the payer's PayPal account.

It is provided to you when the payer successfully makes a payment using PayPal or when you have established a billing agreement with the payer.

sourceOfFunds.provided.paypal.accountEmail Copied to clipboard Email CONDITIONAL

The email address of the payer's PayPal account.

Ensures that the email address is longer than 3 characters and adheres to a generous subset of valid RFC 2822 email addresses

sourceOfFunds.provided.paypal.accountHolder Copied to clipboard String CONDITIONAL

The name of the account holder of the payer's PayPal account.

Data can consist of any characters

Min length: 1 Max length: 255
sourceOfFunds.provided.paypal.billingAgreement Copied to clipboard CONDITIONAL

Details about the agreement you have established with the payer that allows you to bill the payer's PayPal account for goods or services.

sourceOfFunds.provided.paypal.billingAgreement.cardinality Copied to clipboard Enumeration CONDITIONAL

Indicates the number of billing agreements between you and this payer.

Value must be a member of the following list. The values are case sensitive.

MULTIPLE

Indicates that you have multiple billing agreements with this payer. This means that a new agreement ID will be returned in response to each request.

SINGLE

Indicates that you have a single billing agreement with this payer. This means that the same agreement ID will be returned in response to each request.

sourceOfFunds.provided.paypal.billingAgreement.description Copied to clipboard String CONDITIONAL

Your description for the PayPal billing agreement.

This description is displayed to the payer when they are asked to approve the billing agreement.

Data can consist of any characters

Min length: 1 Max length: 255
sourceOfFunds.provided.paypal.billingAgreement.id Copied to clipboard String CONDITIONAL

An identifier provided by PayPal for the billing agreement.

Data can consist of any characters

Min length: 1 Max length: 100
sourceOfFunds.provided.paypal.billingAgreement.name Copied to clipboard String CONDITIONAL

Your name for the PayPal billing agreement.

Data can consist of any characters

Min length: 1 Max length: 255
sourceOfFunds.provided.paypal.payerId Copied to clipboard String CONDITIONAL

The unique identifier for the payer assigned by PayPal.

Data can consist of any characters

Min length: 1 Max length: 13
sourceOfFunds.provided.pbba Copied to clipboard CONDITIONAL

Additional details related to Pay by Bank app payment.

sourceOfFunds.provided.pbba.returnUrl Copied to clipboard Url CONDITIONAL

The URL of merchant app to which the payer is redirected from their mobile banking app.

Ensure that the URL begins with 'https' and is longer than 11 characters.

sourceOfFunds.provided.poli Copied to clipboard CONDITIONAL

Additional details related to a POLi browser payment.

sourceOfFunds.provided.poli.bankAccountHolder Copied to clipboard String CONDITIONAL

The name of the bank account holder for the payer's bank account.

Data can consist of any characters

Min length: 1 Max length: 255
sourceOfFunds.provided.sepa Copied to clipboard CONDITIONAL

Details about the payer's bank account used for a payment made using SEPA

sourceOfFunds.provided.sepa.bankAccountHolder Copied to clipboard String CONDITIONAL

The name of the bank account holder for the payer's bank account.

Data can consist of any characters

Min length: 3 Max length: 100
sourceOfFunds.provided.sepa.bic Copied to clipboard Alphanumeric CONDITIONAL

The international Business Identifier Code (BIC) for the payer's bank account.

Data may consist of the characters 0-9, a-z, A-Z

Min length: 8 Max length: 11
sourceOfFunds.provided.sepa.iban Copied to clipboard String CONDITIONAL

The International Bank Account Number (IBAN) for the payer's bank account.

By default, the bank account number will be returned in a masked format, for example, xxxxxx0000. If you wish to return unmasked bank account numbers, you must have the requisite permission, set responseControls.sensitiveData, and authenticate your call to the API using certificate authentication. Contact your payment service provider for further information.

Data can consist of any characters

Min length: 1 Max length: 50
sourceOfFunds.provided.sofort Copied to clipboard CONDITIONAL

Details about the payer's bank account used for a payment made using Sofortbanking.

The format of the bank account details differs per country.

sourceOfFunds.provided.sofort.bic Copied to clipboard String CONDITIONAL

The international Business Identifier Code (BIC) for the payer's bank account.

Data can consist of any characters

Min length: 1 Max length: 50
sourceOfFunds.provided.weChatPay Copied to clipboard CONDITIONAL

Additional details related to a WeChat Pay browser payment.

sourceOfFunds.provided.weChatPay.accountHolder Copied to clipboard String CONDITIONAL

The name of the account holder for the payer's WeChat Pay account.

Data can consist of any characters

Min length: 1 Max length: 255
sourceOfFunds.schemeTokenProvisioningIdentifier Copied to clipboard ASCII Text CONDITIONAL

You only must provide this field if you want the gateway to retrieve a scheme token for card details that your payer has made available to you via their card issuer (i.e. push provisioning of scheme tokens).

Using the identifier provided by the issuer, the gateway will retrieve the scheme token details from the token service provider and store them against the gateway token.

When providing this field, you must not provide card details in the sourceOfFunds.provided.card parameter group, and you must set the sourceOfFunds.type field to CARD.

Data consists of ASCII characters

Min length: 1 Max length: 64
sourceOfFunds.token Copied to clipboard Alphanumeric CONDITIONAL

Uniquely identifies a card and associated details.

Data may consist of the characters 0-9, a-z, A-Z

Min length: 1 Max length: 40
sourceOfFunds.tokenRequestorID Copied to clipboard Alphanumeric CONDITIONAL

The unique identifier assigned to you by the Token Service Provider that you requested a token from for this payment.

This field is mandatory for payments where the Chase Pay wallet was used.

Data may consist of the characters 0-9, a-z, A-Z

Min length: 11 Max length: 11
sourceOfFunds.type Copied to clipboard Enumeration CONDITIONAL

The payment method used for this payment.

If you are passing card data (in any form) on the API, then you need to set this value, and also provide the card details in the sourceOfFunds.provided.card group. In the case of digital wallets or device payment methods, you must also populate the order.walletProvider field.

If you are making a payment with a gateway token, then you can leave this field unset, and only populate the sourceOfFunds.token field. However you can set this to CARD if you want to overwrite or augment the token data with a card security code, expiry date, or cardholder name.

Value must be a member of the following list. The values are case sensitive.

ACH

The payer chose to pay using an electronic fund transfer, to be processed via the Automated Clearing House (ACH) Network. You must provide the payer's bank account details and information about the type of ACH payment under the sourceOfFunds.provided.ach parameter group.

ALIPAY

The payer selected the payment method Alipay.

BOLETO_BANCARIO

The payer selected the payment method Boleto Bancario.

CARD

Use this value for payments that obtained the card details either directly from the card, or from a POS terminal, or from a wallet, or through a device payment method.

EBT_CARD

Use this value for Electronic Benefits Transfer (EBT) card payments. The additional EBT data must also be provided in the sourceOfFunds.provided.ebt parameter group.

ENETS

The payer selected the payment method eNETS.

GIFT_CARD

Use this value for gift cards.

GIROPAY

The payer selected the payment method giropay.

IDEAL

The payer selected the payment method iDEAL.

KLARNA

The payer selected the payment method Klarna.

OPEN_BANKING_BANK_TRANSFER

The payer selected the payment method Open Banking Bank Transfer.

OXXO

The payer selected the payment method OXXO.

PAYPAL

The payer selected the payment method PayPal.

PBBA

The payer selected the payment method Pay by Bank app

POLI

The payer selected the payment method POLi.

SCHEME_TOKEN

Use this value for payments using scheme tokens provided by Mastercard Digital Enablement Service (MDES), or Visa Token Service (VTS), or American Express Token Service (AETS).

SEPA

The payer selected the payment method SEPA.

SOFORT

The payer selected the payment method Sofortbanking.

UNION_PAY

The payer selected the payment method UnionPay.

WECHAT_PAY

The payer selected the payment method WeChatPay.

subgatewayMerchant Copied to clipboard CONDITIONAL

Information about your merchant.

This group only applies if you:

  • operate a gateway, and
  • you are not boarding your merchants onto the gateway, and
  • you are enabled for this capability on the gateway.

If you are such a gateway, use these fields to provide information about your merchant, so that our gateway can process their transaction on your behalf.

Note: In these cases, you must also provide a value for field order.merchantCategoryCode

subgatewayMerchant.acquirer[n] Copied to clipboard CONDITIONAL

Details about this merchant's account with the acquirers they use for payment processing.

A merchant might have one or more acquirers.

Each record in this group applies to one acquirer. If your gateway knows exactly which acquirer will use for this transaction, then you can provide just that acquirer's data. Alternatively, you can specify a set of acquirers, in which case the gateway will select between them based on the routing rules that configured in our gateway.

In this group, the term 'acquirer' includes banks acquiring scheme cards (such as MasterCard,or Visa), and alternative providers (such as UnionPay, or SEPA)

subgatewayMerchant.acquirer[n].3DS1 Copied to clipboard CONDITIONAL

Information about the merchant's registration to use 3-D Secure authentication version 1 for this acquirer.

subgatewayMerchant.acquirer[n].3DS1.amexSafeKey Copied to clipboard CONDITIONAL

Information about the merchant's registration to use American Express SafeKey 3-D Secure authentication version 1 for this acquirer.

subgatewayMerchant.acquirer[n].3DS1.amexSafeKey.merchantId Copied to clipboard String CONDITIONAL

The unique identifier assigned to the merchant by their acquirer when they registered to use American Express SafeKey 3-D Secure authentication version 1.

Data can consist of any characters

Min length: 1 Max length: 24
subgatewayMerchant.acquirer[n].3DS1.mastercardSecureCode Copied to clipboard CONDITIONAL

Information about the merchant's registration to use Mastercard SecureCode 3-D Secure authentication version 1 for this acquirer.

subgatewayMerchant.acquirer[n].3DS1.mastercardSecureCode.merchantId Copied to clipboard String CONDITIONAL

The unique identifier assigned to the merchant by their acquirer when they registered to use Mastercard SecureCode 3-D Secure authentication version 1.

Data can consist of any characters

Min length: 1 Max length: 24
subgatewayMerchant.acquirer[n].3DS1.verifiedByVisa Copied to clipboard CONDITIONAL

Information about the merchant's registration to use Verified by Visa 3-D Secure authentication version 1 for this acquirer.

subgatewayMerchant.acquirer[n].3DS1.verifiedByVisa.cardAcceptorId Copied to clipboard String CONDITIONAL

The unique identifier assigned to the merchant by their acquirer when they registered to use Verified by Visa 3-D Secure authentication version 1.

Data can consist of any characters

Min length: 1 Max length: 15
subgatewayMerchant.acquirer[n].3DS1.verifiedByVisa.cardAcceptorTerminalId Copied to clipboard String CONDITIONAL

The unique identifier of a terminal provided to the merchant by their acquirer when they registered to use Verified by Visa 3-D Secure authentication version 1.

Data can consist of any characters

Min length: 1 Max length: 8
subgatewayMerchant.acquirer[n].acquirerMerchantId Copied to clipboard String CONDITIONAL

The identifier (ID/SE Number/account name or such ) allocated to your merchant by their acquiring institution.

Data can consist of any characters

Min length: 0 Max length: 40
subgatewayMerchant.acquirer[n].countryCode Copied to clipboard Upper case alphabetic text CONDITIONAL

The ISO 3166 three-letter country code of the acquirer.

Data must consist of the characters A-Z

Min length: 3 Max length: 3
subgatewayMerchant.acquirer[n].fraudRate Copied to clipboard Integer CONDITIONAL

The merchant's fraud rate, as determined by the acquirer, expressed in basis points (bps).

JSON number data type, restricted to being positive or zero. In addition, the represented number may have no fractional part.

Min value: 0 Max value: 99999
subgatewayMerchant.acquirer[n].id Copied to clipboard String CONDITIONAL

The name of the acquirer on which your merchant has an account.This is the value as returned in transaction.acquirer.id, for example ACME_BANK.

Your payment service provider will supply the acquirer names that apply to you.

Data can consist of any characters

Min length: 0 Max length: 40
subgatewayMerchant.acquirer[n].merchantCategoryCode Copied to clipboard Digits CONDITIONAL

A 4-digit code used to classify the merchant's business by the type of goods or services it offers.

This is also known as the Merchant Category Code (MCC).
You only need to provide this value if you are specifying more than one acquirer link, and some acquirers need different MCC values. If the same MCC applies to all acquirers, just specify it as order.merchantCategoryCode.

Data is a string that consists of the characters 0-9.

Min length: 4 Max length: 4
subgatewayMerchant.address Copied to clipboard CONDITIONAL

The address of this merchant.

subgatewayMerchant.address.city Copied to clipboard String CONDITIONAL

The city or town of this merchant's billing address.

Data can consist of any characters

Min length: 1 Max length: 30
subgatewayMerchant.address.countryCode Copied to clipboard Upper case alphabetic text CONDITIONAL

The country of this merchant's billing address.

The value must be a three-letter country code according to ISO 3166-1 alpha-3.

Data must consist of the characters A-Z

Min length: 3 Max length: 3
subgatewayMerchant.address.postcodeZip Copied to clipboard String CONDITIONAL

The zip or postal code of this merchant's billing address.

Data can consist of any characters

Min length: 1 Max length: 16
subgatewayMerchant.address.state Copied to clipboard String CONDITIONAL

The state or province of the merchant's billing address.

Data can consist of any characters

Min length: 1 Max length: 30
subgatewayMerchant.address.street1 Copied to clipboard String CONDITIONAL

The first line of the street address of this merchant's billing address.

Data can consist of any characters

Min length: 1 Max length: 40
subgatewayMerchant.address.street2 Copied to clipboard String CONDITIONAL

The second line of the street address of this merchant's billing address.

Data can consist of any characters

Min length: 1 Max length: 40
subgatewayMerchant.authentication[n] Copied to clipboard CONDITIONAL

Information about the merchant's registration to use a payer authentication protocol.

For example, using 3-D Secure authentication.

subgatewayMerchant.authentication[n].3DS2 Copied to clipboard CONDITIONAL

Information about the merchant's registration to use 3-D Secure authentication version 2.

These details are used to identify the merchant to the card schemes directory server.

This API assumes that a merchant has only one registration for a each 3DS2 scheme across all the acquirers. If your merchant has more than one 3DS2 registration that could apply to this transaction, then you need to provide a lineOfBusiness field to narrow to one registration.

subgatewayMerchant.authentication[n].3DS2.requestorId Copied to clipboard String CONDITIONAL

The unique identifier assigned to the merchant by the card scheme directory server when the merchant registered to use 3-D Secure authentication version 2 with their acquirer.

Do not provide this value for Mastercard SecureCode or Verified by Visa, For these authentication schemes, it will be generated by the gateway.

Data can consist of any characters

Min length: 1 Max length: 35
subgatewayMerchant.authentication[n].3DS2.requestorName Copied to clipboard String CONDITIONAL

The unique name assigned to the merchant by the card scheme directory server when the merchant registered to use 3-D Secure authentication version 2 with their acquirer.

Do not provide this value for Mastercard SecureCode or Verified by Visa, For these authentication schemes, it will be generated by the gateway.

Data can consist of any characters

Min length: 1 Max length: 40
subgatewayMerchant.authentication[n].acquirerBIN Copied to clipboard Digits CONDITIONAL

The acquirer's Bank Identification Number (BIN).

This is used to identify the acquirer in messages to the scheme's Directory Server for 3-D Secure authentication version 2 transactions

Data is a string that consists of the characters 0-9.

Min length: 4 Max length: 11
subgatewayMerchant.authentication[n].protocol Copied to clipboard Enumeration CONDITIONAL

The protocol used for payer authentication.

Value must be a member of the following list. The values are case sensitive.

AMEX_SAFEKEY
DINERS_PROTECTBUY
JCB_JSECURE
MASTERCARD_SECURECODE
RUPAY
VERIFIED_BY_VISA
subgatewayMerchant.id Copied to clipboard Alphanumeric + additional characters CONDITIONAL

The identifier you use to uniquely identify this merchant on your system.

Data may consist of the characters 0-9, a-z, A-Z, '_', '-'

Min length: 1 Max length: 36
subgatewayMerchant.name Copied to clipboard String CONDITIONAL

This merchant's registered business, trading or organization name.

Data can consist of any characters

Min length: 1 Max length: 100
subgatewayMerchant.websiteUrl Copied to clipboard Url CONDITIONAL

The URL of the merchant's website.

You must provide a value if you want the gateway to perform 3-D Secure authentication of the payer.

Ensure that the URL begins with 'https' and is longer than 11 characters.

token Copied to clipboard Alphanumeric CONDITIONAL

The token you supply that you wish to create or update.

You can only supply this value when creating a token if your token repository is configured to support merchant-supplied tokens.

On response, the format of the token depends on the token generation strategy configured for your repository. See Tokenization for more details.

Data may consist of the characters 0-9, a-z, A-Z

Min length: 1 Max length: 40
transaction Copied to clipboard CONDITIONAL

Information about this transaction.

transaction.acquirer Copied to clipboard CONDITIONAL

Additional information to be passed to acquirer.

transaction.acquirer.customData Copied to clipboard String CONDITIONAL

Additional information requested by the acquirer which cannot be passed using other available data fields.

This field must not contain sensitive data.

Data can consist of any characters, but sensitive data will be rejected

Min length: 1 Max length: 2048
transaction.acquirer.traceId Copied to clipboard String CONDITIONAL

The unique identifier that allows the issuer to link related transactions.

For example, linking a Refund to an Authorization or linking merchant-initiated payments in a series. For a subsequent Refund the gateway automatically submits the Trace ID of the Authorization to the acquirer (where supported). However, you must provide this field for a standalone Refund. For merchant-initiated payments in a series the gateway automatically submits the correct Trace ID to the acquirer (where supported). However, you must provide this field, if you are submitting any of the payments in the series to the acquirer without using the gateway. In this case you must follow the instructions in the Visa documentation for the 'transaction identifier' or the Mastercard documentation for the 'trace identifier' field. If you provide the Trace ID for a payment in a series of merchant-initiated payments, the gateway will use this value in preference to the gateway's selected value.

Data can consist of any characters, but sensitive data will be rejected

Min length: 1 Max length: 15
transaction.acquirer.transactionId Copied to clipboard String CONDITIONAL

This is the value provided to the acquirer to identify the order.

Ideally this will be the order.id, however if that value cannot be used directly, it will be transformed by the gateway to a unique value that the acquirer will accept. If that behavior is not suitable, you can directly provide the value in this field and it will be passed to the acquirer. You then take responsibility for its correctness. (Note: contact your payment provider to see if this is supported for your acquirer).

Data can consist of any characters, but sensitive data will be rejected

Min length: 1 Max length: 100
transaction.amount Copied to clipboard Decimal CONDITIONAL

Transaction Amount.

Expressed as a decimal number in the units of the currency. For example 12.34 in USD is the amount 12 dollars and 34 cents.

Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.

Min length: 1 Max length: 14
transaction.authorizationAdjustmentActions Copied to clipboard Comma separated enumeration CONDITIONAL

The action you want the gateway to take if you submit a capture amount that is different from the outstanding authorization amount for the order.

You only need to provide a value if you want to restrict the action taken and understand the relevant scheme rules.

The default value for this field is INCREMENT. In this case, the gateway will automatically submit an update authorization request to the acquirer if the requested capture amount exceeds the outstanding authorized amount. If the update was successfully authorized, the gateway then attempts the capture.

Set this value to NO_ACTION to prevent the gateway performing any authorization adjustments.

Note: You might need your payment service provider to enable these capabilities on your gateway merchant profile.

Value must be one or more comma separated members of the following list. The values are case sensitive.

INCREMENT

Increase the authorized amount to match the total capture amount.

NO_ACTION

Do not perform any authorization adjustments.

transaction.authorizationCode Copied to clipboard Alphanumeric CONDITIONAL

Value generated by the issuing bank in response to a proposal to transfer funds.

Data may consist of the characters 0-9, a-z, A-Z

Min length: 1 Max length: 6
transaction.currency Copied to clipboard Upper case alphabetic text CONDITIONAL

The currency which should be used for acquirer card verification.

Not required for basic verification.

Data must consist of the characters A-Z

Min length: 3 Max length: 3
transaction.discountAmount Copied to clipboard Decimal CONDITIONAL

The total amount deducted from the transaction amount that would normally apply.

Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.

Min length: 1 Max length: 14
transaction.id Copied to clipboard String CONDITIONAL

Unique identifier for this transaction to distinguish it from any other transaction on the order.

An order can have transactions representing:

  • Movement of money. For example, payments and refunds.
  • Validations. For example, account verification or 3-D Secure authentication of the payer.
  • Undoing other transactions. For example, voiding a payment transaction.
  • Chargebacks.
  • Fees from your payment service provider.
Each transaction on the order must have a unique id that identifies that transaction. Some transactions also hold the transaction identifier of other transactions on the order. For example a void payment transaction references the original payment transaction that is being voided.

If you attempt an operation and it fails (eg you try to PAY on a card with no funds), then you need a new id for each retry.

Data can consist of any characters

Min length: 1 Max length: 40
transaction.item[n] Copied to clipboard CONDITIONAL

Information about the items the payer purchases with the order.

transaction.item[n].brand Copied to clipboard String CONDITIONAL

The brand of the item.

For example, Dell.

Data can consist of any characters

Min length: 1 Max length: 127
transaction.item[n].category Copied to clipboard String CONDITIONAL

Your category for the item.

Data can consist of any characters

Min length: 1 Max length: 127
transaction.item[n].description Copied to clipboard String CONDITIONAL

Description for the item with information such as size, color, etc.

For example, 'Color:Red, Size:M'

Data can consist of any characters

Min length: 1 Max length: 127
transaction.item[n].detail Copied to clipboard CONDITIONAL

Only use this parameter group to provide additional line item details required for a better interchange rate for Purchasing Cards, Business and/or Corporate Cards (Level 3).

Check with your payment service provider if Level 3 data is supported for your acquirer.

transaction.item[n].detail.acquirerCustom Copied to clipboard JSON Text CONDITIONAL

Use this field to provide line item details that your acquirer requires you to provide.

Data must be provided in JSON format using the record name and field name (separated by a comma) to identify the value provided. Contact your payment service provider for details about the supported fields including the field definitions.

Data is valid Json Format

Min length: 1 Max length: 4000
transaction.item[n].detail.commodityCode Copied to clipboard Digits CONDITIONAL

A code describing a commodity or a group of commodities pertaining to goods classification.

Data is a number between 1 and 9999999999999999 represented as a string.

transaction.item[n].detail.tax[n] Copied to clipboard CONDITIONAL

Information about the taxes per line item.

transaction.item[n].detail.tax[n].amount Copied to clipboard Decimal CONDITIONAL

The tax amount for the tax type defined in order.item[n].detail.tax[m].type for the item.

Note that the tax amount provided must reflect the tax amount applied before a discount was applied.

Data is a string that consists of the characters 0-9, '.' and '-' and represents a valid decimal number.

Min length: 1 Max length: 14
transaction.item[n].detail.tax[n].rate Copied to clipboard Decimal CONDITIONAL

The tax rate (percentage) applied to the item for the tax type defined in order.item[n].detail.tax[m].type.

Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.

Min length: 1 Max length: 6
transaction.item[n].detail.tax[n].type Copied to clipboard String CONDITIONAL

The tax type for which the amount specified under order.item[n].detail.tax[m].amount has been paid for this item.

The correct value as used by your acquirer may have to be provided. Contact your payment service provider for details.

Data can consist of any characters

Min length: 1 Max length: 127
transaction.item[n].detail.unitDiscountRate Copied to clipboard Decimal CONDITIONAL

The discount rate (percentage) applied to this item.

Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.

Min length: 1 Max length: 6
transaction.item[n].detail.unitTaxRate Copied to clipboard Decimal CONDITIONAL

The tax rate (percentage) of the tax charged for this item.

Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.

Min length: 1 Max length: 6
transaction.item[n].detail.unitTaxType Copied to clipboard String CONDITIONAL

The type of tax charged for this item.

The correct value as used by your acquirer may have to be provided. Contact your payment service provider for details.

Data can consist of any characters

Min length: 1 Max length: 10
transaction.item[n].detail.unspsc Copied to clipboard Digits CONDITIONAL

The United Nations Standard Products and Services Code (UNSPSC) for the item.

Data is a number between 1 and 9999999999999999 represented as a string.

transaction.item[n].detail.upc Copied to clipboard Digits CONDITIONAL

The Universal Product Code (UPC) for the item.

Data is a number between 1 and 9999999999999999 represented as a string.

transaction.item[n].industryCategory Copied to clipboard Enumeration CONDITIONAL

Provide the industry category to send this line item to your acquirer for specialized processing as industry data.

Such processing might have legal obligations, which are your responsibility. Do not provide an industry category, unless you are certain it applies to you, and is accepted by your acquirer.

We support the following industry standard processing:

US health care processing using the IIAS standard.

The supported values for this field are:

HEALTHCARE_VISION, HEALTHCARE_DENTAL, HEALTHCARE_PRESCRIPTION, HEALTHCARE_OTHER

We formulate an IIAS message by summing the amounts of all the line items with the same industry category. The amount of a line item is computed as:

(order.item.unitPrice + order.item.tax) * order.item.quantity

Value must be a member of the following list. The values are case sensitive.

HEALTHCARE_DENTAL
HEALTHCARE_OTHER
HEALTHCARE_PRESCRIPTION
HEALTHCARE_VISION
transaction.item[n].name Copied to clipboard String CONDITIONAL

A short name describing the item.

Data can consist of any characters

Min length: 1 Max length: 127
transaction.item[n].quantity Copied to clipboard Decimal CONDITIONAL

The quantity of the item.

Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number greater than zero.

Min length: 0 Max length: 30
transaction.item[n].sku Copied to clipboard String CONDITIONAL

The SKU (Stock Keeping Unit) or the item identifier for this item.

Data can consist of any characters

Min length: 1 Max length: 127
transaction.item[n].unitDiscountAmount Copied to clipboard Decimal CONDITIONAL

The discount amount applied to this item.

Data is a string that consists of the characters 0-9, '.' and '-' and represents a valid decimal number.

Min length: 1 Max length: 14
transaction.item[n].unitOfMeasure Copied to clipboard String CONDITIONAL

The unit of measure used for the item quantity.

The correct value as used by your acquirer may have to be provided. Contact your payment service provider for details.

Data can consist of any characters

Min length: 1 Max length: 10
transaction.item[n].unitPrice Copied to clipboard Decimal CONDITIONAL

The cost price for the item.

This amount is multiplied with the item quantity (item.quantity) to determine the total amount for this item (item.amount). This amount does not include the tax amount and/or discount amount applicable to this item.

Data is a string that consists of the characters 0-9, '.' and '-' and represents a valid decimal number.

Min length: 1 Max length: 14
transaction.item[n].unitTaxAmount Copied to clipboard Decimal CONDITIONAL

The tax amount for the item.

This amount is multiplied with the item quantity (item.quantity) to determine the total tax amount for this item.

Data is a string that consists of the characters 0-9, '.' and '-' and represents a valid decimal number.

Min length: 1 Max length: 14
transaction.itemAmount Copied to clipboard Decimal CONDITIONAL

The total item amount for this transaction.

Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.

Min length: 1 Max length: 14
transaction.merchantNote Copied to clipboard String CONDITIONAL

Your note about this transaction.

Data can consist of any characters

Min length: 1 Max length: 250
transaction.priorApproval Copied to clipboard Enumeration CONDITIONAL

Indicates that a transaction requires approval to proceed with the order.

Value must be a member of the following list. The values are case sensitive.

REQUESTED

Requested

transaction.reference Copied to clipboard String CONDITIONAL

An optional identifier for this transaction.

Data can consist of any characters

Min length: 1 Max length: 40
transaction.shippingAndHandlingAmount Copied to clipboard Decimal CONDITIONAL

The total shipping and handling amount for this transaction.

Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.

Min length: 1 Max length: 14
transaction.source Copied to clipboard Enumeration CONDITIONAL

Indicates the channel through which you received authorization for the payment for this order from the payer.

For example, set this value to INTERNET if the payer initiated the payment online.

If you have an existing agreement with the payer that authorizes you to process this payment (for example, a recurring payment) then set this value to MERCHANT. You only need to provide transaction.source if you want to override the default value configured for your acquirer link.

Note:

  • You can only override the default value if you have the requisite permission.
  • The value you provide must match one of those configured by your payment service provider.
  • You can only set the transaction source on the initial transaction on an order. It cannot be changed on subsequent transactions.

Value must be a member of the following list. The values are case sensitive.

CALL_CENTRE

Transaction conducted via a call centre.

CARD_PRESENT

Transaction where the card is presented to the merchant.

INTERNET

Transaction conducted over the Internet.

MAIL_ORDER

Transaction received by mail.

MERCHANT

Transaction initiated by you based on an agreement with the payer. For example, a recurring payment, installment payment, or account top-up.

MOTO

Transaction received by mail or telephone.

PAYER_PRESENT

Transaction where a non-card payment method is presented to the Merchant.

TELEPHONE_ORDER

Transaction received by telephone.

VOICE_RESPONSE

Transaction conducted by a voice/DTMF recognition system.

transaction.targetTransactionId Copied to clipboard String CONDITIONAL

The identifier for the transaction you wish to refund.

That is the {transactionId} URL field for REST and the transaction.id field for NVP.

If you do not provide a target transaction ID the gateway will try to identify a transaction. If no transaction can be found or more than one transaction is identified, the request is rejected.

Data can consist of any characters

Min length: 1 Max length: 40
transaction.tax[n] Copied to clipboard CONDITIONAL

Use this parameter group to provide a breakdown of tax types, amount per tax type, and rate per tax type included in transaction.taxAmount.

transaction.tax[n].amount Copied to clipboard Decimal CONDITIONAL

The tax amount included in this transaction for the tax type.

Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.

Min length: 1 Max length: 14
transaction.tax[n].rate Copied to clipboard Decimal CONDITIONAL

The tax rate (percentage) used to determine the tax amount included in this transaction for the tax type.

Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.

Min length: 1 Max length: 6
transaction.tax[n].type Copied to clipboard String CONDITIONAL

The type of tax included in the transaction amount.

The correct value as used by your acquirer may have to be provided. Contact your payment service provider for details.

Data can consist of any characters

Min length: 1 Max length: 50
transaction.taxAmount Copied to clipboard Decimal CONDITIONAL

The total tax amount for the transaction.

You only need to provide this field when you capture or refund part of the order amount. In this case, the amount must not exceed order.taxAmount. If you provide this field when you capture or refund the full amount of the order, then the value provided must match order.taxAmount.

Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.

Min length: 1 Max length: 14
transaction.taxStatus Copied to clipboard Enumeration CONDITIONAL

Indicates your tax status for this transaction.

Value must be a member of the following list. The values are case sensitive.

EXEMPT

Indicates that you are exempt from tax.

NOT_EXEMPT

Indicates that you are not exempt from tax.

NOT_PROVIDED

Indicates that you are not providing information about being exempt from tax.

transactionSource Copied to clipboard Enumeration CONDITIONAL

Indicates the channel through which you received authorization for the payment for this order from the payer.

For example, set this value to INTERNET if the payer initiated the payment online.

If you have an existing agreement with the payer that authorizes you to process this payment (for example, a recurring payment) then set this value to MERCHANT. You only need to provide transaction.source if you want to override the default value configured for your acquirer link.

Note:

  • You can only override the default value if you have the requisite permission.
  • The value you provide must match one of those configured by your payment service provider.
  • You can only set the transaction source on the initial transaction on an order. It cannot be changed on subsequent transactions.

Value must be a member of the following list. The values are case sensitive.

CALL_CENTRE

Transaction conducted via a call centre.

CARD_PRESENT

Transaction where the card is presented to the merchant.

INTERNET

Transaction conducted over the Internet.

MAIL_ORDER

Transaction received by mail.

MERCHANT

Transaction initiated by you based on an agreement with the payer. For example, a recurring payment, installment payment, or account top-up.

MOTO

Transaction received by mail or telephone.

PAYER_PRESENT

Transaction where a non-card payment method is presented to the Merchant.

TELEPHONE_ORDER

Transaction received by telephone.

VOICE_RESPONSE

Transaction conducted by a voice/DTMF recognition system.

userId Copied to clipboard String CONDITIONAL

The person who initiated this transaction.

For Merchant Administration, the person is identified by their logon name.

Data can consist of any characters

Min length: 1 Max length: 256
verificationStrategy Copied to clipboard Enumeration CONDITIONAL

The strategy used to verify the payment instrument details before they are stored.

You only need to specify the verification strategy if you want to override the default value configured for your merchant profile. When the verification strategy is BASIC or ACQUIRER you must also provide the card expiry date in the sourceOfFunds.provided.card.expiry parameter group.

Used to nominate which type of Verification to use when payment instrument details are stored in the token repository. This setting overrides the default settings in Merchant Manager.

Value must be a member of the following list. The values are case sensitive.

ACQUIRER

The gateway performs a Web Services API Verify request. Depending on the payment type, you may need to provide additional details to enable the submission of a Verify request.

BASIC

The gateway verifies the syntax and supported ranges of the payment instrument details provided, .e.g for a card it validates the card number format and checks if the card number falls within a valid BIN range.

NONE

The gateway does not perform any validation or verification of the payment instrument details provided.

wallet.amexExpressCheckout Copied to clipboard CONDITIONAL

Response fields from Amex Express Checkout Wallet operation.

wallet.amexExpressCheckout.authCode Copied to clipboard String CONDITIONAL

An Amex Express Checkout authorization code.

You need this to get the customer details from Amex Express Checkout.Get this value from the Amex Express Checkout Success callback, after the Amex Express Checkout interaction is completed.

Data can consist of any characters

Min length: 1 Max length: 100
wallet.amexExpressCheckout.encryptedData Copied to clipboard Base64 CONDITIONAL

An encrypted JSON representation of payment data.

You must provide this when you invoke the Amex Express Checkout interaction.

Data is Base64 encoded

Min length: 1 Max length: 5120
wallet.amexExpressCheckout.selectedCardType Copied to clipboard String CONDITIONAL

The type of card the payer selects for the payment.

Get this value from the Amex Express Checkout Success callback, after the Amex Express Checkout interaction is completed..

Data can consist of any characters

Min length: 1 Max length: 10
wallet.amexExpressCheckout.transactionId Copied to clipboard String CONDITIONAL

A unique identifier provided for end to end tracking of an Amex Express Checkout interaction.

Get this value from the Amex Express Checkout Success callback, after the Amex Express Checkout interaction is completed.

Data can consist of any characters

Min length: 1 Max length: 36
wallet.amexExpressCheckout.walletId Copied to clipboard String CONDITIONAL

The identifier of the wallet from which the payer selects their card.

Get this value from the Amex Express Checkout Success callback, after the Amex Express Checkout interaction is completed.

Data can consist of any characters

Min length: 1 Max length: 2
wallet.masterpass Copied to clipboard CONDITIONAL

Response fields from MasterPass Open Wallet operation.

wallet.masterpass.allowedCardTypes Copied to clipboard String CONDITIONAL

The card types supported for the merchant.

You provide this value when you initiate a MasterPass interaction to limit the card types that the payer can select to those supported by the merchant.

Data can consist of any characters

Min length: 1 Max length: 255
wallet.masterpass.checkoutUrl Copied to clipboard Url CONDITIONAL

The MasterPass URL the gateway will use to retrieve the cardholder's payment details into the session.

Ensure that the URL begins with 'https' and is longer than 11 characters.

wallet.masterpass.merchantCheckoutId Copied to clipboard String CONDITIONAL

The merchant's MasterPass Checkout Identifier required to initiate a MasterPass wallet interaction.

You provide this value on order to initiate a MasterPass interaction.

Data can consist of any characters

Min length: 1 Max length: 255
wallet.masterpass.oauthToken Copied to clipboard String CONDITIONAL

Provide the value of the field oauthToken as returned by the MasterPass lightbox.

The gateway will use this, to retrieve the payer's payment details for the respective interaction from MasterPass and store them against the payment session (identified in field session.id). Mandatory for the MASTERPASS_ONLINE Wallet Provider.

Data can consist of any characters

Min length: 1 Max length: 255
wallet.masterpass.oauthVerifier Copied to clipboard String CONDITIONAL

Provide the value of the field oauthVerifier as returned by the MasterPass lightbox.

The gateway will use this, to retrieve the payer's payment details for the respective interaction from MasterPass and store them against the payment session (identified in field session.id). Mandatory for the MASTERPASS_ONLINE Wallet Provider.

Data can consist of any characters

Min length: 1 Max length: 255
wallet.masterpass.originUrl Copied to clipboard Url CONDITIONAL

The URL of the page that will initialize the MasterPass lightbox.

Ensure that the URL begins with 'https' and is longer than 11 characters.

wallet.masterpass.requestToken Copied to clipboard String CONDITIONAL

The MasterPass request token required to initiate a MasterPass wallet interaction.

You provide this value in order to initiate a MasterPass interaction.

Data can consist of any characters

Min length: 1 Max length: 255
wallet.masterpass.secondaryOriginUrl Copied to clipboard Url CONDITIONAL

The URL of the outer or parent page that will initialize the MasterPass lightbox.

Provide this field only when the Lightbox will be invoked from a frame that's on a merchant site, and when that frame has a different domain than the merchant site.

Ensure that the URL begins with 'https' and is longer than 11 characters.

wallet.masterpassExpressCheckout Copied to clipboard CONDITIONAL

Parameters used to obtain wallet details from MasterPass for an Express Checkout interaction.

The wallet details are added to the session.

wallet.masterpassExpressCheckout.longAccessToken Copied to clipboard String CONDITIONAL

A wallet token provided by the gateway for Masterpass paired accounts.

Provide this token to obtain pre-checkout data from the payer's wallet for future interactions.

Data can consist of any characters

Min length: 1 Max length: 255
wallet.masterpassExpressCheckout.masterpassCardId Copied to clipboard String CONDITIONAL

The MasterPass identifier for the card.

Provide this value to MasterPass in the cardId parameter when you initiate a 'Connected Checkout' or 'Express Checkout' MasterPass interaction for this wallet.

Data can consist of any characters

Min length: 1 Max length: 255
wallet.masterpassExpressCheckout.masterpassShippingId Copied to clipboard String CONDITIONAL

The MasterPass identifier for the shipping address.

Provide this value to MasterPass in the shippingId parameter when you initiate a 'Connected Checkout' or 'Express Checkout' MasterPass interaction for this wallet.

Data can consist of any characters

Min length: 1 Max length: 255
wallet.masterpassExpressCheckout.originUrl Copied to clipboard Url CONDITIONAL

The URL of the page that will initialize the MasterPass lightbox.

Ensure that the URL begins with 'https' and is longer than 11 characters.

wallet.masterpassExpressCheckout.precheckoutTransactionId Copied to clipboard String CONDITIONAL

A MasterPass transaction identifier.

Provide this value to MasterPass when you initiate a 'Connected Checkout' or 'Express Checkout' MasterPass interaction for this wallet.

Data can consist of any characters

Min length: 1 Max length: 50
wallet.masterpassExpressCheckout.secondaryOriginUrl Copied to clipboard Url CONDITIONAL

The URL of the outer or parent page that will initialize the MasterPass lightbox.

Provide this field only when the Lightbox will be invoked from a frame that's on a merchant site, and when that frame has a different domain than the merchant site.

Ensure that the URL begins with 'https' and is longer than 11 characters.

wallet.visaCheckout Copied to clipboard CONDITIONAL

Response fields from Visa Checkout Open Wallet operation.

wallet.visaCheckout.callId Copied to clipboard String CONDITIONAL

Provide the value of the field callId as returned by the Visa Checkout lightbox.

The gateway will use this, to retrieve the payer's payment details for the respective interaction from Visa Checkout and store them against the payment session (identified in field session.id). Mandatory for the VISA_CHECKOUT Wallet Provider.

Data can consist of any characters

Min length: 1 Max length: 48
wallet.visaCheckout.cardArts Copied to clipboard String CONDITIONAL

Card artwork details as returned by Visa Checkout, including the URL of the card art, and height and width of the card art in pixels, for example {"cardArt":[{"baseImageFileName":"<Image URL>","height":50,"width":77}]}.

Data can consist of any characters

Min length: 1 Max length: 200
wallet.visaCheckout.cardBrand Copied to clipboard String CONDITIONAL

Card brand returned by Visa Checkout indicating the card brand selected by the payer at Visa Checkout.

Data can consist of any characters

Min length: 1 Max length: 50

Errors Copied to clipboard

error Copied to clipboard

Information on possible error conditions that may occur while processing an operation using the API.

error.cause Copied to clipboard Enumeration

Broadly categorizes the cause of the error.

For example, errors may occur due to invalid requests or internal system failures.

Value must be a member of the following list. The values are case sensitive.

INVALID_REQUEST

The request was rejected because it did not conform to the API protocol.

REQUEST_REJECTED

The request was rejected due to security reasons such as firewall rules, expired certificate, etc.

SERVER_BUSY

The server did not have enough resources to process the request at the moment.

SERVER_FAILED

There was an internal system failure.

error.explanation Copied to clipboard String

Textual description of the error based on the cause.

This field is returned only if the cause is INVALID_REQUEST or SERVER_BUSY.

Data can consist of any characters

Min length: 1 Max length: 1000
error.field Copied to clipboard String

Indicates the name of the field that failed validation.

This field is returned only if the cause is INVALID_REQUEST and a field level validation error was encountered.

Data can consist of any characters

Min length: 1 Max length: 100
error.supportCode Copied to clipboard String

Indicates the code that helps the support team to quickly identify the exact cause of the error.

This field is returned only if the cause is SERVER_FAILED or REQUEST_REJECTED.

Data can consist of any characters

Min length: 1 Max length: 100
error.validationType Copied to clipboard Enumeration

Indicates the type of field validation error.

This field is returned only if the cause is INVALID_REQUEST and a field level validation error was encountered.

Value must be a member of the following list. The values are case sensitive.

INVALID

The request contained a field with a value that did not pass validation.

MISSING

The request was missing a mandatory field.

UNSUPPORTED

The request contained a field that is unsupported.

result Copied to clipboard Enumeration

A system-generated high level overall result of the operation.

Value must be a member of the following list. The values are case sensitive.

ERROR

The operation resulted in an error and hence cannot be processed.