Search Overlay

Setup Function

The setup function creates and initializes the Paysafe Checkout in an overlay. It has the following parameters:

  • The Base64-encoded version of the single-use token API key used to authenticate with the Customer Vault REST API. Note that this key can only be used to generate single-use tokens for use with the Card Payments and Direct Debit APIs, and has no other API access rights, such as those required for taking payments. Consequently, this key can be exposed publicly in the user's browser.
  • An options object containing the environment to use (Test or Live), the payment amount, currency, and several parameters to personalize the payment form and customize its appearance.
  • resultCallback function you provide to receive the Paysafe checkout instance, handle successful tokenization (by sending the token to your merchant server), or respond to any errors caused by a failed tokenization.
  • An optional closeCallback function you provide to handle the customer closing the payment overlay.
  • eventCallback - Invoked immediately after one or more events in Paysafe Checkout occur

The function signature is as follows:

paysafe.checkout.setup(apikey,options,resultsCallback,closeCallback, eventCallback);
                                

Environment

The options object contains a string to select the environment to use for tokenization, either LIVE (the Paysafe Production environment) and TEST (the Paysafe Merchant Test or Sandbox environment).

Do not use real card numbers or other payment instrument details in the Merchant Test environment. It is not compliant with Payment Card Industry Data Security Standards (PCI-DSS), and does not protect cardholder/payee information. Any upload of real cardholder data is strictly prohibited, as described in the Terms of Use.

Test

paysafe.checkout.setup("my Merchant test Base 64 encoded single-use-token API key", {
environment: "TEST"
},
function(instance, error, result) {...});

Live

paysafe.checkout.setup("my Production Base64 Encoded single-use-token API key", {
environment: "LIVE"
},
function(instance, error, result) {...});

If you omit the environment object, by passing an empty or null value for this parameter, the Live environment will be used.

Setup Function and Objects

Here is a full list of the setup function parameters, the JavaScript objects used by the setup function, and the parameters they contain.

Parameter Required Type Description
apiKey true string This is your Public API key, available in the Business Portal.
options true object This is the merchant's configuration for rendering the Checkout.
resultCallback true function Callback function invoked with the result or error from the payment. Returns an instance for flow control.
closeCallback false function This notifies the merchant script when the Checkout gets closed.
{return} false any  
options

amount

length = 1-9

true number

Payment amount in minor units to charge the customer's card. Use the correct minor units amount for the merchant account currency. For example, to process US $10.99, this value should be 1099. To process 1000 Japanese Yen, this value should be 1000. To process 10.139 Tunisian dinar, this value should be 10139.

Min = 1

Max = 999999999

When using 3DS 2 (i.e. useThreeDSecureVersion2= true), amount with value: "0" can be passed.

amountoptions No number array

This parameter is used to populate the amount grid options in checkout, for the user to choose on click rather than editing the populated amount.

Field will be utilized only if "canEditAmount" parameter in the options is set to "true".

Validations:

  1. Field Should be a number array.
  2. Each number option should satisfy a condition of minimum 1 and maximum 9999
  3. Merchant cannot pass the decimal amount in the Amount Grid option
  4. Duplicate values are not allowed.
  5. Maximum option merchant can pass is 3. eg: [1000, 5000, 67000]
currency true string This is the payment currency of the merchant account, for example, USD for US dollars.
merchantRefNum true string A unique identifier provided by the merchant for every transaction from Checkout.
environment false string

Environment used for making the API calls and loading the Checkout.

Possible values are:

  • LIVE – used for Production
  • TEST – used for the Merchant test or sandbox environment

Default is Live.

locale false string

Language locale for the checkout:

  • en_US
  • fr_CA

If omitted, defaults to en_US.

billingAddress false object This is the billing address of the customer that will be displayed to the customer at checkout. The merchant should include this object if this is a first-time customer with no customer profile. If the customer entity has been created with the Payments API, then address information from the singleUseCustomerToken will be used and the merchant does not have to include the billingAddress object. Note: The address information from this object will be displayed in place of the address information from the singleUseCustomerToken, if both are included.
singleUseCustomerToken false string This is the singleUseCustomerToken that the merchant generated using the Create a Single-Use Customer Token request. Any saved addresses and/or payment details would be displayed in the Checkout.
canEditAmount false boolean If true, the customer can edit the amount in the Checkout before clicking Pay. If false, the amount is not editable.
customer

false (for all other payment methods)

 

Conditional (for PagoEfectivo and SafetyPay payment method)

object

If a customer is a first-time user and the customer profile does not exist in Paysafe, then the merchant can choose to pass the profile (if the profile exists with him) in the call to create a payment handle.

 

PagoEfectivo payment method: It is mandatory to provide customer profile if the merchant is offering PagoEfectivo payment method.

 

SafetyPay payment method: Required, if the merchant is offering one of the following payment methods: SafetyPay Bank Transfer, SafetyPay Cash, Boleto Bancario, PIX, Khipu, MACH, SPEI

displayPaymentMethods false array

This determines which available payment methods will be displayed to the consumer. The values in the array are shown in the Checkout in the order they are passed.

This is case-sensitive.

Accepted Values -

"displayPaymentMethods":[ "applePay","card", "mazooma" ,"skrill","paysafecard", "neteller", "paysafecash","instantach","sightline","vippreferred","paypal"],

If this parameter is not included, then all payment methods available for the consumer will be displayed in the Checkout.

paymentMethodDetails conditional object These are additional parameters required for Mazooma, Apple Pay, Paysafecash, Paysafecard, Skrill, Interac, Interac eTransfer, Paypal, PagoEfectivo, Play+ (Sightline), SafetyPay Bank Transfer, SafetyPay Cash, Boleto Bancario, PIX, Khipu, MACH, SPEI payment types.
payout false boolean If true, Withdrawal Checkout screen will be launched. If false, Payment Checkout will be launched. Defaults to false.
payoutConfig conditional object Required for withdrawal checkout only. This configuration is used to specify withdrawal limitations.
merchantDescriptor false object This is a merchant descriptor.
billingAddress

nickName

length<=50

false string An identifier to identify the type of address, for example, Work or Home.
street false string First line of the customer's street address.
street2 false string Second line of the customer's street address. This field is ignored with Direct Debit.
city false string City in which the address is located.
zip true string Zip or postal code for the address.
country true string Country in which the address is located.
state false string This is the state/province/region in which the customer lives. This field is ignored with Direct Debit.
paymentMethodDetails
card conditional object Required if there are multiple card accounts for the same currency. These are additional parameters for card.
paysafecard conditional object These are additional parameters for Paysafecard. Required for Paysafecard payment/withdrawal.
paysafecash conditional object These are additional parameters for Paysafecash. Required for Paysafecash payment/withdrawal.
skrill conditional object These are additional parameters for Skrill. Required for Skrill withdrawal only.
sightline conditional object These are additional parameters for Play+ (Sightline).
vippreferred conditional object These are additional parameters for VIP Preferred.
interacEtransfer true object Required, if the merchant is offering this payment method.
paypal conditional object These are additional parameters for PayPal. Required for Paypal withdrawal only.
pagoefectivo true object Required, if the merchant accepts this payment method.
applePay true object Required, if the merchant accepts this payment method.
mazooma true object Information related to mazooma to be passed in the object.
SafetyPayBankTransfer true object Required, if the merchant is offering SafetyPay payment method.
SafetyPayCash true object Required, if the merchant is offering SafetyPay payment method.
BoletoBancario true object Required, if the merchant is offering SafetyPay payment method.
PIX true object Required, if the merchant is offering SafetyPay payment method.
KHIPU true object Required, if the merchant is offering SafetyPay payment method.
MACH true object Required, if the merchant is offering SafetyPay payment method.
SPEI true object Required, if the merchant is offering SafetyPay payment method.
interacEtransfer
accountId true string Required if there are multiple apple pay accounts with same currency.
consumerId true string The merchant's phone or email (email by default).
type false string Specify consumerId type. Either EMAIL or PHONE. Defaults to EMAIL.
userCookie true string Used for risk check at PT. Either userCookie or deviceId must be specified.
deviceId true string Used for risk check at PT. Either userCookie or deviceId must be specified.
paypal

consumerId

length<=50

true string The source of funds for the payment, the email address of the consumer or payer.

accountID

length<=10

Conditional string If you are a merchant, then this field is required only if you have more than one account configured for the same payment method and currency. If you are a partner using a shared API key, then this field is mandatory.

recipientDescription

length<=127

false string A label that overrides the business name in the merchant's PayPal account on the PayPal checkout pages.

language

length=2

false string The 2-character preferred language code for the consumer (For Example, AU, AT, BE, BR, CA, CH, CN, DE, ES, GB, FR, IT, NL, PL, PT, RU, or US.) or A five-character code is also valid for languages in these countries (For Example: da_DK, he_IL, id_ID, ja_JP, no_NO, pt_BR, ru_RU, sv_SE, th_TH, zh_CN, zh_HK, and zh_TW).
shippingPreference false enum

The shipping preference. The possible values are:

  • NO_SHIPPING - Redacts the shipping address from the PayPal pages. Recommended for digital goods.
  • GET_FROM_FILE - Uses the customer-selected shipping address on PayPal pages.
  • SET_PROVIDED_ADDRESS. If available, uses the merchant-provided shipping address, which the customer cannot change on the PayPal pages. If the merchant does not provide an address, the customer can enter the address on PayPal pages.
consumerMessage false string Note to be displayed on the PayPal page.
orderDescription false string Order description to display on PayPal page. If merchant does not set this field it defaults to 'Payment for order'.
recipientType true string Type of payout recipient. The only supported value is 'PAYPAL_ID'.
pagoefectivo
accountId conditional string Required if there are multiple PagoEfectivo accounts with the same currency.
consumerId true string The customer's id in PagoEfectivo.
customer

firstName

length<=80

true string

The first name of the customer.

lastName

length<=80

true string

The last name of the customer.

email

length<=255

true string

The email address of the customer.

dateOfBirth true object

The date of birth of the customer.

email true object Required, if the merchant is offering PagoEfectivo and SafetyPay payment method.
phone true object Required, if the merchant is offering PagoEfectivo payment method.
payoutConfig

maximumAmount

length=1-9

true number This specifies the maximum amount that a user is allowed to withdraw from checkout in the current session.
card

accountID

length<=10

Conditional string If you are a merchant, then this field is required only if you have more than one account configured for the same payment method and currency. If you are a partner using a shared API key, then this field is mandatory.
paysafecard

consumerId

length<=50

true string This is a consumer ID of the customer that the merchant has stored in his system for Paysafecard payments.

accountID

length<=10

Conditional string If you are a merchant, then this field is required only if you have more than one account configured for the same payment method and currency. If you are a partner using a shared API key, then this field is mandatory.
paysafecash

consumerId

length<=50

true string This is a consumer ID of the customer that the merchant has stored in his system for Paysafecash payments.

accountID

length<=10

Conditional string If you are a merchant, then this field is required only if you have more than one account configured for the same payment method and currency. If you are a partner using a shared API key, then this field is mandatory.
sightline

consumerId

length<=50

true string

This is a consumer ID that the merchant has stored for Play+ (Sightline) payments. This will be used by Play+ for customer enrollment.

SSN

length=9

false string

This is the customer's Social Security Number.If provided, then the last 4 SSN field will be prefilled and locked in enrollment as well as during Payment flow. If not provided, Customer has to enter their full SSN in the enrollment and the last 4 SSN in the Payment flow.

last4ssn

length=4

false string This the customer’s last 4 digits of Social Security Number. If the customer is already enrolled for Sightline, then instead of sending the full ‘SSN’ field, you can send the last 4 digits of SSN which will get prefilled during Payment flow. If not provided, then the system will check if ‘SSN’ field is present to prefill the last 4 digits. If both these fields are not provided, then the customer has to enter the last 4 digits of SSN to complete the payment.

accountID

length<=10

Conditional string If you are a merchant, then this field is required only if you have more than one account configured for the same payment method and currency. If you are a partner using a shared API key, then this field is mandatory.
applepay
accountid

true

(conditional)

string Required, if there are multiple apple pay accounts with same currency.
label false string Displayed on payment sheet.
type false string

("plain", "buy", "addMoney", "book", "checkout", "continue", "contribute", "donate", "instore", "order", "reload", "rent", "setup", "subscribe", "support", "tip", "topup") Default: pay "Click here to view Apple Guidelines"

If no or wrong value is provided then Checkout will create button with default values.

color false string

(white, black, white-outline) Default: white-outline "Click here to view Apple Guidelines"

If no or wrong value is provided then Checkout will create button with default values.

skrill

consumerId

length <= 50

true string

This is the consumer's Skrill email ID to be paid. Required for withdrawal checkout. Merchant has to have this stored prior when consumer made a Skrill payment.

paymentId

length <= 36

false string

This is the ID returned in the response to a prior Payment that the customer made using Instant ACH. Required for withdrawal checkout.

emailSubject

length <= 30

true string

This is the Subject line to use in the customer email. Required for withdrawal checkout.

emailMessage

length <= 50

true string This is the message to use in the customer email. Required for withdrawal checkout.

recipientDescription

length <= 30

false string A description to be shown on the Skrill payment page in the logo area if there is no logo_url parameter. If no value is submitted and there is no logo, the merchant_skrill_email value is shown as the recipient of the payment.

language

length <= 2

false string The 2-character preferred language code for the consumer (For example: EN, FR).
logoUrl false string

The URL of the logo which you would like to appear in the top right of the Skrill page. The logo must be accessible via HTTPS or it will not be shown. The logo will be resized to fit. To avoid scaling distortion, the minimum size should be as follows:

If the logo width > height - at least 107px wide

If logo width > height - at least 65px high

Avoid large images (much greater than 256 by 256px) to minimize the page loading time.

detail1Description false string You can show additional details about the product in the More information section in the header of Quick Checkout.
detail1Text false string The detail1Text is shown next to the detail1Description in the More Information section in the header of the payment form with the other payment details. The detail1Description combined with the detail1Text is shown in the more information field of the merchant account history CSV file.

accountID

length <= 10

conditional string If you are a merchant, then this field is required only if you have more than one account configured for the same payment method and currency. If you are a partner using a shared API key, then this field is mandatory.
vippreferred

consumerId

length=9

true string

This is the customer's Social Security Number.

accountId

length<=10

conditional string

If you are a merchant, then this field is required only if you have more than one account configured for the same payment method and currency. If you are a partner using a shared API key, then this field is mandatory.

dateofbirth

year

length=4 min=1900

true number

This is the year of birth.

month

length=2 max=12

true number This is the month of birth.

day

length=2 max=31

 

true number This is the day of birth.
merchantDescriptor

dynamicDescriptor

length<=20

true string This is a merchant descriptor.

phone

length<=13

true string This is the merchant’s phone number, which will be appended to the merchant descriptor.
mazooma
consumerId true string Mazooma consumerId to be passed inside mazooma object.
SafetyPayBankTransfer
consumerId true string The customer's id in SafetyPay.
accountId conditional string Required if there are multiple accounts with same currency.
SafetyPayBankCash
consumerId true string The customer's id in SafetyPay.
accountId conditional string Required if there are multiple accounts with same currency.
BoletoBancario
consumerId true string The customer's id in SafetyPay.
accountId conditional string Required if there are multiple accounts with same currency.
PIX
consumerId true string The customer's id in SafetyPay.
accountId conditional string Required if there are multiple accounts with same currency.
KHIPU
consumerId true string The customer's id in SafetyPay.
accountId conditional string Required if there are multiple accounts with same currency.
MACH
consumerId true string The customer's id in SafetyPay.
accountId conditional string Required if there are multiple accounts with same currency.
SPEI
consumerId true string The customer's id in SafetyPay.
accountId conditional string Required if there are multiple accounts with same currency.

resultCallback

The result callback is invoked when a token is issued or a tokenization error occurs.

The signature is as follows:

Parameter Required Type Description
instance true object Paysafe Checkout instance.
error false object Object containing information for the error. This field is present if tokenization fails. The contents of this object are described below.
result false object

Result containing payment token. The contents of this object are described below.

{return} false undefined  
instance      
isOpen true function Checks if the overlay is still open.
close true function Closes the overlay without displaying result from payment.
showSuccessScreen true function Changes checkout layout to success screen.
showFailureScreen true function Changes checkout layout to failure screen.
error
code true string

Short error code identifying the error type.

displayMessage true string Provides an error message that can be displayed to users.
detailedMessage true string Provides a detailed error message that can be logged.
correlationId true string Unique ID that can be provided to the Paysafe Support team as a reference for investigation.
fieldErrors false array Details of any parameter value errors (optional). Currently only being supplied when a 9003 error is thrown.
fieldError
field true string Field name. Example: threeDS.userAccountDetails.userLogin.time.
message true string Error in the field.
result
token true string Payment token representing sensitive card and bank account details in case of successful tokenization. You will need to send this token securely to your server to make payment using the Card Payments, Direct Debit, or Alternate Payments API.
paymentMethod true string

The payment method used by the customer:

  • Cards
  • DirectDebit
  • Interac
  • PayPal
saveInstrument false boolean Flag representing if payment instrument should be saved.
setInstrumentAsDefault false boolean Flag representing if payment instrument should be set as default.

An example is shown below:

function(instance, error, result) {        
if (result.token) {

// Successfully tokenized card, use result.token to process a payment

console.log(result.token);

// add AJAX code to send token to your merchant server

instance.showSuccessScreen("Your goods are now purchased. Expect them to be delivered in next 5 business days.");
} else {

// tokenization failed

instance.showFailureScreen("The payment was declined. Please, try again with the same or another payment method.");
}

}

closeCallback

Invoked when the checkout overlay is closed by the customer. This function has the following signature:

Parameter Required Type Description
stage true string

Stage during which the checkout overlay is closed. Possible values are:

  • BeforePayment
  • DuringPayment
  • AfterPayment
{return} false any  

Example usage:

function(stage) {
if (stage === "BeforePayment") {
// No payment have been made
} else if (stage === "DuringPayment") {
// Token have been issued, but the checkout overlay was closed from the user before instance flow control method was invoked
} else if (stage === "AfterPayment") {
// Closed either via instance.close method or by the user from the success screen
}

eventCallback

Invoked immediately after one or more events in Paysafe Checkout occur:

  • Payment methods > edit saved card

  • Payment methods > delete saved card

Parameter   Required Type Description
instance   true object Checkout instance with flow control functions
  isOpen true function Checks if the overlay is still open
  close true function Closes the overlay without displaying result from payment
  showSuccessScreen true function Change checkout layout to the success screen
  showFailureScreen true function Change checkout layout to failure screen
event   true object The event that occurred.
  action true string[]

Action that is executed on the client-side.

Possible values:

  • Payment Method events

    • setAsDefault

    • expiryDateModified

    • deleted

Process only the actions, required by the current implementation need. Additional actions can be added in the future.

  correlationId false string A unique ID that can be provided to the Paysafe Support team as a reference for an investigation.
  paymentToken false string

the paymentToken of the payment type, on which the event is executed.

Some actions do not have associated paymentToken. Its value can be empty.

Example usage

function(instance, event) {
if (event.action.indexOf("setAsDefault") > -1) {
// Payment method saved as default
}
if (event.action.indexOf("expiryDateModified") > -1) {
// Payment method saved expiry date has changed
}
if (event.action.indexOf("deleted") > -1) {
// Payment method deleted
}
}

Setup Errors

Code

Display Message

Detailed Message

Description

9004 There was an error (9004), please contact our support. Callback should be function.  
9012 There was an error (9012), please contact our support. Invalid number of arguments. Used when the supplied number of arguments is neither 3 nor 4.
9062 There was an error (9062), please contact our support. Paysafe Checkout already opened. Setup function has been invoked and Paysafe Checkout is already opened or is loading at the moment.

Errors Passed to resultCallback

Code

Display Message

Detailed Message

Description

9012 There was an error (9012), please contact our support. Invalid number of arguments. Used when the supplied number of arguments is neither 3 nor 4.
9013 There was an error (9013), please contact our support. Invalid apiKey parameter. Used when the supplied apiKey parameter is not a string, is in invalid format, or is not configured for Paysafe Checkout.
9014 There was an error (9014), please contact our support. Unhandled error occurred. Used when an error unhandled by the Paysafe Checkout SDK is thrown.
9015 There was an error (9015), please contact our support. Invalid options argument. Used when the supplied options parameter is not an object.
9017 There was an error (9017), please contact our support. Environment options is not a string or an object. Used when the supplied environment is not a string or an object.
9018 There was an error (9018), please contact our support. Environment doesn't match any of the predefined values (possible: TEST, LIVE; actual: ${environment}).  
9043 There was an error (9043), please contact our support. HolderName should be valid. Used when the supplied holderName parameter is not a string.
9044 There was an error (9044), please contact our support.

billingAddress country should be valid country code.

Used when the supplied billingAddress.country parameter is not a string.
9045 There was an error (9045), please contact our support. billingAddress zip should be valid zip code. Used when the supplied billingAddress.zip parameter is not a string.
9046 There was an error (9046), please contact our support. billingAddress state should be valid state. Used when the supplied billingAddress.state parameter is not a string.
9047 There was an error (9047), please contact our support. billingAddress city should be valid city. Used when the supplied billingAddress.city parameter is not a string.
9048 There was an error (9048), please contact our support. billingAddress street should be valid street. Used when the supplied billingAddress.street parameter is not a string.
9049 There was an error (9049), please contact our support. billingAddress street2 should be valid street. Used when the supplied billingAddress.street2 parameter is not a string.
9052 There was an error (9052), please contact our support. billingAddress should be object. Used when the supplied billingAddress parameter is not an object.
9053 There was an error (9053), please contact our support. Invalid companyName parameter. Used when the supplied companyName parameter is not a string.
9054 There was an error (9054), please contact our support. Invalid amount parameter. Used when an amount is not supplied, is not a number, is not positive, or is longer than 9 digits.
9055 There was an error (9055), please contact our support. Invalid currency parameter. Used when the supplied currency parameter is not a string.
9057 There was an error (9057), please contact our support. Invalid locale parameter. Used when the supplied locale parameter does not match the supported values.
9059 There was an error (9059), please contact our support. Accounts should be object. Used when the supplied accounts parameter is not an object.
9060 There was an error (9060), please contact our support. Close callback should be function. Used when the provided closeCallback is not a function.
9061 There was an error (9061), please contact our support. Invalid account ID for ${paymentMethod}. Used when the supplied accountId for a specific payment method is not a number or is not positive.
9062 There was an error (9062), please contact our support. Paysafe Checkout already opened. Setup function has been invoked and Paysafe Checkout is already opened or is loading at the moment.
9063 There was an error (9063), please contact our support. Invalid buttonColor parameter. Used when the supplied color is not a valid hex color, e.g., '#ee33ee'.
9064 There was an error (9064), please contact our support. Failed to initialize Paysafe Checkout iframe. Used when the checkout iframe has failed to initialize within 5 seconds – the reason could be that the server that serves the HTML for the iframe is not available at the moment.
9065 There was an error (9065), please contact our support. Invalid payment method: ${paymentMethod}.

Used when the supplied preferredPaymentMethod is not one of the following:

  • Cards
  • DirectDebit
  • Interac
  • PayPal
9073 There was an error (9073), please contact our support. Account not configured correctly. Used when account ID or account currency was incorrectly configured.
9094 There was an error (9094), please contact our support. Invalid displayPaymentMethods parameter.

Used for the following reasons:

  • displayPaymentMethods parameter is not valid array of strings.
  • The array is empty or more than 4 payment methods are passed.
  • One or more of the passed elements in the array are not valid payment methods:
    • Cards
    • DirectDebit
    • Interac
    • PayPal
9095 There was an error (9095), please contact our support. Duplicate entries in displayPaymentMethods parameter are not allowed. Used when duplicate payment methods are passed in the displayPaymentMethods parameter.
9096 There was an error (9096), please contact our support. Your account is not configured for the passed displayPaymentMethods. Supported payment methods: ${supportedPaymentMethods}. Used when one or more of the provided payment methods in the displayPaymentMethods parameter do not match the payment methods configured for the merchant.
9098 There was an error (9098), please contact our support. Event callback should be a function Used when the provided eventCallback is not a function.
9106 There was an error (9106), please contact our support. Invalid buttonLabel parameter. Used when the value provided for the buttonLabel parameter exceeds 40 characters.
9107 There was an error (9107), please contact our support. Invalid singleUseProfileToken parameter. Used when the supplied singleUseProfileToken is either invalid or expired.
9108 There was an error (9108), please contact our support. Invalid showSaveCardCheckboxes value. Used when the supplied showSaveCardCheckboxes is invalid.
9109 There was an error (9109), please contact our support. Invalid hideAmount value. Used when the value provided for hideAmount is invalid.
9110 There was an error (9110), please contact our support. Unable to initiate ThreeDs SDK. Used when the ThreeDs SDK has failed to load or the ThreeDs SDK start callback is invoked with unhandled error.
9111 There was an error (9111), please contact our support. Invalid merchant configuration setup. Used when the merchant configuration setup is invalid.
9112 There was an error (9112), please contact our support. Invalid threeDS useThreeDSecureVersion2 parameter. Used when the supplied useThreeDSecureVersion2 parameter is not a boolean.
9113 There was an error (9113), please contact our support. The accountId provided is not enabled for 3DS version 2. Used when the supplied accountId (accounts.CC) is not enabled for 3DS version 2.
9114 There was an error (9114), please contact our support. Unable to initiate ThreeDs SDK challenge. Used when the when ThreeDs SDK challenge callback is invoked with error.
9115 There was an error (9115), please contact our support. ShippingAddress should be an object. Used when the supplied shippingAddress parameter is not an object.
9116 There was an error (9116), please contact our support. ShippingAddress recipientName should be a valid recipient name. Used when the supplied shippingAddress.recipientName parameter is not a string.
9117 There was an error (9117), please contact our support. ShippingAddress street should be a valid street. Used when the supplied shippingAddress.street parameter is not a string.
9118 There was an error (9118), please contact our support. ShippingAddress street2 should be a valid street. Used when the supplied shippingAddress.street2 parameter is not a string.
9119 There was an error (9119), please contact our support. ShippingAddress city should be a valid city. Used when the supplied shippingAddress.city parameter is not a string.
9120 There was an error (9120), please contact our support. ShippingAddress state should be a valid state. Used when the supplied shippingAddress.state parameter is not a string.
9121 There was an error (9121), please contact our support. ShippingAddress country should be a valid country. Used when the supplied shippingAddress.country parameter is not a string.
9122 There was an error (9122), please contact our support. ShippingAddress zip should be a valid zip code. Used when the supplied shippingAddress.zip parameter is not a string.
9123 There was an error (9123), please contact our support. Invalid PayPal shipping preference parameter. Used when the supplied paypal.shippingPreference doesn't match the supported values.
9125 There was an error (9125), please contact our support. Unsupported card brand used: [...]. Used when the customer is using card brand not supported by the merchant 3D Secure 2 configuration.
9003 Invalid fields: ${fields}.

Invalid fields: ${fields}.

E.g., Invalid fields: threeDS.authenticationPurpose,threeDS.billingCycle.endDate.

One or more fields have invalid values. The error for invalid fields comes from the front-end validations or when the 3D Secure 2 API returns 5068 error.

The possible values are all 3D Secure 2 related fields, e.g. threeDS.billingCycle.endDate

9004 There was an error (9004), please contact our support. Callback should be function.