Refund
Request to refund previously captured funds to the payer. Typically, a Refund is linked to the Capture or Pay through the orderId - you provide the original orderId, a new transactionId, and the amount you wish to refund. You may provide other fields if you want to update their values; however, you must NOT provide sourceOfFunds.
In rare situations, you may want to refund the payer without associating the credit to a previous transaction (see Standalone Refund). In this case, you need to provide the sourceOfFunds and a new orderId.
Authentication
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
URL Parameters
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
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 user ID for a staged digital wallet. For a staged wallet, when the payer makes a payment using the wallet, the funds are pulled from an account associated with the wallet (first stage) before they are credited to the recipient of the wallet payment (second stage).
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
Actions that you want the gateway to perform.
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.
String
OPTIONAL
Additional information requested for the agreement which cannot be passed using other available data fields.
This field must not contain sensitive data.
Data can consist of any characters, but sensitive data will be rejected
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.
Decimal
OPTIONAL
The minimum 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
Date
OPTIONAL
This is the effective start date for the payment agreement.
Cannot be in the past.
Data must comply with ISO 8601 extended date format, yyyy-mm-dd
String
= REFUND
FIXED
Any sequence of zero or more unicode characters.
OPTIONAL
Information on the billing address including the contact details of the payer.
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
Cruise industry data.
OPTIONAL
A departurePort is the port where the passenger(s) boarded the cruise ship when the cruise trip started
OPTIONAL
Address of the cruise line.
String
OPTIONAL
The city portion of the 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 code of the address.
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
String
OPTIONAL
The first line of the address.
Data can consist of any characters
String
OPTIONAL
The second line of the address (if provided).
Data can consist of any characters
OPTIONAL
Information about the customer, including their contact details.
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)
Data can consist of any characters
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 person who initiated this transaction.
This field is automatically populated by the gateway if the transaction was created via Merchant Administration (gatewayEntryPoint=MERCHANT_ADMINISTRATION) or Merchant Manager (MERCHANT_MANAGER). In this case this is the name that the person used to log in to Merchant Administration or Merchant Manager respectively.
Data can consist of any characters
String
OPTIONAL
Your payment service provider might have configured your merchant profile to support several lines of business.
Each line of business can have different payment parameters, such as bank account, supported cards or such.
For example, lineOfBusiness = TICKET_SALES can have a different bank account from lineOfBusiness = MERCHANDISING. One line of business on your profile might be "null". To use that, do not provide the lineOfBusiness field.
Data can consist of any characters except space
String
OPTIONAL
If, when integrating with the gateway, you are using a solution (e.g. a shopping cart or e-commerce solution) provided, supported or certified by your payment service provider, enter the solution ID issued by your payment service provider here.
If your payment service provider has not provided you with a solution ID, you should ignore this field.
Data can consist of any characters
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
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
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.
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
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, ' ', '-'
REQUIRED
Information about this transaction.
OPTIONAL
Additional information to be passed to acquirer.
String
OPTIONAL
Additional information requested by the acquirer which cannot be passed using other available data fields.
This field must not contain sensitive data.
Data can consist of any characters, but sensitive data will be rejected
String
OPTIONAL
The unique identifier that allows the issuer to link related transactions.
Typically the gateway takes care of submitting this identifier to the issuer on your behalf. However, you must submit this identifier if you have processed the payer-initiated transaction (also called CIT) for the payment agreement outside the gateway or you are submitting a Refund where the Authorization or Payment has been performed outside the gateway.
For a Mastercard transaction this identifier must contain the scheme issued transaction identifier, network code and network date, and is also known as the Trace ID. For a Visa or American Express transaction this identifier matches the scheme issued transaction identifier, also known as Transaction Identifier or TID. Refer to the scheme's documentation for more details.
Payment in a Series
You must provide the information returned in the Authorization/Payment/Verification response for the last payer-initiated transaction in the series (CIT).
Refund
You must provide the information returned in the Authorization/Payment response for the payment for which you are issuing a refund.
Resubmission
For resubmission transactions, the gateway will include the scheme transaction identifier from the failed transaction.
However, you may use this field to directly provide the scheme transaction identifier to be used on the resubmission in certain scenarios:
- Original failed transaction was processed outside the gateway.
- Multiple failed authorizations exist on the order and the resubmission needs to refer to a failed transaction which is not the latest.
Data can consist of any characters, but sensitive data will be rejected
String
OPTIONAL
This is the value provided to the acquirer to identify the order.
Ideally this will be the order.id, however if that value cannot be used directly, it will be transformed by the gateway to a unique value that the acquirer will accept. If that behavior is not suitable, you can directly provide the value in this field and it will be passed to the acquirer. You then take responsibility for its correctness. (Note: Contact your payment provider to see if this is supported for your acquirer).
Data can consist of any characters, but sensitive data will be rejected
Decimal
REQUIRED
Transaction Amount.
Expressed as a decimal number in the units of the currency. For example 12.34 in USD is the amount 12 dollars and 34 cents.
Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.
Upper case alphabetic text
REQUIRED
The currency of the transaction expressed as an ISO 4217 alpha code, e.g. USD.
Data must consist of the characters A-Z
Decimal
OPTIONAL
The total amount deducted from the transaction amount that would normally apply.
Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.
Decimal
OPTIONAL
The duty amount (also known as customs tax, tariff or dues) for the transaction.
Data is a decimal number.
OPTIONAL
Information about the items the payer purchases with the order.
String
OPTIONAL
The brand of the item.
For example, Dell.
Data can consist of any characters
String
OPTIONAL
Your category for the item.
Data can consist of any characters
String
OPTIONAL
Description for the item with information such as size, color, etc.
For example, 'Color:Red, Size:M'
Data can consist of any characters
OPTIONAL
Only use this parameter group to provide additional line item details required for a better interchange rate for Purchasing Cards, Business and/or Corporate Cards (Level 3).
Check with your payment service provider if Level 3 data is supported for your acquirer.
JSON Text
OPTIONAL
Use this field to provide line item details that your acquirer requires you to provide.
Data must be provided in JSON format using the record name and field name (separated by a comma) to identify the value provided. Contact your payment service provider for details about the supported fields including the field definitions.
Data is valid Json Format
Digits
OPTIONAL
A code describing a commodity or a group of commodities pertaining to goods classification.
Data is a number between 1 and 9999999999999999 represented as a string.
OPTIONAL
Information about the taxes per line item.
Decimal
OPTIONAL
The tax amount for the tax type defined in order.item[n].detail.tax[m].type for the item.
Note that the tax amount provided must reflect the tax amount applied before a discount was applied.
Data is a string that consists of the characters 0-9, '.' and '-' and represents a valid decimal number.
Decimal
OPTIONAL
The tax rate (percentage) applied to the item for the tax type defined in order.item[n].detail.tax[m].type.
Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.
String
OPTIONAL
The tax type for which the amount specified under order.item[n].detail.tax[m].amount has been paid for this item.
The correct value as used by your acquirer may have to be provided. Contact your payment service provider for details.
Data can consist of any characters
Decimal
OPTIONAL
The discount rate (percentage) applied to this item.
Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.
Decimal
OPTIONAL
The tax rate (percentage) of the tax charged for this item.
Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.
String
OPTIONAL
The type of tax charged for this item.
The correct value as used by your acquirer may have to be provided. Contact your payment service provider for details.
Data can consist of any characters
Digits
OPTIONAL
The United Nations Standard Products and Services Code (UNSPSC) for the item.
Data is a number between 1 and 9999999999999999 represented as a string.
Digits
OPTIONAL
The Universal Product Code (UPC) for the item.
Data is a number between 1 and 9999999999999999 represented as a string.
Enumeration
OPTIONAL
Provide the industry category to send this line item to your acquirer for specialized processing as industry data.
Such processing might have legal obligations, which are your responsibility. Do not provide an industry category, unless you are certain it applies to you, and is accepted by your acquirer.
We support the following industry standard processing:US health care processing using the IIAS standard.The supported values for this field are:HEALTHCARE_VISION, HEALTHCARE_DENTAL, HEALTHCARE_PRESCRIPTION, HEALTHCARE_OTHERWe formulate an IIAS message by summing the amounts of all the line items with the same industry category. The amount of a line item is computed as:(order.item.unitPrice + order.item.tax) * order.item.quantity
Value must be a member of the following list. The values are case sensitive.
String
REQUIRED
A short name describing the item.
Data can consist of any characters
Decimal
REQUIRED
The quantity of the item.
Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number greater than zero.
String
OPTIONAL
The SKU (Stock Keeping Unit) or the item identifier for this item.
Data can consist of any characters
Decimal
OPTIONAL
The discount amount applied to this item.
Data is a string that consists of the characters 0-9, '.' and '-' and represents a valid decimal number.
String
OPTIONAL
The unit of measure used for the item quantity.
The correct value as used by your acquirer may have to be provided. Contact your payment service provider for details.
Data can consist of any characters
Decimal
REQUIRED
The cost price for the item.
This amount is multiplied with the item quantity (item.quantity) to determine the total amount for this item (item.amount). This amount does not include the tax amount and/or discount amount applicable to this item.
Data is a string that consists of the characters 0-9, '.' and '-' and represents a valid decimal number.
Decimal
OPTIONAL
The tax amount for the item.
This amount is multiplied with the item quantity (item.quantity) to determine the total tax amount for this item.
Data is a string that consists of the characters 0-9, '.' and '-' and represents a valid decimal number.
Decimal
OPTIONAL
The total item amount for this transaction.
Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.
String
OPTIONAL
Your note about this transaction.
Data can consist of any characters
Enumeration
OPTIONAL
Indicates that a transaction requires approval to proceed with the order.
Value must be a member of the following list. The values are case sensitive.
REQUESTED
Requested
String
OPTIONAL
An optional identifier for this transaction.
Data can consist of any characters
Boolean
OPTIONAL
Indicates that this merchant initiated transaction is a resubmission for a previous authorization which failed due to insufficient funds.
A resubmission transaction must also contain the 'scheme transaction Id' from the associated failed transaction. You can provide the referenceOrderId of the relevant order and the gateway will include the 'scheme transaction Id' of the last failed authorization on the order in the resubmission transaction. Alternatively, you can provide the 'scheme transaction Id' of the failed transaction in the resubmission transaction using the field transaction.acquirer.traceId.
JSON boolean values 'true' or 'false'.
Decimal
OPTIONAL
The total shipping and handling amount for the transaction, 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 transaction.
This amount is included in the shipping and handling amount provided in field transaction.shippingAndHandlingAmount.
Data is a decimal number.
Decimal
OPTIONAL
The tax rate applied to the shipping and handling amount for the transaction to determine the shipping and handling tax amount.
For a tax rate of 2.5% provide 0.025.
Data is a decimal number.
Enumeration
OPTIONAL
Indicates the channel through which you received authorization for the payment for this order from the payer.
For example, set this value to INTERNET if the payer initiated the payment online.
If you have an existing agreement with the payer that authorizes you to process this payment (for example, a recurring payment) then set this value to MERCHANT. You only need to provide transaction.source if you want to override the default value configured for your acquirer link.
Note:
- You can only override the default value if you have the requisite permission.
- The value you provide must match one of those configured by your payment service provider.
- You can only set the transaction source on the initial transaction on an order. It cannot be changed on subsequent transactions.
Value must be a member of the following list. The values are case sensitive.
CARD_PRESENT
Transaction where the card is presented to the merchant.
INTERNET
Transaction conducted over the Internet.
MOTO
Transaction received by mail or telephone.
String
OPTIONAL
The identifier for the transaction you wish to refund.
That is the {transactionId} URL field for REST and the transaction.id field for NVP.
If you do not provide a target transaction ID the gateway will try to identify a transaction. If no transaction can be found or more than one transaction is identified, the request is rejected.
Data can consist of any characters
OPTIONAL
Use this parameter group to provide a breakdown of tax types, amount per tax type, and rate per tax type included in transaction.taxAmount.
Decimal
OPTIONAL
The tax amount included in this transaction for the tax type.
Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.
Decimal
OPTIONAL
The tax rate (percentage) used to determine the tax amount included in this transaction for the tax type.
Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.
String
OPTIONAL
The type of tax included in the transaction amount.
The correct value as used by your acquirer may have to be provided. Contact your payment service provider for details.
Data can consist of any characters
Decimal
OPTIONAL
The total tax amount for the transaction.
You only need to provide this field when you capture or refund part of the order amount. In this case, the amount must not exceed order.taxAmount. If you provide this field when you capture or refund the full amount of the order, then the value provided must match order.taxAmount.
Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.
Enumeration
OPTIONAL
Indicates your tax status for this transaction.
Value must be a member of the following list. The values are case sensitive.
EXEMPT
Indicates that you are exempt from tax.
NOT_EXEMPT
Indicates that you are not exempt from tax.
NOT_PROVIDED
Indicates that you are not providing information about being exempt from tax.
Response
Fields
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 user ID for a staged digital wallet. For a staged wallet, when the payer makes a payment using the wallet, the funds are pulled from an account associated with the wallet (first stage) before they are credited to the recipient of the wallet payment (second stage).
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
String
ALWAYS PROVIDED
An reference for this account funding transaction.
This reference is generated by the gateway. You may be required to provide this reference when subsequently crediting the funds to the recipient's account.
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
Actions that you want the gateway to perform.
Boolean
CONDITIONAL
Use this field to indicate that you want the gateway to authorize the Refund with the issuer before submitting it to the acquirer.
Depending on your merchant profile configuration the gateway may or may not already attempt to authorize the Refund with the issuer before submitting it to the acquirer.
JSON boolean values 'true' or 'false'.
CONDITIONAL
Information used to manage interactions with the payment provider if you are offering your payment page in an app or are redirecting the payer to the provider's app.
If you are offering your payment page on a website or are redirecting the payer's browser to the provider's website, use the browserPayment parameter group.
Url
CONDITIONAL
The URL of payment provider's app to which you must redirect the payer to complete the payment.
If you want to redirect the payer to the payment provider's website use browserPayment.redirectUrl. If you want to present the payment provider's checkout flow in a modal window on top of your payment page, use the functions provided in the JavaScript library instead.
Data must be an absolute URI conforming to the URI syntax published by IETF RFC 2396.
Url
CONDITIONAL
The URL of your app to which you want the payer to be redirected on completing the payment interaction at the payment provider's website or in the payment provider's app.
The same return URL will be used by the gateway to redirect the payer irrespective of the success or otherwise of the payment interaction. This field is not required if the payer is to be redirected to your website or if the payment provider's checkout flow is presented on a modal window on top of your payment page.
Data must be an absolute URI conforming to the URI syntax published by IETF RFC 2396.
CONDITIONAL
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.
CONDITIONAL
Information about payer authentication using 3-D Secure authentication.
Parameters in this group apply to both 3-D Secure authentication version 1 and 3-D Secure Authentication version 2.
Depending on the 3-D Secure authentication version applicable you will also need additional parameters:
- 3-D Secure authentication version 1: see the authentication.3ds1 parameter group.
- 3-D Secure authentication version 2: see the authentication.3ds2 parameter group.
Alphanumeric
CONDITIONAL
Indicates the security level of the transaction.
This is the Electronic Commerce Indicator (ECI) value provided by the issuer's Access Control Server (ACS) to indicate the results of the attempt to authenticate the payer.
Data may consist of the characters 0-9, a-z, A-Z
Base64
CONDITIONAL
The base64 encoded value generated by the issuer.
The authentication token 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.
For 3DS version 1, 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.
For 3DS version 2, this field corresponds to the Authentication Value.
Data is Base64 encoded
String
CONDITIONAL
A unique identifier for the 3-D Secure authentication transaction.
For 3DS version 1, this field corresponds to the XID. The XID is an identifier generated by the gateway on behalf of the merchant.
For 3DS version 2, this field corresponds to the identifier assigned by the scheme directory server.
This identifier should be used in subsequent operation requests unaltered.
An XID submitted in this field must be in base64 format.
For Rupay, this field corresponds to the authentication identifier assigned by Rupay for Guest Checkout transaction used for unregistered user transaction only.
Data can consist of any characters
CONDITIONAL
Information about payer authentication using 3-D Secure authentication version 1.
Alpha
CONDITIONAL
Indicates the result of payer authentication with the issuer.
This is the value returned in the transaction status field of the Payer Authentication Response (PARes) message from the card Issuer's Access Control Server (ACS). For example, Y, N, A, or U. Refer to the relevant documentation for Mastercard SecureCode™, Verified by Visa™, JCB J/Secure™, American Express SafeKey™, or Diners Club ProtectBuy™.
Data may consist of the characters a-z, A-Z
Alpha
ALWAYS PROVIDED
Indicates whether or not payer authentication is available for the card number you provided.
This is for experts only - most users should use the response.gatewayRecommendation field.
This is the value returned in the 'enrolled' field of the Verify Enrollment Response (VERes) message from the card scheme's Directory Server. For example, Y, N, or U. Refer to the relevant documentation for Mastercard SecureCode™, Verified by Visa™, JCB J/Secure™, American Express SafeKey™, or Diners Club ProtectBuy™.
Data may consist of the characters a-z, A-Z
CONDITIONAL
Information about payer authentication using 3-D Secure authentication version 2.
String
CONDITIONAL
You can ignore this field unless you want to build your own mobile SDK for EMV 3DS using the gateway's API.
The field contains the unique identifier assigned by the 3DS Server for this authentication. This is referred to in the EMVCo specification for 3-D Secure as threeDSServerTransID.
Data can consist of any characters
String
CONDITIONAL
A unique transaction identifier assigned by the Access Control Server to identify the 3DS transaction.
Data can consist of any characters
String
CONDITIONAL
The EMV 3DS authentication scheme that was used to process the authentication request.You must provide this field for co-branded card transactions that were authenticated outside MPGS using an external 3DS provider.
For example, for externally authenticated Mada co-branded transactions, you must provide either MADA, MASTERCARD or VISA to specify the 3DS directory server.
Data can consist of any characters
JSON Text
CONDITIONAL
Additional information returned by the scheme or issuer in the authentication response that must be included (together with the standard authentication details) when submitting the transaction for processing by the acquirer.
Data is valid Json Format
String
CONDITIONAL
Unique identifier for the Directory Server (also called Registered Application Provider Identifier or RID).
This value is applicable when you authenticate the payer in-app using 3-D Secure authentication version 2.
In this case, provide this value in the directoryServerId field on the createTransaction method request message sent from the app on the payer's device to the 3-D Secure Software Development Kit (SDK).
Data can consist of any characters
String
CONDITIONAL
Reference number assigned to the Directory Server (DS) by EMV Co upon approval of the DS.
This field corresponds to EMVCo field dsReferenceNumber.
Data can consist of any characters
String
CONDITIONAL
A unique transaction identifier assigned by the scheme Directory Server to identify the 3DS transaction.
The DS transaction id should be used in subsequent operation requests unaltered.
Data can consist of any characters
Boolean
ALWAYS PROVIDED
Indicates if the issuer's Access Control Server (ACS) completed the method call to obtain additional information about the payer's browser.
JSON boolean values 'true' or 'false'.
Enumeration
ALWAYS PROVIDED
Indicates if the issuer's Access Control Server (ACS) support the method call.
Value must be a member of the following list. The values are case sensitive.
NOT_SUPPORTED
The ACS does not support the method call protocol.
SUPPORTED
The ACS supports the method call protocol.
Alphanumeric + additional characters
CONDITIONAL
The version of the EMV 3-D Secure protocol used to perform 3-D Secure authentication, in the format specified by EMVCo.
For example, 2.1.0.
Data may consist of the characters 0-9, a-z, A-Z, '.'
String
ALWAYS PROVIDED
The unique identifier assigned to the merchant by the card scheme directory server when the merchant registered to use 3-D Secure authentication version 2 with their acquirer.
Provide this value only for American Express Safekey and mada secure. For other authentication schemes it will be generated by the gateway.
Data can consist of any characters
String
ALWAYS PROVIDED
The unique name assigned to the merchant by the card scheme directory server when the merchant registered to use 3-D Secure authentication version 2 with their acquirer.
Provide this value only for American Express Safekey and mada secure. For other authentication schemes it will be generated by the gateway.
Data can consist of any characters
CONDITIONAL
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.
Url
CONDITIONAL
This value is only returned when you authenticate the payer in-app using 3-D Secure authentication version 2 and a challenge is required (authentication.channel = PAYER_APP and authentication.3ds2.transactionStatus = C).
You must call this URL after the challenge has been completed; for example, when the ACS has confirmed the challenge completion.
This allows the gateway to retrieve the authentication result after the challenge has been completed.
Ensure that this is a valid URL according to RFC 1738.
Enumeration
CONDITIONAL
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.
Integer
CONDITIONAL
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.
Comma separated enumeration
CONDITIONAL
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.
String
CONDITIONAL
A code indicating the reason for the transaction status returned in authentication.3ds2.transactionStatus.
Refer to the EMVCo specification for 3-D Secure.
Data can consist of any characters
Alpha
CONDITIONAL
Indicates the result of payer authentication with the issuer.
This is the value returned in the transaction status field from the issuer's Access Control Server (ACS). For example, Y, N, U, A, R
Refer to the EMVCo specification for 3-D Secure.
Data may consist of the characters a-z, A-Z
String
CONDITIONAL
Reference number assigned to the issuer's Access Control Server (ACS) by EMV Co upon approval of the ACS.
This field corresponds to EMVCo field acsReferenceNumber.
Data can consist of any characters
Comma Separated Enumeration
CONDITIONAL
A comma separated list of the payer authentication methods that you will accept for this payment.
You only need to provide a value if you want to restrict the authentication methods you will accept.
If you do not specify a value, then the gateway treats it as if you will accept all available authentication methods.
If you accept both 3DS2 and 3DS1, then the gateway will use 3-D Secure version 2 if supported by the issuer and fallback to use 3-D Secure version 1 if it is not.
Value must be one or more comma separated members of the following list. The values are case sensitive.
3DS1
3-D Secure Version 1
3DS2
3-D Secure Version 2
Decimal
CONDITIONAL
The amount for which the payer authentication has been performed.
Data is a decimal number.
Enumeration
CONDITIONAL
Indicates the channel in which the authentication request is being initiated.
Value must be a member of the following list. The values are case sensitive.
MERCHANT_REQUESTED
The merchant is requesting authentication of a cardholder without the payer being available for interaction (for example. as part of processing of a recurring payment).
PAYER_APP
Payer is interacting via an application on their device which uses an EMVCo-certified SDK.
PAYER_BROWSER
Payer is interacting via web browser (for example, with the merchant's ecommerce web-site).
Enumeration
CONDITIONAL
The method that the issuer will use to authenticate the payer.
Value must be a member of the following list. The values are case sensitive.
DYNAMIC
The payer is authenticated using dynamic data. For example, a code sent to the payer's phone.
OUT_OF_BAND
The payer is authenticated by the issuer using another method. For example, by using a bank app on the payer's mobile device.
STATIC
The payer is authenticated using static data. For example, by providing responses to security questions for the payer's account.
Enumeration
CONDITIONAL
Indicates if payer interaction was used to complete the authentication process.
Value must be a member of the following list. The values are case sensitive.
NOT_POSSIBLE
Payer interaction was either not possible or not applicable to completing the authentication process. For example, there was a technical problem, or the authentication method is not supported for this payment method.
NOT_REQUIRED
No payer interaction was required to complete the authentication process. The issuer was able to make a decision based on the data provided.
REQUIRED
Payer interaction was required to complete the authentication process. For example, the payer was presented with a challenge to verify their identity.
CONDITIONAL
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
CONDITIONAL
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.
SCA_DELEGATION
The transaction is exempt as the issuer has delegated Strong Customer Authentication (SCA) using a compliant method to a third party. For example, the payer was subject to SCA when a card was enrolled with a wallet provider or SCA was delegated to the merchant.
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).
Enumeration
CONDITIONAL
Indicates if the payer has added you to their list of trusted merchants for this card.
The next time you authenticate the payer for a payment with this card you can request the trusted merchant exemption by setting authentication.psd2.exemption to either AUTO or TRUSTED_MERCHANT.
If the issuer grants the exemption the payer will not be presented with a challenge, for example, they may have to enter a one-time password.
Value must be a member of the following list. The values are case sensitive.
NOT_ON_LIST
The payer has not added you to their list of trusted merchants for this card.
ON_LIST
The payer has added you to their list of trusted merchants for this card.
Enumeration
CONDITIONAL
Indicates the context in which payer authentication is being requested.
If you do not provide a value, the gateway will use PAYMENT_TRANSACTION as the default.
Note:
- • If you set this value to ADD_CARD or MAINTAIN_CARD, then set order.amount to zero and order.currency to any currency you support.
- • If the authentication scheme that applies to the account does not support the purpose that you have requested, this call will return an authenticationStatus of AUTHENTICATION_NOT_SUPPORTED.
- • If you set this to REFRESH_AUTHENTICATION then when you perform the subsequent Authenticate Payer operation you must provide details of the original authentication, either by providing the authentication data explicitly via the fields customer.account.history.issuerAuthentication.acsTransactionId, customer.account.history.issuerAuthentication.authenticationToken, customer.account.history.issuerAuthentication.time and customer.account.history.issuerAuthentication.type, or by providing the gateway reference of the original authentication operation in customer.account.history.issuerAuthentication.transactionId.
- • If you set this value to AGREEMENT_CANCELLATION, you must provide the agreement.id and order.amount for which the agreement was registered in the AUTHENTICATE_PAYER request.
Value must be a member of the following list. The values are case sensitive.
ADD_CARD
Authentication performed before a payer's card is stored on file either directly by the merchant or using the gateway's tokenization feature. A payment is not being processed.
AGREEMENT_CANCELLATION
Authentication performed before cancelling the agreement.
MAINTAIN_CARD
Authentication performed before updating details of a payer's card stored on file either directly by the merchant or using the gateway's tokenization feature. A payment is not being processed.
PAYMENT_TRANSACTION
Authentication performed when of processing a card payment.
REFRESH_AUTHENTICATION
Authentication performed in order to obtain a new authentication token to replace one previously obtained for the order which is no longer valid (for example, because the order amount has changed in the time between originally performing authentication and submitting the financial transaction).
String
CONDITIONAL
The domain name of the site where payer authentication was performed.
For example, the domain-name of the issuer's Access Control Server (ACS) used for payer authentication using 3-D Secure authentication.
Data can consist of any characters
CONDITIONAL
Additional information about payer authentication status returned by the issuer or scheme.
String
CONDITIONAL
Indicates the status of payer authentication with the issuer.
For authentication.version=RUPAY this is the value returned in the error or status code field from the NPCI BEPG system to indicate success or failure response from the issuer.
Data can consist of any characters
String
CONDITIONAL
For authentication.version=RUPAY this is the value returned in the error message field from the NPCI BEPG system to provide additional information, for example, if authentication failed due to invalid or expired OTP.
Data can consist of any characters
DateTime
CONDITIONAL
Date and time of the payer authentication being performed.
An instant in time expressed in ISO8601 date + time format - "YYYY-MM-DDThh:mm:ss.SSSZ"
String
CONDITIONAL
The transactionId you used for the Initiate Authentication operation.
Data can consist of any characters
Enumeration
CONDITIONAL
If online authentication of the payer is available, then this field shows the type.
If no such authentication is available, the value is NONE.
Value must be a member of the following list. The values are case sensitive.
3DS1
3-D Secure Version 1 authentication is available.
3DS2
3-D Secure Version 2 authentication is available.
RUPAY
RuPay authentication is available.
NONE
No authentication is available.
CONDITIONAL
Information about the Authorization received from the acquirer or issuer.
You can use this data if you want to understand the authorization in more detail, or with less interpretation by the gateway.
This data must be provided to the acquirer in the Capture request for this Authorization.
- For a subsequent Capture the gateway takes care of this for you.
- For a Standalone Capture request you need to provide this data.
- When performing the Capture outside the the gateway you must ensure that the data is provided in the Capture request to the acquirer.
Alphanumeric
CONDITIONAL
The authentication token verification result code provided by the scheme.
For Discover ProtectBuy transactions this is known as CAVV (Cardholder Authentication Verification Value) result code.
Data may consist of the characters 0-9, a-z, A-Z
DateTime
CONDITIONAL
The date and time when the gateway considers the authorization obtained for the order to have expired.
After this time, the gateway will reject your attempts to capture funds against this order. It will also void any authorized amount that has not been captured, to release the payer's funds.
This capability is to assist you in scheme compliance, and must be enabled by your payment provider. The gateway only populates this field if it is expiring the authorization.
An instant in time expressed in ISO8601 date + time format - "YYYY-MM-DDThh:mm:ss.SSSZ"
String
CONDITIONAL
Indicates the card level result returned by the issuer.
Data can consist of any characters
String
CONDITIONAL
CSC Incorrect Indicator.
An indicator, provided by the Issuer in the authorization response, to identify the presence of an invalid card security code (CSC). If there is an error, the Issuer will respond with the 1-byte CSC Error Code (Y).
Data can consist of any characters
Alphanumeric
CONDITIONAL
An Indicator, if a Card security code was provided for the Transaction, as returned by the acquirer.
Data may consist of the characters 0-9, a-z, A-Z
String
CONDITIONAL
Indicates if the card used is a commercial card.
Data can consist of any characters
String
CONDITIONAL
Indicates the type of commercial card as returned by the card issuer.
Data can consist of any characters
String
CONDITIONAL
The local date, in MMDD format, on which the transaction occurred.
Data can consist of any characters
String
CONDITIONAL
Indicates the code of the financial network that was used to process the transaction with the issuer.
Data can consist of any characters
Date
CONDITIONAL
The date for the Authorization as returned by the scheme.
Data must comply with ISO 8601 extended date format, yyyy-mm-dd
String
CONDITIONAL
Indicates the market or the industry associated with the payment.
For example, B may indicate "bill payment" depending on the acquirer.
Data can consist of any characters
String
CONDITIONAL
This field contains data returned by the issuer or card network to clearly communicate to merchants the reason for declining a MasterCard or Visa transaction.
Merchants can use this information to determine the best action to take. Please refer to Troubleshooting & FAQs - What if my transaction gets declined? for the list of values and their meaning.
Data can consist of any characters
String
CONDITIONAL
Payment Service Data required in settlement request.
Data can consist of any characters
String
CONDITIONAL
Identifies the type of Card Transaction sent to Card Acceptor.
Data can consist of any characters
String
CONDITIONAL
The response code which indicates the status of the transaction.
Data can consist of any characters
String
CONDITIONAL
Textual description of the acquirer response code for displaying on terminals.
Data can consist of any characters
String
CONDITIONAL
The ACI (Authorization Characteristics Indicator) returned by the issuer.
Data can consist of any characters
String
CONDITIONAL
The System Trace Audit Number is assigned by a transaction originator to assist in identifying a Card Transaction.
The trace number remains unchanged for the life of the Card Transaction.
Data can consist of any characters
String
CONDITIONAL
The local time, in HHMMSS format, during which the transaction occurred.
Data can consist of any characters
Time Offset
CONDITIONAL
The local time zone, in +hhmm or -hhmm format, in which the authorization was received from the acquirer, issuer or local terminal.
Data must comply with ISO 8601 UTC time offset format, +hhmm or -hhmm.
String
CONDITIONAL
Indicates the magnetic stripe condition and the vulnerability for fraud in Discover Network Card Transactions.
Data can consist of any characters
String
CONDITIONAL
The unique identifier for the transaction returned by the issuer.
Data can consist of any characters
Alphanumeric
CONDITIONAL
The Transaction Integrity Class (TIC) is an indicator defined by the scheme to evaluate the safety and security of the transaction.
The indicator is only supported by some schemes and for all regions.
Data may consist of the characters 0-9, a-z, A-Z
String
CONDITIONAL
The validation code returned by the issuer.
This value must be stored to be sent with the capture transaction.
Data can consist of any characters
String
CONDITIONAL
The response returned by the issuer indicating whether the 3DSecure authentication token was validated or not.
Data can consist of any characters
CONDITIONAL
CONDITIONAL
The amount and currency of available balance on the card.
Decimal
CONDITIONAL
The available balance on the card.
If provided, this is the amount available to the payer to spend after this payment.
Data is a decimal number.
Upper case alphabetic text
CONDITIONAL
The currency of available balance on the card expressed as an ISO 4217 alpha code, e.g. USD.
Data must consist of the characters A-Z
CONDITIONAL
Information about the customer, including their contact details.
CONDITIONAL
Information about the customer's account with you
CONDITIONAL
Information about how you authenticated the payer.
CONDITIONAL
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
CONDITIONAL
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.
Enumeration
CONDITIONAL
Indicates the status of the functionality you have requested be performed on the association between customer account authentication data and the card.
Value must be a member of the following list. The values are case sensitive.
FAILED
The customer account could not be associated with the card.
NOT_SUPPORTED
No support is available from the scheme for recording an association between the customer account and the provided card, either because the scheme provides no such facility, or because the issuer has opted out.
SUCCESSFUL
The customer account has successfully been associated with the card, and should provide frictionless 3DS authentication in future.
SUPPORTED
The scheme supports the ability to record an association between the customer account and the card following a successful 3DS challenge.
Enumeration
CONDITIONAL
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
CONDITIONAL
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"
CONDITIONAL
Information about the payer's historical activity related to their customer account with you.
Integer
CONDITIONAL
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
CONDITIONAL
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
CONDITIONAL
The date the payer created an account with you.
Data must comply with ISO 8601 extended date format, yyyy-mm-dd
CONDITIONAL
Information about the payer authentication performed for a previous transaction with you.
String
CONDITIONAL
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
CONDITIONAL
The authentication token obtained as the result of a previous authentication request.
Data is Base64 encoded
DateTime
CONDITIONAL
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
CONDITIONAL
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
CONDITIONAL
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
CONDITIONAL
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
CONDITIONAL
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
CONDITIONAL
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
CONDITIONAL
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
CONDITIONAL
Have you experienced suspicious or fraudulent activity on the account in the past.
JSON boolean values 'true' or 'false'.
String
CONDITIONAL
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
CONDITIONAL
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
CONDITIONAL
The payer's first name.
Data can consist of any characters
String
CONDITIONAL
The payer's last or surname.
Data can consist of any characters
String
CONDITIONAL
The contact person's mobile phone or cell phone number.
Data can consist of any characters
String
CONDITIONAL
The phone number of the person to whom the order is being billed.
Data can consist of any characters
String
CONDITIONAL
The tax registration identifier of the customer.
Data can consist of any characters
String
CONDITIONAL
An identifier for the payer assigned by a government authority.
For example, in Mexico this could be the CURP (Clave Única de Registro de Población), RFC (Registro Federal del Contribuyente), or INE (Instituto Nacional Electoral) number. In Brazil this could be the CPF (Cadastro de Pessoas Físicas) or CNPJ (Cadastro Nacional de Pessoas Jurídicas).
Data can consist of any characters
CONDITIONAL
Additional details for debt repayment transactions (order.purchaseType=DEBT_REPAYMENT).
If your Merchant Category Code is 6012 (Merchandise and Services—Customer Financial Institutions) or 6051 ( (Non-Financial Institutions – Foreign Currency, Non-Fiat Currency)) you may be required to provide some or all the details in this parameter group.
CONDITIONAL
Details about the recipient of the payment and the destination account for the payment.
String
ALWAYS PROVIDED
The account identifier for the payment recipient's account.
For payments into a card account provide the card number. For payments into other accounts (for example a bank account) provide the account number. The value provided will be returned masked in the response.
Data can consist of any characters
Date
ALWAYS PROVIDED
The date of birth of the primary payment recipient in yyyy-mm-dd format.
Data must comply with ISO 8601 extended date format, yyyy-mm-dd
String
ALWAYS PROVIDED
Last name of the primary payment recipient.
Data can consist of any characters
String
ALWAYS PROVIDED
Postcode of the primary payment recipient.
Data can consist of any characters
CONDITIONAL
Information about the device used by the payer for this transaction.
String
CONDITIONAL
The telephone number captured by ANI (Automatic Number Identification) when the customer calls to place the order.
Data can consist of any characters
String
CONDITIONAL
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
CONDITIONAL
The User-Agent header of the browser the customer used to place the order.
For example, MOZILLA/4.0 (COMPATIBLE; MSIE 5.0; WINDOWS 95)
Data can consist of any characters
String
CONDITIONAL
The name of the server to which the customer is connected.
Data can consist of any characters
String
CONDITIONAL
The IP address of the device used by the payer, in nnn.nnn.nnn.nnn format.
Data can consist of any characters
String
CONDITIONAL
The mobile phone manufacturer's identifier for the model of the mobile device used to initiate the payment.
Data can consist of any characters
Enumeration
CONDITIONAL
The interface through which the transaction is submitted to the gateway.
Value must be a member of the following list. The values are case sensitive.
AUTO
The transaction was automatically generated by the gateway. For example, a Capture transaction for Auto-Capture or an order reversal transaction for risk rejected orders.
BATCH
The transaction was submitted as part of a merchant batch. Batches can either be uploaded via Batch or via Merchant Administration.
CHECKOUT_VIA_PAYMENT_LINK
The transaction was created via checkout. The payer was redirected to checkout by clicking on a payment link.
CHECKOUT_VIA_WEBSITE
The transaction was created via checkout. The payer was redirected from your website to checkout.
MERCHANT_ADMINISTRATION
The transaction was initiated in Merchant Administration.
MERCHANT_MANAGER
The transaction was initiated in Merchant Manager.
SERVICE_PROVIDER_API
The transaction was reported by an acquirer or alternate payment provider.
WEB_SERVICES_API
The transaction was submitted via Web Services API.
CONDITIONAL
Details about who initiated the transaction.
CONDITIONAL
Details about the entity that initiated the transaction.
String
CONDITIONAL
The identifier of the entity that initiated the transaction.
For a merchant this is the Merchant ID in the gateway. For a Merchant Organization this is the Merchant Organization ID in the gateway. For an agent this is the Agent ID in the gateway. For a service provider this is the service provider ID in the gateway. For a gateway initiated transaction this field is not populated.
Data can consist of any characters
Enumeration
CONDITIONAL
The type of entity that initiated the transaction.
Value must be a member of the following list. The values are case sensitive.
AGENT
The transaction was initiated by an agent on your behalf.
GATEWAY
The transaction was automatically initiated by the gateway on your behalf.
MERCHANT
You initiated the transaction.
MERCHANT_ORGANIZATION
The transaction was initiated by a Merchant Organization on your behalf.
SERVICE_PROVIDER
The transaction was initiated by your payment service provider on your behalf.
String
CONDITIONAL
The person who initiated this transaction.
For Merchant Administration, the person is identified by their logon name.
Data can consist of any characters
String
CONDITIONAL
Your payment service provider might have configured your merchant profile to support several lines of business.
Each line of business can have different payment parameters, such as bank account, supported cards or such.
For example, lineOfBusiness = TICKET_SALES can have a different bank account from lineOfBusiness = MERCHANDISING. One line of business on your profile might be "null". To use that, do not provide the lineOfBusiness field.
Data can consist of any characters except space
Alphanumeric + additional characters
ALWAYS PROVIDED
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, '-', '_'
Enumeration
CONDITIONAL
Indicates if the payer provided consent for storing the payment details they have provided for this payment.
Value must be a member of the following list. The values are case sensitive.
MERCHANT_INITIATED_PAYMENTS
The payer has provided consent for storing their card details for the purpose of subsequent merchant-initiated payments.
PAYER_DECLINED
The payer declined to provide consent for storing their card details.
PAYER_INITIATED_PAYMENTS
The payer has provided consent for storing their card details for the purpose of subsequent payer-initiated payments.
String
CONDITIONAL
This is the reference to an order previously submitted by you to the gateway.
It is applicable to the following scenarios.
Tokenization requests:
Identifier for the order which will be used to generate a gateway token. The gateway will attempt tokenization of payment credentials linked to the order ID.
The order identifier provided in this field must be linked to a successfully processed order which has card (FPAN / DPAN) as the payment method.
When providing this field, you must not provide card details in the sourceOfFunds.provided.card parameter group.
Payment transactions:
When submitting:
- an industry practice payment, this is the reference to the initial cardholder-initiated transaction.
- a resubmission transaction, this is the reference to the order which is being resubmitted.
Data can consist of any characters
Enumeration
ALWAYS PROVIDED
A system-generated high level overall result of the operation.
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
CONDITIONAL
Shipping information for this order.
CONDITIONAL
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.
String
CONDITIONAL
The city portion of the address.
Data can consist of any characters
String
CONDITIONAL
The name of the company associated with this address.
Data can consist of any characters
Upper case alphabetic text
CONDITIONAL
The 3 letter ISO standard alpha country code of the address.
Data must consist of the characters A-Z
Alphanumeric + additional characters
CONDITIONAL
The post code or zip code of the address.
Data may consist of the characters 0-9, a-z, A-Z, ' ', '-'
Enumeration
CONDITIONAL
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
CONDITIONAL
The state or province of the address.
Data can consist of any characters
String
CONDITIONAL
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
CONDITIONAL
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
CONDITIONAL
The second line of the address (if provided).
Data can consist of any characters
Enumeration
CONDITIONAL
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.
CONDITIONAL
Details of the contact person at the address the goods will be shipped to.
Email
CONDITIONAL
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
CONDITIONAL
The first name of the person to whom the order is being shipped.
Data can consist of any characters
String
CONDITIONAL
The last name or surname of the person to whom the order is being shipped.
Data can consist of any characters
Telephone Number
CONDITIONAL
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
CONDITIONAL
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
CONDITIONAL
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
CONDITIONAL
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
CONDITIONAL
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, ' ', '-'
ALWAYS PROVIDED
Information about this transaction.
ALWAYS PROVIDED
JSON Text
CONDITIONAL
Provides additional data provided by the acquirer in the transaction response that could be of interest to you.
It might provide additional information that may help you understand unexpected results or provide acquirer-specific response data. For example, it could provide information about the results of validation of data by the issuer or card scheme of data you provided for card present transactions. The data is provided as as series of name-value pairs where the name is the acquirer field and the value is exactly as provided by the acquirer. For example, {"48.74.1":3, "48.74.2:5":48, "48.80":67}
Data is JSON Text
Integer
CONDITIONAL
The processor's identifier for the settlement batch.
Provided only if the transaction was settled by batch.
JSON number data type, restricted to being positive or zero. In addition, the represented number may have no fractional part.
String
CONDITIONAL
Additional information requested by the acquirer which cannot be passed using other available data fields.
This field must not contain sensitive data.
Data can consist of any characters
String
CONDITIONAL
The date the transaction was processed, as returned by the acquirer.
Not returned by most acquirers.
Data can consist of any characters
String
CONDITIONAL
The ID for the acquirer used to process the transaction.
Data can consist of any characters
String
CONDITIONAL
An identifier allocated by an acquirer to the merchant.
This may also be referred to as the Card Acceptor Identification Code (CAIC), Card Acceptor ID (CAID), or Service Establishment Number (SE Number).
Data can consist of any characters
Date
CONDITIONAL
The date the acquirer expects the funds to be transferred to (in the case of payments) or from (in the case of refunds) the merchant's account.
The date is defined in the acquirer's time zone (see transaction.acquirer.timeZone).
Data must comply with ISO 8601 extended date format, yyyy-mm-dd
String
CONDITIONAL
The time the transaction was processed, as returned by the acquirer.
Not returned by most acquirers.
Data can consist of any characters
Time Offset
CONDITIONAL
The acquirer's time zone associated with the settlement date for the transaction (see transaction.acquirer.settlementDate).
Data must comply with ISO 8601 UTC time offset format, +hhmm or -hhmm.
String
CONDITIONAL
Identifier used by the acquirer to identify the transaction.
This identifier may be used by the acquirer in settlement reports.
Data can consist of any characters
Enumeration
CONDITIONAL
Indicates the result of payer authentication.
Value must be a member of the following list. The values are case sensitive.
AUTHENTICATION_ATTEMPTED
Payer authentication was attempted and a proof of authentication attempt was obtained.
AUTHENTICATION_AVAILABLE
Payer authentication is available for the payment method provided.
AUTHENTICATION_EXEMPT
Exemption from the Regulatory Technical Standards (RTS) requirements for Strong Customer Authentication (SCA) under the Payment Services Directive 2 (PSD2) regulations in the European Economic Area has been claimed or granted.
AUTHENTICATION_FAILED
The payer was not authenticated. You should not proceed with this transaction.
AUTHENTICATION_NOT_IN_EFFECT
There is no authentication information associated with this transaction.
AUTHENTICATION_NOT_SUPPORTED
The requested authentication method is not supported for this payment method.
AUTHENTICATION_PENDING
Payer authentication is pending completion of a challenge process.
AUTHENTICATION_REJECTED
The issuer rejected the authentication request and requested that you do not attempt authorization of a payment.
AUTHENTICATION_REQUIRED
Payer authentication is required for this payment, but was not provided.
AUTHENTICATION_SUCCESSFUL
The payer was successfully authenticated.
AUTHENTICATION_UNAVAILABLE
The payer was not able to be authenticated due to a technical or other issue.
Comma separated enumeration
CONDITIONAL
The action you want the gateway to take if you submit a capture amount that is different from the outstanding authorization amount for the order.
You only need to provide a value if you want to restrict the action taken and understand the relevant scheme rules.
The default value for this field is INCREMENT. In this case, the gateway will automatically submit an update authorization request to the acquirer if the requested capture amount exceeds the outstanding authorized amount. If the update was successfully authorized, the gateway then attempts the capture.
Set this value to NO_ACTION to prevent the gateway performing any authorization adjustments.
Note: You might need your payment service provider to enable these capabilities on your gateway merchant profile.
Value must be one or more comma separated members of the following list. The values are case sensitive.
INCREMENT
Increase the authorized amount to match the total capture amount.
NO_ACTION
Do not perform any authorization adjustments.
Decimal
CONDITIONAL
The amount by which the original authorization amount was adjusted.The original authorized amount was increased (positive value) or decreased (negative value) by this amount.
Data is a decimal number.
ASCII Text
CONDITIONAL
Value generated by the issuing bank in response to a proposal to transfer funds.
Data consists of ASCII characters
Enumeration
CONDITIONAL
Indicates the entity who authorized the transaction.
Typically the transaction is submitted to the issuer and the issuer either authorizes the transaction and issues an authorization code or does not authorize the transaction and no authorization code is returned.
Value must be a member of the following list. The values are case sensitive.
ACQUIRER
The transaction has not been forwarded to the scheme/issuer but the acquirer has made the authorization decision on behalf of the issuer. This may happen if the acquirer was unable to forward the transaction to the scheme or the acquirer rejected the transaction request because of failed validation.
ISSUER
The transaction has been forwarded to the issuer and the issuer has either authorized the transaction or not.
SCHEME
The transaction has not been forwarded to the issuer but the scheme has made the authorization decision on behalf of the issuer. This may happen if the scheme was unable to forward the transaction to the issuer or the scheme chose to do stand-in processing for this transaction.
Boolean
CONDITIONAL
Indicates that you were not able to submit the Authorization (or Payment) transaction at the time it was completed with the cardholder due to a connectivity, system issue, or other limitations and have deferred submitting it until your system was back online.
JSON boolean values 'true' or 'false'.
Enumeration
CONDITIONAL
The type of disbursement used for this transaction.
If your Merchant Category Code is 7995 (Gambling Transactions) and you are paying out gaming winnings, set the value to GAMING_WINNINGS. If your Merchant Category Code is 6536 (MoneySend Intracountry) and you are paying a credit card bill, set the value to CREDIT_CARD_BILL_PAYMENT and provide the payment sender details.
Value must be a member of the following list. The values are case sensitive.
CREDIT_CARD_BILL_PAYMENT
Indicates that you are paying a credit card bill.
GAMING_WINNINGS
Indicates that you are paying out gaming winnings to a payer.
Decimal
CONDITIONAL
The total amount deducted from the transaction amount that would normally apply.
Data is a decimal number.
CONDITIONAL
Information about the disputed transaction.
Date
CONDITIONAL
The date the payer notified the issuer to cancel a recurring payment that is being disputed.
Data must comply with ISO 8601 extended date format, yyyy-mm-dd
Date
CONDITIONAL
The date by which the merchant must take action.
For example, if the acquirer has requested additional information (transaction.dispute.event = INFORMATION_REQUESTED), the merchant must provide a response by this date.
Data must comply with ISO 8601 extended date format, yyyy-mm-dd
Enumeration
ALWAYS PROVIDED
The step in the dispute management process that triggered this transaction
Value must be a member of the following list. The values are case sensitive.
ACTION_REQUIRED
An action from the merchant is required.
CHARGEBACK_DEBITED
The chargeback amount will soon be debited to the merchant's account.
CHARGEBACK_REVERSED
The Chargeback amount that was debited has been credited back to the merchant's account.
INFORMATION_ONLY
Information about the state of the dispute.
Date
CONDITIONAL
The date of the event in the dispute management process described by transaction.dispute.event
Data must comply with ISO 8601 extended date format, yyyy-mm-dd
String
CONDITIONAL
Additional information about the dispute event (see transaction.dispute.event).
The terms used here will reflect the terms used by your bank.
Data can consist of any characters
CONDITIONAL
Parameters used by the gateway to match the chargeback transaction to the original transaction being disputed.
When transaction.dispute.matchAction = MATCHED, then the gateway will attempt to match this chargeback transaction to an existing financial transaction with these parameters. If no match is found then the gateway does not record the chargeback transaction.
When transaction.dispute.matchAction = STANDALONE, the gateway will create a new order containing the chargeback transaction and does not attempt to match it to the original transaction.
When transaction.dispute.matchAction = MATCHED_FALLBACK, then the gateway will first attempt to match this chargeback transaction to an existing financial transaction with these parameters. If it cannot be matched, the gateway will create a new order containing the chargeback transaction. When the chargeback transaction can be matched to more than one merchant gateway profile, a new order will be created against each profile. When this occurs it will be noted in order.description.
ASCII Text
CONDITIONAL
The Retrieval Reference Number of the disputed transaction.
Data consists of ASCII characters
String
CONDITIONAL
Identifier used by the acquirer to identify the disputed transaction.
Data can consist of any characters
Date
CONDITIONAL
The date of the disputed transaction.
Data must comply with ISO 8601 extended date format, yyyy-mm-dd
Digits
CONDITIONAL
The System Trace Audit Number of the disputed transaction.
Data is a string that consists of the characters 0-9.
Enumeration
ALWAYS PROVIDED
Indicates how the chargeback transaction is recorded.
Value must be a member of the following list. The values are case sensitive.
MATCHED
Create the chargeback transaction only if it can be matched to the original transaction being disputed.
MATCHED_FALLBACK
Attempt to match the chargeback transaction to the original transaction being disputed. If it cannot be matched, then create a new order containing the chargeback transaction.
STANDALONE
Do not match the chargeback transaction to the original transaction being disputed; create a new order containing the chargeback transaction.
ASCII Text
CONDITIONAL
A description of why the transaction is disputed.
Data consists of ASCII characters
ASCII Text
CONDITIONAL
A code provided by the acquirer to indicate the reason for the chargeback.
Data consists of ASCII characters
Decimal
CONDITIONAL
The duty amount (also known as customs tax, tariff or dues) for the transaction.
Data is a decimal number.
CONDITIONAL
Details of the amount settled to your account for this transaction.
This group is present for transactions that could be funded, including successful CAPTURE, REFUND and PAY transactions as well as FUNDING transactions that provide funding and/or fee details only.
String
CONDITIONAL
The service provider's description for the funding type.
Data can consist of any characters
Decimal
CONDITIONAL
The amount of money in your bank account, as reported to the gateway for this transaction.
This may be a credit (positive value) or debit (negative value).
This value is provided if transaction.funding.status is FUNDED. It might be provided if transaction.funding.status is FUNDING_ASSURED or FUNDING_ON_HOLD.
Data is a decimal number.
Upper case alphabetic text
CONDITIONAL
The currency of transaction.funding.amount expressed as an ISO 4217 alpha code, e.g. USD.
This value is provided if transaction.funding.status is FUNDED. It might be provided if transaction.funding.status is FUNDING_ASSURED or FUNDING_ON_HOLD.
Data must consist of the characters A-Z
Date
CONDITIONAL
The date the funds arrive in your bank account.
The date is defined in the acquirer's time zone (see transaction.acquirer.timeZone).
This value is only populated if the date is known with certainty.
Data must comply with ISO 8601 extended date format, yyyy-mm-dd
Date
CONDITIONAL
The date the acquirer estimates the funds to arrive in your bank account.
This value is only populated if neither the initiated date nor the actual funding date are available.
The date is defined in the acquirer's time zone (see transaction.acquirer.timeZone).
Data must comply with ISO 8601 extended date format, yyyy-mm-dd
CONDITIONAL
Breakdown of the fees deducted by your acquirer for this transaction.
String
CONDITIONAL
The name of the fee as provided by your acquirer.
Data can consist of any characters
Decimal
CONDITIONAL
The fee amount for the fee type defined in funding.fee[n].type for this transaction.
Data is a decimal number.
Date
CONDITIONAL
The date the fees are debited from your bank account.
This value is only populated if the date is known with certainty.
The date is defined in the acquirer's time zone (see transaction.acquirer.timeZone).
Data must comply with ISO 8601 extended date format, yyyy-mm-dd
Date
CONDITIONAL
The date the acquirer estimates that the fees are being debited from your bank account.
This value is only populated if neither the initiated date nor the actual date the funds are debited are available.
The date is defined in the acquirer's time zone (see transaction.acquirer.timeZone).
Data must comply with ISO 8601 extended date format, yyyy-mm-dd
Date
CONDITIONAL
The date the acquirer initiated the fees being debited from your bank account.
This value is only populated if the date of transfer is known with certainty, but the date the funds will settle to your account is uncertain.
The date is defined in the acquirer's time zone (see transaction.acquirer.timeZone).
Data must comply with ISO 8601 extended date format, yyyy-mm-dd
Decimal
CONDITIONAL
The rate (percentage) applied to the transaction amount to determine the fee amount for the fee type defined in funding.fee[n].type.
Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.
Enumeration
CONDITIONAL
The fee type for which the amount defined in funding.fee[n].amount has been charged.
Value must be a member of the following list. The values are case sensitive.
CHARGEBACK_FEE
Fees associated with Chargeback transactions.
FUNDING_FEE
Fees associated with transferring money to your account.
MERCHANT_FEE
Fees associated with the merchant account. For example: Merchant monthly fee, Minimum monthly fee.
OTHER_FEE
Any other fees that have not been captured by the above types.
TRANSACTION_FEE
Fees associated with Authorization, Capture and Refund transactions.
Decimal
CONDITIONAL
The total fee amount deducted by your acquirer for the transaction for settling the funds to your account.
This value is only supplied if your acquirer provides the fee data.
A breakdown of the fees is shown in the transaction.funding.fee[n] parameter group if this information was provided by your acquirer.
Data is a decimal number.
Upper case alphabetic text
CONDITIONAL
The currency of transaction.funding.feeAmount expressed as an ISO 4217 alpha code, e.g. USD.
Data must consist of the characters A-Z
Date
CONDITIONAL
The date the acquirer initiated the funds transfer into your bank account.
This value is only populated if the date of transfer is known with certainty, but the date the funds will settle to your account is uncertain.
The date is defined in the acquirer's time zone (see transaction.acquirer.timeZone).
Data must comply with ISO 8601 extended date format, yyyy-mm-dd
String
CONDITIONAL
Your bank's Identifier for the group of transactions settled to your account.
Data can consist of any characters
Enumeration
ALWAYS PROVIDED
The current status of funding to / from your account for this transaction.
Value must be a member of the following list. The values are case sensitive.
FUNDED
The transaction is clearing and will move money into your account.
FUNDING_ADJUSTED
Funding for the transaction has been adjusted, meaning either funds have been transferred to / from your account. This can happen for both successful or failed funding.
FUNDING_ASSURED
The transaction is guaranteed to settle, but has not yet done so.
FUNDING_FAILED
The transaction could result in the transfer of money to / from your account, however the service provider has not yet received funds from the payer. In case of a refund the service provider was not able to transfer funds to the payer.
FUNDING_ON_HOLD
The transaction could result in the transfer of money to / from your account, however the financial provider is unable to complete the transfer of funds. This might be a transient state.
IN_PROGRESS
The transaction could result in the transfer of money to / from your account, but has not yet have done so. This is usually a transient state.
NON_FUNDED
The transaction cannot result in transfer of money to / from your account.
NOT_SUPPORTED
The transaction was settled to an institution from which the gateway does not receive funding information.
String
ALWAYS PROVIDED
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
Boolean
CONDITIONAL
This field will only be populated if you are enabled for Instant Refunds and the acquirer used to process this Refund is configured for Instant Refunds.
Instant Refunds are processed in near real time resulting in the funds being available in the payer's account almost instantly. 'True' indicates that the refund was processed as an Instant Refund. 'False' indicates that the refund was not processed as an Instant Refund. This happens when either the card is not eligible or the gateway was unable to connect to the downstream system.
JSON boolean values 'true' or 'false'.
CONDITIONAL
Information about the items the payer purchases with the transaction.
String
CONDITIONAL
The brand of the item.
For example, Dell.
Data can consist of any characters
String
CONDITIONAL
Your category for the item.
Data can consist of any characters
String
CONDITIONAL
Description for the item with information such as size, color, etc.
For example, 'Color:Red, Size:M'
Data can consist of any characters
CONDITIONAL
Only use this parameter group to provide additional line item details required for a better interchange rate for Purchasing Cards, Business and/or Corporate Cards (Level 3).
Check with your payment service provider if Level 3 data is supported for your acquirer.
JSON Text
CONDITIONAL
Use this field to provide line item details that your acquirer requires you to provide.
Data must be provided in JSON format using the record name and field name (separated by a comma) to identify the value provided. Contact your payment service provider for details about the supported fields including the field definitions.
Data is valid Json Format
Integer
CONDITIONAL
A code describing a commodity or a group of commodities pertaining to goods classification.
JSON number data type, restricted to being positive or zero. In addition, the represented number may have no fractional part.
CONDITIONAL
Information about the taxes per line item.
Decimal
CONDITIONAL
The tax amount for the tax type defined in order.item[n].detail.tax[m].type for the item.
Note that the tax amount provided must reflect the tax amount applied before a discount was applied.
Data is a decimal number.
Decimal
CONDITIONAL
The tax rate (percentage) applied to the item for the tax type defined in order.item[n].detail.tax[m].type.
Data is a decimal number.
String
CONDITIONAL
The tax type for which the amount specified under order.item[n].detail.tax[m].amount has been paid for this item.
The correct value as used by your acquirer may have to be provided. Contact your payment service provider for details.
Data can consist of any characters
Decimal
CONDITIONAL
The discount rate (percentage) applied to this item.
Data is a decimal number.
Decimal
CONDITIONAL
The tax rate (percentage) of the tax charged for this item.
Data is a decimal number.
String
CONDITIONAL
The type of tax charged for this item.
The correct value as used by your acquirer may have to be provided. Contact your payment service provider for details.
Data can consist of any characters
Integer
CONDITIONAL
The United Nations Standard Products and Services Code (UNSPSC) for the item.
JSON number data type, restricted to being positive or zero. In addition, the represented number may have no fractional part.
Integer
CONDITIONAL
The Universal Product Code (UPC) for the item.
JSON number data type, restricted to being positive or zero. In addition, the represented number may have no fractional part.
Enumeration
CONDITIONAL
Provide the industryCategory to send this line item to your acquirer for specialized processing as industry data.
Such processing might have legal obligations, which are your responsibility. Do not provide an industryCategory, unless you are certain it applies to you, and is accepted by your acquirer.
We support the following industry standard processing:US health care processing using the IIAS standard.The supported values for industryCategory are:HEALTHCARE_VISION, HEALTHCARE_DENTAL, HEALTHCARE_PRESCRIPTION, HEALTHCARE_OTHERWe formulate an IIAS message by summing the amounts of all the line items having the same industryCategory. The amount of a line item is:(order.item.unitPrice + order.item.tax) * order.item.quantity
Value must be a member of the following list. The values are case sensitive.
String
ALWAYS PROVIDED
A short name describing the item.
Data can consist of any characters
Decimal
ALWAYS PROVIDED
The quantity of the item.
Data is a decimal number.
String
CONDITIONAL
The SKU (Stock Keeping Unit) or the item identifier for this item.
Data can consist of any characters
Decimal
CONDITIONAL
The discount amount applied to this item.
Data is a decimal number.
String
CONDITIONAL
The unit of measure used for the item quantity.
The correct value as used by your acquirer may have to be provided. Contact your payment service provider for details.
Data can consist of any characters
Decimal
ALWAYS PROVIDED
The cost price for the item.
This amount is multiplied with the item quantity (item.quantity) to determine the total amount for this item (item.amount). This amount does not include the tax amount and/or discount amount applicable to this item.
Data is a decimal number.
Decimal
CONDITIONAL
The tax amount for the item.
This amount is multiplied with the item quantity (item.quantity) to determine the total tax amount for this item.
Data is a decimal number.
Decimal
CONDITIONAL
The total item amount for this transaction.
Data is a decimal number.
String
CONDITIONAL
Your note about this transaction.
Data can consist of any characters
ASCII Text
CONDITIONAL
A unique reference generated by the acquirer for a specific merchant interaction.
The reference may be used when contacting the acquirer about a specific transaction.
Data consists of ASCII characters
String
CONDITIONAL
An optional identifier for this transaction.
Data can consist of any characters
Decimal
CONDITIONAL
If the transaction was partially approved (response.gatewayCode=PARTIALLY_APPROVED), this field contains the originally requested amount.
The transaction amount (transaction.amount) and order amount (order.amount) are both set to the actually approved amount.
Data is a decimal number.
Boolean
CONDITIONAL
Indicates that this merchant initiated transaction is a resubmission for a previous authorization which failed due to insufficient funds.
A resubmission transaction must also contain the 'scheme transaction Id' from the associated failed transaction. You can provide the referenceOrderId of the relevant order and the gateway will include the 'scheme transaction Id' of the last failed authorization on the order in the resubmission transaction. Alternatively, you can provide the 'scheme transaction Id' of the failed transaction in the resubmission transaction using the field transaction.acquirer.traceId.
JSON boolean values 'true' or 'false'.
Decimal
CONDITIONAL
The total shipping and handling amount for the transaction, including taxes on the shipping and/or handling.
Data is a decimal number.
Decimal
CONDITIONAL
The tax amount levied on the shipping and handling amount for the transaction.
This amount is included in the shipping and handling amount provided in field transaction.shippingAndHandlingAmount.
Data is a decimal number.
Decimal
CONDITIONAL
The tax rate applied to the shipping and handling amount for the transaction to determine the shipping and handling tax amount.
For a tax rate of 2.5% provide 0.025.
Data is a decimal number.
String
CONDITIONAL
The identifier of the source transaction you wish to reference in this transaction.
For example: This can be the transaction id of the
- -authorization transaction you wish to void or
- -capture or pay transaction you wish to void or refund or.
- -the contactless transaction which was processed with a single tap indicator and you want to provide the PIN in this request.
That is the {transactionId} URL field for REST and the transaction.id field for NVP.
Data can consist of any characters
CONDITIONAL
Use this parameter group to provide a breakdown of tax types, amount per tax type, and rate per tax type included in transaction.taxAmount.
Decimal
CONDITIONAL
The tax amount included in this transaction for the tax type.
Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.
Decimal
CONDITIONAL
The tax rate (percentage) used to determine the tax amount included in this transaction for the tax type.
Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.
String
CONDITIONAL
The type of tax included in the transaction amount.
The correct value as used by your acquirer may have to be provided. Contact your payment service provider for details.
Data can consist of any characters
Decimal
CONDITIONAL
The total tax amount for the transaction.
You only need to provide this field when you capture or refund part of the order amount. In this case, the amount must not exceed order.taxAmount. If you provide this field when you capture or refund the full amount of the order, then the value provided must match order.taxAmount.
Data is a decimal number.
String
CONDITIONAL
Indicates your tax status for this transaction.
Data can consist of any characters
String
CONDITIONAL
The terminal configured at the processor/acquirer used to process the transaction.
Data can consist of any characters
Enumeration
ALWAYS PROVIDED
Indicates the type of action performed on the order.
Value must be a member of the following list. The values are case sensitive.
AUTHENTICATION
Authentication
AUTHORIZATION
Authorization
AUTHORIZATION_UPDATE
Authorization Update
CAPTURE
Capture
CHARGEBACK
Chargeback
DISBURSEMENT
Disbursement
FUNDING
The transaction transfers money to or from the merchant, without the involvement of a payer. For example, recording monthly merchant service fees from your payment service provider.
PAYMENT
Payment (Purchase)
REFUND
Refund
REFUND_REQUEST
Refund Request
VERIFICATION
Verification
VOID_AUTHORIZATION
Void Authorization
VOID_CAPTURE
Void Capture
VOID_PAYMENT
Void Payment
VOID_REFUND
Void Refund
CONDITIONAL
This parameter group provides a history of the status changes for the transaction (based on response.gatewayCode).The information is only provided if the functionality is supported for the acquirer used to process the transaction.
Enumeration
CONDITIONAL
The new response gateway code for the transaction set at the date and time associated (transaction.update[n].time).
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_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
PARTIALLY_APPROVED
The transaction was approved for a lesser amount than requested. The approved amount is returned in order.totalAuthorizedAmount.
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
ASCII Text
CONDITIONAL
The date and time the status change occurred.
Data consists of ASCII characters
String
CONDITIONAL
The Web Services API version that you submitted the request in.
Data can consist of any characters
Errors
Information on possible error conditions that may occur while processing an operation using the API.
Enumeration
Broadly categorizes the cause of the error.
For example, errors may occur due to invalid requests or internal system failures.
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.
String
Textual description of the error based on the cause.
This field is returned only if the cause is INVALID_REQUEST or SERVER_BUSY.
Data can consist of any characters
String
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.
Data can consist of any characters
String
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.
Data can consist of any characters
Enumeration
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.
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.
Enumeration
A system-generated high level overall result of the operation.
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.