Arguments
updateSessionCallback
Function
COMPULSORY
The function to handle the response from PaymentSession.updateSession( )
call. Defined as updateSessionCallback = function(updateSessionResponse)
Fields:
status
String
COMPULSORY
The overall status of the PaymentSession.updateSession( )
request. Possible values are ok, fields_in_error, system_error, or request_timeout.
version
String
COMPULSORY
The version of the API used to retrieve the session details.
errors
Object
The errors
object returned if the PaymentSession.updateSession( )
request failed to update the session successfully.
String <errorField>
Indicates the name of the field that failed validation, returned only if the response status is fields_in_error
.
String cause
Cause of the error. Possible values are 'missing' or 'invalid'.
Example
// An error response (fields_in_error)
"errors": {
"cardNumber": "invalid",
"securityCode": "invalid"
},
String message
The error message returned if the response status is system_error
or request_timeout
.
Example
// An error response (request_timeout)
"errors": {
"message": "Request timeout error message."
},
// An error response (system_error)
"errors": {
"message": "System error message."
},
3DSecure
Object
=
OPTIONAL
Information on 3DSecure fields.
acsEci
Number
=
OPTIONAL
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.
authenticationRedirect
Object
=
OPTIONAL
A collection of parameters required to build the HTML form that is redirected to the ACS.
There are two options to generate the redirect page used to transfer the cardholder to the card Issuer's Access Control Server (ACS) for authentication:
1. Simple: submit the form generated by the gateway. In this case, only the htmlBodyContent parameter is required.
2. Customized: for those merchants who wish to customise the submission. In this case, the acsURL and paReq parameters will be required to formulate the submission.
Note: This field will only be returned in the event of a successful directory server lookup.
pageGenerationMode
String
=
OPTIONAL
Indicates the option (Simple or Customized) used to generate the page that redirects the cardholder to the card Issuer's Access Control Server (ACS) for authentication.
The response to the Check 3DS Enrollment operation will include the information required for the selected option. By default, the Simple option is used.
An enumeration to allow a user to specify if they wish to adopt a customized solution or a simple solution.
Value must be a member of the following list. The values are case sensitive.
CUSTOMIZED
A strategy to indicate that the user wishes to customize the response
SIMPLE
A simple interaction model where the response is complete and no user intervention is required.
responseUrl
=
OPTIONAL
The URL to which you want to redirect the payer after completing the payer authentication process.
Typically, this will be the merchant's website URL, which must be URL encoded for special characters such spaces, hyphens, etc.
Ensure that the URL begins with 'https' and is longer than 11 characters.
simple
Object
=
OPTIONAL
The details required by the system to generate the HTML page as specified in the Simple option.
expectedHtmlEncoding
String
=
OPTIONAL
The encoding required for the HTML returned in the response, through htmlBodyContent parameter.
The available HTML Encoding options that a client may request.
Value must be a member of the following list. The values are case sensitive.
redirectDisplayBackgroundColor
String
=
OPTIONAL
Background color of the page, encoded in HEX, rendered in the cardholder's browser while the browser is waiting for the authentication to commence.
By default, the color is set to #FFFFFF.
Data may consist of the characters 0-9, a-z, A-Z, '#'
redirectDisplayContinueButtonText
String
=
OPTIONAL
Text on the button that the cardholder can use to redirect the browser to the card Issuer's Access Control Server (ACS) if JavaScript is disabled for their browser.
By default, the button text is set to "Click here to continue".
Data can consist of any characters
redirectDisplayTitle
String
=
OPTIONAL
Title of the page rendered in the cardholder's browser while the browser is waiting for the authentication to commence.
By default, the title is set to "Process secure Payment".
Data can consist of any characters
authenticationStatus
String
=
OPTIONAL
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.
authenticationToken
=
OPTIONAL
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
enrollmentStatus
String
=
OPTIONAL
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.
goodsDescription
String
=
OPTIONAL
An optional field that the merchant may supply in the Transaction Request as a description of the transaction.
If supported by the ACS, this description will be displayed on the authentication page where the cardholder types in their secret password.
Data can consist of any characters
xid
=
OPTIONAL
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.
3DSecureId
String
=
OPTIONAL
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
action
Object
=
OPTIONAL
Information about any actions which apply to this transaction.
Specify actions if you wish to change the default behaviour of the transaction.
bypassMerchantRiskRules
String
=
OPTIONAL
The risk rules you wish to bypass when performing risk assessment for an order.
Value must be a member of the following list. The values are case sensitive.
airline
Object
=
OPTIONAL
Airline industry specific data
bookingReference
String
=
OPTIONAL
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
documentType
String
=
OPTIONAL
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
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
itinerary
Object
=
OPTIONAL
Itinerary details
leg
Object
=
OPTIONAL
Travel leg details.
carrierCode
=
OPTIONAL
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
conjunctionTicketNumber
String
=
OPTIONAL
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
couponNumber
String
=
OPTIONAL
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
departureAirport
String
=
OPTIONAL
The 3 character IATA airport code of the departure airport for the trip leg.
Data must consist of the characters A-Z
departureDate
String
=
OPTIONAL
Date of departure for the trip leg.
Data must comply with ISO 8601 extended date format, yyyy-mm-dd
departureTax
Number
=
OPTIONAL
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.
departureTime
String
=
OPTIONAL
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]
destinationAirport
String
=
OPTIONAL
The 3 character IATA airport code for the destination airport for the trip leg.
Data must consist of the characters A-Z
destinationArrivalTime
String
=
OPTIONAL
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]
endorsementsRestrictions
String
=
OPTIONAL
Restrictions (e.g. non-refundable) or endorsements applicable to the trip leg.
Data may consist of the characters 0-9, a-z, A-Z
exchangeTicketNumber
String
=
OPTIONAL
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
fare
Number
=
OPTIONAL
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.
fareBasis
String
=
OPTIONAL
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
fees
Number
=
OPTIONAL
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.
flightNumber
String
=
OPTIONAL
The flight number for the trip leg.
Data may consist of the characters 0-9, a-z, A-Z
stopoverPermitted
Boolean
=
OPTIONAL
Indicates if a stopover is permitted for the trip leg.
JSON boolean values 'true' or 'false'.
taxes
Number
=
OPTIONAL
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.
travelClass
String
=
OPTIONAL
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
numberInParty
Number
=
OPTIONAL
Number of passengers associated with this booking.
Data is a string that consists of the characters 0-9.
originCountry
String
=
OPTIONAL
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
passenger
Object
=
OPTIONAL
Passenger details
firstName
String
=
OPTIONAL
First name of the passenger to whom the ticket is being issued.
Data can consist of any characters
lastName
String
=
OPTIONAL
Last name of the passenger to whom the ticket is being issued.
Data can consist of any characters
middleName
String
=
OPTIONAL
Middle name of the passenger to whom the ticket is being issued.
Data can consist of any characters
title
String
=
OPTIONAL
Title of the passenger to whom the ticket is being issued.
Data can consist of any characters
planNumber
String
=
OPTIONAL
Plan number supplied by the airline for this booking.
Data may consist of the characters 0-9, a-z, A-Z
ticket
Object
=
OPTIONAL
Ticket details
conjunctionTicketIndicator
Boolean
=
OPTIONAL
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'.
customerReference
String
=
OPTIONAL
Information supplied by the customer.
For example, Frequent Flyer number.
Data can consist of any characters
eTicket
Boolean
=
OPTIONAL
Indicates if an electronic ticket was issued.
JSON boolean values 'true' or 'false'.
exchangedTicketNumber
String
=
OPTIONAL
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
issue
Object
=
OPTIONAL
Ticket issue information.
address
String
=
OPTIONAL
The address where the ticket was issued.
Data can consist of any characters
carrierCode
=
OPTIONAL
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
carrierName
String
=
OPTIONAL
Name of airline carrier issuing the ticket.
Data may consist of the characters 0-9, a-z, A-Z
city
String
=
OPTIONAL
The city/town where the ticket was issued.
Data may consist of the characters 0-9, a-z, A-Z
country
String
=
OPTIONAL
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
date
String
=
OPTIONAL
The date the ticket was issued.
Data must comply with ISO 8601 extended date format, yyyy-mm-dd
travelAgentCode
String
=
OPTIONAL
Industry code of the travel agent issuing the ticket.
Data may consist of the characters 0-9, a-z, A-Z
travelAgentName
String
=
OPTIONAL
Name of the travel agent issuing the ticket.
Data may consist of the characters 0-9, a-z, A-Z
restricted
Boolean
=
OPTIONAL
Indicates if the issued ticket is refundable.
JSON boolean values 'true' or 'false'.
ticketNumber
String
=
OPTIONAL
The airline ticket number associated with the transaction.
Data may consist of the characters 0-9, a-z, A-Z
totalFare
Number
=
OPTIONAL
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.
totalFees
Number
=
OPTIONAL
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.
totalTaxes
Number
=
OPTIONAL
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.
transactionType
String
=
OPTIONAL
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
TICKET_PURCHASE
Ticket Purchase
billing
Object
=
OPTIONAL
Information on the billing address including the contact details of the payer.
address
Object
=
OPTIONAL
The address of the payer to whom the order is being billed.
This data may be used to qualify for better interchange rates on corporate purchase card transactions.
city
String
=
OPTIONAL
The city portion of the address.
Data can consist of any characters
country
String
=
OPTIONAL
The 3 letter ISO standard alpha country code of the address.
Data must consist of the characters A-Z
postcodeZip
String
=
OPTIONAL
The post code or zip code of the address.
Data may consist of the characters 0-9, a-z, A-Z, ' ', '-'
stateProvince
String
=
OPTIONAL
The state or province of the address.
Data can consist of any characters
street
String
=
OPTIONAL
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
street2
String
=
OPTIONAL
The second line of the address (if provided).
Data can consist of any characters
phone
String
=
OPTIONAL
The phone number of the person to whom the order is being billed.
Data can consist of any characters
cancelURL
=
OPTIONAL
The URL to which you want the payer's browser to be redirected if the payer cancels the interaction on the wallet provider's website.
Ensure that the URL begins with 'https' and is longer than 11 characters.
cardVerificationStrategy
String
=
OPTIONAL
The strategy that should be used to verify the card details on the request.
If not provided the verification strategy on the merchant profile will be used to verify the card details on the request.
Used to nominate which type of Card Verification to use when card details are stored in the token repository. This setting overrides the default settings in Merchant Manager.
Value must be a member of the following list. The values are case sensitive.
ACQUIRER
Verifies that the card is valid by performing an Authorize transaction for an nominal amount (e.g.$1.00)
BASIC
Verifies the card number is valid and that the card number falls within a valid BIN range
NONE
No verification of the card details are performed
correlationId
String
=
OPTIONAL
A transient identifier for the request, that can be used to match the response to the request.
The value provided is not validated, does not persist in the gateway, and is returned as provided in the response to the request.
Data can consist of any characters
currencyConversion
Object
=
OPTIONAL
Currency Conversion specific data
baseAmount
Number
=
OPTIONAL
The amount of the transaction in the base (merchant-configured) currency.
Used if the transaction amount is an amount that was converted from a base currency amount.
Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.
baseCurrency
String
=
OPTIONAL
The base (merchant-configured) currency of the transaction expressed as an ISO 4217 alpha code.
Used if the transaction amount is an amount that was converted from a base currency amount.
Data must consist of the characters A-Z
customer
Object
=
OPTIONAL
Information associated with the customer's source of transaction.
ani
String
=
OPTIONAL
The telephone number captured by ANI (Automatic Number Identification) when the customer calls to place the order.
Data can consist of any characters
aniCallType
String
=
OPTIONAL
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
browser
String
=
OPTIONAL
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
email
String
=
OPTIONAL
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
hostname
String
=
OPTIONAL
The name of the server to which the customer is connected.
Data can consist of any characters
ipAddress
String
=
OPTIONAL
The IP address of the computer used by the customer, in nnn.nnn.nnn.nnn format.
Data can consist of any characters
merchant
String
=
COMPULSORY
The unique identifier issued to you by your payment provider.
Data may consist of the characters 0-9, a-z, A-Z, '-', '_'
order
Object
=
OPTIONAL
order
amount
Number
=
OPTIONAL
Amount to be displayed to the payer on the wallet provider's website.
The amount must be 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 decimal number.
maximum post-decimal digits
3
currency
String
=
OPTIONAL
The currency to be displayed to the payer on the wallet provider's website.
The currency must be expressed as an ISO 4217 alpha code.
Data must consist of the characters A-Z
custom
String
=
OPTIONAL
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
customerNote
String
=
OPTIONAL
A note from the payer about this order.
Data can consist of any characters
customerOrderDate
String
=
OPTIONAL
The date the payer placed the order.
Data must comply with ISO 8601 extended date format, yyyy-mm-dd. This data may be used to qualify for better interchange rates on corporate purchase card transactions.
Data must comply with ISO 8601 extended date format, yyyy-mm-dd
customerReference
String
=
OPTIONAL
The payer's own reference for the order (for example, the purchase order number).
This data may be used to qualify for better interchange rates on corporate purchase card transactions.
Data consists of ASCII characters
description
String
=
OPTIONAL
Short textual description of the contents of the order.
Data can consist of any characters
id
String
=
OPTIONAL
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
notificationUrl
=
OPTIONAL
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.
productSKU
String
=
OPTIONAL
Unique SKU (Stock Keeping Unit) for the single, most expensive product associated with this order.
This data may be used to qualify for better interchange rates on corporate purchase card transactions.
Data can consist of any characters
reference
String
=
OPTIONAL
The identifier of the order.
For example, a shopping cart number, an order number, or an invoice number.
Data can consist of any characters
requestorName
String
=
OPTIONAL
The name of the person who requested the goods or services.
This data may be used to qualify for better interchange rates on corporate purchase card transactions.
Data can consist of any characters
shippingAndHandlingAmount
Number
=
OPTIONAL
The total shipping and handling amount for the order.
Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.
taxAmount
Number
=
OPTIONAL
The total tax amount for the order.
If you do not provide this value but provide line item data, then this amount is calculated as the sum of the item.quantity times the item.unitTaxAmount for all the line items (total tax amount).
If you provide both this value and line item data, then the order.taxAmount MUST equal the total tax amount.
This data may be used to qualify for better interchange rates on corporate purchase card transactions.
Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.
taxRegistrationId
String
=
OPTIONAL
Your tax registration identifier provided by the tax authority (for example, federal tax identification number, ABN).
This data may be used to qualify for better interchange rates on corporate purchase card transactions.
Data can consist of any characters
walletIndicator
String
=
OPTIONAL
The wallet indicator as returned by the wallet provider.
Data can consist of any characters
walletProvider
String
=
OPTIONAL
Select the wallet provider for this interaction.
Value must be a member of the following list. The values are case sensitive.
MASTERPASS_ONLINE
MasterPass Online wallet provider.
partnerSolutionId
String
=
OPTIONAL
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
paymentPlan
Object
=
OPTIONAL
Information about the payment plan selected by the cardholder.
Payment Plan is a payment option available to cardholders who wish to repay the purchase amount in a number of monthly installments with or without a deferral period.
numberOfDeferrals
Number
=
OPTIONAL
The number of months for which the payment is deferred.
Data is a number between 0 and 99 represented as a string.
numberOfPayments
Number
=
OPTIONAL
The number of monthly payments payable by the cardholder.
Data is a number between 1 and 99 represented as a string.
planId
String
=
OPTIONAL
The unique identifier for the payment plan.
This field is valid only if plan type is Banamex_Custom. It is the system-generated identifier assigned to the plan when it is configured for the merchant in the payment gateway
Data can consist of any characters
type
String
=
OPTIONAL
The type of payment plan.
Value must be a member of the following list. The values are case sensitive.
BANORTE_FULL_PAYMENT_WITH_DEFERRAL
posTerminal
Object
=
OPTIONAL
attended
String
=
OPTIONAL
Indicates if the terminal has been attended by the merchant.
Value must be a member of the following list. The values are case sensitive.
ATTENDED
Attended terminal.
UNATTENDED
Unattended terminal.
UNKNOWN_OR_UNSPECIFIED
Unknown or unspecified.
cardholderActivated
String
=
OPTIONAL
Indicates if the terminal is activated by the cardholder.
Value must be a member of the following list. The values are case sensitive.
NOT_CARDHOLDER_ACTIVATED
Terminal is not activated by the cardholder.
SELF_SERVICE_TERMINAL
Terminal is self serviced.
entryMode
Number
=
OPTIONAL
Indicates the entry mode the cardholder/merchant used to enter the PAN and PIN details of the card.
The first two digits indicate the PAN entry mode and the last digit indicates the PIN entry mode. For example, 011 may indicate manual PAN entry (01) with PIN entry on the terminal (1).
PAN ENTRY Mode
01 - Manual Entry
02 - Magnetic stripe read, but full unaltered contents not provided
04 - OCR/MICR coding read
05 - PAN auto entry via chip
07 - Auto-entry via contactless magnetic chip
79 - Chip card at chip-capable terminal was unable to process transaction using data on the chip or magnetic stripe on the card-therefore, PAN entry via manual entry
80 - Chip card at chip-capable terminal was unable to process transaction using data on the chip therefore; the terminal defaulted to the magnetic stripe read for the PAN. This is referred to as fallback.
90 - Magnetic stripe read and full, unaltered contents provided
91 - Auto-entry via contactless magnetic strip
PIN Entry Mode
0 - Unspecified or unknown
1 - Terminal has PIN entry capability
2 - Terminal does not have PIN entry capability (default)
8 - Terminal has PIN entry capability but PIN pad is not currently operative
Data is a string that consists of the characters 0-9.
inputCapability
String
=
OPTIONAL
Indicates the type of input the terminal is capable of receiving.
Inputs include Magnetic strip read (MSR) key entry, chip, contactless MSR/chip, etc.
Value must be a member of the following list. The values are case sensitive.
CHIP_AND_KEY_ENTRY_AND_MAGNETIC_STRIPE
MSR, chip and key entry.
CHIP_AND_MAGNETIC_STRIPE
MSR and chip.
CONTACTLESS_CHIP
Contactless chip.
CONTACTLESS_MAGNETIC_STRIPE
Contactless MSR.
KEY_ENTRY
Key entry only.
KEY_ENTRY_AND_MAGNETIC_STRIPE
MSR and key entry.
MAGNETIC_STRIPE
Magnetic strip read (MSR) only.
location
String
=
OPTIONAL
Indicates the physical location of the terminal in relation to the card acceptor facility.
Value must be a member of the following list. The values are case sensitive.
OFF_CARD_ACCEPTOR_PREMISES
Off premises of card acceptor.
ON_CARD_ACCEPTOR_PREMISES
On premises of card acceptor.
responseControls
Object
=
OPTIONAL
Container for fields that control the response returned for the request.
sensitiveData
String
=
OPTIONAL
Indicates how sensitive data is returned in the response.
Data can consist of any characters
returnURL
=
OPTIONAL
The URL to which you want the payer's browser to be redirected after completing the interaction on the wallet provider's website.
To check the success or otherwise of the interaction use the Retrieve Session operation.
Ensure that the URL begins with 'https' and is longer than 11 characters.
session
String
=
COMPULSORY
The Session result
Data consists of ASCII characters
shipping
Object
=
OPTIONAL
Information on the shipping address including the contact details of the addressee.
address
Object
=
OPTIONAL
The address to which the goods contained in this order are being shipped.
This data may be used to qualify for better interchange rates on corporate purchase card transactions.
city
String
=
OPTIONAL
The city portion of the address.
Data can consist of any characters
country
String
=
OPTIONAL
The 3 letter ISO standard alpha country code of the address.
Data must consist of the characters A-Z
postcodeZip
String
=
OPTIONAL
The post code or zip code of the address.
Data may consist of the characters 0-9, a-z, A-Z, ' ', '-'
stateProvince
String
=
OPTIONAL
The state or province of the address.
Data can consist of any characters
street
String
=
OPTIONAL
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
street2
String
=
OPTIONAL
The second line of the address (if provided).
Data can consist of any characters
firstName
String
=
OPTIONAL
The first name of the person to whom the order is being shipped.
Data can consist of any characters
lastName
String
=
OPTIONAL
The last name or surname of the person to whom the order is being shipped.
Data can consist of any characters
method
String
=
OPTIONAL
The shipping method code to indicate the time frame and the priority of the order.
Value must be a member of the following list. The values are case sensitive.
ELECTRONIC
Electronic delivery.
GROUND
Ground (4 or more days).
OVERNIGHT
Overnight (next day).
PRIORITY
Priority (2-3 days).
phone
String
=
OPTIONAL
The phone number of the person to whom the order is being shipped.
Data can consist of any characters
sourceOfFunds
Object
=
OPTIONAL
The details describing the source of the funds to be used.
For card payments these may be represented by combining one or more of the following: explicitly provided card details, a session identifier which the gateway will use to look up the card details and/or a card token. Precedence rules will be applied in that explicitly provided card details will override session card details which will override card token details. Each of these may represent partial card details, however the combination must result in a full and complete set of card details. See
Using Multiple Sources of Card Details for examples.
provided
Object
=
OPTIONAL
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.
card
Object
=
OPTIONAL
Details as shown on the card.
expiry
Object
=
OPTIONAL
Expiry date, as shown on the card.
month
Number
=
OPTIONAL
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.
year
Number
=
OPTIONAL
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.
holder
Object
=
OPTIONAL
The payer's name, to whom the bill is being sent.
This data may be used to qualify for better interchange rates on corporate purchase card transactions.
firstName
String
=
OPTIONAL
The payer's first name.
Data can consist of any characters
lastName
String
=
OPTIONAL
The payer's last or surname.
Data can consist of any characters
number
Number
=
OPTIONAL
Credit card number as printed on the card.
Data is a string that consists of the characters 0-9.
securityCode
Number
=
OPTIONAL
Card verification code, as printed on the back or front of the card.
Data is a string that consists of the characters 0-9.
sequenceNumber
Number
=
OPTIONAL
The card sequence number for transactions where the data is read through a chip on the EMV card.
Data is a number between 0 and 999 represented as a string.
token
String
=
OPTIONAL
Uniquely identifies a card and associated details.
Data may consist of the characters 0-9, a-z, A-Z
type
String
=
OPTIONAL
The payment method your payer has chosen for this payment.
Value must be a member of the following list. The values are case sensitive.
CARD
The customer selected to pay using a credit or debit card. The payer's card details must be provided.
token
String
=
OPTIONAL
Uniquely identifies a card and associated details.
Data may consist of the characters 0-9, a-z, A-Z
transaction
Object
=
OPTIONAL
Details of the transaction
acquirer
Object
=
OPTIONAL
Additional information to be passed to acquirer.
customData
String
=
OPTIONAL
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
amount
Number
=
OPTIONAL
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.
authorizationCode
String
=
OPTIONAL
Value generated by the issuing bank in response to a proposal to transfer funds.
Data may consist of the characters 0-9, a-z, A-Z
cashAdvance
Boolean
=
OPTIONAL
Set this flag if the transaction is a manual cash disbursement transaction, i.e. cash is disbursed upon the acceptance of a card by a financial institution teller.
JSON boolean values 'true' or 'false'.
currency
String
=
OPTIONAL
The currency of the transaction expressed as an ISO 4217 alpha code, e.g. USD.
Data must consist of the characters A-Z
frequency
String
=
OPTIONAL
Indicates the frequency of the transaction offered to the payer.
Value must be a member of the following list. The values are case sensitive.
INSTALLMENT
Indicates an installment transaction where the payer authorizes you to deduct multiple payments over an agreed period of time for a single purchase.
RECURRING
Indicates a recurring transaction where the payer authorizes you to automatically debit their accounts for bill or invoice payments.
SINGLE
Indicates a single transaction where a single payment is used to complete the order.
id
String
=
OPTIONAL
Unique identifier for this transaction to distinguish it from any other transactions on the order.
Data can consist of any characters
item
Object
=
OPTIONAL
Information about the items the payer purchases with the order.
description
String
=
OPTIONAL
Description for the item with information such as size, color, etc.
For example, 'Color:Red, Size:M'
Data can consist of any characters
name
String
=
OPTIONAL
A short name describing the item.
Data can consist of any characters
quantity
Number
=
OPTIONAL
The quantity of the item.
Data is a number between 1 and 9999999999999999 represented as a string.
sku
String
=
OPTIONAL
The SKU (Stock Keeping Unit) or the item identifier for this item.
Data can consist of any characters
unitPrice
Number
=
OPTIONAL
The cost price for the item.
This amount is multiplied with the item.quantity to determine the total amount for this item.
Data is a string that consists of the characters 0-9, '.' and '-' and represents a valid decimal number.
unitTaxAmount
Number
=
OPTIONAL
The tax amount for the item.
This amount is multiplied with the 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.
merchantNote
String
=
OPTIONAL
Your note about this transaction.
Data can consist of any characters
reference
String
=
OPTIONAL
An optional identifier for this transaction.
Data can consist of any characters
source
String
=
OPTIONAL
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.
targetTransactionId
String
=
OPTIONAL
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
taxAmount
Number
=
OPTIONAL
The amount of tax included in this transaction, if different to the default value.
The default value for a full capture is the Order.taxAmount. The default value for a full refund is the total tax captured on the order. 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. This data may be used to qualify for better interchange rates on corporate purchase card transactions.
Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.
userId
String
=
OPTIONAL
The person who initiated this transaction.
For Merchant Administration, the person is identified by their logon name.
Data can consist of any characters
Example
// status can be one of the following: ok, fields_in_error, system_error, request_timeout
// An error response (fields_in_error)
{
"status": "fields_in_error",
"session": {
"id": "SESSION000218450948092491657986"
},
"errors": {
"cardNumber": "invalid",
"securityCode": "invalid"
},
version: "36"
}
// An error response (system_error)
{
"status": "system_error",
"session": {
"id": "SESSION000218450948092491657986"
},
"errors": {
"message": "System error message."
},
"version": "36"
}
// An error response (request_timeout)
{
"status" : "request_timeout",
"session": {
"id": "SESSION000218450948092491657986"
},
"errors": {
"message": "Request timeout error message."
},
"version": "36"
}
// An ok response
{
"status":"ok",
"merchant": "TESTMERCHANT",
"session": {
"id": "SESSION000218450948092491657986"
"updateStatus":"SUCCESS",
"version":"e3f144ce02"
},
"sourceOfFunds": {
"provided": {
"card": {
"brand": "MASTERCARD",
"expiry": {
"month": "1",
"year": "39"
},
"fundingMethod": "DEBIT",
"nameOnCard": "John Smith",
"number": "512345xxxxxx8769",
"scheme": "MASTERCARD"
}
},
"type": "CARD"
},
"version": "36"
}