Refund

Request to refund previously captured funds to the payer. Typically, a Refund is linked to the Capture or Pay through the orderId - you provide the original orderId, a new transactionId, and the amount you wish to refund. You may provide other fields if you want to update their values; however, you must NOT provide sourceOfFunds.

In rare situations, you may want to refund the payer without associating the credit to a previous transaction (see Standalone Refund). In this case, you need to provide the sourceOfFunds and a new orderId.

PUT https://na.gateway.mastercard.com/api/rest/version/60 / merchant / {merchantId} / order / {orderid} / transaction / {transactionid}

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 Reporting 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.


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

Min length: 1 Max length: 40
{orderid} Copied to clipboard String REQUIRED

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
{transactionid} Copied to clipboard String REQUIRED

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

Fields Copied to clipboard

action Copied to clipboard

Actions that you want the gateway to perform.

action.refundAuthorization Copied to clipboard Boolean

Use this field to indicate that you want the gateway to authorize the Refund with the issuer before submitting it to the acquirer.

Depending on your merchant profile configuration the gateway may or may not already attempt to authorize the Refund with the issuer before submitting it to the acquirer.

JSON boolean values 'true' or 'false'.

agreement Copied to clipboard

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).

You must provide this data for some types of payments (such as recurring), but you can provide it for any cases where you want to link orders together.

agreement.expiryDate Copied to clipboard Date

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

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

Information about agreements for recurring payments.

agreement.recurring.amountVariability Copied to clipboard Enumeration

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

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

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

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

Airline industry specific data

airline.bookingReference Copied to clipboard Alphanumeric

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

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

Itinerary details

airline.itinerary.leg[n] Copied to clipboard

Travel leg details.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Passenger details

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

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

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

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

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

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

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

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

Ticket details

airline.ticket.conjunctionTicketIndicator Copied to clipboard Boolean

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

Indicates if an electronic ticket was issued.

JSON boolean values 'true' or 'false'.

airline.ticket.exchangedTicketNumber Copied to clipboard Alphanumeric

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

Ticket issue information.

airline.ticket.issue.address Copied to clipboard String

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

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

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

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

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

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

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

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

Indicates if the issued ticket is refundable.

JSON boolean values 'true' or 'false'.

airline.ticket.taxOrFee[n] Copied to clipboard

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

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

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

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

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

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

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

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

TOUR_ORDER

Tour Order

apiOperation Copied to clipboard String = REFUND FIXED

Any sequence of zero or more unicode characters.

billing Copied to clipboard

Information on the billing address including the contact details of the payer.

billing.address Copied to clipboard

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

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

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

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

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

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

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

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

The second line of the address (if provided).

Data can consist of any characters

Min length: 1 Max length: 100
correlationId Copied to clipboard String

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

Cruise industry data.

cruise.bookingReference Copied to clipboard String

The cruise booking reference.

Data can consist of any characters

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

Information about the cruise line.

cruise.company.address Copied to clipboard

Address of the cruise line.

cruise.company.address.city Copied to clipboard String

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

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

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

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

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

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

Contact details of the cruise line.

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

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

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

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

Cruise passenger details.

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

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

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

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

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

The title of the passenger.

Data can consist of any characters

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

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

The name of the cruise ship.

Data can consist of any characters

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Information about the customer, including their contact details.

customer.email Copied to clipboard Email

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

The payer's first name.

Data can consist of any characters

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

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

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.phone Copied to clipboard Telephone Number

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

The tax registration identifier of the customer.

Data can consist of any characters

Min length: 1 Max length: 30
device Copied to clipboard

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

device.ani Copied to clipboard String

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

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

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
device.fingerprint Copied to clipboard String

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

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

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
order Copied to clipboard

Information about the order associated with this transaction.

order.acceptPartialAmount Copied to clipboard Boolean

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.custom Copied to clipboard String

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

A note from the payer about this order.

Data can consist of any characters

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

Short textual description of the contents of the order.

Data can consist of any characters

Min length: 1 Max length: 127
order.marketplace Copied to clipboard

Use this parameter group to provide additional information if you are a marketplace.You are considered a marketplace if you operate an electronic commerce website or mobile application that brings together payers and retailers and you are selling the goods or services on behalf of the retailer.In this case, the card schemes may require you to register with them as a marketplace and assign you a Marketplace ID.

You should provide this identifier to your payment service provider so that the gateway can automatically include it in all transaction messages to your acquirer.

order.marketplace.retailerLocation Copied to clipboard Enumeration

Provide information about the location of the retailers for goods or services included in this order.Where a retailer is located in a country different from your country, they are considered a foreign retailer, otherwise they are considered a domestic retailer.

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

DOMESTIC_ONLY

The order only contains items from domestic retailers.

FOREIGN_AND_DOMESTIC

The order contains items from both foreign and domestic retailers.

FOREIGN_ONLY

The order only contains items from foreign retailers.

order.merchantCategoryCode Copied to clipboard Digits

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.notificationUrl Copied to clipboard Url

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

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

An optional identifier for 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.statementDescriptor Copied to clipboard

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

order.statementDescriptor.address Copied to clipboard

Descriptor address of the merchant.

order.statementDescriptor.address.city Copied to clipboard String

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

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

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

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

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

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

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

Descriptor name of the merchant.

Data can consist of any characters

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

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

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.

order.subMerchant.address Copied to clipboard

The sub-merchant's address.

order.subMerchant.address.city Copied to clipboard String

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

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

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

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

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

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

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

The second line of the address (if provided).

Data can consist of any characters

Min length: 1 Max length: 100
order.subMerchant.bankIndustryCode Copied to clipboard Digits

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

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

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

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 REQUIRED

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

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

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 REQUIRED

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.walletIndicator Copied to clipboard String

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

Details about the source of the payment details used for digital payment methods.

Provide this value when you process payments for:

  • • 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.

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

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
posTerminal Copied to clipboard

Information about the device used to initiate the transaction at the Point-of-Sale (POS).

posTerminal.address Copied to clipboard

The address where the POS is located.

For the posTerminal.address.country field - EMV: 9F1A.

posTerminal.address.city Copied to clipboard String

The city portion of the address.

Data can consist of any characters

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

The name of the company associated with this address.

Data can consist of any characters

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

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
posTerminal.address.postcodeZip Copied to clipboard Alphanumeric + additional characters

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
posTerminal.address.stateProvince Copied to clipboard String

The state or province of the address.

Data can consist of any characters

Min length: 1 Max length: 20
posTerminal.address.street Copied to clipboard String

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
posTerminal.address.street2 Copied to clipboard String

The second line of the address (if provided).

Data can consist of any characters

Min length: 1 Max length: 100
posTerminal.attended Copied to clipboard Enumeration

Specifies whether the terminal is attended by the merchant.

You only need to provide this field for card present transactions.

You must provide a value for this field for chip transactions with UK acquirers.

This field corresponds to EMV tag 9F35

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

ATTENDED

Attended terminal.

SEMI_ATTENDED

Where a card or proximity payment device is present; and the cardholder is present; and the cardholder completes the transaction and, if required, an individual representing the merchant or acquirer assist the cardholder to complete the transaction.

UNATTENDED

Unattended terminal.

UNKNOWN_OR_UNSPECIFIED

Unknown or unspecified.

posTerminal.cardPresenceCapability Copied to clipboard Enumeration

Indicates the capabilities of the terminal to support card present, card not present or both.

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

CARD_NOT_PRESENT

Card not present.

CARD_PRESENT

Card present.

CARD_PRESENT_AND_CARD_NOT_PRESENT

Card present and card not present.

posTerminal.cardholderActivated Copied to clipboard Enumeration

Indicates the type of cardholder-activated terminal (CAT) used by the payer for the transaction.

A CAT is typically an unattended terminal. For example a terminal used to purchase transit tickets, a terminal use to pay parking fees, toll fees, or automated dispensing machines.

There are seven types (levels) of CAT devices. Each level has specific card scheme requirements.

If you do not provide a value for this field for a Card Present payment the gateway defaults the value to NOT_CARDHOLDER_ACTIVATED.

This field corresponds to EMV tag 9F35

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

AUTOMATED_DISPENSING_MACHINE_WITH_PIN

CAT level 1 terminal.

ELECTRONIC_COMMERCE

CAT level 6 terminal.

IN_FLIGHT_COMMERCE

CAT level 4 terminal.

LIMITED_AMOUNT_TERMINAL

CAT level 3 terminal.

MPOS_ACCEPTANCE_DEVICE

CAT level 9 terminal.

NOT_CARDHOLDER_ACTIVATED

Terminal is not activated by the cardholder.

SELF_SERVICE_TERMINAL

CAT level 2 terminal.

TRANSPONDER_TRANSACTION

CAT level 7 terminal.

posTerminal.inputCapability Copied to clipboard Enumeration

Indicates the type of input the terminal is capable of receiving.

For example, chip, magnetic stripe read, key entry or contactless.

This field corresponds to EMV tag 9F33

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

BARCODE

The terminal supports data input using a barcode reader.

CHIP

Chip read only.

CHIP_AND_KEY_ENTRY_AND_MAGNETIC_STRIPE

MSR, chip and key entry.

CHIP_AND_KEY_ENTRY_AND_MAGNETIC_STRIPE_AND_RFID

The terminal supports chip read, key entry, magnetic stripe read, and RFID read.

CHIP_AND_MAGNETIC_STRIPE

MSR and chip.

CONTACTLESS_CHIP

Contactless chip.

CONTACTLESS_MAGNETIC_STRIPE

Contactless MSR.

CONTACTLESS_OR_MAGNETIC_STRIPE

The terminal supports both contactless interaction with a chip and magnetic stripe read.

KEY_ENTRY

Key entry only.

KEY_ENTRY_AND_MAGNETIC_STRIPE

MSR and key entry.

MAGNETIC_STRIPE

Magnetic strip read (MSR) only.

UNKNOWN
VOICE_AUDIO_RESPONSE
posTerminal.lane Copied to clipboard String

The name that you use to uniquely identify the location of the Point Of Sale instance used to initiate the transaction.

Examples could be S43_L12 (Lane 12 in Shop 43) or Kiosk_76. This field can be used for your search or reporting needs, and might be used by fraud management systems.

This field corresponds to EMV tag 9F1C

Data can consist of any characters

Min length: 1 Max length: 8
posTerminal.location Copied to clipboard Enumeration

Indicates the physical location of the terminal in relation to your business premises.

If you do not provide a value for this field for a mobile wallet payment the gateway defaults the value to PAYER_TERMINAL_OFF_PREMISES.

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

MERCHANT_TERMINAL_OFF_PREMISES

A terminal under the merchant's control but not on the merchant's premises was used.

MERCHANT_TERMINAL_ON_PREMISES

A terminal under the merchant's control on the merchant's premises was used.

NO_TERMINAL_VOICE_OR_AUDIO_RESPONSE

A voice or an audio response system was used, not a physical terminal.

PAYER_TERMINAL_OFF_PREMISES

A terminal under the payer's control and off the merchant's premises was used. For example, a mobile device or personal computer.

PAYER_TERMINAL_ON_PREMISES

A terminal under the payer's control on the merchant's premises was used. For example, a mobile device or personal computer.

posTerminal.mobile Copied to clipboard

Information about mobile POS (mPOS) device.

posTerminal.mobile.cardInputDevice Copied to clipboard Enumeration

The card reader used by an mPOS device.

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

BUILT_IN

Off-the-shelf mobile phone or tablet with only a built-in contactless reader.

INTEGRATED_DONGLE

Dedicated mobile terminal with an integrated card reader.

SEPARATE_DONGLE

Off-the shelf device or dedicated mobile terminal, with a separate card reader.

posTerminal.onlineReasonCode Copied to clipboard Enumeration

Indicates the reason for sending a transaction online to the acquirer rather than completing it locally at the terminal.

The online reason code is mandatory for chip and chip fallback transactions (including reversals) for all online transactions.

Where more than one reason applies, then the order of priority used for the enumeration list applies.

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

CHIP_APPLICATION_DATA_FILE_ERROR

The application data file on the chip was unable to process. The terminal has possession of the card. Only used by integrated ICC/MSR terminals (where the terminal has possession of the card and when this condition can be accurately identified).

CHIP_COMMON_DATA_FILE_ERROR

The application common data file on the chip was unable to process. Only used by integrated ICC/MSR terminals (where the terminal has possession of the card and when this condition can be accurately identified).

FORCED_BY_CHIP

The chip application forced the the transaction to go online.

FORCED_BY_ISSUER

Issuer rules forced the transaction to go online. For example, the card is expired.

FORCED_BY_MERCHANT

Rules in the merchant's POS application forced the transaction to go online. For example, the card was used twice or send one in a certain number of authorizations online.

FORCED_BY_TERMINAL

The terminal forced the transaction to go online. For example, the results of tests the terminal carried out during the EMV process indicated to send the transaction online.

MERCHANT_SUSPICIOUS

The merchant has indicated a suspicious transaction. For example, they indicated an unsuccessful signature check or the card returned an inappropriate cryptogram.

OVER_FLOOR_LIMIT

The transaction amount is above the limit set for local processing of the transaction at the terminal.

RANDOM_SELECTION_BY_TERMINAL

The terminal has randomly selected the transaction for online processing.

UNABLE_TO_PROCESS_CHIP

The terminal is not able to process a chip transaction. The transaction was sent online as a fallback.

posTerminal.panEntryMode Copied to clipboard Enumeration

Indicates how you or the Payer entered the Primary Account Number (PAN) of the card at the terminal.

This field corresponds to EMV tag 9F39

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

BARCODE_READER

The PAN was entered via a barcode reader.

CHIP

The PAN was entered by reading data from the chip on the card.

CHIP_FALLBACK

A chip-capable terminal failed to process the transaction using data on the card's chip. Therefore, the PAN was read using a fallback mode.

CONTACTLESS

The PAN was entered by a contactless interaction with a chip.

ECOMMERCE

The PAN was entered via an electronic commerce interaction, including chip.

KEYED

The PAN was manually entered.

MOBILE_COMMERCE
OPTICAL_CHARACTER_READER

The PAN was entered via an an optical character reader.

RFID_CHIP

An RFID device was used. Chip data is provided.

RFID_STRIPE

An RFID device was used. Stripe data is provided.

SWIPE

The PAN was read from the magnetic stripe, and the full, unaltered contents of the stripe are provided.

SWIPE_WITH_SIGNATURE

The PAN was read from the magnetic stripe and a signature was provided.

UNKNOWN

The mode of PAN entry is unknown.

VOICE_AUTHORIZATION
VOICE_RESPONSE

The PAN was collected using a Voice Response Unit.

posTerminal.pinEntryCapability Copied to clipboard Enumeration

Indicates the capability of the terminal to accept entry of the Payer's PIN.

This field corresponds to EMV tag 9F33

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

OFFLINE_PIN_ONLY

Only offline PIN is supported.

PIN_NOT_SUPPORTED

Neither offline nor online PIN is supported.

PIN_PAD_INOPERATIVE

PIN is supported but the POS or Payment Client has determined that it is not operational.

PIN_SUPPORTED

Both offline & online PIN supported.

SOFTWARE_ONLINE_PIN_ONLY

mPOS Software-based PIN Entry Capability (online PIN supported).

UNKNOWN

The PIN entry capability is not known.

posTerminal.pinLengthCapability Copied to clipboard Integer

The maximum number of PIN characters that can be entered at the terminal

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

Min value: 4 Max value: 12
posTerminal.serialNumber Copied to clipboard ASCII Text

The unique serial number assigned by the manufacturer to the terminal device.

Data consists of ASCII characters

Min length: 1 Max length: 16
posTerminal.store Copied to clipboard

Information about the store or business location.

posTerminal.store.id Copied to clipboard String

Your unique identifier for the specific store or business location where the transaction took place.

Data can consist of any characters

Min length: 1 Max length: 255
posTerminal.store.name Copied to clipboard String

Your name for the specific store or business location where the transaction took place.

Data can consist of any characters

Min length: 1 Max length: 255
posTerminal.terminalId Copied to clipboard Alphanumeric

Identifier of the terminal in the merchant point of sale system that processed the transaction.

This is an identifier assigned to the merchant account by the acquiring institution.

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

Min length: 1 Max length: 8
responseControls Copied to clipboard

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

responseControls.sensitiveData Copied to clipboard String

Indicates how sensitive data is returned in the response.

Data can consist of any characters

Min length: 1 Max length: 50
session.id Copied to clipboard ASCII Text

Identifier of the payment session containing values for any of the request fields to be used in this operation.

Values provided in the request will override values contained in the session.

Data consists of ASCII characters

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

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
shipping Copied to clipboard

Shipping information for this order.

shipping.address Copied to clipboard

The address to which this order will be shipped.

shipping.address.city Copied to clipboard String

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

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

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

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.source Copied to clipboard Enumeration

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

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

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

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

The second line of the address (if provided).

Data can consist of any characters

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

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.contact Copied to clipboard

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

shipping.contact.email Copied to clipboard Email

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

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

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

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

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.method Copied to clipboard Enumeration

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.

shipping.origin.postcodeZip Copied to clipboard Alphanumeric + additional characters

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

Information about the payment type selected by the payer for this payment and the source of the funds.

Depending on the payment type the source of the funds can be a debit or credit card, bank account, or account with a browser payment provider (such as PayPal).

For card payments the source of funds information 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

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

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

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

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

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

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

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.card Copied to clipboard

Details about the card.

Use this parameter group when you have sourced payment details using:
Cards: the card details entered directly or collected using a Point of Sale (POS) terminal.
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 where the card was tokenized using a card scheme tokenization service such as Mastercard Digital Enablement Service (MDES).

sourceOfFunds.provided.card.accountType Copied to clipboard Enumeration

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.emvRequest Copied to clipboard String

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

Expiry date, as shown on the card or as provided for a card scheme token.

This field corresponds to EMV tag 5F24

sourceOfFunds.provided.card.expiry.month Copied to clipboard Digits REQUIRED

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 REQUIRED

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

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

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

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

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.nameOnCard Copied to clipboard String

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

The account number of the payer's account used for the payment.

On requests, provide the number in the form that you receive it (as explained below). On responses, the gateway populates it with a form that the payer would recognize (also explained in more detail below).

  • Request

    On request, populate this field based on the payment method you are using for the payment:
    • • Card: the account number embossed onto the card. This field corresponds to EMV tag 5A.
    • • Device payment methods such as Apple Pay, Android Pay, Samsung Pay, or Google Pay. Normally for device payments, you would populate sourceOfFunds.provided.card.devicePayment.paymentToken and the gateway will decrypt and extract this field. However, you can populate this field if you decrypt the payment token yourself. In this case use the Device PAN (DPAN) provided in the payment token.
    • • Digital wallets such as Masterpass, Visa Checkout or Amex Express Checkout. In this case, provide the PAN retrieved from the wallet.
    • • Scheme tokens such as MDES (Mastercard Digital Enablement Service) or Visa Token Service (VTS). For MDES tokens, supply the value called the "Token PAN". For VTS tokens, supply the value called "Token"
  • Response

    On return, the card number will be populated in 6.4 masking format, for example, 000000xxxxxx0000. If you wish to return unmasked card numbers, you must have the requisite permission, set responseControls.sensitiveData field to UNMASK, and authenticate your call to the API using certificate authentication.

    When a DPAN or scheme token was provided in the transaction request, then this field will represent the PAN of the associated payer's account (when supported by the acquirer). This is also referred to as the Funding PAN (FPAN).

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

Min length: 9 Max length: 19
sourceOfFunds.provided.card.p2pe Copied to clipboard

This holds the PAN in the case where it is encrypted by the terminal using DUKPT key exchange.

sourceOfFunds.provided.card.p2pe.cardBin Copied to clipboard Digits

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.p2pe.encryptionState Copied to clipboard String

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.p2pe.initializationVector Copied to clipboard Hex

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.p2pe.keySerialNumber Copied to clipboard Hex REQUIRED

The DUKPT key serial number supplied by the terminal.

Data is hexadecimal encoded

Min length: 20 Max length: 20
sourceOfFunds.provided.card.p2pe.payload Copied to clipboard Hex REQUIRED

The DUKPT encrypted payload supplied by the terminal.

Data is hexadecimal encoded

Min length: 32 Max length: 1024
sourceOfFunds.provided.card.pin Copied to clipboard

The PIN (Personal Identification Number) entered by a payer at the point of sale that is used to authenticate their identity as the cardholder with the issuer.

Provide this data in the case where you want the PIN verified online by the issuer. The gateway can support PINs encoded in ISO 9564-1 formats 0, 1, 3 and 4, but the supported format will depend on integration.

sourceOfFunds.provided.card.pin.encryptionState Copied to clipboard Enumeration

The PIN 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.

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

INVALID

The encryption state is invalid.

VALID

The encryption state is valid.

sourceOfFunds.provided.card.pin.keySerialNumber Copied to clipboard Hex REQUIRED

The DUKPT key serial number supplied by the terminal.

Data is hexadecimal encoded

Min length: 20 Max length: 20
sourceOfFunds.provided.card.pin.payload Copied to clipboard Hex REQUIRED

The DUKPT encrypted payload supplied by the terminal.

Data is hexadecimal encoded

Min length: 16 Max length: 16
sourceOfFunds.provided.card.securityCode Copied to clipboard Digits

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