Initiate Browser Payment

Request to initiate a browser payment. You must use the URL provided in the response to redirect the payer's browser to the browser payment provider's website.

PUT https://na.gateway.mastercard.com/api/rest/version/82 / merchant / {merchantId} / order / {orderid} / transaction / {transactionid}

Authentication Copied to clipboard

This operation requires authentication via one of the following methods:


  • Certificate authentication.
  • Basic HTTP authentication as described at w3.org. Provide 'merchant.<your gateway merchant ID>' in the userid portion and your API password in the password portion.

Request Copied to clipboard

URL Parameters Copied to clipboard

{merchantId} Copied to clipboard Alphanumeric + additional characters REQUIRED

The unique identifier issued to you by your payment provider.


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: 40
{orderid} Copied to clipboard String REQUIRED

A unique identifier for this order to distinguish it from any other order you create.


Use this identifier when referring to this order in subsequent transactions and in retrieval operations. This value must be unique for every order you create using your merchant profile.


Data can consist of any characters

Min length: 1 Max length: 40
{transactionid} Copied to clipboard String REQUIRED

Unique identifier for this transaction to distinguish it from any other 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.
Each transaction on the order must have a unique id that identifies that transaction. Some transactions also hold the transaction identifier of other transactions on the order. For example a void payment transaction references the original payment transaction that is being voided.

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: 40

Fields Copied to clipboard

agreement Copied to clipboard OPTIONAL

A series of related orders that execute one commercial agreement.

For example, linking the orders for a series of recurring payments (a mobile phone subscription), split tenders (one payment using two cards), or when the merchant offers to take payments by a series of installments (hire purchase).

You must provide this data for some types of payments (such as recurring), but you can provide it for any cases where you want to link orders together.

agreement.amountVariability Copied to clipboard 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.

agreement.expiryDate Copied to clipboard 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

agreement.id Copied to clipboard 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.
When you first establish an agreement with the payer you should also specify the type of agreement in agreement.type.

Data can consist of any characters

Min length: 1 Max length: 100
agreement.maximumAmountPerPayment Copied to clipboard 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.

Min length: 1 Max length: 14
agreement.minimumDaysBetweenPayments Copied to clipboard 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.

Min value: 1 Max value: 9999
agreement.numberOfPayments Copied to clipboard 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.

Min value: 1 Max value: 999
agreement.paymentFrequency Copied to clipboard 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.

agreement.type Copied to clipboard Enumeration OPTIONAL

The type of commercial agreement that the payer has with you.

Specify the agreement type when you have provided a value for agreement.id and this payment is the first in a series of payments. The default value is OTHER.

The gateway will use the value you specify for subsequent payments in the series.

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

INSTALLMENT

An agreement where the payer authorizes the payment for a single purchase to be split into a number of payments processed at agreed intervals. For example, pay for a purchase in six monthly installments.

OTHER

An agreement where the merchant wants to link related payments for any purpose other than processing recurring, installment, or unscheduled payments. For example, split tender payments.

RECURRING

An agreement where the payer authorizes the merchant to process payments for recurring bills or invoices at agreed intervals (for example, weekly, monthly). The amount might be fixed or variable.

UNSCHEDULED

An agreement where the payer authorizes the merchant to automatically deduct funds for a payment for an agreed purchase when required (unscheduled). For example, auto top-ups when the account value falls below a threshold.

apiOperation Copied to clipboard String = INITIATE_BROWSER_PAYMENT FIXED

Any sequence of zero or more unicode characters.

appPayment Copied to clipboard OPTIONAL

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.

appPayment.returnUrl Copied to clipboard Url OPTIONAL

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.

Min length: 3 Max length: 2048
billing Copied to clipboard OPTIONAL

Details of the payer's billing address.

billing.address Copied to clipboard OPTIONAL

The payer's billing address.

This data may be used to qualify for better interchange rates on corporate purchase card transactions.

billing.address.city Copied to clipboard String OPTIONAL

The city portion of the address.

Data can consist of any characters

Min length: 1 Max length: 100
billing.address.company Copied to clipboard String OPTIONAL

The name of the company associated with this address.

Data can consist of any characters

Min length: 1 Max length: 100
billing.address.country Copied to clipboard Upper case alphabetic text OPTIONAL

The 3 letter ISO standard alpha country code of the address.

Data must consist of the characters A-Z

Min length: 3 Max length: 3
billing.address.postcodeZip Copied to clipboard 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, ' ', '-'

Min length: 1 Max length: 10
billing.address.stateProvince Copied to clipboard String OPTIONAL

The state or province of the address.

Data can consist of any characters

Min length: 1 Max length: 20
billing.address.stateProvinceCode Copied to clipboard 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

Min length: 1 Max length: 3
billing.address.street Copied to clipboard 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

Min length: 1 Max length: 100
billing.address.street2 Copied to clipboard String OPTIONAL

The second line of the address (if provided).

Data can consist of any characters

Min length: 1 Max length: 100
browserPayment Copied to clipboard REQUIRED

Information used to manage interactions with the payment provider if you are offering your payment page on a website or are redirecting the payer's browser to the provider's website.

If you are offering your payment page in an app or are redirecting the payer to the provider's app, use the appPayment parameter group.

browserPayment.locale Copied to clipboard String OPTIONAL

The language that you prefer the payment provider to use for pages displayed to the payer.

You can provide either the two-letter primary language tag (for example, en, fr) or the two-letter primary language tag plus the region sub-tag (for example, en-US, fr-CA).

Data must be a language identifier or IETF language tag

Min length: 2 Max length: 5
browserPayment.openBankingBankTransfer Copied to clipboard OPTIONAL

Additional information you can provide to control the user interaction flow presented to the payer by Open Banking.

browserPayment.openBankingBankTransfer.refundConsent Copied to clipboard Boolean REQUIRED

Indicates during the checkout flow whether payer has provided consent for refund in order to store payer account details in the gateway.

JSON boolean values 'true' or 'false'.

browserPayment.operation Copied to clipboard Enumeration REQUIRED

The type of transaction you want to create for this payment.You can choose between an Authorization and a Payment transaction.

For a successful Authorization transaction, you must submit a CAPTURE request to move the funds from the payer's account to your account.

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

AUTHORIZE

The transaction created in the gateway is an AUTHORIZATION transaction.

PAY

The transaction created in the gateway is a PAYMENT transaction.

browserPayment.paypal Copied to clipboard OPTIONAL

Additional information you can provide to control the user interaction flow presented to the payer by PayPal.

browserPayment.paypal.displayShippingAddress Copied to clipboard Boolean OPTIONAL

Indicates whether you want PayPal to display the shipping address to the payer on the PayPal website.

By default, the shipping address is displayed to the payer. For more detailed information about displaying the shipping address on the PayPal website, see PayPal Integration: Display/Override Shipping Address.

JSON boolean values 'true' or 'false'.

browserPayment.paypal.overrideShippingAddress Copied to clipboard Boolean OPTIONAL

Indicates whether you want to allow the payer to change the shipping address for the payment on the PayPal website.

By default, the payer is allowed to change the shipping address. For more detailed information about the payer overriding the shipping address on the PayPal website, see PayPal Integration: Display/Override Shipping Address.

JSON boolean values 'true' or 'false'.

browserPayment.paypal.paymentConfirmation Copied to clipboard Enumeration REQUIRED

Indicates where in the checkout flow you want the payer to commit to the payment - on the PayPal website or on your website after returning from the PayPal website.

By default this is set to CONFIRM_AT_PROVIDER.

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

CONFIRM_AT_MERCHANT

The payer commits to the payment on your website.

CONFIRM_AT_PROVIDER

The payer commits to the payment on the PayPal website.

browserPayment.returnUrl Copied to clipboard Url OPTIONAL

The URL of your website to which you want the payer's browser to be redirected on completing the payment interaction at the payment provider's website.

The same return URL will be used by the gateway to redirect the payer's browser irrespective of the success or otherwise of the payment interaction. This field is not required if the payer is to be redirected to your app or if the browser payment provider's checkout flow is presented on a modal window on top of your payment page.

Ensure that this is a valid URL according to RFC 1738.

correlationId Copied to clipboard 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

Min length: 1 Max length: 100
customer.dateOfBirth Copied to clipboard Date OPTIONAL

The payer's date of birth.

Data must comply with ISO 8601 extended date format, yyyy-mm-dd

customer.email Copied to clipboard 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

customer.firstName Copied to clipboard String OPTIONAL

The payer's first name.

Data can consist of any characters

Min length: 1 Max length: 50
customer.lastName Copied to clipboard String OPTIONAL

The payer's last or surname.

Data can consist of any characters

Min length: 1 Max length: 50
customer.mobilePhone Copied to clipboard 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)

Mandatory country code: true Max total digits: 15
customer.nationalId Copied to clipboard String OPTIONAL

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

Min length: 1 Max length: 30
customer.phone Copied to clipboard 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)

Mandatory country code: true Max total digits: 15
device Copied to clipboard OPTIONAL

Information about the device used by the payer for this transaction.

device.browser Copied to clipboard 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

Min length: 1 Max length: 2048
device.fingerprint Copied to clipboard 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

Min length: 1 Max length: 4000
device.hostname Copied to clipboard String OPTIONAL

The name of the server to which the customer is connected.

Data can consist of any characters

Min length: 1 Max length: 60
device.ipAddress Copied to clipboard String OPTIONAL

The IP address of the device used by the payer, in IPv4 nnn.nnn.nnn.nnn format.

You can provide the IP address in IPv6 format as defined in RFC4291.
IPv6 address will only be used in EMV 3DS authentication. Supplied IPv6 address will not be used for any other purposes.

Data can consist of any characters

Min length: 7 Max length: 45
device.mobilePhoneModel Copied to clipboard String OPTIONAL

The mobile phone manufacturer's identifier for the model of the mobile device used to initiate the payment.

Data can consist of any characters

Min length: 1 Max length: 255
order Copied to clipboard REQUIRED

Information about the order associated with this transaction.

order.amount Copied to clipboard Decimal REQUIRED

The total amount for the order.  This is the net amount plus any merchant charge amounts.If you provide any sub-total amounts, then the sum of these amounts (order.itemAmount, order.taxAmount, order.shippingAndHandlingAmount, order.cashbackAmount, order.gratuityAmount, order.merchantCharge.amount and order.dutyAmount), minus the order.discountAmount must equal the net amount.

The value of this field in the response is zero if payer funds are not transferred.

Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.

Min length: 1 Max length: 14
order.currency Copied to clipboard Upper case alphabetic text REQUIRED

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

Data must consist of the characters A-Z

Min length: 3 Max length: 3
order.custom Copied to clipboard String OPTIONAL

Information about this order that is of interest to you.

For example order.custom.X, where 'X' is defined by you and must be less than 100 characters from the set A-Z, a-z, 0-9. For example, order.custom.salesRegion. You can specify up to 50 such fields. They are not sent to acquirers.

Data can consist of any characters

Min length: 1 Max length: 250
order.customerNote Copied to clipboard String OPTIONAL

A note from the payer about this order.

Data can consist of any characters

Min length: 1 Max length: 250
order.description Copied to clipboard String OPTIONAL

Short textual description of the contents of the order for display to the payer on the payment provider's website.

Data can consist of any characters

Min length: 1 Max length: 127
order.discount Copied to clipboard OPTIONAL

Information about a price reduction you have applied to the order.

For example, you may apply discounts for trade, employees, bulk purchase, or a sales promotion.

order.discount.amount Copied to clipboard Decimal OPTIONAL

The total amount of the discount you have applied to the order.

Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.

Min length: 1 Max length: 14
order.discount.code Copied to clipboard String OPTIONAL

The code you use to identify the reason for the discount.

Data can consist of any characters

Min length: 1 Max length: 40
order.discount.description Copied to clipboard String OPTIONAL

A description of your reason for the discount.

Data can consist of any characters

Min length: 1 Max length: 127
order.dutyAmount Copied to clipboard Decimal OPTIONAL

The duty amount (also known as customs tax, tariff or dues) for the order.

Data is a decimal number.

Max value: 1000000000000 Min value: 0 Max post-decimal digits: 3
order.gratuityAmount Copied to clipboard Decimal OPTIONAL

The amount the payer has chosen to provide as a gratuity or tip in addition to the amount they are paying for the goods or services they are purchasing from you.

The gratuity amount is included in the total amount of the order you provide in order.amount.

Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.

Min length: 1 Max length: 14
order.owningEntity Copied to clipboard String OPTIONAL

Your identifier for the part of your organization that is responsible for the order.

You might provide this data when you want to track the accountability for the order. For example, store number, sales region, branch, or profit center

Data can consist of any characters

Min length: 1 Max length: 40
order.reference Copied to clipboard String OPTIONAL

An optional identifier for the order.

For example, a shopping cart number, an order number, or an invoice number.

Data can consist of any characters

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

The total shipping and handling amount for the order, including taxes on the shipping and/or handling.

Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.

Min length: 1 Max length: 14
order.shippingAndHandlingTaxAmount Copied to clipboard Decimal OPTIONAL

The tax amount levied on the shipping and handling amount for the order.

This amount is included in the shipping and handling amount provided in field order.shippingAndHandlingAmount.

Data is a decimal number.

Max value: 1000000000000 Min value: 0 Max post-decimal digits: 3
order.shippingAndHandlingTaxRate Copied to clipboard Decimal OPTIONAL

The tax rate applied to the shipping and handling amount for the order to determine the shipping and handling tax amount.

For a tax rate of 2.5% provide 0.025.

Data is a decimal number.

Max value: 1000000000000000000 Min value: 0 Max post-decimal digits: 4
order.tax[n] Copied to clipboard OPTIONAL

Use this parameter group to provide a breakdown of tax types, amount per tax type, and rate per tax type included in order.taxAmount.

order.tax[n].amount Copied to clipboard Decimal OPTIONAL

The tax amount included in this order for the tax type.

Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.

Min length: 1 Max length: 14
order.tax[n].rate Copied to clipboard Decimal OPTIONAL

The tax rate (percentage) used to determine the tax amount included in this order for the tax type.

Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.

Min length: 1 Max length: 6
order.tax[n].type Copied to clipboard String OPTIONAL

The type of tax included in the order amount.

The correct value as used by your acquirer may have to be provided. Contact your payment service provider for details.

Data can consist of any characters

Min length: 1 Max length: 50
order.taxAmount Copied to clipboard Decimal OPTIONAL

The total amount of tax included in this order.

This value will be used for all pay orders and full capture transactions unless you provide us with a different amount in the transaction.taxAmount.
This amount is the sum of the tax amount for all the items contained in the order. If you supply both this value and any line item details, then this amount MUST equal the sum of the item.quantity times the item.unitTaxAmount for all the line items.

Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.

Min length: 1 Max length: 14
order.notificationUrl Copied to clipboard Url OPTIONAL

The URL to which the gateway will send Webhook notifications when an order is created or updated.

To receive notifications at this URL, you must enable Webhook notifications in Merchant Administration. Ensure the URL is HTTPS

Ensure that this is a valid URL according to RFC 1738.

partnerSolutionId Copied to clipboard 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

Min length: 1 Max length: 40
responseControls Copied to clipboard OPTIONAL

Container for fields that control the response returned for the request.

responseControls.sensitiveData Copied to clipboard String OPTIONAL

Indicates how sensitive data is returned in the response.

Data can consist of any characters

Min length: 1 Max length: 50
risk Copied to clipboard OPTIONAL

Information relevant to risk assessment.

risk.custom Copied to clipboard String OPTIONAL

Additional data passed to third-party risk assessment providers.

This field is only relevant if you use a third-party risk assessment provider, and you have agreed with them the values to provide (maximum 100 characters in a field name from the set A-Z, a-z, 0-9, maximum 4kB in length of values across all custom risk fields). An example might be:
Field: risk.custom.headOfficeLocation
Value: London UK

Data can consist of any characters

Min length: 1 Max length: 4000
risk.paymentRecipient Copied to clipboard OPTIONAL

Details about the recipient of the payment and the destination account for the payment.

Your acquirer may require you to provide these details if you are a financial institution (Merchant Category Code 6012) submitting a transaction for a person paying off outstanding debts. Otherwise, do not provide these data elements.

risk.paymentRecipient.accountIdentifier Copied to clipboard String REQUIRED

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

Min length: 1 Max length: 50
risk.paymentRecipient.dateOfBirth Copied to clipboard Date REQUIRED

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

risk.paymentRecipient.lastName Copied to clipboard String REQUIRED

Last name of the primary payment recipient.

Data can consist of any characters

Min length: 1 Max length: 50
risk.paymentRecipient.postcodeZip Copied to clipboard String REQUIRED

Postcode of the primary payment recipient.

Data can consist of any characters

Min length: 1 Max length: 10
session.id Copied to clipboard 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

Min length: 31 Max length: 35
session.version Copied to clipboard 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

Min length: 10 Max length: 10
shipping Copied to clipboard OPTIONAL

Shipping information for this order.

shipping.address Copied to clipboard OPTIONAL

The address to which this order will be shipped.

shipping.address.city Copied to clipboard String OPTIONAL

The city portion of the address.

Data can consist of any characters

Min length: 1 Max length: 100
shipping.address.company Copied to clipboard String OPTIONAL

The name of the company associated with this address.

Data can consist of any characters

Min length: 1 Max length: 100
shipping.address.country Copied to clipboard Upper case alphabetic text OPTIONAL

The 3 letter ISO standard alpha country code of the address.

Data must consist of the characters A-Z

Min length: 3 Max length: 3
shipping.address.postcodeZip Copied to clipboard 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, ' ', '-'

Min length: 1 Max length: 10
shipping.address.stateProvince Copied to clipboard String OPTIONAL

The state or province of the address.

Data can consist of any characters

Min length: 1 Max length: 20
shipping.address.street Copied to clipboard 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

Min length: 1 Max length: 100
shipping.address.street2 Copied to clipboard String OPTIONAL

The second line of the address (if provided).

Data can consist of any characters

Min length: 1 Max length: 100
shipping.contact Copied to clipboard OPTIONAL

Details of the contact person at the address the goods will be shipped to.

shipping.contact.email Copied to clipboard 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

shipping.contact.firstName Copied to clipboard String OPTIONAL

The first name of the person to whom the order is being shipped.

Data can consist of any characters

Min length: 1 Max length: 50
shipping.contact.lastName Copied to clipboard String OPTIONAL

The last name or surname of the person to whom the order is being shipped.

Data can consist of any characters

Min length: 1 Max length: 50
shipping.contact.mobilePhone Copied to clipboard 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)

Mandatory country code: true Max total digits: 15
shipping.contact.phone Copied to clipboard 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)

Mandatory country code: true Max total digits: 15
shipping.method Copied to clipboard 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.

shipping.origin.postcodeZip Copied to clipboard 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, ' ', '-'

Min length: 1 Max length: 10
sourceOfFunds Copied to clipboard REQUIRED

Information about the payment type selected by the payer for this payment and the source of the funds.

Depending on the payment type the source of the funds can be a debit or credit card, bank account, or account with a browser payment provider (such as PayPal).

For card payments the source of funds information may be represented by combining one or more of the following: explicitly provided card details, a session identifier which the gateway will use to look up the card details and/or a card token. Precedence rules will be applied in that explicitly provided card details will override session card details which will override card token details. Each of these may represent partial card details, however the combination must result in a full and complete set of card details. See Using Multiple Sources of Card Details for examples.

sourceOfFunds.provided Copied to clipboard OPTIONAL

Information about the source of funds when it is directly provided (as opposed to via a token or session).

For browser payments, the source of funds details are usually collected from the payer on the payment provider's website and provided to you when you retrieve the transaction details (for a successful transaction). However, for some payment types (such as giropay), you must collect the information from the payer and supply it here.

sourceOfFunds.provided.bancontact Copied to clipboard OPTIONAL

Additional details related to a Bancontact payment.

sourceOfFunds.provided.bancontact.bankAccountHolder Copied to clipboard String REQUIRED

The name of the bank account holder for the payer's bank account.

Data can consist of any characters

Min length: 1 Max length: 255
sourceOfFunds.provided.blik Copied to clipboard OPTIONAL

Additional details related to a BLIK browser payment.

sourceOfFunds.provided.blik.bankAccountHolder Copied to clipboard String REQUIRED

The name of the bank account holder for the payer's bank account.

Data can consist of any characters

Min length: 1 Max length: 255
sourceOfFunds.provided.boletoBancario Copied to clipboard OPTIONAL

Additional details related to a Boleto Bancario browser payment.

When processing a Boleto Bancario payment you must also provide the payer's national identifier (customer.nationalId), your reference to the payer (customer.id) and the payer's date of birth (customer.dateOfBirth)

sourceOfFunds.provided.boletoBancario.bankAccountHolder Copied to clipboard String REQUIRED

The name of the bank account holder for the payer's bank account.

Data can consist of any characters

Min length: 1 Max length: 255
sourceOfFunds.provided.enets Copied to clipboard OPTIONAL

Additional details related to an eNETS browser payment.

Note: if you provide data for an eNETS payment, then you must also provide an email address for the customer in customer.email and a phone number for the customer in either customer.phone or customer.mobilePhone

sourceOfFunds.provided.enets.bankAccountHolder Copied to clipboard String REQUIRED

The name of the bank account holder for the payer's bank account.

Data can consist of any characters

Min length: 1 Max length: 255
sourceOfFunds.provided.epsUeberweisung Copied to clipboard OPTIONAL

Additional details related to a eps-Überweisung browser payment.

sourceOfFunds.provided.epsUeberweisung.bankAccountCountryCode Copied to clipboard Alpha REQUIRED

The country where the payer has their bank account.

Provide the ISO 3166 alpha-3 country code for this country.

Data may consist of the characters a-z, A-Z

Min length: 3 Max length: 3
sourceOfFunds.provided.epsUeberweisung.bankAccountHolder Copied to clipboard String OPTIONAL

The name of the bank account holder for the payer's bank account.

Data can consist of any characters

Min length: 0 Max length: 255
sourceOfFunds.provided.giropay Copied to clipboard OPTIONAL

Additional information required by the gateway to initiate a giropay browser payment.

sourceOfFunds.provided.giropay.bankIdentifier Copied to clipboard Digits OPTIONAL

German bank identifier (Bankleitzahl) for the payer's bank account.

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

Min length: 8 Max length: 8
sourceOfFunds.provided.giropay.bic Copied to clipboard Alphanumeric OPTIONAL

The international Business Identifier Code (BIC) for the payer's bank account.

Data may consist of the characters 0-9, a-z, A-Z

Min length: 8 Max length: 11
sourceOfFunds.provided.grabPay Copied to clipboard OPTIONAL

Additional details related to GrabPay browser payment.

sourceOfFunds.provided.grabPay.accountHolder Copied to clipboard String REQUIRED

The name of the account holder for the payer's GrabPay account.

Data can consist of any characters

Min length: 3 Max length: 100
sourceOfFunds.provided.ideal Copied to clipboard OPTIONAL

Additional details related to an iDEAL browser payment.

When processing an iDEAL payment you can also provide the payer's bank identification code (ideal.bic),

sourceOfFunds.provided.ideal.bic Copied to clipboard Alphanumeric OPTIONAL

The international Business Identifier Code (BIC) for the payer's bank account.

Data may consist of the characters 0-9, a-z, A-Z

Min length: 8 Max length: 11
sourceOfFunds.provided.klarnaPayLater Copied to clipboard OPTIONAL

Additional details related to a Klarna Pay Later payment.

sourceOfFunds.provided.klarnaPayLater.bankAccountCountryCode Copied to clipboard Upper case alphabetic text REQUIRED

The country where the payer has their bank account.

Provide the ISO 3166 alpha-3 country code for this country.

Data must consist of the characters A-Z

Min length: 3 Max length: 3
sourceOfFunds.provided.klarnaPayNow Copied to clipboard OPTIONAL

Additional details related to a Klarna Pay Now payment.

sourceOfFunds.provided.klarnaPayNow.bankAccountCountryCode Copied to clipboard Alpha REQUIRED

The country where the payer has their bank account.

Provide the ISO 3166 alpha-3 country code for this country.

Data may consist of the characters a-z, A-Z

Min length: 3 Max length: 3
sourceOfFunds.provided.openBankingBankTransfer Copied to clipboard OPTIONAL

Additional details related to Open Banking Bank Transfer.

sourceOfFunds.provided.openBankingBankTransfer.aspspId Copied to clipboard String REQUIRED

Identifier of the payer's bank, also known as ASPSP (Account Servicing Payment Services Provider)

Data can consist of any characters

Min length: 1 Max length: 256
sourceOfFunds.provided.oxxo Copied to clipboard OPTIONAL

Additional details related to an OXXO browser payment.

When processing an OXXO payment you must also provide the payer's national identifier (customer.nationalId), your reference to the payer (customer.id) and the payer's date of birth (customer.dateOfBirth).

sourceOfFunds.provided.oxxo.bankAccountHolder Copied to clipboard String REQUIRED

The name of the bank account holder for the payer's bank account.

Data can consist of any characters

Min length: 1 Max length: 255
sourceOfFunds.provided.oxxo.dueDate Copied to clipboard Date OPTIONAL

The date by which your payer has to make the payment.

Do not provide a due date for USD currency transactions.

Data must comply with ISO 8601 extended date format, yyyy-mm-dd

sourceOfFunds.provided.payU Copied to clipboard OPTIONAL

Additional details related to a PayU browser payment.

sourceOfFunds.provided.payU.bankAccountCountryCode Copied to clipboard Alpha REQUIRED

The country where the payer has their bank account.

Provide the ISO 3166 alpha-3 country code for this country.

Data may consist of the characters a-z, A-Z

Min length: 3 Max length: 3
sourceOfFunds.provided.payU.bankAccountHolder Copied to clipboard String OPTIONAL

The name of the bank account holder for the payer's bank account.

Data can consist of any characters

Min length: 0 Max length: 255
sourceOfFunds.provided.payconiq Copied to clipboard OPTIONAL

Additional details related to a Payconiq payment.

sourceOfFunds.provided.payconiq.countryCode Copied to clipboard Alpha REQUIRED

This is the country of the payer's payconiq account.

Provide the ISO 3166 alpha-3 country code for this country.

Data may consist of the characters a-z, A-Z

Min length: 3 Max length: 3
sourceOfFunds.provided.paysafecard Copied to clipboard OPTIONAL

Additional details related to a paysafecard browser payment.

sourceOfFunds.provided.paysafecard.countryCode Copied to clipboard Alpha REQUIRED

The country where the payer has their bank account.

Provide the ISO 3166 alpha-3 country code for this country.

Data may consist of the characters a-z, A-Z

Min length: 3 Max length: 3
sourceOfFunds.provided.poli Copied to clipboard OPTIONAL

Additional details related to a POLi browser payment.

sourceOfFunds.provided.poli.bankAccountHolder Copied to clipboard String REQUIRED

The name of the bank account holder for the payer's bank account.

Data can consist of any characters

Min length: 1 Max length: 255
sourceOfFunds.provided.przelewy24 Copied to clipboard OPTIONAL

Additional details related to a Przelewy24 browser payment.

sourceOfFunds.provided.przelewy24.bankAccountHolder Copied to clipboard String REQUIRED

The name of the bank account holder for the payer's bank account.

Data can consist of any characters

Min length: 1 Max length: 255
sourceOfFunds.provided.sepa Copied to clipboard OPTIONAL

Details about the payer's bank account used for a payment made using SEPA

sourceOfFunds.provided.sepa.bankAccountHolder Copied to clipboard String REQUIRED

The name of the bank account holder for the payer's bank account.

Data can consist of any characters

Min length: 3 Max length: 100
sourceOfFunds.provided.sepa.iban Copied to clipboard String REQUIRED

The International Bank Account Number (IBAN) for the payer's bank account.

By default, the bank account number will be returned in a masked format, for example, xxxxxx0000. If you wish to return unmasked bank account numbers, you must have the requisite permission, set responseControls.sensitiveData, and authenticate your call to the API using certificate authentication. Contact your payment service provider for further information.

Data can consist of any characters

Min length: 1 Max length: 50
sourceOfFunds.provided.sofort Copied to clipboard OPTIONAL

Additional details related to a Sofort (Klarna) payment.

sourceOfFunds.provided.sofort.bankAccountCountryCode Copied to clipboard Upper case alphabetic text OPTIONAL

The country where the payer has their bank account.

Provide the ISO 3166 alpha-3 country code for this country.

Data must consist of the characters A-Z

Min length: 3 Max length: 3
sourceOfFunds.provided.trustly Copied to clipboard OPTIONAL

Additional details related to a Trustly.

sourceOfFunds.provided.trustly.bankAccountCountryCode Copied to clipboard Alpha REQUIRED

The country where the payer has their bank account.

Provide the ISO 3166 alpha-3 country code for this country.

Data may consist of the characters a-z, A-Z

Min length: 3 Max length: 3
sourceOfFunds.provided.trustly.bankAccountHolder Copied to clipboard String REQUIRED

The name of the bank account holder for the payer's bank account.

Data can consist of any characters

Min length: 1 Max length: 255
sourceOfFunds.provided.weChatPay Copied to clipboard OPTIONAL

Additional details related to a WeChat Pay browser payment.

sourceOfFunds.provided.weChatPay.accountHolder Copied to clipboard String REQUIRED

The name of the account holder for the payer's WeChat Pay account.

Data can consist of any characters

Min length: 1 Max length: 255
sourceOfFunds.type Copied to clipboard Enumeration REQUIRED

The payment method used for this payment.

If you are passing card data (in any form) on the API, then you need to set this value, and also provide the card details in the sourceOfFunds.provided.card group. In the case of digital wallets or device payment methods, you must also populate the order.walletProvider field.

If you are making a payment with a gateway token, then you can leave this field unset, and only populate the sourceOfFunds.token field. However you can set this to CARD if you want to overwrite or augment the token data with a card security code, expiry date, or cardholder name.

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

ALIPAY

The payer selected the payment method Alipay.

BANCONTACT

The payer selected the payment method Bancontact.

BLIK

The payer selected the payment method BLIK.

BOLETO_BANCARIO

The payer selected the payment method Boleto Bancario.

BROWSER_PAYMENT

The payer selected to pay using a browser payment. Refer to the sourceOfFunds.browserPayment parameter group for additional details.

ENETS

The payer selected the payment method eNETS.

EPS_UEBERWEISUNG

The payer selected the payment method eps-Überweisung.

GIROPAY

The payer selected the payment method giropay.

GRABPAY

The payer selected the payment method GrabPay.

IDEAL

The payer selected the payment method iDEAL.

KLARNA_FINANCING

The payer selected the payment method Klarna financing.

KLARNA_PAY_LATER

The payer selected the payment method Klarna Pay Later.

KLARNA_PAY_NOW

The payer selected the payment method Klarna Pay Now.

MERCADO_PAGO_CHECKOUT

The payer selected the payment method Mercado Pago Checkout.

MULTIBANCO

The payer selected the payment method Multibanco.

OPEN_BANKING_BANK_TRANSFER

The payer selected the payment method Open Banking Bank Transfer.

OXXO

The payer selected the payment method OXXO.

PAYCONIQ

The payer selected the payment method payconiq.

PAYPAL

The payer selected the payment method PayPal.

PAYSAFECARD

The payer selected the payment method paysafecard.

PAYU

The payer selected the payment method PayU.

POLI

The payer selected the payment method POLi.

PRZELEWY24

The payer selected the payment method Przelewy24.

SEPA

The payer selected the payment method SEPA.

SOFORT

The payer selected the payment method Sofortbanking.

TRUSTLY

The payer selected the payment method Trustly.

UNION_PAY

The payer selected the payment method UnionPay.

WECHAT_PAY

The payer selected the payment method WeChatPay.

transaction Copied to clipboard OPTIONAL

Information about this transaction.

transaction.merchantNote Copied to clipboard String OPTIONAL

Your note about this transaction.

Data can consist of any characters

Min length: 1 Max length: 250
transaction.reference Copied to clipboard String OPTIONAL

An optional identifier for this transaction.

Data can consist of any characters

Min length: 1 Max length: 40

Response Copied to clipboard

Fields Copied to clipboard

accountFunding Copied to clipboard CONDITIONAL

Additional details for account funding transactions (order.purchaseType=ACCOUNT_FUNDING).

Account funding transactions are transactions that pull money from the sender's card account for the purpose of funding another account, the recipient's account. Depending on the type of account funding transaction you may be required to provide some or all the details in this parameter group.

accountFunding.purpose Copied to clipboard 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.

accountFunding.recipient Copied to clipboard CONDITIONAL

Details about the recipient who will subsequently receive the funds that you are debiting from the sender in this transaction.

accountFunding.recipient.address Copied to clipboard CONDITIONAL

Details of the recipient's address.

accountFunding.recipient.address.city Copied to clipboard String CONDITIONAL

The city portion of the address.

Data can consist of any characters

Min length: 1 Max length: 100
accountFunding.recipient.address.country Copied to clipboard Upper case alphabetic text CONDITIONAL

The 3 letter ISO standard alpha country code of the address.

Data must consist of the characters A-Z

Min length: 3 Max length: 3
accountFunding.recipient.address.postCodeZip Copied to clipboard String CONDITIONAL

The post code or zip code of the address.

Data can consist of any characters

Min length: 1 Max length: 10
accountFunding.recipient.address.stateProvinceCode Copied to clipboard String CONDITIONAL

The second part of the ISO 3166-2 country subdivision code for the state or province of the address.

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

Min length: 1 Max length: 3
accountFunding.recipient.address.street Copied to clipboard String CONDITIONAL

The first line of the address.

Data can consist of any characters

Min length: 1 Max length: 100
accountFunding.recipient.address.street2 Copied to clipboard String CONDITIONAL

The second line of the address.

Data can consist of any characters

Min length: 1 Max length: 100
accountFunding.recipient.firstName Copied to clipboard String CONDITIONAL

First name of the recipient.

Data can consist of any characters

Min length: 1 Max length: 50
accountFunding.recipient.identification Copied to clipboard CONDITIONAL

Identification of the recipient.

accountFunding.recipient.identification.country Copied to clipboard Upper case alphabetic text CONDITIONAL

The ISO 3166 three-letter country code of the issuer of the identification.

Data must consist of the characters A-Z

Min length: 3 Max length: 3
accountFunding.recipient.identification.type Copied to clipboard Enumeration CONDITIONAL

The type of identification provided for the recipient.

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

ALIEN_REGISTRATION_NUMBER

The recipient's identification type is an alien registration number issued by U.S. Citizenship and Immigration Services (USCIS) to immigrants who apply to live in the United States.

BUSINESS_TAX_ID

The recipient's identification type is a business tax id which is assigned to the business entity by the tax department.

COMPANY_REGISTRATION_NUMBER

The recipient's identification type is a company registration number which is issued to the company at the time of its incorporation.

CUSTOMER_IDENTIFICATION

The recipient's identification type is an unspecified form of customer identification through which the recipient can be identified and verified.

DATE_OF_BIRTH

The recipient's identification type is date of birth.

DRIVERS_LICENSE

The recipient's identification type is a driving license.

EMAIL

The recipient's identification type is an email address.

GOVERNMENT_ISSUED

The recipient's identification type is government issued.

INDIVIDUAL_TAX_ID

The recipient's identification type is an individual tax id which is assigned to the individual by the tax department.

LAW_ENFORCEMENT_IDENTIFICATION

The recipient's identification type is a law enforcement identification.

MILITARY_IDENTIFICATION

The recipient's identification type is a military identification which is issued by the department of defense and military.

NATIONAL_IDENTIFICATION_CARD

The recipient's identification type is a national identification card issued by the recipient's country.

OTHER

The recipient's identification type cannot be classified using any of the other categories. This is the default value.

PASSPORT

The recipient's identification type is a passport.

PHONE_NUMBER

The recipient's identification type is a phone number.

PROXY_IDENTIFICATION

The recipient's identification type is a proxy identification.

SOCIAL_SECURITY_NUMBER

The recipient's identification type is a social security number issued by Social Security Administration (SSA) to U.S. citizens, permanent residents and eligible non-immigrant workers in the United States.

TRAVEL_IDENTIFICATION

The recipient's identification type is a travel document other than a passport.

accountFunding.recipient.identification.value Copied to clipboard String CONDITIONAL

The identification value/number for the type of identification provided in accountFunding.recipient.identification.type.

Data can consist of any characters

Min length: 1 Max length: 50
accountFunding.recipient.lastName Copied to clipboard String CONDITIONAL

Last name of the recipient.

Data can consist of any characters

Min length: 1 Max length: 50
accountFunding.recipient.middleName Copied to clipboard String CONDITIONAL

Middle name of the recipient.

Data can consist of any characters

Min length: 1 Max length: 50
accountFunding.reference Copied to clipboard 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

Min length: 1 Max length: 50
accountFunding.senderIsRecipient Copied to clipboard 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'.

accountFunding.senderType Copied to clipboard 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.

action Copied to clipboard CONDITIONAL

Actions that you want the gateway to perform.

action.refundAuthorization Copied to clipboard 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'.

agreement Copied to clipboard CONDITIONAL

A series of related orders that execute one commercial agreement.

For example, linking the orders for a series of recurring payments (a mobile phone subscription), split tenders (one payment using two cards), or when the merchant offers to take payments by a series of installments (hire purchase).

You must provide this data for some types of payments (such as recurring), but you can provide it for any cases where you want to link orders together.

agreement.amountVariability Copied to clipboard Enumeration CONDITIONAL

Indicates if all the payments within the agreement use the same amount or if the amount differs between the payments.

The field must be provided for recurring payment agreements.

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

FIXED

All payments in the recurring payment agreement have the same amount. Examples include magazine subscriptions or gym memberships.

VARIABLE

The amount for the payments within the recurring payment agreement differs between payments. Examples include usage-based charges like utility or phone bills.

agreement.customData Copied to clipboard String CONDITIONAL

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

Min length: 1 Max length: 2048
agreement.expiryDate Copied to clipboard Date CONDITIONAL

Date at which your agreement with the payer to process payments expires.

Data must comply with ISO 8601 extended date format, yyyy-mm-dd

agreement.id Copied to clipboard String CONDITIONAL

Your identifier for the agreement you have with the payer to process payments.

When you collect cards from your payers and store them for later use, you must provide an agreement ID when you use the stored values for:

  • Recurring payments: you have an agreement with the payer that authorizes you to automatically debit their account at agreed intervals for fixed or variable amounts. For example, gym membership, phone bills, or magazine subscriptions.
  • Installment payments: you have an agreement with the payer that authorizes you to process multiple payments over an agreed period of time for a single purchase. For example, the payer purchases an item for $1000 and pays for it in four monthly installments.
  • Unscheduled: you have an agreement with the payer that authorizes you to process future payments when required. For example, the payer authorizes you to process an account top-up transaction for a transit card when the account balance drops below a certain threshold.
  • Industry Practice: you have an agreement with the payer that authorizes you to initiate additional transactions to fulfil a standard business practice related to an original payment initiated by the payer. For example, a delayed charge for use of the hotel mini bar after the payer has checked out or a no show penalty charge when the payer fails to show for a booking.
When you first establish an agreement with the payer you should also specify the type of agreement in agreement.type.

Data can consist of any characters

Min length: 1 Max length: 100
agreement.maximumAmountPerPayment Copied to clipboard Decimal CONDITIONAL

The maximum amount for a single payment in the series as agreed with the payer under your agreement with them.

The amount must be provided in the currency of the order.

Data is a decimal number.

Max value: 99999999999999 Min value: 0 Max post-decimal digits: 3
agreement.minimumAmountPerPayment Copied to clipboard Decimal CONDITIONAL

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

Max value: 99999999999999 Min value: 0 Max post-decimal digits: 3
agreement.minimumDaysBetweenPayments Copied to clipboard Integer CONDITIONAL

The minimum number of days between payments agreed with the payer under your agreement with them.

JSON number data type, restricted to being positive or zero. In addition, the represented number may have no fractional part.

Min value: 1 Max value: 9999
agreement.numberOfPayments Copied to clipboard Integer CONDITIONAL

The number of merchant-initiated payments within the recurring payment agreement.

JSON number data type, restricted to being positive or zero. In addition, the represented number may have no fractional part.

Min value: 1 Max value: 999
agreement.paymentFrequency Copied to clipboard Enumeration CONDITIONAL

The frequency of the payments within the series as agreed with the payer under your agreement with them.

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

AD_HOC

The agreement if for payments on an ah-hoc basis.

DAILY

The agreement if for a daily payment.

FORTNIGHTLY

The agreement if for a fortnightly payment.

MONTHLY

The agreement if for a monthly payment.

OTHER

The agreement is for payments according to a schedule other than the ones listed in the other enumeration values for this field.

QUARTERLY

The agreement if for a quarterly payment.

TWICE_YEARLY

The agreement if for a payment twice a year.

WEEKLY

The agreement if for a weekly payment.

YEARLY

The agreement if for a yearly payment.

agreement.retailer Copied to clipboard CONDITIONAL

For an installment agreement where the payer purchased goods and/or services from a retailer but entered an installment agreement to pay for this purchase with you, you must provide details about the retailer.

agreement.retailer.abbreviatedTradingName Copied to clipboard String CONDITIONAL

Provide an abbreviation of the retailer's trading name that can be used by the issuer to indicate the retailer on the payer's statement.

Data can consist of any characters

Min length: 1 Max length: 10
agreement.retailer.merchantCategoryCode Copied to clipboard String CONDITIONAL

A 4-digit code used to classify the retailer's business by the type of goods or services it offers.

Data can consist of any characters

Min length: 1 Max length: 4
agreement.retailer.tradingName Copied to clipboard String CONDITIONAL

The retailer's trading name.

Data can consist of any characters

Min length: 1 Max length: 100
agreement.startDate Copied to clipboard Date CONDITIONAL

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

agreement.type Copied to clipboard Enumeration CONDITIONAL

The type of commercial agreement that the payer has with you.

Specify the agreement type when you have provided a value for agreement.id and this payment is the first in a series of payments. The default value is OTHER.

The gateway will use the value you specify for subsequent payments in the series.

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

INSTALLMENT

An agreement where the payer authorizes the payment for a single purchase to be split into a number of payments processed at agreed intervals. For example, pay for a purchase in six monthly installments.

OTHER

An agreement where you want to link related payments for any purpose other than processing recurring, installment, or unscheduled payments. For example, split tender payments.

RECURRING

An agreement where the payer authorizes you to process repeat payments for bills or invoices at agreed intervals (for example, weekly, monthly). The amount might be fixed or variable.

UNSCHEDULED

An agreement where the payer authorizes you to automatically deduct funds for a payment for an agreed purchase when required (unscheduled). For example, auto top-ups when the account value falls below a threshold.

airline Copied to clipboard CONDITIONAL

Airline industry specific data

airline.bookingReference Copied to clipboard Alphanumeric CONDITIONAL

The record locator used to access a specific Passenger Name Record (PNR).

PNR is a record in the database of a booking system that contains the itinerary for a passenger, or a group of passengers traveling together.

Data may consist of the characters 0-9, a-z, A-Z

Min length: 6 Max length: 15
airline.documentType Copied to clipboard Enumeration CONDITIONAL

The type of charge associated with the transaction.

Document Type Code

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

ADDITIONAL_COLLECTION

Additional Collection

AGENCY_EXCHANGE_ORDER

Agency Exchange Order

AGENCY_GROUP_TICKET

Agency Group Ticket

AGENCY_MISCELLANEOUS_CHARGE_ORDER

Agency Misc. Charge Order (MCO)

AGENCY_PASSENGER_TICKET

Agency Passenger Ticket

AGENCY_TOUR_ORDER_OR_VOUCHER

Agency Tour Order/Voucher

AIR_FREIGHT

SPD/Air Freight

ANIMAL_TRANSPORTATION_CHARGE

Animal Transportation Charge

CATALOGUE_MERCHANDISE_ORDERED

Catalogue Merchandise Ordered

CLUB_MEMBERSHIP_FEE

Club Membership Fee

COUPON_BOOK

Coupon Book

CREDIT_CLASS_SERVICE_ADJUSTMENT

Credit Class of Service Adjustment

CREDIT_DENIED_BOARDING

Credit Denied Boarding

CREDIT_EXCHANGE_REFUND

Credit Exchange Refund

CREDIT_LOST_TICKET_REFUND

Credit Lost Ticket Refund

CREDIT_MISCELLANEOUS_REFUND

Credit Misc. Refund

CREDIT_MULTIPLE_UNUSED_TICKETS

Credit Multiple Unused Tickets

CREDIT_OVERCHARGE_ADJUSTMENT

Credit Overcharge Adjustment

CREDIT_UNUSED_TRANSPORTATION

Credit Unused Transportation

DEBT_ADJUSTMENT_DUPLICATE_REFUND_OR_USE

Debt Adjustment Duplicate Refund/Use

DUTY_FREE_SALE

Duty Free Sale

EXCESS_BAGGAGE

Excess Baggage

EXCHANGE_ADJUSTMENT

Exchange Adjustment

EXCHANGE_ORDER

Exchange Order

FIREARMS_CASE

Firearms Case

FREQUENT_FLYER_FEE_OR_PURCHASE

Frequent Flyer Fee/Purchase

FREQUENT_FLYER_FULFILLMENT

Frequent Flyer Fulfillment

FREQUENT_FLYER_OVERNIGHT_DELIVERY_CHARGE

Frequent Flyer Overnight Delivery Charge

GROUP_TICKET

Group Ticket

IN_FLIGHT_ADJUSTMENT

In-flight Adjustment

IN_FLIGHT_CHARGES

In-flight Charges

IN_FLIGHT_DUTY_FREE_PURCHASE

In-flight Duty Free Purchase

IN_FLIGHT_MERCHANDISE_ORDERED

In-flight Merchandise Ordered

IN_FLIGHT_PHONE_CHARGES

In-flight Phone Charges

KENNEL_CHARGE

Kennel Charge

LOST_TICKET_APPLICATION

Lost Ticket Application

MISCELLANEOUS_CHARGE_ORDER_OR_PREPAID_TICKET_ADVICE

Misc. Charge Order (MCO) / Prepaid Ticket Auth.

MISCELLANEOUS_TAXES_FEES

Miscellaneous Tax(es) Fee(s)

PASSENGER_TICKET

Passenger Ticket

SELF_SERVICE_TICKETS

Self-Service Ticket(s)

SENIOR_CITIZEN_DISCOUNT_BOOKLETS

Senior Citizen Discount Booklets

SMALL_PACKAGE_DELIVERY

Small Package Delivery

SPECIAL_SERVICE_TICKET

Special Service Ticket

SUPPORTED_REFUND

Supported Refund

TICKET_BY_MAIL

Ticket by Mail

TOUR_DEPOSIT

Tour Deposit

TOUR_ORDER_VOUCHER

Tour Order Voucher

UNDERCHARGE_ADJUSTMENT

Undercharge Adjustment

UNSUPPORTED_REFUND

Unsupported Refund

UPGRADE_CHARGE

Upgrade Charge

VENDOR_REFUND_CREDIT

Vendor Refund Credit

VENDOR_SALE

Vendor Sale

airline.itinerary Copied to clipboard CONDITIONAL

Itinerary details

airline.itinerary.leg[n] Copied to clipboard CONDITIONAL

Travel leg details.

airline.itinerary.leg[n].carrierCode Copied to clipboard Regex CONDITIONAL

The 2-character IATA airline code or 3 digit accounting code or both of the airline carrier for the trip leg.

Data must match regex

regex \w{2}|\d{3}|\w{2}/\d{3} message Carrier code must be 2 characters, 3 digits or a combination of both in the format: ZZ/999
airline.itinerary.leg[n].conjunctionTicketNumber Copied to clipboard Alphanumeric CONDITIONAL

The ticket containing the coupon for this leg for an itinerary with more than four trip legs.

Data may consist of the characters 0-9, a-z, A-Z

Min length: 11 Max length: 16
airline.itinerary.leg[n].couponNumber Copied to clipboard Alphanumeric CONDITIONAL

The coupon number on the ticket for the trip leg.

Each trip leg requires a separate coupon. The coupon within the series is identified by the coupon number.

Data may consist of the characters 0-9, a-z, A-Z

Min length: 1 Max length: 1
airline.itinerary.leg[n].departureAirport Copied to clipboard Upper case alphabetic text CONDITIONAL

The 3 character IATA airport code of the departure airport for the trip leg.

Data must consist of the characters A-Z

Min length: 3 Max length: 3
airline.itinerary.leg[n].departureDate Copied to clipboard Date CONDITIONAL

Date of departure for the trip leg.

Data must comply with ISO 8601 extended date format, yyyy-mm-dd

airline.itinerary.leg[n].departureTax Copied to clipboard Decimal CONDITIONAL

Tax payable on departure for the trip leg.

Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.

Min length: 1 Max length: 14
airline.itinerary.leg[n].departureTime Copied to clipboard Time CONDITIONAL

Departure time in local time for the departure airport for this trip leg.

Data must comply with ISO 8601 extended time formats, hh:mm[:ss]Z or hh:mm[:ss](+/-)hh[:mm]

airline.itinerary.leg[n].destinationAirport Copied to clipboard Upper case alphabetic text CONDITIONAL

The 3 character IATA airport code for the destination airport for the trip leg.

Data must consist of the characters A-Z

Min length: 3 Max length: 3
airline.itinerary.leg[n].destinationArrivalDate Copied to clipboard Date CONDITIONAL

Arrival date in local time for the destination airport for this trip leg.

Data must comply with ISO 8601 extended date format, yyyy-mm-dd

airline.itinerary.leg[n].destinationArrivalTime Copied to clipboard Time CONDITIONAL

Arrival time in local time for the destination airport for this trip leg.

Data must comply with ISO 8601 extended time formats, hh:mm[:ss]Z or hh:mm[:ss](+/-)hh[:mm]

airline.itinerary.leg[n].endorsementsRestrictions Copied to clipboard Alphanumeric CONDITIONAL

Restrictions (e.g. non-refundable) or endorsements applicable to the trip leg.

Data may consist of the characters 0-9, a-z, A-Z

Min length: 1 Max length: 20
airline.itinerary.leg[n].exchangeTicketNumber Copied to clipboard Alphanumeric CONDITIONAL

New ticket number issued when a ticket is exchanged for the trip leg.

Data may consist of the characters 0-9, a-z, A-Z

Min length: 11 Max length: 16
airline.itinerary.leg[n].fare Copied to clipboard Decimal CONDITIONAL

Total fare payable for the trip leg.

Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.

Min length: 1 Max length: 14
airline.itinerary.leg[n].fareBasis Copied to clipboard Alphanumeric CONDITIONAL

Code defining the rules forming the basis of the fare (type of fare, class entitlement, etc.)

Data may consist of the characters 0-9, a-z, A-Z

Min length: 1 Max length: 24
airline.itinerary.leg[n].fees Copied to clipboard Decimal CONDITIONAL

Total fees payable for the trip leg.

Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.

Min length: 1 Max length: 14
airline.itinerary.leg[n].flightNumber Copied to clipboard Alphanumeric CONDITIONAL

The flight number for the trip leg.

Data may consist of the characters 0-9, a-z, A-Z

Min length: 4 Max length: 6
airline.itinerary.leg[n].stopoverPermitted Copied to clipboard Boolean CONDITIONAL

Indicates if a stopover is permitted for the trip leg.

JSON boolean values 'true' or 'false'.

airline.itinerary.leg[n].taxes Copied to clipboard Decimal CONDITIONAL

Total taxes payable for the trip leg.

Data is a string that consists of the characters 0-9 and '.' and represents a valid decimal number.

Min length: 1 Max length: 14
airline.itinerary.leg[n].travelClass Copied to clipboard Alphanumeric CONDITIONAL

The industry code indicating the class of service (e.g. Business, Coach) for the leg.

Data may consist of the characters 0-9, a-z, A-Z

Min length: 1 Max length: 3
airline.itinerary.numberInParty Copied to clipboard Digits CONDITIONAL

Number of passengers associated with this booking.

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

Min length: 1 Max length: 3
airline.itinerary.originCountry Copied to clipboard Upper case alphabetic text CONDITIONAL

The 3 character ISO 3166-1 alpha-3 country code of the country of origin for the itinerary.

Data must consist of the characters A-Z

Min length: 3 Max length: 3
airline.passenger[n] Copied to clipboard CONDITIONAL

Passenger details

airline.passenger[n].firstName Copied to clipboard String CONDITIONAL

First name of the passenger to whom the ticket is being issued.

Data can consist of any characters

Min length: 1 Max length: 50
airline.passenger[n].frequentFlyerNumber Copied to clipboard String CONDITIONAL

Frequent Flyer or Loyalty Program number for this passenger.

Data can consist of any characters

Min length: 1 Max length: 20
airline.passenger[n].lastName Copied to clipboard String CONDITIONAL

Last name of the passenger to whom the ticket is being issued.

Data can consist of any characters

Min length: 1 Max length: 20
airline.passenger[n].middleName Copied to clipboard String CONDITIONAL

Middle name of the passenger to whom the ticket is being issued.

Data can consist of any characters

Min length: 1 Max length: 50
airline.passenger[n].specificInformation Copied to clipboard Alphanumeric CONDITIONAL

Passenger specific information recorded on the ticket.

Data may consist of the characters 0-9, a-z, A-Z

Min length: 1 Max length: 59
airline.passenger[n].title Copied to clipboard String CONDITIONAL

Title of the passenger to whom the ticket is being issued.

Data can consist of any characters

Min length: 1 Max length: 20
airline.planNumber Copied to clipboard Alphanumeric CONDITIONAL

Plan number supplied by the airline for this booking.

Data may consist of the characters 0-9, a-z, A-Z

Min length: 2 Max length: 2
airline.ticket Copied to clipboard CONDITIONAL

Ticket details

airline.ticket.conjunctionTicketIndicator Copied to clipboard Boolean CONDITIONAL

Indicates if a conjunction ticket with additional coupons was issued.

Conjunction ticket refers to two or more tickets concurrently issued to a passenger and which together constitute a single contract of carriage.

JSON boolean values 'true' or 'false'.

airline.ticket.eTicket Copied to clipboard Boolean CONDITIONAL

Indicates if an electronic ticket was issued.

JSON boolean values 'true' or 'false'.

airline.ticket.exchangedTicketNumber Copied to clipboard Alphanumeric CONDITIONAL

The original ticket number when this is a transaction for an exchanged ticket.

Data may consist of the characters 0-9, a-z, A-Z

Min length: 11 Max length: 16
airline.ticket.issue Copied to clipboard CONDITIONAL

Ticket issue information.

airline.ticket.issue.address Copied to clipboard String CONDITIONAL

The address where the ticket was issued.

Data can consist of any characters

Min length: 1 Max length: 16
airline.ticket.issue.carrierCode Copied to clipboard Regex CONDITIONAL

The 2-character IATA airline code or 3 digit accounting code or both of the airline carrier issuing the ticket.

Data must match regex

regex \w{2}|\d{3}|\w{2}/\d{3} message Carrier code must be 2 characters, 3 digits or a combination of both in the format: ZZ/999
airline.ticket.issue.carrierName Copied to clipboard Alphanumeric CONDITIONAL

Name of airline carrier issuing the ticket.

Data may consist of the characters 0-9, a-z, A-Z

Min length: 1 Max length: 25
airline.ticket.issue.city Copied to clipboard String CONDITIONAL

The city/town where the ticket was issued.

Data can consist of any characters

Min length: 1 Max length: 100
airline.ticket.issue.country Copied to clipboard Upper case alphabetic text CONDITIONAL

The 3 character ISO 3166-1 alpha-3 country code of the country where the ticket was issued.

Data must consist of the characters A-Z

Min length: 3 Max length: 3
airline.ticket.issue.date Copied to clipboard Date CONDITIONAL

The date the ticket was issued.

Data must comply with ISO 8601 extended date format, yyyy-mm-dd

airline.ticket.issue.travelAgentCode