Authenticate Payer
Request to authenticate a payer, i.e. verify the identity of a cardholder. You can subsequently use the resulting authentication data when submitting a financial transaction request to prove that you have performed payer authentication.
You must first invoke the Initiate Authentication operation and where the response indicates that payer authentication is available, you must then invoke the Authenticate Payer operation with the same orderId and transactionId submitted on the Initiate Authentication operation.
To increase the likelihood of the authentication being successful, provide as much information about the payer and the transaction as possible.
If the information in the request is sufficient to allow the authentication scheme to confirm the payer's identity the response will include the authentication data (frictionless flow). Alternatively (challenge flow), it may be necessary for the payer to interact with the authentication scheme to confirm their identity (e.g. by providing a one-time password sent to them by their card issuer). In this case the response will contain an HTML excerpt that you must inject into your page. This will establish the interaction between the payer and the authentication scheme. After authentication has been completed the payer will be redirected back to your website using the URL provided by you in field authentication.redirectResponseUrl in the Authenticate Payer request.
If you are authenticating the payer when establishing a payment agreement with your payer for a series of recurring, installment or unscheduled payments you must provide details about the agreement in the agreement parameter group.
Usage Note
Using the Initiate Authenticate and Authenticate Payer operations for 3-D Secure authentication requires you to manage a variety of authentication flows and understand the 3-D Secure version 2 data flows as published by EMVCo.
A more simple alternatively is to use the gateway's threeDS.js library.
Authentication Copied to clipboard
This operation requires authentication via one of the following methods:
- Certificate authentication.
-
Basic HTTP authentication as described at
w3.org.
Provide 'merchant.
<your gateway merchant ID>
' in the userid portion and your API password in the password portion.
Request Copied to clipboard
URL Parameters Copied to clipboard
Alphanumeric + additional characters
REQUIRED
The unique identifier issued to you by your payment provider.
This identifier can be up to 12 characters in length.
Data may consist of the characters 0-9, a-z, A-Z, '-', '_'
Min length: 1 Max length: 40String
REQUIRED
A unique identifier for this order to distinguish it from any other order you create.
Use this identifier when referring to this order in subsequent transactions and in retrieval operations. This value must be unique for every order you create using your merchant profile.
Data can consist of any characters
Min length: 1 Max length: 40String
REQUIRED
Unique identifier for this transaction to distinguish it from any other transaction on the order.
An order can have transactions representing:
- Movement of money. For example, payments and refunds.
- Validations. For example, account verification or 3-D Secure authentication of the payer.
- Undoing other transactions. For example, voiding a payment transaction.
- Chargebacks.
- Fees from your payment service provider.
If you attempt an operation and it fails (eg you try to PAY on a card with no funds), then you need a new id for each retry.
Data can consist of any characters
Min length: 1 Max length: 40Fields Copied to clipboard
OPTIONAL
Additional details for account funding transactions (order.purchaseType=ACCOUNT_FUNDING).
Account funding transactions are transactions that pull money from the sender's card account for the purpose of funding another account, the recipient's account. Depending on the type of account funding transaction you may be required to provide some or all the details in this parameter group.
Enumeration
OPTIONAL
Defines the purpose of the account funding payment.If not provided the value is defaulted to OTHER.
Value must be a member of the following list. The values are case sensitive.
CRYPTOCURRENCY_PURCHASE
The funds from this account funding transaction will exclusively be used to purchase cryptocurrency.
MERCHANT_SETTLEMENT
The funds from this account funding transaction will be used to settle the proceeds of processing card transactions.
OTHER
The funds from this account funding transaction will be used for any other purpose, e.g. transferring funds from a person to a person or transferring funds into a staged wallet. This is the default value.
PAYROLL
The funds from this account funding transaction will be used to pay salaries.
OPTIONAL
Details about the recipient who will subsequently receive the funds that you are debiting from the sender in this transaction.
OPTIONAL
Details about the account of recipient who will subsequently receive the funds that you are debiting from the sender in this transaction.
Enumeration
OPTIONAL
If the recipient account type is an account with an associated card (accountFunding.recipient.account.identifierType=CARD_NUMBER) you must specify the funding method of the card.
If not provided the value is defaulted to UNKNOWN.
Value must be a member of the following list. The values are case sensitive.
CHARGE
The payer has a line of credit with the issuer which must be paid off monthly.
CREDIT
The payer has a revolving line of credit with the issuer.
DEBIT
Funds are immediately debited from the payer's account with the issuer.
UNKNOWN
The account funding method is not known. This is the default value.
String
OPTIONAL
The account identifier for the payment recipient's account.
For example, this may be a card number or bank account number. You must specify the type of identifier in field accountFunding.recipient.account.identifierType. In the response, the value will be masked. The masking format depends on the type of account identifier.
Data can consist of any characters
Enumeration
OPTIONAL
Defines the type of the recipient's account identifier that you have provided in field accountFunding.recipient.account.identifier.
If not provided the value is defaulted to OTHER.
Value must be a member of the following list. The values are case sensitive.
BANK_ACCOUNT_BIC
The recipient's account identifier is a bank account number and Business Identifier Code (BIC).
BANK_ACCOUNT_IBAN
The recipient's account identifier is an International Bank Account Number (IBAN).
BANK_ACCOUNT_NATIONAL
The recipient's account identifier is a bank account number and a national bank identifier, for example, a routing number (RTN).
CARD_NUMBER
The recipient's account identifier is a card number.
EMAIL_ADDRESS
The recipient's account identifier is an email address.
OTHER
The recipient's account identifier type can not be classified using any of the other categories. This is the default value
PHONE_NUMBER
The recipient's account identifier is a phone number.
SOCIAL_NETWORK_PROFILE_ID
The recipient's account identifier is a social network profile ID.
STAGED_WALLET_USER_ID
The recipient's account identifier is a wallet user ID.
Upper case alphabetic text
OPTIONAL
The 3 letter ISO standard alpha country code of the recipient.
Data must consist of the characters A-Z
Date
OPTIONAL
The date of birth of the recipient in yyyy-mm-dd format.
Data must comply with ISO 8601 extended date format, yyyy-mm-dd
String
OPTIONAL
First name of the recipient.
Data can consist of any characters
String
OPTIONAL
Last name of the recipient.
Data can consist of any characters
String
OPTIONAL
Middle name of the recipient.
Data can consist of any characters
String
OPTIONAL
The post code or zip code of the recipient.
Data can consist of any characters
String
OPTIONAL
The state or province code of the recipient.
The value must match the second part of the ISO 3166-2 code. For an address in the United States provide the 2-letter ISO 3166-2 state code. For US military bases provide one of AE, AA, AP. For an address in Canada provide the 2-letter ISO 3166-2 province code.
Data can consist of any characters
Boolean
OPTIONAL
Defines if the sender and recipient of the account funding payment are the same or not.
If not provided the value is defaulted to FALSE.
JSON boolean values 'true' or 'false'.
Enumeration
OPTIONAL
Defines if the sender is a person, a commercial organization, a non-profit organization or a government
Value must be a member of the following list. The values are case sensitive.
COMMERCIAL_ORGANIZATION
The sender is a commercial organization. Examples include account to account transfers initiated by a commercial organization for the purpose of transferring funds to one of their accounts, business to business payments, and disbursements for insurance claims, payroll, investment dividends, merchant rebates.
GOVERNMENT
The sender is a government or government agency. Examples include government agencies paying salaries, pensions, social benefits or tax credits.
NON_PROFIT_ORGANIZATION
The sender is a non-profit organization. Examples include non-profit organizations delivering emergency aid payments.
PERSON
The sender is a person. Examples include account to account transfers initiated by a person to their own account or a different person's account and adding funds to a staged wallet.
OPTIONAL
A commercial agreement you have with the payer that allows you to store and use their payment details for later payments.
For example, an agreement to a series of recurring payments (a mobile phone subscription), an agreement to take payment for a purchase by a series of installments (hire purchase), an agreement to make additional payments when required (account top up), or to fulfil a standard industry practice (no show penalty charge).
Do not provide this parameter group if you are storing the payment details for subsequent payer-initiated payments only.
See Credential on File, Cardholder, and Merchant Initiated Transactions for details.
Enumeration
OPTIONAL
Indicates if all the payments within the agreement use the same amount or if the amount differs between the payments.
The field must be provided for recurring payment agreements.
Value must be a member of the following list. The values are case sensitive.
FIXED
All payments in the recurring payment agreement have the same amount. Examples include magazine subscriptions or gym memberships.
VARIABLE
The amount for the payments within the recurring payment agreement differs between payments. Examples include usage-based charges like utility or phone bills.
Date
OPTIONAL
Date at which your agreement with the payer to process payments expires.
Data must comply with ISO 8601 extended date format, yyyy-mm-dd
String
OPTIONAL
Your identifier for the agreement you have with the payer to process payments.
When you collect cards from your payers and store them for later use, you must provide an agreement ID when you use the stored values for:
- Recurring payments: you have an agreement with the payer that authorizes you to automatically debit their account at agreed intervals for fixed or variable amounts. For example, gym membership, phone bills, or magazine subscriptions.
- Installment payments: you have an agreement with the payer that authorizes you to process multiple payments over an agreed period of time for a single purchase. For example, the payer purchases an item for $1000 and pays for it in four monthly installments.
- Unscheduled: you have an agreement with the payer that authorizes you to process future payments when required. For example, the payer authorizes you to process an account top-up transaction for a transit card when the account balance drops below a certain threshold.
- Industry Practice: you have an agreement with the payer that authorizes you to initiate additional transactions to fulfil a standard business practice related to an original payment initiated by the payer. For example, a delayed charge for use of the hotel mini bar after the payer has checked out or a no show penalty charge when the payer fails to show for a booking.
Data can consist of any characters
Decimal
OPTIONAL
The maximum amount for a single payment in the series as agreed with the payer under your agreement with them.
The amount must be provided in the currency of the order.
Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.
Integer
OPTIONAL
The minimum number of days between payments agreed with the payer under your agreement with them.
JSON number data type, restricted to being positive or zero. In addition, the represented number may have no fractional part.
Integer
OPTIONAL
The number of merchant-initiated payments within the recurring payment agreement.
JSON number data type, restricted to being positive or zero. In addition, the represented number may have no fractional part.
Enumeration
OPTIONAL
The frequency of the payments within the series as agreed with the payer under your agreement with them.
Value must be a member of the following list. The values are case sensitive.
AD_HOC
The agreement if for payments on an ah-hoc basis.
DAILY
The agreement if for a daily payment.
FORTNIGHTLY
The agreement if for a fortnightly payment.
MONTHLY
The agreement if for a monthly payment.
OTHER
The agreement is for payments according to a schedule other than the ones listed in the other enumeration values for this field.
QUARTERLY
The agreement if for a quarterly payment.
TWICE_YEARLY
The agreement if for a payment twice a year.
WEEKLY
The agreement if for a weekly payment.
YEARLY
The agreement if for a yearly payment.
OPTIONAL
For an installment agreement where the payer purchased goods and/or services from a retailer but entered an installment agreement to pay for this purchase with you, you must provide details about the retailer.
String
OPTIONAL
Provide an abbreviation of the retailer's trading name that can be used by the issuer to indicate the retailer on the payer's statement.
Data can consist of any characters
String
OPTIONAL
A 4-digit code used to classify the retailer's business by the type of goods or services it offers.
Data can consist of any characters
String
OPTIONAL
The retailer's trading name.
Data can consist of any characters
Enumeration
OPTIONAL
The type of commercial agreement that the payer has with you.
Specify the agreement type when you have provided a value for agreement.id and this payment is the first in a series of payments. The default value is OTHER.
The gateway will use the value you specify for subsequent payments in the series.
Value must be a member of the following list. The values are case sensitive.
INDUSTRY_PRACTICE
An agreement where the payer authorizes you to initiate additional transactions to fulfil a standard business practice related to an original payment initiated by the payer. These additional payments are triggered by an event not known at the time of the payer's initial agreement. For example, a delayed charge for use of the hotel mini bar after the payer has checked out or a no show charge when the payer fails to show for a booking.
INSTALLMENT
An agreement where the payer authorizes the payment for a single purchase to be split into a number of payments processed at agreed intervals. For example, pay for a purchase in six monthly installments.
OTHER
An agreement where you want to link related payments for any purpose other than processing recurring, installment, or unscheduled payments. For example, split tender payments.
RECURRING
An agreement where the payer authorizes you to process repeat payments for bills or invoices at agreed intervals (for example, weekly, monthly). The amount might be fixed or variable.
UNSCHEDULED
An agreement where the payer authorizes you to automatically deduct funds for a payment for an agreed purchase when required (unscheduled). For example, auto top-ups when the account value falls below a threshold.
String
= AUTHENTICATE_PAYER
FIXED
Any sequence of zero or more unicode characters.
OPTIONAL
Information about how the payer's identity is verified.
For example, using 3-D Secure authentication.
This parameter group include payer authentication options available to you, parameters you need to perform payer authentication for an available method, and the results of payer authentication.
OPTIONAL
Information about payer authentication using 3-D Secure authentication version 2.
OPTIONAL
Information provided by the 3-D Secure Software Development Kit (SDK) that is used by an app on the payer's device to enable 3-D Secure authentication of the payer to be performed in-app.
You must populate the fields in this parameter group when you authenticate the payer in-app using 3-D Secure authentication version 2.
String
REQUIRED
A unique identifier for the app on the payer's device.
The 3-D Secure SDK generates this identifier each time the app is installed or updated.
This field corresponds to EMVCo field sdkAppID
Data can consist of any characters
String
REQUIRED
Information about the payer's device collected and encrypted by the 3-D Secure SDK.
The data is a JSON Web Encryption (JWE) object in JSON format. When using the REST/JSON gateway API, express this as a JSON string (i.e. the embedded quotes will be escaped).
This field corresponds to EMVCo field sdkEncData
Data can consist of any characters
JSON Text
REQUIRED
A public key generated by the 3-D Secure SDK.
This key is used to establish a secure session between the 3DS SDK and the issuer's Access Control Server (ACS) when the payer is required to be presented with an authentication challenge.
The key is a JSON Web Key (JWK) object in JSON format. When using the REST/JSON gateway API, express this as a JSON string (i.e the embedded quotes will be escaped).
This field corresponds to EMVCo field sdkEphemPubKey
Data is valid Json Format
Enumeration
OPTIONAL
The User Interface (UI) formats that the payer's device supports.
These are the formats that can be used to render the screens presented to the payer during an authentication challenge.
You only need to provide this value if you only support one of these formats.
This field corresponds to EMVCo data element sdkInterface in the field deviceRenderOptions.
Value must be a member of the following list. The values are case sensitive.
HTML
The device supports HTML format.
NATIVE
The device supports the UI format native to the payer's device.
String
REQUIRED
An identifier of the vendor and version of the 3-D Secure SDK assigned by EMVCo.
This field corresponds to EMVCo field sdkReferenceNumber
Data can consist of any characters
Integer
OPTIONAL
The duration (in seconds) available to the payer to authenticate.
Will default to 900 if not provided. Note: The value will be rounded up to the nearest minute.
This field corresponds to EMVCo field sdkMaxTimeout
JSON number data type, restricted to being positive or zero. In addition, the represented number may have no fractional part.
String
REQUIRED
A unique identifier assigned by the 3-D Secure SDK for the transaction.
This field corresponds to EMVCo field sdkTransID
Data can consist of any characters
Comma separated enumeration
OPTIONAL
Indicates the UI types which the SDK supports for displaying authentication challenges within the app.
A comma separated list of the payer authentication methods that you will accept for this payment.
You only need to provide this value if all of these values are not supported.
Note: OTHER_HTML is only supported when authentication.3ds2.sdk.interface allows a HTML UI format.
This field corresponds to EMVCo data element sdkUiType in the field deviceRenderOptions.
Value must be one or more comma separated members of the following list. The values are case sensitive.
TEXT
The payer is asked to enter text into a field displayed on the UI. For example, ask the payer to enter a One Time Password sent to their registered mobile phone number.
SINGLE_SELECT
The payer is asked to select a single option from a number of presented options. For example, ask the payer if they want a One Time Password to be sent to either their email address or mobile phone number registered with their issuer.
MULTI_SELECT
The payer is asked to select multiple options from a number of presented options. For example, ask the payer to select valid responses to a question.
OUT_OF_BAND
The payer is presented with screens rendered by an out-of-band service during an authentication challenge, For example, the payer is asked to confirm the payment from their banking app.
OTHER_HTML
The payer is presented with an authentication challenge using other mechanisms supported in HTML but not in the native UI format. For example, the payer is asked to confirm an image presented on the screen.
Enumeration
OPTIONAL
Indicates if you want the payer to be presented with an authentication challenge for this transaction.
You can use this to support local mandates or your risk tolerance. For example, you may prefer that a challenge is always performed when you store card details on file.
If you do not provide a value, the gateway will use NO_PREFERENCE. If there is no payer present (for example, recurring payments), then the gateway will ignore this field and use NO_CHALLENGE.
Note: 'challenge' means requiring the payer to take action to identify themselves, for example, entering a password.
Value must be a member of the following list. The values are case sensitive.
CHALLENGE_MANDATED
You require that the payer is presented with a challenge.
CHALLENGE_PREFERRED
You prefer that the payer is presented with a challenge.
NO_CHALLENGE
You prefer that the payer is not presented with a challenge.
NO_PREFERENCE
You do not have a preference. The issuer may present the payer with a challenge.
REQUEST_TRUSTED_MERCHANT_LISTING
You want the issuer to present the payer with a challenge and invite the payer to add you to the list of trusted merchant for this card. If the payer agrees, the response will contain authentication.psd2.trustedMerchantStatus=ON_LIST. This will allow you to request a trusted merchant exemption the next time you authenticate the payer for a payment with this card.
String
OPTIONAL
Description of the goods being purchased.
If supported, this description will be displayed on the authentication UI presented to the payer.
Data can consist of any characters
OPTIONAL
This parameter group is only applicable if you are subject to the Regulatory Technical Standards (RTS) requirements for Strong Customer Authentication (SCA) under the Payment Services Directive 2 (PSD2) regulations in the European Economic Area.
It provides details about SCA exemptions under PSD2.
Enumeration
OPTIONAL
Indicates why this payment qualifies for exemption from Strong Customer Authentication (SCA) under the Payment Services Directive 2 (PSD2).
Note:
- For recurring payments provide the RECURRING_PAYMENT value only if the amount is the same. If the amount varies, provide MERCHANT_INITIATED_TRANSACTION instead.
Value must be a member of the following list. The values are case sensitive.
AUTO
If either a LOW_RISK or LOW_VALUE_PAYMENT or TRUSTED_MERCHANT exemption applies to the transaction, it is automatically claimed by the gateway on behalf of the merchant.
LOW_RISK
Exemption is claimed because the acquirer has a low fraud rate.
LOW_VALUE_PAYMENT
Exemption is claimed as the amount is below 30 Euro.
MERCHANT_INITIATED_TRANSACTION
The transaction is excluded as it was initiated by the merchant based on an agreement with the payer. For example, a recurring payment (for a varied or fixed amount), installment payment, or account top-up. In these cases, the payer is not present and cannot participate in an authentication interaction. Merchant initiated transactions are only applicable to subsequent transactions on the order and are out of scope of the PSD2 RTS on Strong Customer Authentication (SCA). The payer must be authenticated during the first transaction that established the agreement.
NONE
An exemption is not claimed for this transaction. The merchant requires Strong Customer Authentication (SCA) be performed.
RECURRING_PAYMENT
The transaction is exempt as it was initiated by the merchant based on an agreement with the payer for a recurring payment for a fixed amount. This value is only applicable to subsequent transactions on the order. In this case, the payer is not present and cannot participate in an authentication interaction. The payer must be authenticated during the first transaction that established the agreement.
SECURE_CORPORATE_PAYMENT
The transaction is exempt as it is a corporate or Business-to-Business (B2B) payment performed using dedicated payment processes and protocols that are not available to consumers and offer at least equivalent security levels.
TRUSTED_MERCHANT
The transaction is exempt because the payer has added you to the list of their trusted merchants (as maintained by the issuer).
Url
OPTIONAL
The URL to which you want to redirect the payer after completing the payer authentication process.
This will be a URL on your website, with the URL encoded as defined in RFC3986. This means special characters such spaces, hyphens, etc must be encoded.
You must provide this URL, unless you are certain that there will be no interaction with the payer.
Ensure that the URL begins with 'https' and is longer than 11 characters.
OPTIONAL
Details of the payer's billing address.
OPTIONAL
The payer's billing address.
This data may be used to qualify for better interchange rates on corporate purchase card transactions.
String
OPTIONAL
The city portion of the address.
Data can consist of any characters
String
OPTIONAL
The name of the company associated with this address.
Data can consist of any characters
Upper case alphabetic text
OPTIONAL
The 3 letter ISO standard alpha country code of the address.
Data must consist of the characters A-Z
Alphanumeric + additional characters
OPTIONAL
The post code or zip code of the address.
Data may consist of the characters 0-9, a-z, A-Z, ' ', '-'
String
OPTIONAL
The state or province of the address.
Data can consist of any characters
String
OPTIONAL
The three character ISO 3166-2 country subdivision code for the state or province of the address.
Providing this field might improve your payer experience for 3-D Secure payer authentication.
Data can consist of any characters
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
String
OPTIONAL
The second line of the address (if provided).
Data can consist of any characters
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
OPTIONAL
Information associated with the customer's account.
OPTIONAL
Information about the customer's account with you
OPTIONAL
Information about how you authenticated the payer.
OPTIONAL
A record that ties together a customer's account on your website or application with a card which they use, using a service such as Mastercard Identity Check Express (IDCX).
By performing payer authentication for that card, and recording that against the secured login, it is possible to achieve a frictionless payer authentication flow for future transactions by showing that they have securely logged in to the merchant using that account. To demonstrate this, you should provide the customer.account.authentication.data, customer.account.authentication.method and customer.account.authentication.time fields.
Enumeration
OPTIONAL
Used to perform additional behaviour relating to the association between the customer account and their card.
Value must be a member of the following list. The values are case sensitive.
AUTHENTICATION
You are submitting a payment or non-payment Authentication request with evidence of strong customer authentication you have already performed to be validated against a previously created record, in order to obtain frictionless authentication for the payer.
REGISTRATION
You are submitting evidence of strong customer authentication performed by your website or application using a suitable, certified authentication mechanism, in order to record an association between this customer login and the 3DS authenticated cardholder.
String
OPTIONAL
The data returned by an authentication service that you used to authenticate the customer when they logged on to your site/service.
For example, a FIDO token provided by a federated identity provider.
Data can consist of any characters
Enumeration
OPTIONAL
The method you used to authenticate the payer.
Value must be a member of the following list. The values are case sensitive.
CUSTOMER_ACCOUNT_LOGIN
The merchant authenticated the payer using a credential system (for example,password) that they manage.
FEDERATED_IDENTITY_LOGIN
The merchant authenticated the payer using a federated identity management service such as Google or Facebook
FIDO_AUTHENTICATION
The merchant authenticated the payer using hardware, mobile, or biometrics based authentication that is compliant with FIDO Alliance specifications.
ISSUER_ACCOUNT_LOGIN
The merchant authenticated the payer using a credential system for example, password) managed by the issuer.
NONE
The merchant did not authenticate the payer.
THIRD_PARTY_ACCOUNT_LOGIN
The merchant authenticated the payer using a credential system managed by a third party.
DateTime
OPTIONAL
The data and time you authenticated the payer using the method specified in customer.account.authentication.method.
You must provide the authentication time if you authenticated the payer.
An instant in time expressed in ISO8601 date + time format - "YYYY-MM-DDThh:mm:ss.SSSZ"
OPTIONAL
Information about the payer's historical activity related to their customer account with you.
Integer
OPTIONAL
Number of times the account holder has tried to add or change their card over the last 24 hours.
JSON number data type, restricted to being positive or zero. In addition, the represented number may have no fractional part.
Integer
OPTIONAL
The number of transactions (successful and abandoned) that have been requested in the last year for all payment methods stored against this customer account.
JSON number data type, restricted to being positive or zero. In addition, the represented number may have no fractional part.
Date
OPTIONAL
The date the payer created an account with you.
Data must comply with ISO 8601 extended date format, yyyy-mm-dd
OPTIONAL
Information about the payer authentication performed for a previous transaction with you.
String
OPTIONAL
The unique transaction identifier used by the issuer's Access Control Server (ACS) to identify the transaction.
If you are processing a recurring payment, then provide the transaction acsTransactionId for the transaction where the payer was authenticated.
Data can consist of any characters
Base64
OPTIONAL
The authentication token obtained as the result of a previous authentication request.
Data is Base64 encoded
DateTime
OPTIONAL
The date and time the payer was authenticated for the prior transaction.
If you are processing a recurring payment, then provide the time and date for the transaction where the payer was authenticated.
An instant in time expressed in ISO8601 date + time format - "YYYY-MM-DDThh:mm:ss.SSSZ"
String
OPTIONAL
The transaction ID of a previous Authenticate Payer request on the order, which the gateway can retrieve and use instead of you providing the data explicitly in the customer.account.history.issuerAuthentication.authenticationToken, customer.account.history.issuerAuthentication.type and customer.account.history.issuerAuthentication.time and customer.account.history.issuerAuthentication.acsTransactionId fields.
You should provide this if you are performing an authentication request to obtain a new authentication token to replace one which is no longer valid due to age or details such as the amount of the transaction having changed.
Data can consist of any characters
Enumeration
OPTIONAL
The method used to authenticate the payer for a prior transaction with you.
Value must be a member of the following list. The values are case sensitive.
3DS_FRICTIONLESS
3DS authentication was performed without payer interaction.
3DS_CHALLENGE
3DS authentication was performed and the payer was challenged for additional information.
ADDRESS_VERIFICATION
The issuer verifed the billing address provided by the payer. 3DS authentication was not used.
OTHER
The issuer verifed the payer using another method.
Date
OPTIONAL
The date the payer's account with you was last updated.
For example, they changed address details or changed card details.
Data must comply with ISO 8601 extended date format, yyyy-mm-dd
Date
OPTIONAL
The date the payer last changed the password for their account with you.
Data must comply with ISO 8601 extended date format, yyyy-mm-dd
Integer
OPTIONAL
The number of transactions (successful and abandoned) that have been requested in the last 24 hours for all payment methods stored against this customer account.
JSON number data type, restricted to being positive or zero. In addition, the represented number may have no fractional part.
Date
OPTIONAL
The date you first shipped goods to the payer's shipping address provided in the shipping.address parameter group.
Data must comply with ISO 8601 extended date format, yyyy-mm-dd
Boolean
OPTIONAL
Have you experienced suspicious or fraudulent activity on the account in the past.
JSON boolean values 'true' or 'false'.
String
OPTIONAL
Your identifier for the payer's account with you.
This should be an immutable identifier, rather than the customer's name, email or such data that could be changed by the customer.
Data can consist of any characters
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.
Ensures that the email address is longer than 3 characters and adheres to a generous subset of valid RFC 2822 email addresses
String
OPTIONAL
The payer's first name.
Data can consist of any characters
String
OPTIONAL
The payer's last or surname.
Data can consist of any characters
Telephone Number
OPTIONAL
The payer's mobile phone or cell phone number in ITU-T E123 format, for example +1 607 1234 5678
The number consists of:
- '+'
- country code (1, 2 or 3 digits)
- 'space'
- national number ( which may embed single spaces characters for readability).
Data consists of '+', country code (1, 2 or 3 digits), 'space', and national number (which may embed single space characters for readability)
Telephone Number
OPTIONAL
The payer's phone number in ITU-T E123 format, for example +1 607 1234 456
The number consists of:
- '+'
- country code (1, 2 or 3 digits)
- 'space'
- national number ( which may embed single spaces characters for readability).
Data consists of '+', country code (1, 2 or 3 digits), 'space', and national number (which may embed single space characters for readability)
String
OPTIONAL
The tax registration identifier of the customer.
Data can consist of any characters
OPTIONAL
Information about the device used by the payer for this transaction.
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
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
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)
You must provide a value in this field if you are performing 3-D Secure authentication of the payer and set authentication.channel = PAYER_BROWSER.
Data can consist of any characters
OPTIONAL
Detailed information about the payer's browser.
If you are using 3-D Secure authentication to authenticate the payer, then this information is used by the issuer's Access Control Server (ACS) to identify the capabilities of the payers browser so that it can render content appropriately when authenticating the payer.
You must provide values for fields in this parameter group if you are performing 3-D Secure authentication of the payer and set authentication.channel = PAYER_BROWSER.
Enumeration
OPTIONAL
Dimensions of the challenge window (in width x height in pixels) displayed to the payer during 3D-Secure authentication.
This must be provided for authentication operations where authentication.channel is PAYER_BROWSER.
Value must be a member of the following list. The values are case sensitive.
250_X_400
390_X_400
500_X_600
600_X_400
FULL_SCREEN
String
OPTIONAL
The content of the Accept request-header field as sent from the payer's browser.
This is used to determine which content types are supported by the browser.
This must be provided for authentication operations where authentication.channel is PAYER_BROWSER.
Data can consist of any characters
Integer
OPTIONAL
The bit depth (in bits per pixel) of the color palette for displaying images.
You obtain this value from the screen.colorDepth property of the payer's browser.
This must be provided for authentication operations where authentication.channel is PAYER_BROWSER.
JSON number data type, restricted to being positive or zero. In addition, the represented number may have no fractional part.
Boolean
OPTIONAL
Indicates whether or not the payer's browser supports Java.
You obtain this value from the navigator.javaEnabled property of the payer's browser
This must be provided for authentication operations where authentication.channel is PAYER_BROWSER.
JSON boolean values 'true' or 'false'.
Boolean
OPTIONAL
Indicates whether or not the payer's browser supports JavaScript.
You can determine this by setting the relevant value in a form to false, and then attempting to update it to true using JavaScript.
JSON boolean values 'true' or 'false'.
String
OPTIONAL
The language supported for the payer's browser as defined in IETF BCP47.
You obtain this value from the navigator.language property of the payer's browser.
This must be provided for authentication operations where authentication.channel is PAYER_BROWSER.
Data can consist of any characters
Integer
OPTIONAL
The total height of the payer's browser screen in pixels.
You obtain this value from the screen.height property of the payer's browser
This must be provided for authentication operations where authentication.channel is PAYER_BROWSER.
JSON number data type, restricted to being positive or zero. In addition, the represented number may have no fractional part.
Integer
OPTIONAL
The total width of the payer's browser screen in pixels.
You obtain this value from the screen.width property of the payer's browser
This must be provided for authentication operations where authentication.channel is PAYER_BROWSER.
JSON number data type, restricted to being positive or zero. In addition, the represented number may have no fractional part.
Browser Time Zone Offset
OPTIONAL
Time difference between UTC time and the Cardholder browser local time, in minutes.
The time zone offset is the difference, in minutes, between UTC and local time. Note that this means that the offset is positive if the local time zone is behind UTC and negative if it is ahead. For example, for time zone UTC+10:00 (Australian Eastern Standard Time, Vladivostok Time, Chamorro Standard Time), -600 would be presented.
This must be provided for authentication operations where authentication.channel is PAYER_BROWSER.
Browser time zone offset between -840 to +840.
String
OPTIONAL
Information collected about a remote computing device for the purpose of providing a unique identifier for the device.
For example, session ID, blackbox ID.
Data can consist of any characters
String
OPTIONAL
The name of the server to which the customer is connected.
Data can consist of any characters
String
OPTIONAL
The IP address of the device used by the payer, in nnn.nnn.nnn.nnn format.
Data can consist of any characters
String
OPTIONAL
The mobile phone manufacturer's identifier for the model of the mobile device used to initiate the payment.
Data can consist of any characters
REQUIRED
Information about the order associated with this transaction.
Boolean
OPTIONAL
Indicates whether you will accept a payment less than order.amount, e.g. when using a gift card.
If not set or set to FALSE, and the full amount is not available, the transaction will be rejected.
Unless you have been advised by your payment service provider that the gateway supports partial approvals for your acquirer, you can ignore this field.
If the gateway supports partial approvals for your acquirer you must set this field to TRUE else the transaction is rejected by the gateway.
JSON boolean values 'true' or 'false'.
Decimal
OPTIONAL
The total amount for the order. This is the net amount plus any merchant charge amounts.If you provide any sub-total amounts, then the sum of these amounts (order.itemAmount, order.taxAmount, order.shippingAndHandlingAmount, order.cashbackAmount, order.gratuityAmount, order.merchantCharge.amount and order.dutyAmount), minus the order.discountAmount must equal the net amount.
The value of this field in the response is zero if payer funds are not transferred.
Either Amount or netAmount must be provided
Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.
Enumeration
OPTIONAL
Indicates if you expect to capture the full order amount for which you are requesting authorization.
If you do not provide a value for order.certainty the default configured for you by your payment service provider will be used. The value provided in the response shows the value the gateway sent to the acquirer
Value must be a member of the following list. The values are case sensitive.
ESTIMATED
The amount authorized is an estimate of the amount that will be captured. It is possible that the amount captured will be less, or might not be captured at all.
FINAL
The full authorized amount is expected to be captured within the mandated time. The order will only be cancelled in exceptional circumstances (for example, the payer cancelled their purchase).
Upper case alphabetic text
REQUIRED
The currency of the order expressed as an ISO 4217 alpha code, e.g. USD.
Data must consist of the characters A-Z
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
String
OPTIONAL
A note from the payer about this order.
Data can consist of any characters
Date
OPTIONAL
The date the payer placed the order.
Data must comply with ISO 8601 extended date format, yyyy-mm-dd.
ASCII Text
OPTIONAL
The payer's own reference for the order.
This reference may assist the payer to identify the order in their system. For example, a purchase order number, project identifier, or cost center.
Data consists of ASCII characters
String
OPTIONAL
Short textual description of the contents of the order.
Data can consist of any characters
OPTIONAL
Information about a price reduction you have applied to the order.
For example, you may apply discounts for trade, employees, bulk purchase, or a sales promotion.
Decimal
OPTIONAL
The total amount of the discount you have applied to the order.
Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.
String
OPTIONAL
The code you use to identify the reason for the discount.
Data can consist of any characters
String
OPTIONAL
A description of your reason for the discount.
Data can consist of any characters
Decimal
OPTIONAL
The duty amount (also known as customs tax, tariff or dues) for the order.
Data is a decimal number.
String
OPTIONAL
The invoice number you issued for this order.
Data can consist of any characters
String
OPTIONAL
Your tax registration identifier provided by the Local/State/Province tax authority.
If you are a Canadian merchant, use this field to provide your Tax Registration ID for paying Provincial Sales Tax (PST).
Data can consist of any characters
OPTIONAL
Use this parameter group to provide additional information if you are a marketplace.You are considered a marketplace if you operate an electronic commerce website or mobile application that brings together payers and retailers and you are selling the goods or services on behalf of the retailer.In this case, the card schemes may require you to register with them as a marketplace and assign you a Marketplace ID.
You should provide this identifier to your payment service provider so that the gateway can automatically include it in all transaction messages to your acquirer.
Enumeration
OPTIONAL
Provide information about the location of the retailers for goods or services included in this order.Where a retailer is located in a country different from your country, they are considered a foreign retailer, otherwise they are considered a domestic retailer.
Value must be a member of the following list. The values are case sensitive.
DOMESTIC_ONLY
The order only contains items from domestic retailers.
FOREIGN_AND_DOMESTIC
The order contains items from both foreign and domestic retailers.
FOREIGN_ONLY
The order only contains items from foreign retailers.
OPTIONAL
Information about additional fees that you are charging the payer for processing the payment for this order, for example, a surcharge.
Decimal
OPTIONAL
The amount of the additional fee that you are charging the payer.
If you provide a charge amount, you must include it in the total amount for the order.
Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.
Enumeration
REQUIRED
The type of the additional fee that you are charging the payer.
Value must be a member of the following list. The values are case sensitive.
SURCHARGE
A fee that covers your cost of accepting accepting a payment method.
Decimal
OPTIONAL
The amount payable for the order before merchant charge amount is applied.
If you specify a net amount the gateway will calculate the merchant charge amount for you based on the charge type (order.merchantCharge.type) provided in the request. Alternatively, you can specify the merchant charge amount (order.merchantCharge.amount) yourself.
Either Amount or netAmount must be provided
Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.
String
OPTIONAL
Your identifier for the part of your organization that is responsible for the order.
You might provide this data when you want to track the accountability for the order. For example, store number, sales region, branch, or profit center
Data can consist of any characters
Enumeration
OPTIONAL
Indicates the purchase of specific types of goods or services.
You must provide a value if your Merchant Category Code (MCC) is one of the following:
6051 (Quasi Cash – Merchant or Non-Financial Institutions – Foreign Currency, Non-Fiat Currency) and this transaction is for the purchase of cryptocurrency. Set the value to CRYPTOCURRENCY.
6211 (Securities – Brokers/Dealers) and this transaction is for the purchase of high-risk securities. Set the value to HIGH_RISK_SECURITIES.
6012 (Merchandise and Services—Customer Financial Institutions) or 6051 (Non-Financial Institutions – Foreign Currency, Non-Fiat Currency) and this transaction is for debt repayment. Set the value to DEBT_REPAYMENT.
If the transaction pulls money from an account for the purpose of crediting another account you must set purchase type to ACCOUNT_FUNDING.
You may set purchase type to OTHER for any other type of payment.
Value must be a member of the following list. The values are case sensitive.
ACCOUNT_FUNDING
The transaction pulls money from an account for the purpose of crediting another account. You may be required to provide additional details about the account funding transaction in the accountFunding parameter group.
CRYPTOCURRENCY
The transaction is for the purchase of a cryptocurrency.
DEBT_REPAYMENT
You may be required to provide additional details about the debt repayment in the debtRepayment parameter group.
HIGH_RISK_SECURITIES
The transaction is for the purchase of high-risk securities.
OTHER
Use this value if the purchase type for the transaction does not fit in any of the other categories.
String
OPTIONAL
The name of the person who requested the goods or services.
Data can consist of any characters
Decimal
OPTIONAL
The total shipping and handling amount for the order, including taxes on the shipping and/or handling.
Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.
Decimal
OPTIONAL
The tax amount levied on the shipping and handling amount for the order.
This amount is included in the shipping and handling amount provided in field order.shippingAndHandlingAmount.
Data is a decimal number.
Decimal
OPTIONAL
The tax rate applied to the shipping and handling amount for the order to determine the shipping and handling tax amount.
For a tax rate of 2.5% provide 0.025.
Data is a decimal number.
OPTIONAL
Contact information provided by you for printing on payer's account statements.
OPTIONAL
Descriptor address of the merchant.
String
OPTIONAL
The city portion of the address.
Data can consist of any characters
String
OPTIONAL
The name of the company associated with this address.
Data can consist of any characters
Upper case alphabetic text
OPTIONAL
The 3 letter ISO standard alpha country code of the address.
Data must consist of the characters A-Z
Alphanumeric + additional characters
OPTIONAL
The post code or zip code of the address.
Data may consist of the characters 0-9, a-z, A-Z, ' ', '-'
String
OPTIONAL
The state or province of the address.
Data can consist of any characters
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
String
OPTIONAL
The second line of the address (if provided).
Data can consist of any characters
String
OPTIONAL
Descriptor name of the merchant.
Data can consist of any characters
String
OPTIONAL
Descriptor phone number of the merchant's business.
Data can consist of any characters
OPTIONAL
Information about orders for items not yet available (pre-order) or for items previously purchased (reorder).
Boolean
OPTIONAL
Indicates that the purchase includes merchandise with a future availability or release date.
JSON boolean values 'true' or 'false'.
Date
OPTIONAL
The date that preordered items are expected to be available.
Provide this field if the payer is ordering items before you have them available for purchase.
Data must comply with ISO 8601 extended date format, yyyy-mm-dd
Boolean
OPTIONAL
Indicates that the purchase includes merchandise that the payer has previously ordered.
JSON boolean values 'true' or 'false'.
OPTIONAL
Use this parameter group to provide a breakdown of tax types, amount per tax type, and rate per tax type included in order.taxAmount.
Decimal
OPTIONAL
The tax amount included in this order for the tax type.
Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.
Decimal
OPTIONAL
The tax rate (percentage) used to determine the tax amount included in this order for the tax type.
Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.
String
OPTIONAL
The type of tax included in the order amount.
The correct value as used by your acquirer may have to be provided. Contact your payment service provider for details.
Data can consist of any characters
Decimal
OPTIONAL
The total tax amount for the order.
If you do not provide this value but provide line item data, then this amount is calculated as the sum of the item.quantity times the item.unitTaxAmount for all the line items (total tax amount).
If you provide both this value and line item data, then the order.taxAmount MUST equal the total tax amount.
Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.
String
OPTIONAL
Your tax registration identifier provided by the Federal/National tax authority (for example, federal tax identification number, ABN).
If you are a Canadian merchant, use this field to provide your Tax Registration ID for paying Harmonized Sales Tax (HST) or Goods and Services Tax (GST) collected by the Canada Revenue Agency.
Data can consist of any characters
Enumeration
OPTIONAL
Indicates your tax status for this order.
Value must be a member of the following list. The values are case sensitive.
EXEMPT
Indicates that you are exempt from tax.
NOT_EXEMPT
Indicates that you are not exempt from tax.
NOT_PROVIDED
Indicates that you are not providing information about being exempt from tax.
OPTIONAL
Information relevant for Transaction Filtering.
OPTIONAL
Allows you to provide the Address Verification Service (AVS) Response Code Transaction Filtering rules to be applied to the transactions for this order.
If provided, these rules override the AVS Response Code Transaction Filtering rules you have configured in Merchant Administration.
Enumeration
REQUIRED
The action to be performed for the Address Verification Service (AVS) Response Code.
Value must be a member of the following list. The values are case sensitive.
NO_ACTION
No action should be taken by the gateway.
REJECT
The gateway must reject the transaction.
REVIEW
The gateway must mark this transaction as requiring a review.
Enumeration
REQUIRED
The Address Verification Service (AVS) Response Code for which you are defining the rule.
Value must be a member of the following list. The values are case sensitive.
ADDRESS_MATCH
Street address matched
ADDRESS_ZIP_MATCH
Street address and zip/postcode were matched
NAME_ADDRESS_MATCH
Card holder name and street address matched
NAME_MATCH
Card holder name matched
NAME_ZIP_MATCH
Card holder name and zip/postcode matched
NOT_AVAILABLE
No data available from issuer or AVS data not supported for transaction
NOT_REQUESTED
AVS not requested
NOT_VERIFIED
AVS could not be verified for an international transaction
NO_MATCH
No match
SERVICE_NOT_AVAILABLE_RETRY
Issuer system is unavailable. Retry can be attempted
SERVICE_NOT_SUPPORTED
Service currently not supported by acquirer or merchant
ZIP_MATCH
Zip/postcode matched. Street address not matched
OPTIONAL
Information about payments that transfer money to another store of value, such as a gift card or gaming chips.
Enumeration
OPTIONAL
The type of value store to which money is being transferred.
The default value is NOT_A_TRANSFER.
Value must be a member of the following list. The values are case sensitive.
ACCOUNT_FUNDING
Payment to add funds to the payer's account with the merchant. These funds can be used for future purchases.
NOT_A_TRANSFER
This payment is not for the purpose of transferring money to another store of value. It is a payment for goods or services.
PREPAID_LOAD
Payment to add funds to a prepaid card or gift card.
QUASI_CASH_TRANSACTION
Payment for items that are directly convertible to cash. For example, money orders, casino gaming chips, or traveller's checks.
Decimal
OPTIONAL
The amount of money being transferred, in units of order.valueTransfer.currency.
The default value is order.amount
Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.
Upper case alphabetic text
OPTIONAL
The currency of the store.
If the money is being transferred to multiple currencies, then use the currency of the highest transferred value.
The default value is order.currency.
Data must consist of the characters A-Z
Integer
OPTIONAL
The number of prepaid or gift card being purchased.
The default value is one when you set order.valueTransfer.accountType = PREPAID_LOAD. For all other values of order.valueTransfer.accountType the default is zero.
JSON number data type, restricted to being positive or zero. In addition, the represented number may have no fractional part.
String
OPTIONAL
The wallet indicator as returned by the wallet provider.
Data can consist of any characters
Enumeration
OPTIONAL
The wallet provider used to collect the customer's payment details used for this transaction.
Value must be a member of the following list. The values are case sensitive.
AMEX_EXPRESS_CHECKOUT
Amex Express Checkout wallet provider.
APPLE_PAY
Apple Pay mobile wallet provider.
CHASE_PAY
Chase Pay wallet provider.
GOOGLE_PAY
Google Pay mobile wallet provider.
MASTERPASS_ONLINE
MasterPass Online wallet provider.
SAMSUNG_PAY
Samsung Pay mobile wallet provider.
SECURE_REMOTE_COMMERCE
Secure Remote Commerce (SRC) wallet provider.
VISA_CHECKOUT
Visa Checkout wallet provider.
ASCII Text
OPTIONAL
Identifier of the payment session containing values for any of the request fields to be used in this operation.
Values provided in the request will override values contained in the session.
Data consists of ASCII characters
ASCII Text
OPTIONAL
Use this field to implement optimistic locking of the session content.
Do this if you make business decisions based on data from the session and wish to ensure that the same data is being used for the request operation.
To use optimistic locking, record session.version when you make your decisions, and then pass that value in session.version when you submit your request operation to the gateway.
If session.version provided by you does not match that stored against the session, the gateway will reject the operation with error.cause=INVALID_REQUEST.
See Making Business Decisions Based on Session Content.
Data consists of ASCII characters
OPTIONAL
Shipping information for this order.
OPTIONAL
The address to which this order will be shipped.
String
OPTIONAL
The city portion of the address.
Data can consist of any characters
String
OPTIONAL
The name of the company associated with this address.
Data can consist of any characters
Upper case alphabetic text
OPTIONAL
The 3 letter ISO standard alpha country code of the address.
Data must consist of the characters A-Z
Alphanumeric + additional characters
OPTIONAL
The post code or zip code of the address.
Data may consist of the characters 0-9, a-z, A-Z, ' ', '-'
Enumeration
OPTIONAL
Indicates whether the shipping address provided is the same as the payer's billing address.
Provide this value if you are not providing the full shipping and billing addresses, but you can affirm that they are the same or different.
The default value for this field is:
SAME - if the shipping and billing address are supplied, and all fields are the same (ignoring non-alphanumerics).
DIFFERENT - if the shipping and billing address are supplied, and at least one field is different (ignoring non-alphanumerics).
UNKNOWN - either shipping address or billing address is absent.
Value must be a member of the following list. The values are case sensitive.
DIFFERENT
The shipping and billing addresses are different.
SAME
The shipping and billing addresses are the same.
UNKNOWN
It is not known if the shipping and billing addresses are the same.
Enumeration
OPTIONAL
How you obtained the shipping address.
Value must be a member of the following list. The values are case sensitive.
ADDRESS_ON_FILE
Order shipped to an address that you have on file.
NEW_ADDRESS
Order shipped to an address provided by the payer for this transaction.
String
OPTIONAL
The state or province of the address.
Data can consist of any characters
String
OPTIONAL
The three character ISO 3166-2 country subdivision code for the state or province of the address.
Providing this field might improve your payer experience for 3-D Secure payer authentication.
Data can consist of any characters
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
String
OPTIONAL
The second line of the address (if provided).
Data can consist of any characters
OPTIONAL
Details of the contact person at the address the goods will be shipped to.
Email
OPTIONAL
The contact person's email address.
The field format restriction ensures that the email address is longer than 3 characters and adheres to a generous subset of valid RFC 2822 email addresses.
Ensures that the email address is longer than 3 characters and adheres to a generous subset of valid RFC 2822 email addresses
String
OPTIONAL
The first name of the person to whom the order is being shipped.
Data can consist of any characters
String
OPTIONAL
The last name or surname of the person to whom the order is being shipped.
Data can consist of any characters
Telephone Number
OPTIONAL
The contact person's mobile phone or cell phone number in ITU-T E123 format, for example +1 607 1234 5678
The number consists of:
- '+'
- country code (1, 2 or 3 digits)
- 'space'
- national number ( which may embed single spaces characters for readability).
Data consists of '+', country code (1, 2 or 3 digits), 'space', and national number (which may embed single space characters for readability)
Telephone Number
OPTIONAL
The contact person's phone number in ITU-T E123 format, for example +1 607 1234 456
The number consists of:
- '+'
- country code (1, 2 or 3 digits)
- 'space'
- national number ( which may embed single spaces characters for readability).
Data consists of '+', country code (1, 2 or 3 digits), 'space', and national number (which may embed single space characters for readability)
Enumeration
OPTIONAL
Indicates whether the supplied name for the recipient of shipping matches the cardholder name.
Provide this value if you are not providing the full name or cardholder name, but you can affirm that they are the same or different.
Default value is UNKNOWN
Value must be a member of the following list. The values are case sensitive.
DIFFERENT
The shipping and billing addresses are different.
SAME
The shipping and billing addresses are the same.
UNKNOWN
It is not known if the shipping and billing addresses are the same.
Enumeration
OPTIONAL
The shipping method used for delivery of this order.
Value must be a member of the following list. The values are case sensitive.
ELECTRONIC
Electronic delivery.
GROUND
Ground (4 or more days).
NOT_SHIPPED
Order for goods that are not shipped (for example, travel and event tickets)
OVERNIGHT
Overnight (next day).
PICKUP
Shipped to a local store for pick up.
PRIORITY
Priority (2-3 days).
SAME_DAY
Same day.
Alphanumeric + additional characters
OPTIONAL
The post code or zip code of the address the order is shipped from.
Data may consist of the characters 0-9, a-z, A-Z, ' ', '-'
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.
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.
OPTIONAL
Details about the card.
Use this parameter group when you have sourced payment details using:
Cards: the card details entered directly or collected using a Point of Sale (POS) terminal.
Device payment methods such as Apple Pay, Android Pay, Samsung Pay or Google Pay.
Digital wallets such as Masterpass, Visa Checkout or Amex Express Checkout.
Card scheme tokens where the card was tokenized using a card scheme tokenization service such as Mastercard Digital Enablement Service (MDES).
OPTIONAL
If the payer chose to pay using a device you must provide payment details in this parameter group.
Use this parameter group when accepting payments using device payment methods such as Apple Pay, Android Pay or Samsung Pay.
OPTIONAL
Details used to process a digital payment where the payment data keys for the online payment cryptogram are provided using the 3-D Secure format.
Use this parameter group for:
- • Device payments: if you decrypt the payment token yourself. In this case, you source these fields directly from the decrypted payment token.
You do not need to use this parameter group if you provide the payment token in sourceOfFunds.provided.card.devicePayment.paymentToken. - • Card scheme tokens: if you decrypt the transaction credentials yourself.
Digits
OPTIONAL
The Electronic Commerce Indicator generated for payments made using a device payment method.
You source this field directly from the decrypted payment token.
This field is not applicable for payments using digital wallets or card scheme tokens.
Data is a string that consists of the characters 0-9.
Base64
OPTIONAL
A cryptogram used to authenticate the transaction.Use this field for:
- • Device payments: source this field directly from the decrypted payment token.
- • Card scheme tokens: source this field directly from the decrypted transaction credentials.
Data is Base64 encoded
Enumeration
OPTIONAL
The format of the cryptogram provided for the digital payment.Use this field for:
- • Device payments: provide the cryptogram format when you decrypt the payment token and provide the payment details (including the online payment cryptogram) in the transaction request.
This field does not apply to Card Scheme token payments.
Value must be a member of the following list. The values are case sensitive.
3DSECURE
The payment data keys for the online payment cryptogram are provided using the 3-D Secure format.
EMV
The payment data keys for the online payment cryptogram are provided using the EMV format.
String
OPTIONAL
This is the payment token that you received from the device's payment SDK.
For example:
For Apple Pay - this is the PKPaymentToken.paymentData value.
For Google - this is PaymentMethodToken.getToken().
Note 1: The gateway API considers this value to be a string, NOT JSON itself. Therefore when using the JSON gateway API, this field will typically look like:
"sourceOfFunds": {
"provided": {
"card": {
"devicePayment": {
"paymentToken": "{\"data\":\"869ss19ew ....
Note 2: The gateway will ignore the currency and amount information in the payment token, and will instead use the values passed on the amount and currency fields. For normal usage, you should populate those fields with the exact same values as you got from the SDK.
Data can consist of any characters
OPTIONAL
Expiry date, as shown on the card.
Digits
REQUIRED
Month, as shown on the card.
If using a scheme token this is the token expiry month.
Months are numbered January=1, through to December=12.
Data is a number between 1 and 12 represented as a string.
Digits
REQUIRED
Year, as shown on the card.
If using a scheme token this is the token expiry year.
The Common Era year is 2000 plus this value.
Data is a string that consists of the characters 0-9.
String
OPTIONAL
The cardholder's name as printed on the card.
Data can consist of any characters
Digits
OPTIONAL
Credit card number as printed on the card.
Data is a string that consists of the characters 0-9.
Digits
OPTIONAL
Card verification code, as printed on the back or front of the card or as provided for a card scheme token.
Data is a string that consists of the characters 0-9.
Alphanumeric
OPTIONAL
Gateway token that uniquely identifies a card and associated details.
Data may consist of the characters 0-9, a-z, A-Z
Response Copied to clipboard
Fields Copied to clipboard
CONDITIONAL
Additional details for account funding transactions (order.purchaseType=ACCOUNT_FUNDING).
Account funding transactions are transactions that pull money from the sender's card account for the purpose of funding another account, the recipient's account. Depending on the type of account funding transaction you may be required to provide some or all the details in this parameter group.
Enumeration
CONDITIONAL
Defines the purpose of the account funding payment.If not provided the value is defaulted to OTHER.
Value must be a member of the following list. The values are case sensitive.
CRYPTOCURRENCY_PURCHASE
The funds from this account funding transaction will exclusively be used to purchase cryptocurrency.
MERCHANT_SETTLEMENT
The funds from this account funding transaction will be used to settle the proceeds of processing card transactions.
OTHER
The funds from this account funding transaction will be used for any other purpose, e.g. transferring funds from a person to a person or transferring funds into a staged wallet. This is the default value.
PAYROLL
The funds from this account funding transaction will be used to pay salaries.
CONDITIONAL
Details about the recipient who will subsequently receive the funds that you are debiting from the sender in this transaction.
CONDITIONAL
Details about the account of recipient who will subsequently receive the funds that you are debiting from the sender in this transaction.
Enumeration
CONDITIONAL
If the recipient account type is an account with an associated card (accountFunding.recipient.account.identifierType=CARD_NUMBER) you must specify the funding method of the card.
If not provided the value is defaulted to UNKNOWN.
Value must be a member of the following list. The values are case sensitive.
CHARGE
The payer has a line of credit with the issuer which must be paid off monthly.
CREDIT
The payer has a revolving line of credit with the issuer.
DEBIT
Funds are immediately debited from the payer's account with the issuer.
UNKNOWN
The account funding method is not known. This is the default value.
String
CONDITIONAL
The account identifier for the payment recipient's account.
For example, this may be a card number or bank account number. You must specify the type of identifier in field accountFunding.recipient.account.identifierType. In the response, the value will be masked. The masking format depends on the type of account identifier.
Data can consist of any characters
Enumeration
CONDITIONAL
Defines the type of the recipient's account identifier that you have provided in field accountFunding.recipient.account.identifier.
If not provided the value is defaulted to OTHER.
Value must be a member of the following list. The values are case sensitive.
BANK_ACCOUNT_BIC
The recipient's account identifier is a bank account number and Business Identifier Code (BIC).
BANK_ACCOUNT_IBAN
The recipient's account identifier is an International Bank Account Number (IBAN).
BANK_ACCOUNT_NATIONAL
The recipient's account identifier is a bank account number and a national bank identifier, for example, a routing number (RTN).
CARD_NUMBER
The recipient's account identifier is a card number.
EMAIL_ADDRESS
The recipient's account identifier is an email address.
OTHER
The recipient's account identifier type can not be classified using any of the other categories. This is the default value
PHONE_NUMBER
The recipient's account identifier is a phone number.
SOCIAL_NETWORK_PROFILE_ID
The recipient's account identifier is a social network profile ID.
STAGED_WALLET_USER_ID
The recipient's account identifier is a wallet user ID.
Upper case alphabetic text
CONDITIONAL
The 3 letter ISO standard alpha country code of the recipient.
Data must consist of the characters A-Z
Date
CONDITIONAL
The date of birth of the recipient in yyyy-mm-dd format.
Data must comply with ISO 8601 extended date format, yyyy-mm-dd
String
CONDITIONAL
First name of the recipient.
Data can consist of any characters
String
CONDITIONAL
Last name of the recipient.
Data can consist of any characters
String
CONDITIONAL
Middle name of the recipient.
Data can consist of any characters
String
CONDITIONAL
The post code or zip code of the recipient.
Data can consist of any characters
String
CONDITIONAL
The state or province code of the recipient.
The value must match the second part of the ISO 3166-2 code. For an address in the United States provide the 2-letter ISO 3166-2 state code. For US military bases provide one of AE, AA, AP. For an address in Canada provide the 2-letter ISO 3166-2 province code.
Data can consist of any characters
Boolean
CONDITIONAL
Defines if the sender and recipient of the account funding payment are the same or not.
If not provided the value is defaulted to FALSE.
JSON boolean values 'true' or 'false'.
Enumeration
CONDITIONAL
Defines if the sender is a person, a commercial organization, a non-profit organization or a government
Value must be a member of the following list. The values are case sensitive.
COMMERCIAL_ORGANIZATION
The sender is a commercial organization. Examples include account to account transfers initiated by a commercial organization for the purpose of transferring funds to one of their accounts, business to business payments, and disbursements for insurance claims, payroll, investment dividends, merchant rebates.
GOVERNMENT
The sender is a government or government agency. Examples include government agencies paying salaries, pensions, social benefits or tax credits.
NON_PROFIT_ORGANIZATION
The sender is a non-profit organization. Examples include non-profit organizations delivering emergency aid payments.
PERSON
The sender is a person. Examples include account to account transfers initiated by a person to their own account or a different person's account and adding funds to a staged wallet.
CONDITIONAL
A series of related orders that execute one commercial agreement.
For example, linking the orders for a series of recurring payments (a mobile phone subscription), split tenders (one payment using two cards), or when the merchant offers to take payments by a series of installments (hire purchase).
Enumeration
CONDITIONAL
Indicates if all the payments within the agreement use the same amount or if the amount differs between the payments.
The field must be provided for recurring payment agreements.
Value must be a member of the following list. The values are case sensitive.
FIXED
All payments in the recurring payment agreement have the same amount. Examples include magazine subscriptions or gym memberships.
VARIABLE
The amount for the payments within the recurring payment agreement differs between payments. Examples include usage-based charges like utility or phone bills.
Date
CONDITIONAL
Date at which your agreement with the payer to process payments expires.
Data must comply with ISO 8601 extended date format, yyyy-mm-dd
String
CONDITIONAL
Your identifier for the agreement you have with the payer to process payments.
When you collect cards from your payers and store them for later use, you must provide an agreement ID when you use the stored values for:
- Recurring payments: you have an agreement with the payer that authorizes you to automatically debit their account at agreed intervals for fixed or variable amounts. For example, gym membership, phone bills, or magazine subscriptions.
- Installment payments: you have an agreement with the payer that authorizes you to process multiple payments over an agreed period of time for a single purchase. For example, the payer purchases an item for $1000 and pays for it in four monthly installments.
- Unscheduled: you have an agreement with the payer that authorizes you to process future payments when required. For example, the payer authorizes you to process an account top-up transaction for a transit card when the account balance drops below a certain threshold.
- Industry Practice: you have an agreement with the payer that authorizes you to initiate additional transactions to fulfil a standard business practice related to an original payment initiated by the payer. For example, a delayed charge for use of the hotel mini bar after the payer has checked out or a no show penalty charge when the payer fails to show for a booking.
Data can consist of any characters
Decimal
CONDITIONAL
The maximum amount for a single payment in the series as agreed with the payer under your agreement with them.
The amount must be provided in the currency of the order.
Data is a decimal number.
Integer
CONDITIONAL
The minimum number of days between payments agreed with the payer under your agreement with them.
JSON number data type, restricted to being positive or zero. In addition, the represented number may have no fractional part.
Integer
CONDITIONAL
The number of merchant-initiated payments within the recurring payment agreement.
JSON number data type, restricted to being positive or zero. In addition, the represented number may have no fractional part.
Enumeration
CONDITIONAL
The frequency of the payments within the series as agreed with the payer under your agreement with them.
Value must be a member of the following list. The values are case sensitive.
AD_HOC
The agreement if for payments on an ah-hoc basis.
DAILY
The agreement if for a daily payment.
FORTNIGHTLY
The agreement if for a fortnightly payment.
MONTHLY
The agreement if for a monthly payment.
OTHER
The agreement is for payments according to a schedule other than the ones listed in the other enumeration values for this field.
QUARTERLY
The agreement if for a quarterly payment.
TWICE_YEARLY
The agreement if for a payment twice a year.
WEEKLY
The agreement if for a weekly payment.
YEARLY
The agreement if for a yearly payment.
CONDITIONAL
For an installment agreement where the payer purchased goods and/or services from a retailer but entered an installment agreement to pay for this purchase with you, you must provide details about the retailer.
String
CONDITIONAL
Provide an abbreviation of the retailer's trading name that can be used by the issuer to indicate the retailer on the payer's statement.
Data can consist of any characters
String
CONDITIONAL
A 4-digit code used to classify the retailer's business by the type of goods or services it offers.
Data can consist of any characters
String
CONDITIONAL
The retailer's trading name.
Data can consist of any characters
Enumeration
CONDITIONAL
The type of commercial agreement that the payer has with you.
Specify the agreement type when you have provided a value for agreement.id and this payment is the first in a series of payments. The default value is OTHER.
The gateway will use the value you specify for subsequent payments in the series.
Value must be a member of the following list. The values are case sensitive.
INDUSTRY_PRACTICE
An agreement where the payer authorizes you to initiate additional transactions to fulfil a standard business practice related to an original payment initiated by the payer. These additional payments are triggered by an event not known at the time of the payer's initial agreement. For example, a delayed charge for use of the hotel mini bar after the payer has checked out or a no show charge when the payer fails to show for a booking.
INSTALLMENT
An agreement where the payer authori