Pay
A single transaction to authorise the payment and transfer funds from the payer's account to your account.
For card payments, Pay is a mode where the Authorize and Capture operations are completed at the same time. Pay is the most common type of payment model used by merchants to accept card payments. The Pay model is used when the merchant is allowed to bill the cardholder's account immediately, for example when providing services or goods on the spot.
URL | https://credimax.gateway.mastercard.com/api/rest/version/16/merchant/{merchantId}/order/{orderid}/transaction/{transactionid} |
HTTP Method | PUT |
Authentication |
This operation requires authentication via one of the following methods:
|
Request Parameters
apiOperation String =PAY FIXED
Existence
FIXED
Fixed value
PAY
Validation Rules
Any sequence of zero or more unicode characters.
XSD type
string
sourceOfFunds = COMPULSORY
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.
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.
Fixed value
sourceOfFunds.type Enumeration = COMPULSORY
The payment method your payer has chosen for this payment.
Existence
COMPULSORY
Fixed value
Validation Rules
JSON type
String
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.
transaction = COMPULSORY
Information about this transaction.
Fixed value
transaction.amount Decimal = COMPULSORY
The total amount for the transaction.
If you provide both this value and any of the sub-total amounts (order.itemAmount, order.shippingAndHandlingAmount, order.taxAmount) then the sum of the sub-total amounts MUST equal the transaction.amount.
Existence
COMPULSORY
Fixed value
Validation Rules
Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.
JSON type
String
minimum length
1
maximum length
14
transaction.currency Upper case alphabetic text = COMPULSORY
The currency of the transaction expressed as an ISO 4217 alpha code, e.g. USD.
Existence
COMPULSORY
Fixed value
Validation Rules
Data must consist of the characters A-Z
JSON type
String
minimum length
3
maximum length
3
3DSecure = OPTIONAL
Information on 3DSecure fields.
This class is applicable to externally authenticated transactions only.
Fixed value
3DSecure.acsEci Digits = 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.
Existence
OPTIONAL
Fixed value
Validation Rules
Data is a string that consists of the characters 0-9.
JSON type
String
minimum length
1
maximum length
2
3DSecure.authenticationStatus Enumeration = 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.
The PARes message is the response received from the card Issuer's Access Control Server (ACS) after the cardholder has completed the authentication process.
Existence
OPTIONAL
Fixed value
Validation Rules
JSON type
String
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 Base64 = 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.
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.
Existence
OPTIONAL
Fixed value
Validation Rules
Data is Base64 encoded
JSON type
String
allowable lengths
28 or 32
3DSecure.enrollmentStatus Enumeration = COMPULSORY
Indicates if the cardholder is enrolled for 3-D Secure authentication.
Existence
COMPULSORY
Fixed value
Validation Rules
JSON type
String
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 Base64 = 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.
Existence
OPTIONAL
Fixed value
Validation Rules
Data is Base64 encoded
JSON type
String
allowable length
28
3DSecureId ASCII Text = 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.
It is not used when the authentication is performed externally.
Existence
OPTIONAL
Fixed value
Validation Rules
Data consists of ASCII characters
JSON type
String
minimum length
1
maximum length
64
action = OPTIONAL
Information about any actions which apply to this transaction.
Specify actions if you wish to change the default behaviour of the transaction.
Fixed value
action.bypassMerchantRiskRules Enumeration = OPTIONAL
The risk rules you wish to bypass when performing risk assessment for an order.
Existence
OPTIONAL
Fixed value
Validation Rules
JSON type
String
Value must be a member of the following list. The values are case sensitive.
ALL
airline = OPTIONAL
Airline industry specific data
Fixed value
airline.bookingReference Alphanumeric = 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.
Existence
OPTIONAL
Fixed value
Validation Rules
Data may consist of the characters 0-9, a-z, A-Z
JSON type
String
minimum length
6
maximum length
15
airline.documentType Enumeration = OPTIONAL
The type of charge associated with the transaction.
Existence
OPTIONAL
Fixed value
Validation Rules
Document Type Code
JSON type
String
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 = OPTIONAL
Itinerary details
Fixed value
airline.itinerary.leg[n] = OPTIONAL
Travel leg details.
Fixed value
airline.itinerary.leg[n].carrierCode Regex = OPTIONAL
The 2-character IATA airline code or 3 digit accounting code or both of the airline carrier for the trip leg.
Existence
OPTIONAL
Fixed value
Validation Rules
Data must match regex
JSON type
String
regex
\w{2}|\d{3}|\w{2}/\d{3}
airline.itinerary.leg[n].conjunctionTicketNumber Alphanumeric = OPTIONAL
The ticket containing the coupon for this leg for an itinerary with more than four trip legs.
Existence
OPTIONAL
Fixed value
Validation Rules
Data may consist of the characters 0-9, a-z, A-Z
JSON type
String
minimum length
11
maximum length
16
airline.itinerary.leg[n].couponNumber Alphanumeric = 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.
Existence
OPTIONAL
Fixed value
Validation Rules
Data may consist of the characters 0-9, a-z, A-Z
JSON type
String
minimum length
1
maximum length
1
airline.itinerary.leg[n].departureAirport Upper case alphabetic text = OPTIONAL
The 3 character IATA airport code of the departure airport for the trip leg.
Existence
OPTIONAL
Fixed value
Validation Rules
Data must consist of the characters A-Z
JSON type
String
minimum length
3
maximum length
3
airline.itinerary.leg[n].departureDate Date = OPTIONAL
Date of departure for the trip leg.
Existence
OPTIONAL
Fixed value
Validation Rules
Data must comply with ISO 8601 extended date format, yyyy-mm-dd
JSON type
String
airline.itinerary.leg[n].departureTax Decimal = OPTIONAL
Tax payable on departure for the trip leg.
Existence
OPTIONAL
Fixed value
Validation Rules
Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.
JSON type
String
minimum length
1
maximum length
14
airline.itinerary.leg[n].departureTime Time = OPTIONAL
Departure time in local time for the departure airport for this trip leg.
Existence
OPTIONAL
Fixed value
Validation Rules
Data must comply with ISO 8601 extended time formats, hh:mm[:ss]Z or hh:mm[:ss](+/-)hh[:mm]
JSON type
String
airline.itinerary.leg[n].destinationAirport Upper case alphabetic text = OPTIONAL
The 3 character IATA airport code for the destination airport for the trip leg.
Existence
OPTIONAL
Fixed value
Validation Rules
Data must consist of the characters A-Z
JSON type
String
minimum length
3
maximum length
3
airline.itinerary.leg[n].destinationArrivalTime Time = OPTIONAL
Arrival time in local time for the destination airport for this trip leg.
Existence
OPTIONAL
Fixed value
Validation Rules
Data must comply with ISO 8601 extended time formats, hh:mm[:ss]Z or hh:mm[:ss](+/-)hh[:mm]
JSON type
String
airline.itinerary.leg[n].endorsementsRestrictions Alphanumeric = OPTIONAL
Restrictions (e.g. non-refundable) or endorsements applicable to the trip leg.
Existence
OPTIONAL
Fixed value
Validation Rules
Data may consist of the characters 0-9, a-z, A-Z
JSON type
String
minimum length
1
maximum length
20
airline.itinerary.leg[n].exchangeTicketNumber Alphanumeric = OPTIONAL
New ticket number issued when a ticket is exchanged for the trip leg.
Existence
OPTIONAL
Fixed value
Validation Rules
Data may consist of the characters 0-9, a-z, A-Z
JSON type
String
minimum length
11
maximum length
16
airline.itinerary.leg[n].fare Decimal = OPTIONAL
Total fare payable for the trip leg.
Existence
OPTIONAL
Fixed value
Validation Rules
Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.
JSON type
String
minimum length
1
maximum length
14
airline.itinerary.leg[n].fareBasis Alphanumeric = OPTIONAL
Code defining the rules forming the basis of the fare (type of fare, class entitlement, etc.)
Existence
OPTIONAL
Fixed value
Validation Rules
Data may consist of the characters 0-9, a-z, A-Z
JSON type
String
minimum length
1
maximum length
24
airline.itinerary.leg[n].fees Decimal = OPTIONAL
Total fees payable for the trip leg.
Existence
OPTIONAL
Fixed value
Validation Rules
Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.
JSON type
String
minimum length
1
maximum length
14
airline.itinerary.leg[n].flightNumber Alphanumeric = OPTIONAL
The flight number for the trip leg.
Existence
OPTIONAL
Fixed value
Validation Rules
Data may consist of the characters 0-9, a-z, A-Z
JSON type
String
minimum length
4
maximum length
6
airline.itinerary.leg[n].stopoverPermitted Boolean = OPTIONAL
Indicates if a stopover is permitted for the trip leg.
Existence
OPTIONAL
Fixed value
Validation Rules
JSON boolean values 'true' or 'false'.
JSON type
Boolean
airline.itinerary.leg[n].taxes Decimal = OPTIONAL
Total taxes payable for the trip leg.
Existence
OPTIONAL
Fixed value
Validation Rules
Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.
JSON type
String
minimum length
1
maximum length
14
airline.itinerary.leg[n].travelClass Alphanumeric = OPTIONAL
The industry code indicating the class of service (e.g. Business, Coach) for the leg.
Existence
OPTIONAL
Fixed value
Validation Rules
Data may consist of the characters 0-9, a-z, A-Z
JSON type
String
minimum length
1
maximum length
3
airline.itinerary.numberInParty Digits = OPTIONAL
Number of passengers associated with this booking.
Existence
OPTIONAL
Fixed value
Validation Rules
Data is a string that consists of the characters 0-9.
JSON type
String
minimum length
1
maximum length
3
airline.itinerary.originCountry Upper case alphabetic text = OPTIONAL
The 3 character ISO 3166-1 alpha-3 country code of the country of origin for the itinerary.
Existence
OPTIONAL
Fixed value
Validation Rules
Data must consist of the characters A-Z
JSON type
String
minimum length
3
maximum length
3
airline.passenger[n] = OPTIONAL
Passenger details
Fixed value
airline.passenger[n].firstName String = OPTIONAL
First name of the passenger to whom the ticket is being issued.
Existence
OPTIONAL
Fixed value
Validation Rules
Data can consist of any characters
JSON type
String
minimum length
1
maximum length
50
airline.passenger[n].lastName String = OPTIONAL
Last name of the passenger to whom the ticket is being issued.
Existence
OPTIONAL
Fixed value
Validation Rules
Data can consist of any characters
JSON type
String
minimum length
1
maximum length
20
airline.passenger[n].middleName String = OPTIONAL
Middle name of the passenger to whom the ticket is being issued.
Existence
OPTIONAL
Fixed value
Validation Rules
Data can consist of any characters
JSON type
String
minimum length
1
maximum length
50
airline.passenger[n].specificInformation Alphanumeric = OPTIONAL
Passenger specific information recorded on the ticket.
Existence
OPTIONAL
Fixed value
Validation Rules
Data may consist of the characters 0-9, a-z, A-Z
JSON type
String
minimum length
1
maximum length
59
airline.passenger[n].title String = OPTIONAL
Title of the passenger to whom the ticket is being issued.
Existence
OPTIONAL
Fixed value
Validation Rules
Data can consist of any characters
JSON type
String
minimum length
1
maximum length
20
airline.planNumber Alphanumeric = OPTIONAL
Plan number supplied by the airline for this booking.
Existence
OPTIONAL
Fixed value
Validation Rules
Data may consist of the characters 0-9, a-z, A-Z
JSON type
String
minimum length
2
maximum length
2
airline.ticket = OPTIONAL
Ticket details
Fixed value
airline.ticket.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.
Existence
OPTIONAL
Fixed value
Validation Rules
JSON boolean values 'true' or 'false'.
JSON type
Boolean
airline.ticket.customerReference String = OPTIONAL
Information supplied by the customer.
For example, Frequent Flyer number.
Existence
OPTIONAL
Fixed value
Validation Rules
Data can consist of any characters
JSON type
String
minimum length
1
maximum length
20
airline.ticket.eTicket Boolean = OPTIONAL
Indicates if an electronic ticket was issued.
Existence
OPTIONAL
Fixed value
Validation Rules
JSON boolean values 'true' or 'false'.
JSON type
Boolean
airline.ticket.exchangedTicketNumber Alphanumeric = OPTIONAL
The original ticket number when this is a transaction for an exchanged ticket.
Existence
OPTIONAL
Fixed value
Validation Rules
Data may consist of the characters 0-9, a-z, A-Z
JSON type
String
minimum length
11
maximum length
16
airline.ticket.issue = OPTIONAL
Ticket issue information.
Fixed value
airline.ticket.issue.address String = OPTIONAL
The address where the ticket was issued.
Existence
OPTIONAL
Fixed value
Validation Rules
Data can consist of any characters
JSON type
String
minimum length
1
maximum length
16
airline.ticket.issue.carrierCode Regex = OPTIONAL
The 2-character IATA airline code or 3 digit accounting code or both of the airline carrier issuing the ticket.
Existence
OPTIONAL
Fixed value
Validation Rules
Data must match regex
JSON type
String
regex
\w{2}|\d{3}|\w{2}/\d{3}
airline.ticket.issue.carrierName Alphanumeric = OPTIONAL
Name of airline carrier issuing the ticket.
Existence
OPTIONAL
Fixed value
Validation Rules
Data may consist of the characters 0-9, a-z, A-Z
JSON type
String
minimum length
1
maximum length
25
airline.ticket.issue.city Alphanumeric = OPTIONAL
The city/town where the ticket was issued.
Existence
OPTIONAL
Fixed value
Validation Rules
Data may consist of the characters 0-9, a-z, A-Z
JSON type
String
minimum length
1
maximum length
18
airline.ticket.issue.country Upper case alphabetic text = OPTIONAL
The 3 character ISO 3166-1 alpha-3 country code of the country where the ticket was issued.
Existence
OPTIONAL
Fixed value
Validation Rules
Data must consist of the characters A-Z
JSON type
String
minimum length
3
maximum length
3
airline.ticket.issue.date Date = OPTIONAL
The date the ticket was issued.
Existence
OPTIONAL
Fixed value
Validation Rules
Data must comply with ISO 8601 extended date format, yyyy-mm-dd
JSON type
String
airline.ticket.issue.travelAgentCode Alphanumeric = OPTIONAL
Industry code of the travel agent issuing the ticket.
Existence
OPTIONAL
Fixed value
Validation Rules
Data may consist of the characters 0-9, a-z, A-Z
JSON type
String
minimum length
8
maximum length
9
airline.ticket.issue.travelAgentName Alphanumeric = OPTIONAL
Name of the travel agent issuing the ticket.
Existence
OPTIONAL
Fixed value
Validation Rules
Data may consist of the characters 0-9, a-z, A-Z
JSON type
String
minimum length
1
maximum length
30
airline.ticket.restricted Boolean = OPTIONAL
Indicates if the issued ticket is refundable.
Existence
OPTIONAL
Fixed value
Validation Rules
JSON boolean values 'true' or 'false'.
JSON type
Boolean
airline.ticket.ticketNumber Alphanumeric = OPTIONAL
The airline ticket number associated with the transaction.
Existence
OPTIONAL
Fixed value
Validation Rules
Data may consist of the characters 0-9, a-z, A-Z
JSON type
String
minimum length
11
maximum length
16
airline.ticket.totalFare Decimal = OPTIONAL
Total fare for all trip legs on the ticket.
Existence
OPTIONAL
Fixed value
Validation Rules
Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.
JSON type
String
minimum length
1
maximum length
14
airline.ticket.totalFees Decimal = OPTIONAL
Total fee for all trip legs on the ticket.
Existence
OPTIONAL
Fixed value
Validation Rules
Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.
JSON type
String
minimum length
1
maximum length
14
airline.ticket.totalTaxes Decimal = OPTIONAL
Total taxes for all trip legs on the ticket.
Existence
OPTIONAL
Fixed value
Validation Rules
Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.
JSON type
String
minimum length
1
maximum length
14
airline.transactionType Enumeration = OPTIONAL
The type of transaction performed against this airline booking.
Existence
OPTIONAL
Fixed value
Validation Rules
Transaction Type
JSON type
String
Value must be a member of the following list. The values are case sensitive.
EXCHANGE_TICKET
Exchange Ticket
MISCELLANEOUS_CHARGE
Miscellaneous Charge
REFUND
Refund
REVERSAL
Reversal
TICKET_PURCHASE
Ticket Purchase
TOUR_ORDER
Tour Order
apiOperation String =PAY FIXED
Existence
FIXED
Fixed value
PAY
Validation Rules
Any sequence of zero or more unicode characters.
XSD type
string
billing = OPTIONAL
Information on the billing address including the contact details of the payer.
Fixed value
billing.address = 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.
Fixed value
billing.address.city String = OPTIONAL
The city portion of the address.
Existence
OPTIONAL
Fixed value
Validation Rules
Data can consist of any characters
JSON type
String
minimum length
1
maximum length
100
billing.address.country Upper case alphabetic text = OPTIONAL
The 3 letter ISO standard alpha country code of the address.
Existence
OPTIONAL
Fixed value
Validation Rules
Data must consist of the characters A-Z
JSON type
String
minimum length
3
maximum length
3
billing.address.postcodeZip Alphanumeric + additional characters = OPTIONAL
The post code or zip code of the address.
Existence
OPTIONAL
Fixed value
Validation Rules
Data may consist of the characters 0-9, a-z, A-Z, ' ', '-'
JSON type
String
minimum length
1
maximum length
10
billing.address.stateProvince String = OPTIONAL
The state or province of the address.
Existence
OPTIONAL
Fixed value
Validation Rules
Data can consist of any characters
JSON type
String
minimum length
1
maximum length
20
billing.address.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.
Existence
OPTIONAL
Fixed value
Validation Rules
Data can consist of any characters
JSON type
String
minimum length
1
maximum length
100
billing.address.street2 String = OPTIONAL
The second line of the address (if provided).
Existence
OPTIONAL
Fixed value
Validation Rules
Data can consist of any characters
JSON type
String
minimum length
1
maximum length
100
billing.phone String = OPTIONAL
The phone number of the person to whom the order is being billed.
Existence
OPTIONAL
Fixed value
Validation Rules
Data can consist of any characters
JSON type
String
minimum length
1
maximum length
20
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.
Existence
OPTIONAL
Fixed value
Validation Rules
Data can consist of any characters
XSD type
string
minimum length
1
maximum length
100
currencyConversion = OPTIONAL
Currency Conversion specific data
Fixed value
currencyConversion.baseAmount Decimal = 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.
Existence
OPTIONAL
Fixed value
Validation Rules
Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.
JSON type
String
minimum length
1
maximum length
14
currencyConversion.baseCurrency Upper case alphabetic text = 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.
Existence
OPTIONAL
Fixed value
Validation Rules
Data must consist of the characters A-Z
JSON type
String
minimum length
3
maximum length
3
customer = OPTIONAL
Information associated with the customer's source of transaction.
Fixed value
customer.ani String = OPTIONAL
The telephone number captured by ANI (Automatic Number Identification) when the customer calls to place the order.
Existence
OPTIONAL
Fixed value
Validation Rules
Data can consist of any characters
JSON type
String
minimum length
1
maximum length
10
customer.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.
Existence
OPTIONAL
Fixed value
Validation Rules
Data can consist of any characters
JSON type
String
minimum length
1
maximum length
2
customer.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)
Existence
OPTIONAL
Fixed value
Validation Rules
Data can consist of any characters
JSON type
String
minimum length
1
maximum length
255
customer.email Email = 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.
Existence
OPTIONAL
Fixed value
Validation Rules
Ensures that the email address is longer than 3 characters and adheres to a generous subset of valid RFC 2822 email addresses
JSON type
String
customer.hostname String = OPTIONAL
The name of the server to which the customer is connected.
Existence
OPTIONAL
Fixed value
Validation Rules
Data can consist of any characters
JSON type
String
minimum length
1
maximum length
60
customer.ipAddress String = OPTIONAL
The IP address of the computer used by the customer, in nnn.nnn.nnn.nnn format.
Existence
OPTIONAL
Fixed value
Validation Rules
Data can consist of any characters
JSON type
String
minimum length
7
maximum length
15
order = OPTIONAL
Information about the order associated with this transaction.
Fixed value
order.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.
Existence
OPTIONAL
Fixed value
Validation Rules
Data can consist of any characters
JSON type
String
minimum length
1
maximum length
250
order.customerNote String = OPTIONAL
A note from the payer about this order.
Existence
OPTIONAL
Fixed value
Validation Rules
Data can consist of any characters
JSON type
String
minimum length
1
maximum length
250
order.customerOrderDate Date = 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.
Existence
OPTIONAL
Fixed value
Validation Rules
Data must comply with ISO 8601 extended date format, yyyy-mm-dd
JSON type
String
order.customerReference ASCII Text = 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.
Existence
OPTIONAL
Fixed value
Validation Rules
Data consists of ASCII characters
JSON type
String
minimum length
0
maximum length
25
order.description String = OPTIONAL
Short textual description of the contents of the order.
Existence
OPTIONAL
Fixed value
Validation Rules
Data can consist of any characters
JSON type
String
minimum length
1
maximum length
127
order.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.
Existence
OPTIONAL
Fixed value
Validation Rules
Data can consist of any characters
JSON type
String
minimum length
1
maximum length
15
order.reference String = OPTIONAL
The identifier of the order.
For example, a shopping cart number, an order number, or an invoice number.
Existence
OPTIONAL
Fixed value
Validation Rules
Data can consist of any characters
JSON type
String
minimum length
1
maximum length
40
order.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.
Existence
OPTIONAL
Fixed value
Validation Rules
Data can consist of any characters
JSON type
String
minimum length
1
maximum length
100
order.shippingAndHandlingAmount Decimal = OPTIONAL
The total shipping and handling amount for the order.
Existence
OPTIONAL
Fixed value
Validation Rules
Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.
JSON type
String
minimum length
1
maximum length
14
order.taxAmount Decimal = OPTIONAL
The total tax amount for the order.
If you do not provide this value but provide line item data, then this amount is calculated as the sum of the item.quantity times the item.unitTaxAmount for all the line items (total tax amount).
If you provide both this value and line item data, then the order.taxAmount MUST equal the total tax amount.
This data may be used to qualify for better interchange rates on corporate purchase card transactions.
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.
Existence
OPTIONAL
Fixed value
Validation Rules
Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.
JSON type
String
minimum length
1
maximum length
14
order.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.
Existence
OPTIONAL
Fixed value
Validation Rules
Data can consist of any characters
JSON type
String
minimum length
1
maximum length
20
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.
Existence
OPTIONAL
Fixed value
Validation Rules
Data can consist of any characters
JSON type
String
minimum length
1
maximum length
40
paymentPlan = 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.
Fixed value
paymentPlan.numberOfDeferrals Digits = OPTIONAL
The number of months for which the payment is deferred.
Existence
OPTIONAL
Fixed value
Validation Rules
Data is a number between 0 and 99 represented as a string.
JSON type
String
paymentPlan.numberOfPayments Digits = COMPULSORY
The number of monthly payments payable by the cardholder.
Existence
COMPULSORY
Fixed value
Validation Rules
Data is a number between 1 and 99 represented as a string.
JSON type
String
paymentPlan.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
Existence
OPTIONAL
Fixed value
Validation Rules
Data can consist of any characters
JSON type
String
minimum length
1
maximum length
16
paymentPlan.type Enumeration = COMPULSORY
The type of payment plan.
Existence
COMPULSORY
Fixed value
Validation Rules
JSON type
String
Value must be a member of the following list. The values are case sensitive.
AMEX_PLANAMEX
AMEX_PLANN
BANAMEX_CUSTOM
BANORTE_FULL_PAYMENT_WITH_DEFERRAL
BANORTE_WITHOUT_INTEREST
BANORTE_WITH_INTEREST
CIELO
REDECARD
posTerminal = OPTIONAL
Fixed value
posTerminal.attended Enumeration = OPTIONAL
Indicates if the terminal has been attended by the merchant.
Existence
OPTIONAL
Fixed value
Validation Rules
JSON type
String
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.
posTerminal.cardholderActivated Enumeration = OPTIONAL
Indicates if the terminal is activated by the cardholder.
Existence
OPTIONAL
Fixed value
Validation Rules
JSON type
String
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.
posTerminal.entryMode Digits = 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
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
Existence
OPTIONAL
Fixed value
Validation Rules
Data is a string that consists of the characters 0-9.
JSON type
String
minimum length
3
maximum length
3
posTerminal.inputCapability Enumeration = 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.
Existence
OPTIONAL
Fixed value
Validation Rules
JSON type
String
Value must be a member of the following list. The values are case sensitive.
CHIP
Chip read only.
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.
posTerminal.location Enumeration = OPTIONAL
Indicates the physical location of the terminal in relation to the card acceptor facility.
Existence
OPTIONAL
Fixed value
Validation Rules
JSON type
String
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.
shipping = OPTIONAL
Information on the shipping address including the contact details of the addressee.
Fixed value
shipping.address = 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.
Fixed value
shipping.address.city String = OPTIONAL
The city portion of the address.
Existence
OPTIONAL
Fixed value
Validation Rules
Data can consist of any characters
JSON type
String
minimum length
1
maximum length
100
shipping.address.country Upper case alphabetic text = OPTIONAL
The 3 letter ISO standard alpha country code of the address.
Existence
OPTIONAL
Fixed value
Validation Rules
Data must consist of the characters A-Z
JSON type
String
minimum length
3
maximum length
3
shipping.address.postcodeZip Alphanumeric + additional characters = OPTIONAL
The post code or zip code of the address.
Existence
OPTIONAL
Fixed value
Validation Rules
Data may consist of the characters 0-9, a-z, A-Z, ' ', '-'
JSON type
String
minimum length
1
maximum length
10
shipping.address.stateProvince String = OPTIONAL
The state or province of the address.
Existence
OPTIONAL
Fixed value
Validation Rules
Data can consist of any characters
JSON type
String
minimum length
1
maximum length
20
shipping.address.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.
Existence
OPTIONAL
Fixed value
Validation Rules
Data can consist of any characters
JSON type
String
minimum length
1
maximum length
100
shipping.address.street2 String = OPTIONAL
The second line of the address (if provided).
Existence
OPTIONAL
Fixed value
Validation Rules
Data can consist of any characters
JSON type
String
minimum length
1
maximum length
100
shipping.firstName String = OPTIONAL
The first name of the person to whom the order is being shipped.
Existence
OPTIONAL
Fixed value
Validation Rules
Data can consist of any characters
JSON type
String
minimum length
1
maximum length
50
shipping.lastName String = OPTIONAL
The last name or surname of the person to whom the order is being shipped.
Existence
OPTIONAL
Fixed value
Validation Rules
Data can consist of any characters
JSON type
String
minimum length
1
maximum length
50
shipping.method Enumeration = OPTIONAL
The shipping method code to indicate the time frame and the priority of the order.
Existence
OPTIONAL
Fixed value
Validation Rules
JSON type
String
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).
SAME_DAY
Same day.
shipping.phone String = OPTIONAL
The phone number of the person to whom the order is being shipped.
Existence
OPTIONAL
Fixed value
Validation Rules
Data can consist of any characters
JSON type
String
minimum length
1
maximum length
20
sourceOfFunds = COMPULSORY
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.
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.
Fixed value
sourceOfFunds.provided = 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.
Fixed value
sourceOfFunds.provided.card = OPTIONAL
Details as shown on the card.
Fixed value
sourceOfFunds.provided.card.expiry = OPTIONAL
Expiry date, as shown on the card.
Fixed value
sourceOfFunds.provided.card.expiry.month Digits = COMPULSORY
Month, as shown on the card.
Months are numbered January=1, through to December=12.
Existence
COMPULSORY
Fixed value
Validation Rules
Data is a number between 1 and 12 represented as a string.
JSON type
String
sourceOfFunds.provided.card.expiry.year Digits = COMPULSORY
Year, as shown on the card.
The Common Era year is 2000 plus this value.
Existence
COMPULSORY
Fixed value
Validation Rules
Data is a string that consists of the characters 0-9.
JSON type
String
minimum length
2
maximum length
2
sourceOfFunds.provided.card.holder = 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.
Fixed value
sourceOfFunds.provided.card.holder.firstName String = OPTIONAL
The payer's first name.
Existence
OPTIONAL
Fixed value
Validation Rules
Data can consist of any characters
JSON type
String
minimum length
1
maximum length
50
sourceOfFunds.provided.card.holder.lastName String = OPTIONAL
The payer's last or surname.
Existence
OPTIONAL
Fixed value
Validation Rules
Data can consist of any characters
JSON type
String
minimum length
1
maximum length
50
sourceOfFunds.provided.card.number Digits = OPTIONAL
Credit card number as printed on the card.
Existence
OPTIONAL
Fixed value
Validation Rules
Data is a string that consists of the characters 0-9.
JSON type
String
minimum length
9
maximum length
19
sourceOfFunds.provided.card.securityCode Digits = OPTIONAL
Card verification code, as printed on the back or front of the card.
Existence
OPTIONAL
Fixed value
Validation Rules
Data is a string that consists of the characters 0-9.
JSON type
String
minimum length
3
maximum length
4
sourceOfFunds.provided.card.sequenceNumber Digits = OPTIONAL
The card sequence number for transactions where the data is read through a chip on the EMV card.
Existence
OPTIONAL
Fixed value
Validation Rules
Data is a number between 0 and 999 represented as a string.
JSON type
String
sourceOfFunds.provided.card.track1 String = OPTIONAL
7 bit ASCII text representing the card track 1 data.
Start and end sentinels as well as the LRC must be included.
Existence
OPTIONAL
Fixed value
Validation Rules
Data can consist of any characters
JSON type
String
minimum length
2
maximum length
79
sourceOfFunds.provided.card.track2 String = OPTIONAL
7 bit ASCII text representing the card track 2 data.
Start and end sentinels as well as the LRC must be included. The contents of this field must match the PAN and expiry fields included in the Transaction Request.
Existence
OPTIONAL
Fixed value
Validation Rules
Data can consist of any characters
JSON type
String
minimum length
2
maximum length
40
sourceOfFunds.session ASCII Text = OPTIONAL
Session carrying the card details to be used.
Existence
OPTIONAL
Fixed value
Validation Rules
Data consists of ASCII characters
JSON type
String
minimum length
31
maximum length
35
sourceOfFunds.token Alphanumeric = OPTIONAL
Uniquely identifies a card and associated details.
Existence
OPTIONAL
Fixed value
Validation Rules
Data may consist of the characters 0-9, a-z, A-Z
JSON type
String
minimum length
1
maximum length
40
sourceOfFunds.type Enumeration = COMPULSORY
The payment method your payer has chosen for this payment.
Existence
COMPULSORY
Fixed value
Validation Rules
JSON type
String
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.
transaction = COMPULSORY
Information about this transaction.
Fixed value
transaction.acquirer = OPTIONAL
Additional information to be passed to acquirer.
Fixed value
transaction.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.
Existence
OPTIONAL
Fixed value
Validation Rules
Data can consist of any characters, but sensitive data will be rejected
JSON type
String
minimum length
1
maximum length
2048
transaction.amount Decimal = COMPULSORY
The total amount for the transaction.
If you provide both this value and any of the sub-total amounts (order.itemAmount, order.shippingAndHandlingAmount, order.taxAmount) then the sum of the sub-total amounts MUST equal the transaction.amount.
Existence
COMPULSORY
Fixed value
Validation Rules
Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.
JSON type
String
minimum length
1
maximum length
14
transaction.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.
Existence
OPTIONAL
Fixed value
Validation Rules
JSON boolean values 'true' or 'false'.
JSON type
String
transaction.currency Upper case alphabetic text = COMPULSORY
The currency of the transaction expressed as an ISO 4217 alpha code, e.g. USD.
Existence
COMPULSORY
Fixed value
Validation Rules
Data must consist of the characters A-Z
JSON type
String
minimum length
3
maximum length
3
transaction.frequency Enumeration = OPTIONAL
Indicates the frequency of the transaction offered to the payer.
Existence
OPTIONAL
Fixed value
Validation Rules
JSON type
String
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.
transaction.merchantNote String = OPTIONAL
Your note about this transaction.
Existence
OPTIONAL
Fixed value
Validation Rules
Data can consist of any characters
JSON type
String
minimum length
1
maximum length
250
transaction.reference String = OPTIONAL
An optional identifier for this transaction.
Existence
OPTIONAL
Fixed value
Validation Rules
Data can consist of any characters
JSON type
String
minimum length
1
maximum length
40
transaction.source Enumeration = OPTIONAL
Indicates the source through which you received the transaction.
Existence
OPTIONAL
Fixed value
Validation Rules
JSON type
String
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.
userId String = OPTIONAL
The person who initiated this transaction.
For Merchant Administration, the person is identified by their logon name.
Existence
OPTIONAL
Fixed value
Validation Rules
Data can consist of any characters
JSON type
String
minimum length
1
maximum length
256
{merchantId} Alphanumeric + additional characters COMPULSORY
The unique identifier issued to you by your payment provider.
Existence
COMPULSORY
Validation Rules
Data may consist of the characters 0-9, a-z, A-Z, '-', '_'
XSD type
string
minimum length
1
maximum length
40
{orderid} String COMPULSORY
A unique identifier for this order to distinguish it from any other order you create.
Use this identifier when referring to this order in subsequent transactions and in retrieval operations. This value must be unique for every order you create using your merchant profile.
Existence
COMPULSORY
Validation Rules
Data can consist of any characters
XSD type
string
minimum length
1
maximum length
40
{transactionid} String COMPULSORY
Unique identifier for this transaction to distinguish it from any other transactions on the order.
Existence
COMPULSORY
Validation Rules
Data can consist of any characters
XSD type
string
minimum length
1
maximum length
40
Response Parameters
browserPayment = CONDITIONAL
Information required by the gateway to manage browser payment interactions.
Fixed value
browserPayment.redirectUrl Url = CONDITIONAL
The URL issued by the gateway to which you must redirect the payer's browser to make a payment.
Existence
CONDITIONAL
Fixed value
Validation Rules
Ensure that the URL is longer than 11 characters.
JSON type
String
merchant Alphanumeric + additional characters = Always Provided
The unique identifier issued to you by your payment provider.
Existence
Always Provided
Fixed value
Validation Rules
Data may consist of the characters 0-9, a-z, A-Z, '-', '_'
JSON type
String
minimum length
1
maximum length
40
order = Always Provided
Information about the order associated with this transaction.
Fixed value
order.amount Decimal = Always Provided
The total amount for the order.
Existence
Always Provided
Fixed value
Validation Rules
Data is a decimal number.
JSON type
Number
maximum value
1000000000000
minimum value
0
maximum post-decimal digits
3
order.creationTime DateTime = Always Provided
The timestamp indicating the time the gateway considers the order to have been created.
Existence
Always Provided
Fixed value
Validation Rules
An instant in time expressed in ISO8601 date + time format - "YYYY-MM-DDThh:mm:ss.SSSZ"
JSON type
String
order.currency Upper case alphabetic text = Always Provided
The currency of the order expressed as an ISO 4217 alpha code, e.g. USD.
Existence
Always Provided
Fixed value
Validation Rules
Data must consist of the characters A-Z
JSON type
String
minimum length
3
maximum length
3
order.id String = Always Provided
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.
Existence
Always Provided
Fixed value
Validation Rules
Data can consist of any characters
JSON type
String
minimum length
1
maximum length
40
order.totalAuthorizedAmount Decimal = Always Provided
The amount that has been successfully authorized for this order.
Existence
Always Provided
Fixed value
Validation Rules
Data is a decimal number.
JSON type
Number
maximum value
1000000000000
minimum value
0
maximum post-decimal digits
3
order.totalCapturedAmount Decimal = Always Provided
The amount that has been successfully captured for this order.
Existence
Always Provided
Fixed value
Validation Rules
Data is a decimal number.
JSON type
Number
maximum value
1000000000000
minimum value
0
maximum post-decimal digits
3
order.totalRefundedAmount Decimal = Always Provided
The amount that has been successfully refunded for this order.
Existence
Always Provided
Fixed value
Validation Rules
Data is a decimal number.
JSON type
Number
maximum value
1000000000000
minimum value
0
maximum post-decimal digits
3
response = Always Provided
Fixed value
response.gatewayCode Enumeration = Always Provided
Summary of the success or otherwise of the proposed operation.
Existence
Always Provided
Fixed value
Validation Rules
JSON type
String
Value must be a member of the following list. The values are case sensitive.
ABORTED
Transaction aborted by payer
ACQUIRER_SYSTEM_ERROR
Acquirer system error occurred processing the transaction
APPROVED
Transaction Approved
APPROVED_PENDING_SETTLEMENT
Transaction Approved - pending batch settlement
AUTHENTICATION_FAILED
Payer authentication failed
BLOCKED
Transaction blocked due to Risk or 3D Secure blocking rules
CANCELLED
Transaction cancelled by payer
DECLINED
The requested operation was not successful. For example, a payment was declined by issuer or payer authentication was not able to be successfully completed.
DECLINED_AVS
Transaction declined due to address verification
DECLINED_AVS_CSC
Transaction declined due to address verification and card security code
DECLINED_CSC
Transaction declined due to card security code
DECLINED_DO_NOT_CONTACT
Transaction declined - do not contact issuer
DECLINED_PAYMENT_PLAN
Transaction declined due to payment plan
DEFERRED_TRANSACTION_RECEIVED
Deferred transaction received and awaiting processing
DUPLICATE_BATCH
Transaction declined due to duplicate batch
EXCEEDED_RETRY_LIMIT
Transaction retry limit exceeded
EXPIRED_CARD
Transaction declined due to expired card
INSUFFICIENT_FUNDS
Transaction declined due to insufficient funds
INVALID_CSC
Invalid card security code
LOCK_FAILURE
Order locked - another transaction is in progress for this order
NOT_ENROLLED_3D_SECURE
Card holder is not enrolled in 3D Secure
NOT_SUPPORTED
Transaction type not supported
PENDING
Transaction is pending
REFERRED
Transaction declined - refer to issuer
SUBMITTED
The transaction has successfully been created in the gateway. It is either awaiting submission to the acquirer or has been submitted to the acquirer but the gateway has not yet received a response about the success or otherwise of the payment.
SYSTEM_ERROR
Internal system error occurred processing the transaction
TIMED_OUT
The gateway has timed out the request to the acquirer because it did not receive a response. You can handle the transaction as a declined transaction. Where possible the gateway will attempt to reverse the transaction.
UNKNOWN
The transaction has been submitted to the acquirer but the gateway was not able to find out about the success or otherwise of the payment. If the gateway subsequently finds out about the success of the payment it will update the response code.
UNSPECIFIED_FAILURE
Transaction could not be processed
result Enumeration = Always Provided
A system-generated high level overall result of the operation.
Existence
Always Provided
Fixed value
Validation Rules
JSON type
String
Value must be a member of the following list. The values are case sensitive.
FAILURE
The operation was declined or rejected by the gateway, acquirer or issuer
PENDING
The operation is currently in progress or pending processing
SUCCESS
The operation was successfully processed
UNKNOWN
The result of the operation is unknown
transaction = Always Provided
Information about this transaction.
Fixed value
transaction.acquirer = Always Provided
Fixed value
transaction.acquirer.id String = Always Provided
The ID for the acquirer used to process the transaction.
Existence
Always Provided
Fixed value
Validation Rules
Data can consist of any characters
JSON type
String
minimum length
1
maximum length
40
transaction.amount Decimal = Always Provided
This is the total amount of the transaction including shipping, tax, etc.
Expressed as a decimal number in the untis of the currency. For example 12.34 in USD is the amount 12 dollars and 34 cents.
Existence
Always Provided
Fixed value
Validation Rules
Data is a decimal number.
JSON type
Number
maximum value
1000000000000
minimum value
0
maximum post-decimal digits
3
transaction.currency Upper case alphabetic text = Always Provided
The currency of the order expressed as an ISO 4217 alpha code.
Existence
Always Provided
Fixed value
Validation Rules
Data must consist of the characters A-Z
JSON type
String
minimum length
3
maximum length
3
transaction.id String = Always Provided
Unique identifier for this transaction to distinguish it from any other transactions on the order.
Existence
Always Provided
Fixed value
Validation Rules
Data can consist of any characters
JSON type
String
minimum length
1
maximum length
40
transaction.type Enumeration = Always Provided
Indicates the type of action performed on the order.
Existence
Always Provided
Fixed value
Validation Rules
JSON type
String
Value must be a member of the following list. The values are case sensitive.
AUTHORIZATION
Authorization
AUTHORIZATION_UPDATE
Authorization Update
CAPTURE
Capture
PAYMENT
Payment (Purchase)
REFUND
Refund
VERIFICATION
Verification
VOID_AUTHORIZATION
Void Authorization
VOID_CAPTURE
Void Capture
VOID_PAYMENT
Void Payment
VOID_REFUND
Void Refund
Response parameters are the same as Transaction: Retrieve Transaction
error = CONDITIONAL
Information on possible error conditions that may occur while processing an operation using the API.
Fixed value
error.cause Enumeration = CONDITIONAL
Broadly categorizes the cause of the error.
For example, errors may occur due to invalid requests or internal system failures.
Fixed value
Validation Rules
JSON type
String
Value must be a member of the following list. The values are case sensitive.
INVALID_REQUEST
The request was rejected because it did not conform to the API protocol.
REQUEST_REJECTED
The request was rejected due to security reasons such as firewall rules, expired certificate, etc.
SERVER_BUSY
The server did not have enough resources to process the request at the moment.
SERVER_FAILED
There was an internal system failure.
error.explanation String = CONDITIONAL
Textual description of the error based on the cause.
This field is returned only if the cause is INVALID_REQUEST or SERVER_BUSY.
Fixed value
Validation Rules
Data can consist of any characters
JSON type
String
minimum length
1
maximum length
1000
error.field String = CONDITIONAL
Indicates the name of the field that failed validation.
This field is returned only if the cause is INVALID_REQUEST and a field level validation error was encountered.
Fixed value
Validation Rules
Data can consist of any characters
JSON type
String
minimum length
1
maximum length
100
error.supportCode String = CONDITIONAL
Indicates the code that helps the support team to quickly identify the exact cause of the error.
This field is returned only if the cause is SERVER_FAILED or REQUEST_REJECTED.
Fixed value
Validation Rules
Data can consist of any characters
JSON type
String
minimum length
1
maximum length
100
error.validationType Enumeration = CONDITIONAL
Indicates the type of field validation error.
This field is returned only if the cause is INVALID_REQUEST and a field level validation error was encountered.
Fixed value
Validation Rules
JSON type
String
Value must be a member of the following list. The values are case sensitive.
INVALID
The request contained a field with a value that did not pass validation.
MISSING
The request was missing a mandatory field.
UNSUPPORTED
The request contained a field that is unsupported.
result Enumeration = CONDITIONAL
A system-generated high level overall result of the operation.
Fixed value
Validation Rules
JSON type
String
Value must be a member of the following list. The values are case sensitive.
ERROR
The operation resulted in an error and hence cannot be processed.