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/45 / 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 created by 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 transactions on the order.


Data can consist of any characters

Min length: 1 Max length: 40

Fields Copied to clipboard

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

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
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
TRAVELEX_CURRENCY_SELECT
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 String

The contact person's mobile phone or cell phone number.

Data can consist of any characters

Min length: 1 Max length: 20
customer.phone Copied to clipboard String

The phone number of the person to whom the order is being billed.

Data can consist of any characters

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

Information associated with the device's source of 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 computer used by the customer, 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.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.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

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

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

The wallet provider used to collect the customer's payment details used for this transaction.

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

AMEX_EXPRESS_CHECKOUT

Amex Express Checkout wallet provider.

MASTERPASS_ONLINE

MasterPass Online 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.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 transactions with UK acquirers.

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.

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.

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
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
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 as shown on the card.

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.

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

Credit card number as printed on the card.

This field corresponds to EMV tag 5A

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 were you want the PIN verified online by the issuer. The gateway supports PINs encoded in ISO 9564-1 formats 0, 1 and 3.

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.

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

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.track1 Copied to clipboard Track 1 Data

This field contains the full track data.

You may optionally include the start and end sentinels and LRC.

Provide this for stripe and EMV fallback to stripe cases.

This field corresponds to EMV tag 56

Data must comply with ISO 7811-2 track 1 data character set.
Data may consist of the characters: ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ]]>

Min length: 2 Max length: 79
sourceOfFunds.provided.card.track2 Copied to clipboard Track 2 Data

This field contains the full track data.

You may optionally include the start and end sentinels and LRC.

Provide this for stripe and EMV fallback to stripe cases.

The contents of this field must match the PAN and expiry fields included in the Transaction Request.

This field corresponds to EMV tag 57

Data must comply with ISO 7811-2 track 2 data character set.
Data may consist of the characters: ? ]]>

Min length: 2 Max length: 40
sourceOfFunds.provided.giftCard Copied to clipboard

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

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

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

PIN number for the gift card.

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

Min length: 4 Max length: 8
sourceOfFunds.token Copied to clipboard Alphanumeric

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

The payment method your payer has chosen for this payment.

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.

CARD

The payer selected to pay using a credit or debit card. The payer's card details must be provided.

GIFT_CARD

The payer chose to pay using gift card. The payer's gift card details must be provided under the sourceOfFunds.provided.giftCard parameter group.

transaction Copied to clipboard REQUIRED

Information about this transaction.

transaction.acquirer Copied to clipboard

Additional information to be passed to acquirer.

transaction.acquirer.customData Copied to clipboard String

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

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 REQUIRED

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.currency Copied to clipboard Upper case alphabetic text REQUIRED

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

Data must consist of the characters A-Z

Min length: 3 Max length: 3
transaction.discountAmount Copied to clipboard Decimal

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.item[n] Copied to clipboard

Information about the items the payer purchases with the order.

transaction.item[n].brand Copied to clipboard String

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

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

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

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

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

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

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.unitTax[n] Copied to clipboard

Information about the taxes per unit.

transaction.item[n].detail.unitTax[n].amount Copied to clipboard Decimal

The tax amount for the tax type defined in transaction.item[n].detail.unitTax[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.unitTax[n].rate Copied to clipboard Decimal

The tax rate (percentage) applied to the item for the tax type defined in transaction.item[n].detail.unitTax[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.unitTax[n].type Copied to clipboard String

The tax type for which the amount specified under transaction.item[n].detail.unitTax[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.unitTaxRate Copied to clipboard Decimal

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

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

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

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

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 REQUIRED

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 Digits REQUIRED

The quantity of the item.

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

transaction.item[n].sku Copied to clipboard String

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

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

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 REQUIRED

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

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

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

Your note about this transaction.

Data can consist of any characters

Min length: 1 Max length: 250
transaction.priorApproval Copied to clipboard Enumeration

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

An optional identifier for this transaction.

Data can consist of any characters

Min length: 1 Max length: 40
transaction.shippingAndHandlingAmount Copied to clipboard Decimal

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

Indicates the source through which you received the transaction.

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.

MOTO

Transaction received by mail or telephone.

TELEPHONE_ORDER

Transaction received by telephone.

VOICE_RESPONSE

Transaction conducted by a voice/DTMF recognition system.

transaction.targetTransactionId Copied to clipboard String

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

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

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

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

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

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

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.

userId Copied to clipboard String

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

Response Copied to clipboard

Fields Copied to clipboard

3DSecure Copied to clipboard

Information on 3DSecure fields.

3DSecure.acsEci Copied to clipboard Digits

The Electronic Commerce Indicator returned by the card issuer in the authentication response message.

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
3DSecure.authenticationStatus Copied to clipboard Enumeration

Indicates if the cardholder verification was successful.

Included only if payment authentication was attempted and a PARes (Payer Authentication Response) was received by the MPI.

The PARes message is the response received from the card Issuer's Access Control Server (ACS) after the cardholder has completed the authentication process.

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

AUTHENTICATION_ATTEMPTED

Authentication was attempted but the card issuer did not perform the authentication.

AUTHENTICATION_NOT_AVAILABLE

An internal error occurred and Authentication is not currently available.

AUTHENTICATION_SUCCESSFUL

The cardholder was successfully authenticated.

3DSecure.authenticationToken Copied to clipboard Base64

The base64 encoded value generated by the card issuer.

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

Data is Base64 encoded

allowable lengths 28 or 32
3DSecure.enrollmentStatus Copied to clipboard Enumeration ALWAYS PROVIDED

Indicates if the cardholder is enrolled for 3-D Secure authentication.

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

ENROLLED

The card is enrolled for 3DS authentication.

ENROLLMENT_STATUS_UNDETERMINED

The Issuer's ACS was unable to process the request to check enrollment or the card is ineligible.

NOT_ENROLLED

The card is not enrolled for 3DS authentication.

3DSecure.xid Copied to clipboard Base64

A unique transaction identifier generated by the Payment Gateway on behalf of the merchant to identify the 3DS transaction.

This field is mandatory for Verified By Visa transactions if authentication was available. The XID should be used in operation requests unaltered.

Data is Base64 encoded

allowable length 28
3DSecureId Copied to clipboard ASCII Text

A unique identifier supplied by the merchant for the authentication.

It is first defined in the check3DSEnrollment operation, and then included in subsequent operations.
It is not used when the authentication is performed externally.

Data consists of ASCII characters

Min length: 1 Max length: 64
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