Initiate Checkout

Request to initiate a Hosted Checkout interaction, i.e. a Hosted Payment Page or Embedded Page interaction that allows the payer to select their payment details and make the payment. See Implementing a Hosted Checkout Integration for details.

The gateway returns a session identifier (session.id) that you must include in the Checkout.configure() function.
The gateway automatically expires the session.

POST https://na.gateway.spring.citi.com/api/rest/version/100 / merchant / {merchantId} / session

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

Fields Copied to clipboard

accountFunding Copied to clipboard OPTIONAL

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

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

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

accountFunding.recipient Copied to clipboard OPTIONAL

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

accountFunding.recipient.country Copied to clipboard Upper case alphabetic text OPTIONAL

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

Data must consist of the characters A-Z

Min length: 3 Max length: 3
accountFunding.recipient.dateOfBirth Copied to clipboard 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

accountFunding.recipient.firstName Copied to clipboard String OPTIONAL

First name of the recipient.

Data can consist of any characters

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

Last name of the recipient.

Data can consist of any characters

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

Middle name of the recipient.

Data can consist of any characters

Min length: 1 Max length: 50
accountFunding.recipient.postCodeZip Copied to clipboard String OPTIONAL

The post code or zip code of the recipient.

Data can consist of any characters

Min length: 1 Max length: 10
accountFunding.recipient.stateProvinceCode Copied to clipboard 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

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

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

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

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

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

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

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

Min length: 1 Max length: 10
agreement.retailer.merchantCategoryCode Copied to clipboard 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

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

The retailer's trading name.

Data can consist of any characters

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

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

apiOperation Copied to clipboard String = INITIATE_CHECKOUT FIXED

Any sequence of zero or more unicode characters.

authentication.transactionId Copied to clipboard String OPTIONAL

The transactionId you used for the Initiate Authentication operation.

Data can consist of any characters

Min length: 1 Max length: 40
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
checkoutMode Copied to clipboard Enumeration OPTIONAL

Defines how the Hosted Checkout interaction can be launched.

If you want to immediately redirect the payer from your website (Hosted Payment Page) or open the Embedded Page to make the payment, set this value to WEBSITE. This is the default behavior if the field is not provided.

If you want to provide the payer with a payment link and allow them to make the payment using this link, set this value to PAYMENT_LINK.

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

WEBSITE

Returns a session identifier (session.id) that you need to pass when configuring the Hosted Checkout interaction using the Checkout.configure() function. This is the default value.

constraints Copied to clipboard OPTIONAL

Information about any constraints that apply to this transaction.

Specify constraints to ensure that the transaction conforms to predefined criteria. This is useful if your integration does not directly collect all the transaction values (e.g. a session-based integration or a checkout integration).

constraints.paymentPlans Copied to clipboard OPTIONAL

Information about the payment plan constraints which apply for this transaction.

Specify payment plan constraints to restrict the available payment plan options for this transaction.

constraints.paymentPlans.deferralPeriod Copied to clipboard Integer OPTIONAL

The allowable number of deferral months for the payment plan.

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

Min value: 0 Max value: 99
constraints.paymentPlans.numberOfPayments Copied to clipboard Integer OPTIONAL

The allowable number of installments for the payment plan.

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: 99
constraints.paymentPlans.supported[n] Copied to clipboard String OPTIONAL

The identifiers for the payment plans supported for this transaction.

If you wish to offer any payment plans to the payer, provide the plan identifiers in this field else pass it as empty.

See Payment Plans for the supported payment plans and their identifiers.

Data can consist of any characters

Min length: 1 Max length: 40
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 Copied to clipboard OPTIONAL

Information about the customer, including their contact details.

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.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
customer.taxRegistrationId Copied to clipboard String OPTIONAL

The tax registration identifier of the customer.

Data can consist of any characters

Min length: 1 Max length: 30
debtRepayment Copied to clipboard OPTIONAL

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.

debtRepayment.recipient Copied to clipboard OPTIONAL

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

debtRepayment.recipient.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
debtRepayment.recipient.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

debtRepayment.recipient.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
debtRepayment.recipient.postcodeZip Copied to clipboard String REQUIRED

Postcode of the primary payment recipient.

Data can consist of any characters

Min length: 1 Max length: 10
device Copied to clipboard OPTIONAL

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

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

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

Min length: 1 Max length: 2
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.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
initiator.userId Copied to clipboard 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

Min length: 1 Max length: 256
interaction Copied to clipboard REQUIRED

Information that controls the payer's checkout interaction.

interaction.action.3DSecure Copied to clipboard Enumeration OPTIONAL

Control when you offer 3-D Secure to the payer.

By default, 3-D Secure authentication is offered to the payer if available

Control when you offer 3-D Secure to the payer. By default, 3-D Secure authentication is offered to the payer if available.

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

BYPASS

Do not offer 3DS authentication to the payer.

MANDATORY

Offer 3DS authentication to the payer if it is available.

USE_GATEWAY_RECOMMENDATION

Only offer 3-D Secure Authentication to the payer if the gateway has issued a recommendation to do so. Only applicable if your gateway configuration supports optional payment features.

interaction.cancelUrl Copied to clipboard URI OPTIONAL

The URL to which you want to redirect the payer's browser if they cancel their payment.

This could be a link to the payer's shopping cart, or the home page of your website.

Data must be an absolute URI conforming to the URI syntax published by IETF RFC 2396. The following schemes are forbidden : javascript

interaction.country Copied to clipboard Upper case alphabetic text OPTIONAL

The ISO 3166 alpha-3 country code of the payer's country, to be used to present country-specific content to the payer during the interaction.

For a Secure Remote Commerce interaction, the payer's country is used to present country-specific content such as Terms and Conditions and you only need to provide it, if you wish to override the default payer country you have configured for Secure Remove Commerce interactions.

Note that all content, including country-specific content, will be presented in the language based on the payer's locale provided in the interaction.locale field.

Data must consist of the characters A-Z

Min length: 3 Max length: 3
interaction.displayControl Copied to clipboard OPTIONAL

A group of objects that control the visibility of, and payer-interaction with, displayed information.

interaction.displayControl.billingAddress Copied to clipboard Enumeration OPTIONAL

Indicates if you require the payer to provide their billing address during the payment interaction.

If you do not provide this field, the billing address will be optional.

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

HIDE

Hides data fields from the payer.

MANDATORY

Displays data fields and allows the payer to enter data into these fields.

OPTIONAL

Displays data fields and allows the payer to opt out of data entry for these fields.

READ_ONLY

Data is displayed but cannot be modified.

interaction.displayControl.cardSecurityCode Copied to clipboard Enumeration OPTIONAL

Indicates if you require the payer to provide the card security code for their card payment during the payment interaction.

If you do not provide this field, the card security code will be mandatory.

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

MANDATORY

Displays data fields and allows the payer to enter data into these fields.

OPTIONAL

Displays data fields and allows the payer to opt out of data entry for these fields.

interaction.displayControl.confirmAchAccountNumber Copied to clipboard Enumeration OPTIONAL

Indicates if you wish to display a 'Confirm Account Number' field for the ACH Account Number entry.

If the field is shown, the gateway enforces that the same value is entered in both the 'Account Number' and 'Confirm Account Number' fields.If you do not provide a value for this field, the gateway defaults the value to SHOW.

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

HIDE

Do not display confirm account number.

SHOW

Display confirm account number.

interaction.displayControl.customerEmail Copied to clipboard Enumeration OPTIONAL

Indicates if you require the payer to provide their email address on the payment interaction.

If you do not provide this field, the payer's email address will be hidden.

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

HIDE

Hides data fields from the payer.

MANDATORY

Displays data fields and allows the payer to enter data into these fields.

OPTIONAL

Displays data fields and allows the payer to opt out of data entry for these fields.

READ_ONLY

Data is displayed but cannot be modified.

interaction.displayControl.paymentMethod Copied to clipboard OPTIONAL

A group of objects that control the visibility of, and payer-interaction with payment methods.

interaction.displayControl.paymentMethod.clickToPay.displayMode Copied to clipboard Enumeration OPTIONAL

If Click to Pay is enabled, this will indicate which Hosted Checkout flow to present to the payer.

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

ACCORDION

Displays Click to Pay as an independent payment option. Email address is optional.

EMBEDDED

Embeds Click to Pay as the default payment method. Email address is mandatory to move forward with the payment flow.

interaction.displayControl.paymentTerms Copied to clipboard Enumeration OPTIONAL

Indicates whether you wish to hide payment terms for a payment plan during the payment interaction.

If you do not provide this field the payment terms for a payment plan will be displayed.

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

HIDE

Hides the payment terms from the payer. Note that offering Plan AMEX in some regions may require you to inform the payer of the payment terms before processing the payment.

SHOW_IF_SUPPORTED

Displays the payment terms, if available, to the payer.

interaction.displayControl.shipping Copied to clipboard Enumeration OPTIONAL

Indicates if you wish to hide the shipping details on the payment interaction.

If you don't provide this field, shipping details will be displayed to the payer.

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

HIDE

Hides data fields from the payer.

READ_ONLY

Data is displayed but cannot be modified.

interaction.locale Copied to clipboard String OPTIONAL

A language identifier or IETF language tag to control the language of the payment interaction with the payer (e.g. en_US, es, fr-CA).

By default, the language is determined from the payer's browser. Supply a value for this field only if you wish to override the default behavior. If the language you specify is not supported by the gateway, the payment is displayed in the best matching language.

Data must be a language identifier or IETF language tag

Min length: 2 Max length: 5
interaction.merchant Copied to clipboard OPTIONAL

Information that allows you to display your brand and business details during the payment interaction.

interaction.merchant.address Copied to clipboard OPTIONAL

Information on your business address.

interaction.merchant.address.line1 Copied to clipboard String OPTIONAL

The first line of your business address for display to the payer during the payment interaction.

Data can consist of any characters

Min length: 0 Max length: 100
interaction.merchant.address.line2 Copied to clipboard String OPTIONAL

The second line of your business address for display to the payer during the payment interaction.

Data can consist of any characters

Min length: 0 Max length: 100
interaction.merchant.address.line3 Copied to clipboard String OPTIONAL

The third line of your business address for display to the payer during the payment interaction.

Data can consist of any characters

Min length: 0 Max length: 100
interaction.merchant.address.line4 Copied to clipboard String OPTIONAL

The fourth line of your business address for display to the payer during the payment interaction.

Data can consist of any characters

Min length: 0 Max length: 100
interaction.merchant.email Copied to clipboard Email OPTIONAL

The email address of your business for display to the payer during the payment interaction (e.g. an email address for customer service).

Ensures that the email address is longer than 3 characters and adheres to a generous subset of valid RFC 2822 email addresses

interaction.merchant.name Copied to clipboard String REQUIRED

The name of your business for display to the payer on the payment interaction.

Data can consist of any characters

Min length: 1 Max length: 40
interaction.merchant.phone Copied to clipboard String OPTIONAL

The phone number of your business for display to the payer during the payment interaction.

Data can consist of any characters

Min length: 0 Max length: 20
interaction.merchant.url Copied to clipboard URI OPTIONAL

The URL of your business for display to the payer during the payment interaction.

Data must be an absolute URI conforming to the URI syntax published by IETF RFC 2396. The following schemes are forbidden : javascript

interaction.operation Copied to clipboard Enumeration REQUIRED

Indicates the operation that you wish to perform during the Hosted Checkout interaction.

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

AUTHORIZE

Request for the Hosted checkout interaction to create Authorization transaction for the payment.

NONE

Hosted Checkout will collect the payment details from the payer and securely store them against the Hosted Checkout session. No operation will be performed after the payer interaction.

PURCHASE

Request for the Hosted checkout interaction to create Purchase transaction for the payment.

VERIFY

Request for the Hosted Checkout interaction to verify the payer's account. The payment details are verified using the verification method supported by the acquirer and the data provided in the request.

interaction.redirectMerchantUrl Copied to clipboard URI OPTIONAL

The URL to which you want to return the payer after unsuccessful payment when retry attempts in the session are exhausted.

The URL should be used with retryAttemptCount for redirection.

Data must be an absolute URI conforming to the URI syntax published by IETF RFC 2396. The following schemes are forbidden : javascript

interaction.retryAttemptCount Copied to clipboard Integer OPTIONAL

The number of retry attempts allowed per session.

This is the number of time payer can retry attempts for the unsuccessful payment before it navigates to the merchant portal.

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: 3
interaction.returnUrl Copied to clipboard URI OPTIONAL

The URL to which you want to return the payer after completing the payment attempt.

During the redirect, the gateway will append a resultIndicator parameter to this URL. This parameter determines the result of the payment. See Obtain the Payment Result section.

Data must be an absolute URI conforming to the URI syntax published by IETF RFC 2396. The following schemes are forbidden : javascript

interaction.saveCardForCredentialOnFile Copied to clipboard Enumeration OPTIONAL

Set to indicate a consent checkbox is to be displayed to the payer upon checkout.

If the payer agrees and checks the box, HCO will automatically tokenize their card for future use. The merchant can then retrieve the token using the Retrieve_Order operation

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

PAYER_INITIATED_PAYMENTS

The payer will be asked to provide consent for storing their card details for the purpose of subsequent payer-initiated payments.

interaction.style Copied to clipboard OPTIONAL

Merchant can update the styles to align the checkout page with their branding.

interaction.style.accentColor Copied to clipboard Alphanumeric + additional characters OPTIONAL

The accent color of your business for display to the payer on the payment interaction.

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

Min length: 7 Max length: 7
interaction.style.theme Copied to clipboard Alphanumeric + additional characters OPTIONAL

The theme used to control the look and feel of your checkout interaction.

If you do not provide this field the default theme is will be used.

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

Min length: 1 Max length: 50
interaction.timeout Copied to clipboard Integer OPTIONAL

The duration (in seconds) available to the payer to make a payment.

Set this field when you want to limit the time you reserve the goods or service for this payer. For example, ticket bookings.

If the payment is not completed within this time, their browser will be returned to the website you specified in interaction.timeoutUrl.

Note: Timeouts are best effort and approximate, as some services (for example, 3-D Secure authentication) cannot be interrupted.

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

Min value: 600 Max value: 1800
interaction.timeoutUrl Copied to clipboard URI OPTIONAL

The URL to which you want to return the payer if the payment is not completed in the allowed time.

This will either be the time you specified in interaction.timeout or the gateway default timeout value.

Data must be an absolute URI conforming to the URI syntax published by IETF RFC 2396. The following schemes are forbidden : javascript

interaction.tokens[n] Copied to clipboard Alphanumeric OPTIONAL

Uniquely identifies a card and associated details.

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

Min length: 1 Max length: 40
lineOfBusiness Copied to clipboard 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

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

Information about the order associated with this transaction.

order.amount Copied to clipboard Decimal OPTIONAL

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

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

Either Amount or netAmount must be provided

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

Min length: 1 Max length: 14
order.cashAdvance Copied to clipboard Boolean OPTIONAL

Set this flag if the transaction is a manual cash disbursement transaction, i.e. cash is disbursed upon the acceptance of a card by a financial institution teller.

JSON boolean values 'true' or 'false'.

order.certainty Copied to clipboard Enumeration OPTIONAL

Indicates if you expect to capture the full order amount for which you are requesting authorization.

If you do not provide a value for order.certainty the default configured for you by your payment service provider will be used. The value provided in the response shows the value the gateway sent to the acquirer

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

ESTIMATED

The amount authorized is an estimate of the amount that will be captured. It is possible that the amount captured will be less, or might not be captured at all.

FINAL

The full authorized amount is expected to be captured within the mandated time. The order will only be cancelled in exceptional circumstances (for example, the payer cancelled their purchase).

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.customerOrderDate Copied to clipboard Date OPTIONAL

The date the payer placed the order.

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

order.customerReference Copied to clipboard ASCII Text OPTIONAL

The payer's own reference for the order.

This reference may assist the payer to identify the order in their system. For example, a purchase order number, project identifier, or cost center.

Data consists of ASCII characters

Min length: 0 Max length: 25
order.description Copied to clipboard String OPTIONAL

Short textual description of the contents of the order.

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.invoiceNumber Copied to clipboard String OPTIONAL

The invoice number you issued for this order.

Data can consist of any characters

Min length: 1 Max length: 25
order.item[n] Copied to clipboard OPTIONAL

Information about the items the payer purchases with the order.

order.item[n].brand Copied to clipboard String OPTIONAL

The brand of the item.

For example, Dell.

Data can consist of any characters

Min length: 1 Max length: 127
order.item[n].category Copied to clipboard String OPTIONAL

Your category for the item.

Data can consist of any characters

Min length: 1 Max length: 127
order.item[n].description Copied to clipboard 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

Min length: 1 Max length: 127
order.item[n].detail Copied to clipboard 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.

order.item[n].detail.acquirerCustom Copied to clipboard 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

Min length: 1 Max length: 4000
order.item[n].detail.commodityCode Copied to clipboard 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.

order.item[n].detail.tax[n] Copied to clipboard OPTIONAL

Information about the taxes per line item.

order.item[n].detail.tax[n].amount Copied to clipboard 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.

Min length: 1 Max length: 14
order.item[n].detail.tax[n].rate Copied to clipboard 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.

Min length: 1 Max length: 6
order.item[n].detail.tax[n].type Copied to clipboard 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

Min length: 1 Max length: 127
order.item[n].detail.unitDiscountRate Copied to clipboard 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.

Min length: 1 Max length: 6
order.item[n].detail.unitTaxRate Copied to clipboard 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.

Min length: 1 Max length: 6
order.item[n].detail.unitTaxType Copied to clipboard 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

Min length: 1 Max length: 10
order.item[n].detail.unspsc Copied to clipboard 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.

order.item[n].detail.upc Copied to clipboard Digits OPTIONAL

The Universal Product Code (UPC) for the item.

Data is a number between 1 and 9999999999999999 represented as a string.

order.item[n].image Copied to clipboard URI OPTIONAL

The URL of the item image for display to the payer during the payment interaction.For best results, use images in JPEG or PNG formats.The recommended size is 144 pixels width and 144 pixels height.

The image will be cropped at this height and width.

Data must be an absolute URI conforming to the URI syntax published by IETF RFC 2396. The URI must be one of the following schemes : https

order.item[n].industryCategory Copied to clipboard 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_OTHER

We 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.

HEALTHCARE_DENTAL
HEALTHCARE_OTHER
HEALTHCARE_PRESCRIPTION
HEALTHCARE_VISION
order.item[n].name Copied to clipboard String REQUIRED

A short name describing the item.

Data can consist of any characters

Min length: 1 Max length: 127
order.item[n].quantity Copied to clipboard 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.

Min length: 0 Max length: 30
order.item[n].serialNumbers Copied to clipboard String OPTIONAL

A list of serial numbers for this item.

Provide the serial numbers for the item that you have registered with the payment plan service provider for payment plan offers.

Data can consist of any characters

Min length: 0 Max length: 200
order.item[n].sku Copied to clipboard String OPTIONAL

The SKU (Stock Keeping Unit) or the item identifier for this item.

Data can consist of any characters

Min length: 1 Max length: 127
order.item[n].unitDiscountAmount Copied to clipboard 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.

Min length: 1 Max length: 14
order.item[n].unitOfMeasure Copied to clipboard 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

Min length: 1 Max length: 10
order.item[n].unitPrice Copied to clipboard 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.

Min length: 1 Max length: 14
order.item[n].unitTaxAmount Copied to clipboard 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.

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

The total item amount for the order.

If you do not provide this value but provide line item data, then this amount is calculated as the sum of the item.quantity times the item.unitPrice for all the line items (total item amount).
If you provide both this value and line item data, then the order.itemAmount MUST equal the total item 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.localTaxRegistrationId Copied to clipboard String OPTIONAL

Your tax registration identifier provided by the Local/State/Province tax authority.

If you are a Canadian merchant, use this field to provide your Tax Registration ID for paying Provincial Sales Tax (PST).

Data can consist of any characters

Min length: 1 Max length: 25
order.marketplace Copied to clipboard OPTIONAL

Use this parameter group to provide additional information if you are a marketplace.You are considered a marketplace if you operate an electronic commerce website or mobile application that brings together payers and retailers and you are selling the goods or services on behalf of the retailer.In this case, the card schemes may require you to register with them as a marketplace and assign you a Marketplace ID.

You should provide this identifier to your payment service provider so that the gateway can automatically include it in all transaction messages to your acquirer.

order.marketplace.retailerLocation Copied to clipboard Enumeration OPTIONAL

Provide information about the location of the retailers for goods or services included in this order.Where a retailer is located in a country different from your country, they are considered a foreign retailer, otherwise they are considered a domestic retailer.

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

DOMESTIC_ONLY

The order only contains items from domestic retailers.

FOREIGN_AND_DOMESTIC

The order contains items from both foreign and domestic retailers.

FOREIGN_ONLY

The order only contains items from foreign retailers.

order.merchantCategoryCode Copied to clipboard Digits OPTIONAL

A 4-digit code used to classify your business by the type of goods or services it offers.This is also known as the Merchant Category Code (MCC).

You only need to provide the MCC if you want to override the default value configured for your acquirer link.The value you provide must match one of those configured by your payment service provider.

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

Min length: 4 Max length: 4
order.merchantCharge Copied to clipboard OPTIONAL

Information about additional fees that you are charging the payer for processing the payment for this order, for example, a surcharge, convenience or service fee.

order.merchantCharge.type Copied to clipboard Enumeration REQUIRED

The type of the additional fee that you are charging the payer.

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

SURCHARGE

A fee that covers your cost of accepting accepting a payment method.

order.netAmount Copied to clipboard Decimal OPTIONAL

The amount payable for the order before surcharging is applied.

If you specify a net amount the gateway will calculate the surcharge for you.

Either Amount or netAmount must be provided

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

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.purchaseType Copied to clipboard Enumeration OPTIONAL

Indicates the purchase of specific types of goods or services.

You must provide a value if your Merchant Category Code (MCC) is one of the following:

6051 (Quasi Cash – Merchant or Non-Financial Institutions – Foreign Currency, Non-Fiat Currency) and this transaction is for the purchase of cryptocurrency. Set the value to CRYPTOCURRENCY.

6211 (Securities – Brokers/Dealers) and this transaction is for the purchase of high-risk securities. Set the value to HIGH_RISK_SECURITIES.

6012 (Merchandise and Services—Customer Financial Institutions) or 6051 (Non-Financial Institutions – Foreign Currency, Non-Fiat Currency) and this transaction is for debt repayment. Set the value to DEBT_REPAYMENT.

If the transaction pulls money from an account for the purpose of crediting another account you must set purchase type to ACCOUNT_FUNDING.

You may set purchase type to OTHER for any other type of payment.

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

CRYPTOCURRENCY

The transaction is for the purchase of a cryptocurrency.

DEBT_REPAYMENT

You may be required to provide additional details about the debt repayment in the debtRepayment parameter group.

HIGH_RISK_SECURITIES

The transaction is for the purchase of high-risk securities.

OTHER

Use this value if the purchase type for the transaction does not fit in any of the other categories.

order.reference Copied to clipboard String OPTIONAL

The identifier of the order.

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

Data can consist of any characters

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

The name of the person who requested the goods or services.

Data can consist of any characters

Min length: 1 Max length: 100
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 tax amount for the order.

If you do not provide this value but provide line item data, then this amount is calculated as the sum of the item.quantity times the item.unitTaxAmount for all the line items (total tax amount).
If you provide both this value and line item data, then the order.taxAmount MUST equal the total tax amount.

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

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

Your tax registration identifier provided by the Federal/National tax authority (for example, federal tax identification number, ABN).

If you are a Canadian merchant, use this field to provide your Tax Registration ID for paying Harmonized Sales Tax (HST) or Goods and Services Tax (GST) collected by the Canada Revenue Agency.

Data can consist of any characters

Min length: 1 Max length: 30
order.taxStatus Copied to clipboard Enumeration OPTIONAL

Indicates your tax status for this order.

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

EXEMPT

Indicates that you are exempt from tax.

NOT_EXEMPT

Indicates that you are not exempt from tax.

NOT_PROVIDED

Indicates that you are not providing information about being exempt from tax.

order.transactionFiltering Copied to clipboard OPTIONAL

Information relevant for Transaction Filtering.

order.transactionFiltering.avsResponseCodeRules[n] Copied to clipboard OPTIONAL

Allows you to provide the Address Verification Service (AVS) Response Code Transaction Filtering rules to be applied to the transactions for this order.

If provided, these rules override the AVS Response Code Transaction Filtering rules you have configured in Merchant Administration.

order.transactionFiltering.avsResponseCodeRules[n].action Copied to clipboard Enumeration REQUIRED

The action to be performed for the Address Verification Service (AVS) Response Code.

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

NO_ACTION

No action should be taken by the gateway.

REJECT

The gateway must reject the transaction.

REVIEW

The gateway must mark this transaction as requiring a review.

order.transactionFiltering.avsResponseCodeRules[n].avsResponseCode Copied to clipboard Enumeration REQUIRED

The Address Verification Service (AVS) Response Code for which you are defining the rule.

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

ADDRESS_MATCH

Street address matched

ADDRESS_ZIP_MATCH

Street address and zip/postcode were matched

NAME_ADDRESS_MATCH

Card holder name and street address matched

NAME_MATCH

Card holder name matched

NAME_ZIP_MATCH

Card holder name and zip/postcode matched

NOT_AVAILABLE

No data available from issuer or AVS data not supported for transaction

NOT_REQUESTED

AVS not requested

NOT_VERIFIED

AVS could not be verified for an international transaction

NO_MATCH

No match

SERVICE_NOT_AVAILABLE_RETRY

Issuer system is unavailable. Retry can be attempted

SERVICE_NOT_SUPPORTED

Service currently not supported by acquirer or merchant

ZIP_MATCH

Zip/postcode matched. Street address not matched

order.id 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
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
risk Copied to clipboard OPTIONAL

Information relevant to risk assessment.

risk.bypassMerchantRiskRules Copied to clipboard Enumeration OPTIONAL

The risk rules you wish to bypass when performing risk assessment for an order.

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

ALL
serialNumbers Copied to clipboard OPTIONAL

A list of serial numbers for this item.

Provide the serial numbers for the item that you have registered with the payment plan service provider for payment plan offers.

serialNumbers.dueDate Copied to clipboard Date OPTIONAL

The due date for submitting the required serial numbers to the payment plan service provider.

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

serialNumbers.skus[n] Copied to clipboard String OPTIONAL

The SKU(s) for which the payment plan service provider has requested that you provide a serial number.

Data can consist of any characters

Min length: 1 Max length: 127
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.source Copied to clipboard 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.

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.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
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.address.sameAsBilling Copied to clipboard 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.

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.

sourceOfFunds Copied to clipboard OPTIONAL

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.boletoBancario Copied to clipboard OPTIONAL

If the payer chose to pay using a Boleto Bancario as a payment method, you must submit sourceOfFunds.type=BOLETO_BANCARIO and provide the additional details in this parameter group.

sourceOfFunds.provided.boletoBancario.actionType Copied to clipboard Enumeration OPTIONAL

The action to take if the payment is not honored.

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

WRITE_OFF

Write off the Boleto.

sourceOfFunds.provided.boletoBancario.daysBeforeAction Copied to clipboard Digits OPTIONAL

Number of days granted by you to the customer after the due date of Boleto payment before the specified action is taken.

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

Min length: 1 Max length: 2
sourceOfFunds.provided.boletoBancario.dueDate Copied to clipboard Date REQUIRED

The date by which the Boleto amount needs to be paid.

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

transaction Copied to clipboard OPTIONAL

Information about this transaction.

transaction.acquirer Copied to clipboard OPTIONAL

Additional information to be passed to acquirer.

transaction.acquirer.customData Copied to clipboard 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

Min length: 1 Max length: 2048
transaction.acquirer.transactionId Copied to clipboard 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

Min length: 1 Max length: 100
transaction.deferredAuthorization Copied to clipboard Boolean OPTIONAL

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'.

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
transaction.source Copied to clipboard 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.

CALL_CENTRE

Transaction conducted via a call centre.

CARD_PRESENT

Transaction where the card is presented to the merchant.

INTERNET

Transaction conducted over the Internet.

MAIL_ORDER

Transaction received by mail.

MERCHANT

Transaction initiated by you based on an agreement with the payer. For example, a recurring payment, installment payment, or account top-up.

MOTO

Transaction received by mail or telephone.

TELEPHONE_ORDER

Transaction received by telephone.

VOICE_RESPONSE

Transaction conducted by a voice/DTMF recognition system.

transaction.transit Copied to clipboard OPTIONAL

Only use the functionality provided in this parameter group if you are a merchant with a card scheme approved Merchant Category Code for Aggregated Transit Fare Collection functionality.

transaction.transit.aggregatedFare Copied to clipboard OPTIONAL

Where the transit fare is not known at the time of travel, you can aggregate these contactless payments within limitations (time periods, amounts) as specified by the card schemes.

Use this parameter group to provide details about an aggregated transit fare or a merchant-initiated, tap-initiated or payer-initiated debt recovery for an aggregated transit fare.

transaction.transit.aggregatedFare.aggregationStartDate Copied to clipboard Date REQUIRED

This is the start date of an aggregation and matches the date of the first travel or first tap within the aggregation period.

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

transaction.transit.aggregatedFare.transportationMode Copied to clipboard Enumeration REQUIRED

Provide the transport mode used by the payer for the first trip when fare collection is aggregated across one or more trips as well as for merchant-initiated debt recovery transactions.

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

CABLE_CAR

Cable Car

COACH

Coach

COMMUTER_TRAIN

Commuter Train

EXPRESS_COMMUTER_TRAIN

Express Commuter Train

FUNICULAR_TRAIN

Funicular Train

HIGH_SPEED_TRAIN

High Speed Train

INTERURBAN_BUS

Interurban Bus

INTER_CITY

Inter City

LIGHT_TRAIN_MASS_TRANSIT

Light Train Mass Transit

LOCOMOTIVE

Locomotive

OTHER

Other

PARA_TRANSIT

Para Transit

PARKING

Parking

POWERED_MOTOR_VEHICLE

Powered Motor Vehicle

REGIONAL_TRAIN

Regional Train

RURAL_BUS

Rural Bus

SELF_DRIVE_VEHICLE

Self Drive Vehicle

TAXI

Taxi

TOLL

Toll

TRAILER

Trailer

TRAIN

Train

URBAN_BUS

Urban Bus

WATER_BORNE_VEHICLE

Water Borne Vehicle

transaction.transit.aggregatedFare.type Copied to clipboard Enumeration REQUIRED

Indicates if this is a transaction for an aggregated transit fare or a merchant-initiated, tap-initiated or payer-initiated debt recovery for an aggregated transit fare.

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

DEBT_RECOVERY_MERCHANT_INITIATED

Transaction for a debt recovery for an aggregated transit fare initiated by you (according to the scheme rules).

DEBT_RECOVERY_PAYER_INITIATED

Transaction for a debt recovery for an aggregated transit fare that is initiated by the payer paying off an outstanding debt, for example, via a website or a ticket machine.

DEBT_RECOVERY_TAP_INITIATED

Transaction for a debt recovery for an aggregated transit fare that is initiated by the payer attempting to use their card or mobile device for travel and where the card has an outstanding debt.

FARE

Transaction for an aggregated transit fare that you are submitting either at the start of the travel period (for a nominal amount) or at the end of the travel period (for the total aggregated amount).

transaction.transit.knownFare Copied to clipboard OPTIONAL

Where the transit fare is known at the time of travel, you must indicate that this is a known fare transaction.

transaction.transit.knownFare.type Copied to clipboard Enumeration OPTIONAL

Indicates if this is a transaction for a known fare submitted at the time of travel or after the payer has already gained access to the transit service (deferred Authorization).

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

DEBT_RECOVERY_MERCHANT_INITIATED

Transaction for a debt recovery for an known transit fare initiated by Merchant (according to the scheme rules).

DEBT_RECOVERY_PAYER_INITIATED

Transaction for a debt recovery for an known transit fare initiated by payer (according to the scheme rules).

DEBT_RECOVERY_TAP_INITIATED

Transaction for a debt recovery for an known transit fare tap initiated (according to the scheme rules).

FARE_DEFERRED_AUTHORIZATION

Known transit fare payment where you are submitting the Authorization after the payer has already gained access to the transit service (deferred Authorization).

FARE_REAL_TIME_AUTHORIZATION

Known transit fare payment where you are submitting the Authorization at the time of travel.


Response Copied to clipboard

Fields Copied to clipboard

checkoutMode Copied to clipboard Enumeration ALWAYS PROVIDED

Defines how the Hosted Checkout interaction can be launched.

If you want to immediately redirect the payer from your website (Hosted Payment Page) or launch the Lightbox to make the payment, set this value to WEBSITE. This is the default behavior if the field is not provided.

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

WEBSITE

Returns a session identifier (session.id) that you need to pass when configuring the Hosted Checkout interaction using the Checkout.configure() function. This is the default value.

correlationId Copied to clipboard String CONDITIONAL

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

Min length: 1 Max length: 100
merchant Copied to clipboard 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, '-', '_'

Min length: 1 Max length: 40
result Copied to clipboard Enumeration ALWAYS PROVIDED

A system-generated high level overall result of the transaction/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

session.id Copied to clipboard ASCII Text CONDITIONAL

The session identifier for the Hosted Checkout interaction.

You must include this identifier in the Checkout.configure() function to redirect the payer from your website (Hosted Payment Page) or open the Embedded Page.

Data consists of ASCII characters

Min length: 31 Max length: 35
session.updateStatus Copied to clipboard Enumeration CONDITIONAL

A summary of the outcome of the last attempt to modify the session.

In order to perform an operation using this session this value must be SUCCESS.

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

FAILURE

The last attempt to place data into the session was unsuccessful. The session may contain invalid data. A request operation using this session will be rejected by the payment gateway.

NO_UPDATE

No attempt has been made to place data into the session. A request operation using this session will be rejected by the payment gateway.

SUCCESS

The last attempt to update the session was successful. You may submit a request operation using this session.

session.version Copied to clipboard ASCII Text CONDITIONAL

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.

See Making Business Decisions Based on Session Content.

Data consists of ASCII characters

Min length: 10 Max length: 10
successIndicator Copied to clipboard ASCII Text ALWAYS PROVIDED

An identifier to determine the success of the hosted payment.

The gateway will return this value in the resultIndicator parameter (appended to the returnUrl) for successful payments only. See Obtain the Payment Result section.

Data consists of ASCII characters

Min length: 16 Max length: 32

Errors Copied to clipboard

error Copied to clipboard

Information on possible error conditions that may occur while processing an operation using the API.

error.cause Copied to clipboard 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.

error.explanation Copied to clipboard 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

Min length: 1 Max length: 1000
error.field Copied to clipboard 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

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

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

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