Simulator (Testing connector)

The Simulator is an adapter for integration & testing purposes only. No real transaction will be performed at any payment provider.

Test data

Credit cards

Brand Number Result
Visa 4111 1111 1111 1111 Success
Visa 4242 4242 4242 4242 Failure
Mastercard 5555 5555 5555 4444 Success
Mastercard 5105 1051 0510 5100 Failure
Diners 3800 000000 0006 Success
Amex 3782 8224631 0005 Success
Discover 6011 1111 1111 1117 Success

Additionally, you can simulate an SCA Soft-Decline error code by sending amount 65.00 (any currency).

Extended 3D-Secure Testing

If extended 3D-Secure Testing is enabled on the Simulator, you can use the following card numbers (resp. cardholder names for 3DS version 1) to simulate the given results:

3DS 2.x Simulation

Number Method Fingerprinting ARes Result
4000 0010 0000 0000 true Frictionless - Fully Authenticated
4111 1111 1111 1111 true Frictionless - Fully Authenticated
5555 5555 5555 4444 true Frictionless - Fully Authenticated
4000 0020 0000 0008 false Frictionless - Fully Authenticated
4000 0010 0000 0216 true Frictionless - Attempted
4000 0020 0000 0016 false Frictionless - Attempted
4000 0010 0000 0109 true Challenge
5000 0010 0000 0007 true Challenge
4000 0020 0000 0024 false Challenge
4000 0010 0000 0307 true Not Authenticated
4000 0020 0000 0032 false Not Authenticated
4000 0010 0000 0208 true Rejected
4000 0020 0000 0040 false Rejected
4000 0030 0000 0006 Error: Not Enrolled
4000 0030 0000 0014 Error: Network Timeout
4000 0030 0000 0022 Error: Network Error
4000 0030 0000 0030 Error: Invalid card
4000 0040 0000 0004 false Error: Access Denied
4000 0040 0000 0012 false Error: Transient System Error
4000 0040 0000 0020 false Error: Invalid Format
4000 0040 0000 0038 false Error: Network Timeout
4000 0040 0000 0046 false Error: Network Error
4000 0040 0000 0053 false Error: Configuration missing
4000 0040 0000 0061 false Error: Configuration incomplete

3DS 1.x Simulation

Cardholder Name Result
3DS1_CONFIG_ERROR Error: Invalid Configuration
3DS1_NETWORK_TIMEOUT Error: Network Timeout
3DS1_NETWORK_ERROR Error: Network Error
3DS1_DS_TIMEOUT Error: Directory Server Timeout
3DS1_UNAUTHENTICATED Not authenticated
3DS1_NOT_ENROLLED Not enrolled
3DS1_ENROLLED Enrolled, PaReq Redirect

Direct Debit IBANs

You can use any IBAN you like.

The last four digits will control the result:

Last 4 digits Result
1111 Success
2222 Pending
2003 Transaction Declined
2006 Insufficient funds

Example: AT00 0000 0000 0000 1111 => Successful transaction

Alternatively you may override the outcome via extra data extraData.outcome

outcome value Result
1111 Success
2222 Pending
success Success

Defining outcome will overrule the behaviour based on the last 4 digits of the given IBAN.

Example: AT00 0000 0000 0000 2222 + outcome = success => Successful transaction

Simulate pending status change

You may simulate a transaction status change by adding the extraData pendingOutcome. Do note that this simulation may only be evoked by submitting an IBAN with outcome pending (ending with 2222) via the simulator payment page.

The status will change in approx. 5 minutes after submission.

Extra Data Value Result
pendingOutcome success Status will change from pending to success
pendingOutcome anyOtherString Status will change from pending to error

2C2P

Payment Methods

Payment Method Transaction Flows Transaction Types
Creditcard iFrame Form & payment.js Integration Debit, Register, Preauthorize, Capture, Void, Refund, Deregister
2C2P QR Payment Full-Page Redirect Debit only
2C2P Webpay Full-Page Redirect Debit only
2C2P ATM & Kiosk Full-Page Redirect Debit only
2C2P Pay at Counter Full-Page Redirect Debit only
2C2P Digital Wallet Full-Page Redirect Debit only
2C2P MPU Full-Page Redirect Debit only
2C2P OK Dollar Full-Page Redirect Debit only

Mandatory Parameters

Field Required
description true

Additional parameters

Extra Data Required Description
sub-method true name of the sub method which should be used

Due to the number of payment channels 2C2P provides per payment channel an extra parameter is required to determine which channel should be used. The full list of supported channels can be found here: List of Payment Channels

To use the desired Channel the "Channel Code" has to be submitted via the "sub-method" extra data field.

AdvCash

Payment Methods

Payment Method Transaction Flows Transaction Types
AdvCash Wallet Full-Page Redirect, Server-To-Server Register, Debit, Payout

Account Verification

The register transaction type (server-to-server) allows for verifying an AdvCash account. Send either customer.email or extraData.walletId for identifying an AdvCash wallet. Additionally, customer.firstName and customer.lastName are required. AdvCash returns a percentage of how much first and last name are matching, respectively. Additionally, a boolean flag is provided if the account is verified by AdvCash.

Note: the register transaction won't fail, if first and/or last name don't match, or if the wallet account is unverified. It will only fail, if the wallet account doesn't exist.

Adyen

Payment Methods

Payment Method Transaction Flows Transaction Types
Creditcard iFrame Form & payment.js Integration All
AliPay Full-Page Redirect Debit, Refund
Giropay Full-Page Redirect Debit, Refund
EPS Full-Page Redirect Debit, Refund
DirectDebit Full-Page Redirect Debit, Refund
iDeal Full-Page Redirect Debit, Refund
Dotpay Full-Page Redirect Debit, Refund
DragonPay Full-Page Redirect Debit, Refund
Boleto Full-Page Redirect Debit, Refund
Bancontact Full-Page Redirect Debit, Refund
Qiwi Full-Page Redirect Debit, Refund
Sofort Full-Page Redirect Debit, Refund
UnionPay Full-Page Redirect Debit, Refund
WeChatPay Full-Page Redirect Debit, Refund
Blik Hosted Payment Page Debit, Refund
Vipps Full-Page Redirect All
Online Banking Finland Full-Page Redirect Debit, Refund, Partial refund
Swish Full-Page Redirect Debit, Refund, Partial refund
PaySafeCard Full-Page Redirect Debit, Refund
Riverty Server-To-Server Debit, Preauthorize, Capture, Refund
Bizum Full-Page Redirect Debit, Refund
MB Way Hosted Payment Page Debit, Refund
Multibanco Full-Page Redirect Debit

Additional parameters

Creditcard

Parameter Required Description
extraData.authorisationType false PreAuth or FinalAuth
extraData.requestedTestAcquirerResponseCode false To test different responses on Adyen. This data can only be provided within Adyen's test environment.
extraData.merchantOrderReference false Mapped to the field merchantOrderReference on the Adyen API.

Blik

Parameter Required Description
extraData.blikCode false The code the customer got from Blik

Riverty

Parameter Required Description
customer.birthDate true The customer’s birth date in ISO 8601 format. eg. 1970-07-10
customer.gender true The customer’s gender. ("MALE" || "FEMALE")
customer.shippingFirstName true The customer’s first name and any middle names
customer.shippingLastName true The customer’s last name
customer.shippingAddress1 true Street name of the shipping address
customer.shippingAddress2 true Street number of the shipping address
customer.shippingCity true City name of the shipping address
customer.shippingPostcode true ZIP or postal code of the shipping address
customer.shippingCountry true Two characters Code of the shipping country ("NL"/"BE")
customer.billingFirstName false If not sent, customer.shippingFirstName will be used
customer.billingLastName false If not sent, customer.shippingLastName will be used
customer.billingAddress1 conditional* If not sent, customer.shippingAddress1 will be used
customer.billingAddress2 conditional If not sent, customer.shippingAddress2 will be used
customer.billingCity conditional If not sent, customer.shippingCity will be used
customer.billingPostcode conditional If not sent, customer.shippingPostcode will be used
customer.billingCountry conditional If not sent, customer.shippingCountry will be used
customer.shippingPhone true eq. "+31612345678"
customer.ipAddress true The shopper's IP address. Riverty uses this for risk checks.
customer.email true The customer’s email address
items true Array of line-items
item.identification true An item unique item id
item.description true Description of the item
item.quantity true Item quantity eq. "2"
item.price true Item price (exclusive tax)
item.l2l3Data.taxDetails.type true Item tax type information
item.l2l3Data.taxDetails.amount true Item tax amount
item.l2l3Data.taxDetails.rate true Item tax rate in percentages

*Note: If customer.billingAddress1 is sent, following parameters should also be sent:

If any of these parameters are missing, the shipping data will be used as billing data.

MB Way

Parameter Required Description
customer.billingPhone true Has to be a valid Portuguese phone number. eq. "+351234567890"
customer.billingCountry true ISO 3166-1 alpha-2 country code. Has to be "PT".

Multibanco

Parameter Required Description
customer.billingCountry true customer.shippingCountry should be PL
currency true EUR

Afterpay

Afterpay supports the following currencies: AUD, NZD, USD and CAD. The used currency must also match the currency of the Afterpay merchant account.

Payment Methods

Payment Method Transaction Flows Transaction Types Supported Currencies
Afterpay Full-Page Redirect Debit, Preauthorize, Capture, Void, Refund AUD, NZD, USD, CAD

Mandatory Parameters

Name Type Required Description
firstName (Customer) string true The customer’s first name and any middle names
lastName (Customer) string true The customer’s last name
email (Customer) string true The customer’s email address
billingAddress1 (Customer) string true First line of the address.
billingCity (Customer) string true Australian suburb, New Zealand town or city, U.K. Postal town, U.S. or Canadian city
billingState (Customer) string true Australian state, New Zealand region, U.K. county, Canadian Territory or Province, or U.S. state
billingPostcode (Customer) string true ZIP or postal code
billingCountry (Customer) string true The two-character country code
shippingFirstName (Customer) string true Shipping first name
shippingLastName (Customer) string true Shipping last name
shippingAddress1 (Customer) string true First line of the address
shippingCity (Customer) string true Australian suburb, New Zealand town or city, U.K. Postal town, U.S. or Canadian city
shippingState (Customer) string true Australian state, New Zealand region, U.K. county, Canadian Territory or Province, or U.S. state
shippingPostcode (Customer) string true ZIP or postal code
shippingCountry (Customer) string true The two-character country code
extraData.billingName (Customer) string true The full name of contact (first and last name)

Additional Parameters

Name Type Required Description
extraData.billingCity2 (Customer) string false New Zealand suburb or U.K. village or local area
extraData.shippingCity2 (Customer) string false New Zealand suburb or U.K. village or local area
extraData.shippedAt string false The time at which the order was shipped, in ISO 8601 format
extraData.courierName string false The name of the courier
extraData.tracking string false The tracking number provided by the courier
extraData.priority string false The shipping priority. If provided, must be either 'STANDARD' or 'EXPRESS'
extraData.taxAmount string false The included tax amount after applying all discounts
extraData.shippingAmount string false The shipping amount

Item Parameters

If items are given with the transaction data, the following parameters can or must be given:

Name Type Required Description
name (Item) string true Product name or display name for the discount
quantity (Item) string conditional Required for normal items, not mandatory for discount items
price (Item) string false The unit price of the individual item. Must be a positive value
extraData.type (Item) string false Set this parameter to 'discount' if the item should be sent as a discount item. Otherwise the field can be left empty
extraData.sku (Item) string false Product SKU
extraData.pageUrl (Item) string false The canonical URL for the item's Product Detail Page
extraData.imageUrl (Item) string false A URL for a web-optimised photo of the item, suitable for use directly as the src attribute of an img tag
extraData.estimatedShipmentDate (Item) string false The estimated date when the order will be shipped, in YYYY-MM or YYYY-MM-DD format

Options Request

Get Configured Min Max Purchase Amount

In order to get the configured Min and Max purchase amount range an Options Request is required.

Please use minMaxPrice as an identifier e.g. POST /options/{apiKey}/minMaxPrice.

You can find more information about the options request here: Options Request

Alignet

Payment Methods

Payment Method TransactionFlows Transaction Types
CreditCard iFrame Form & payment.js Integration Debit, Refund, Register, Deregister

Debit Parameters

Name Type Required Description
description string false Description of the transaction.
extraData.cardHolderEmail string true Cardholder's email.
extraData.cardHolderIdentityDocumentCountry string true Cardholder's ID country.
extraData.cardHolderIdentityDocumentType string true Cardholder's ID type.
extraData.cardHolderIdentityDocumentIdentifier string true Cardholder's ID number.
customer.firstName string true Billing's first name
customer.lastName string true Billing's last name
customer.email string true Billing’s email.
customer.billingAddress1 string true Billing’s address line 1.
customer.billingAddress2 string true Billing’s address line 2.
customer.city string true Billing’s city.
customer.postCode string true Billing’s post code.
customer.state string true Billing’s city.
customer.country string true Billing’s ISO country code.
customer.shippingFirstName string false Shipping’s first name.
customer.shippingLastName string false Shipping’s last name.
customer.shippingEmail string false Shipping’s email.
customer.shippingAddress1 string false Shipping’s address line 1.
customer.shippingAddress2 string false Shipping’s address line 2.
customer.shippingCity string false Shipping’s city.
customer.shippingPostCode string false Shipping’s pst code.
customer.shippingState string false Shipping’s sate.
customer.shippingCountry string false Shipping’s ISO country code.
customer.extraData.phoneCode string false Billing’s phone country.
customer.extraData.phoneSubscriber string false Billing’s phone Number.
customer.extraData.shippingPhoneCode string false Shipping’s phone Country Code.
customer.extraData.shippingPhoneSubscriber string false Shipping’s phone Number.

Register Parameters

Name Type Required Description
extraData.cardHolderEmail string true Cardholder's email.
extraData.cardHolderIdentityDocumentCountry string true Country of the cardholder's identity document in ISO format.
extraData.cardHolderIdentityDocumentType string true Cardholder's ID type (DNI, CE, PASSPORT).
extraData.cardHolderIdentityDocumentIdentifier string true Cardholder's ID number.
customer.identification string true Internal user identifier to the merchant.

Alipay

Payment Methods

Payment Method Transaction Flows Transaction Types
AlipayCN Redirect Debit, Register, Deregister, Auto Debit, Refund
AlipayHK Redirect Debit, Register, Deregister, Auto Debit, Refund
TrueMoney Redirect Debit, Register, Deregister, Auto Debit, Refund
TNG Redirect Debit, Register, Deregister, Auto Debit, Refund
GCash Redirect Debit, Register, Deregister, Auto Debit, Refund
Dana Redirect Debit, Register, Deregister, Auto Debit, Refund
Kakaopay Redirect Debit, Register, Deregister, Auto Debit, Refund
Bkash Redirect Debit, Register, Deregister, Auto Debit, Refund
Rabbit Line Pay Redirect Debit, Register, Deregister, Auto Debit, Refund
Easypaisa Redirect Debit, Refund
Conect Wallet Redirect Debit, Auto Debit, Refund
BPI Redirect Debit, Auto Debit, Refund
iDeal Redirect Debit, Refund
Giropay Redirect Debit, Refund
Sofort Redirect Debit, Refund
PayU Redirect Debit, Refund
P24 Redirect Debit, Refund
Blik Redirect Debit, Refund
EPS Redirect Debit, Refund
Bancontact Redirect Debit, Refund
PIX Redirect Debit, Refund (STILL INVALID)

Additional Parameters

Debit (One-Off)

Name Type Required Description
extraData.goodsName string true Maximum length: 256 Characters
extraData.blikCode string true (only when payment method is Blik) the 6-digits Blik Code provided by the customer to continue the transaction
extraData.payerEmail sting true (only when payment method is P24) the Payer Email
extraData.cpf string true (only when payment method is Pix) the Pix 11-digits cpf provided by the customer.

Recurring debit

Name Type Required Description
extraData.goodsName string true Maximum length: 256 Characters

Register

Name Type Required Valid values
extraData.scopes string true - BASE_USER_INFO : Indicates that the unique user ID can be obtained.
- USER_INFO : Indicates that the complete user information can be obtained, for example, user name, avatar, and other user information.
- AGREEMENT_PAY : Indicates that the user agrees to authorize for auto debit so that the merchant can use the access token to automatically deduct money from the user's account.

AlipayPlus

The current Alipay+ integration only supports the Alipay+ CashierPayment Flow!

Payment Methods

Payment Method Transaction Flows Transaction Types Description
Alipay+ Full-Page Redirect Debit, Refund Wallet will be selected by customer @ AlipayPlus
AlipayCN Full-Page Redirect Debit, Refund Only AlipayCN available
AlipayHK Full-Page Redirect Debit, Refund Only AlipayHK available
BPI Full-Page Redirect Debit, Refund Only BPI available
ConnectWallet Full-Page Redirect Debit, Refund Only ConnectWallet available
Dana Full-Page Redirect Debit, Refund Only Dana available
GCash Full-Page Redirect Debit, Refund Only GCash available
KakaoPay Full-Page Redirect Debit, Refund Only KakaoPay available
RabbitLinePay Full-Page Redirect Debit, Refund Only RabbitLinePay available
TNG Full-Page Redirect Debit, Refund Only TNG available
TrueMoney Full-Page Redirect Debit, Refund Only TrueMoney available
Boost Full-Page Redirect Debit, Refund Only Boost available
Akulaku Full-Page Redirect Debit, Refund Only Akulaku available

Connector Config

Parameter / Name Type Required Description
username (ClientId) string true Your ClientId from Alipay+. Starts with SANDBOX_ for their sandbox environment.
extraData.privateKey string true The Private Key - to be retrieved from Alipay+
extraData.alipayplusPublicKey string true The Alipay+ Public Key - to be found in the Alipay+ Developer Portal
extraData.referenceMerchantId string true The Reference Merchant Id - The ID assigned to identify the merchant.
extraData.merchantName string true The display name of the merchant.
extraData.merchantMCC string true The merchant category code, which represents the categorization of the merchant's business type
extraData.merchantAddressRegion string true The merchant address country
extraData.merchantAddressCity string true The merchant address city
extraData.referenceStoreId string false The Reference Store Id - The ID assigned to identify a store.
extraData.storeName string false The store name
extraData.storeMCC string false The stores category code, which represents the categorization of the store's business type
extraData.storeAddressRegion string false The store address region
extraData.storeAddressAddress1 string false The store address
extraData.expirySeconds int false Seconds till the payment expires. Between 60 seconds and 600 (default) seconds.
extraData.settlementCurrency string false The 3 letter ISO currency code of the currency that the merchant wants to be settled against. If provided, overwrites connector configuration
extraData.signatureKeyVersion string false Specifies the key version that is used to generate or validate the signature. By default, the value is the latest version of the key associated with Client-Id

Debit Parameters

Name Type Required Description
currency string true 3 letter currency code
amount string true Transaction amount: decimals separated by a "." (dot)
description string true Description of items the user is purchasing Alipay+ Docs
extraData.terminalType string true Valid values: WEB,WAP,APP,MINI_APP Alipay+ Docs
extraData.osType string conditional Required if extraData.terminalType == APP/WAP Valid values: IOS, ANDROID Alipay+ Docs
extraData.settlementCurrency string false The 3 letter ISO currency code of the currency that the merchant wants to be settled against. If provided, overwrites connector configuration
extraData.allowedPspRegions string false Comma separated list of allowed Countries e.g. AT,DE
extraData.splitSettlementId string false Alipay+ split settlement support Alipay+ Docs

Debit Customer Parameters

Name Type Required Description
identification (Customer) string false (but highly recommended) The customer’s unique id at the merchant
firstName (Customer) string false (but highly recommended) The customer’s first name and any middle names
lastName (Customer) string false (but highly recommended) The customer’s last name
email (Customer) string false (but highly recommended) The customer’s email address
billingPhone (Customer) string false The customer’s phone number
billingCountry (Customer) string false The customer’s country ISO 3166 2-letter country code. Mapped to userRegion
ipAddress (Customer) string false The customer’s IP address
shippingFirstName (Customer) string false Shipping first name
shippingLastName (Customer) string false Shipping last name
shippingAddress1 (Customer) string false First line of the address
shippingAddress2 (Customer) string false Second line of the address
shippingCity (Customer) string false Australian suburb, New Zealand town or city, U.K. Postal town, U.S. or Canadian city
shippingState (Customer) string false Australian state, New Zealand region, U.K. county, Canadian Territory or Province, or U.S. state
shippingPostcode (Customer) string false ZIP or postal code
shippingCountry (Customer) string false The two-character country code
extraData.shippingCarrier (Customer) string false The name of the carrier, such as FedEx, UPS, USPS, and so on

Debit Item Parameters

If items are provided with the transaction data, the following parameters can or must be given:

Name Type Required Description
identification (Item) string true The unique ID assigned by the merchant that directly provides services or goods to users to identify goods
name (Item) string true Product name or display name for the discount
quantity (Item) string false Quantity
currency (Item) string false If not provided transaction.currency will be used
price (Item) string false Item price: decimals separated by a "." (dot)
extraData.category (Item) string false Item Category
extraData.brand (Item) string false Item Brand

ConsultPayment Request

In order to retrieve the available payment methods and active promotions details, the consultPayment options request has to be issued.

Please use consultPayment as an option name e.g. POST /options/{apiKey}/consultPayment.

ConsultPayment Parameters

Name Type Required Description
parameters.type string true Valid values: CASHIER
parameters.currency string true 3 letter currency code
parameters.amount string true Payment amount: decimals separated by a "." (dot)
parameters.settlementCurrency string true 3 letter currency code for settlement
parameters.terminalType string true Valid values: WEB,WAP,APP,MINI_APP Alipay+ Docs
parameters.osType string conditional Required if extraData.terminalType == APP/WAP Valid values: IOS, ANDROID Alipay+ Docs

Request body

Request Body Example

{
  "parameters": {
    "type": "CASHIER",
    "currency": "USD",
    "amount": 100,
    "settlementCurrency": "JPY",
    "terminalType": "WEB"
  }
}

Response

Example responses

success

{
  "success": true,
  "options": {
    "paymentOptions": [
      {
        "brandName": "Alipay+",
        "enabled": "true",
        "logos": [
          {
            "logoHeight": "190",
            "logoName": "Alipay+",
            "logoPattern": "default",
            "logoUrl": "https://cdn.marmot-cloud.com/storage/aplus-checkout-prod/icon/prod/CONNECT_WALLET_TEST.png",
            "logoWidth": "810"
          }
        ],
        "paymentMethodType": "CONNECT_WALLET",
        "promoNames": [
          "{\"en_US\":\"A+ Cashier Promotion Test\",\"fil_PH\":\"A+ Cashier Promotion Test\"}"
        ]
      }
    ]
  }
}

error

{
  "success": false,
  "errorMessage": "Given identifier 'someIdentifier' is invalid."
}

You can find more information about the options request here: Options Request

AmazonPayments

Payment Methods

Payment Method Transaction Flows Transaction Types
AmazonPayments payment.js All

Integration guide

AmazonPayments require you to display the Amazon Widget on your Checkout page. This is handled by the payment.js integration.

​1. Embed the payment.min.js in your page

<script data-main="payment-js" src="https://gateway.tillpayments.com/js/integrated/payment.1.3.min.js"></script>

​2. Provide DIV elements on your page for the various Amazon widgets

<div id='loginButton'></div>
<div id='addressWidgetDiv'></div>
<div id='walletWidgetDiv'></div>
<div id='consentWidgetDiv'></div>

​3. Initialize the payment.js with the following parameters:

<script>
  var payment = new PaymentJs('1.2');

  amazonEventHandler = function (eventName, data) {
    //handle events here
  }

  completeHandler = function (paymentJsInstance) {
    //you can do additional stuff in here, e.g. make the DIVs visible if they were hidden
  }

  var additionalParameters = {
    buttonType: 'PwA', // Type of AmazonPayments Button
    buttonColor: 'Gold', // Color of AmazonPayments Button
    buttonSize: 'small', // Size of AmazonPayments Button
    loginPopup: true, // Use Pop-Up for logging customers in into their Amazon account
    autoShow: true, // automatically show AmazonPayments Login button once ready
    loginRedirectUrl: // if loginPopup is false, provide the URL to get back redirected after customer logged in to Amazon
  };

  payment.initAmazon(
    'public-integration-key',
    'loginButton', // mandatory
    'addressWidgetDiv', //optional
    'walletWidgetDiv', // mandatory
    'consentWidgetDiv', // optional, necessary for recurring transactions
    amazonEventHandler,
    additionalParameters,
    completeHandler
  );
</script>

​4. You can react on the various AmazonPayments events in your amazonEventHandler.

If you set autoShow to true, the various widget will be automatically shown to fulfill the payment flow.

If set to false, you have to take care about that on your own.

The following events will be fired:

The individual widgets can be shown and hidden with payment.js methods.

<script>
    // show/hide login button
    payment.amazon().login.show();
    payment.amazon().login.hide();

    // show/hide addressBook widget
    payment.amazon().addressBook.show();
    payment.amazon().addressBook.hide();

    // show/hide wallet widget
    payment.amazon().wallet.show();
    payment.amazon().wallet.hide();

    // show/hide consent widget
    payment.amazon().consent.show();
    payment.amazon().consent.hide();

</script>

​5. Once wallet.selected (or consent.complete to enable recurring transactions) was fired, and the customer confirms the order on your checkout page, you must call the tokenize method to obtain a payment token. This token is then to be used in the transactionToken element of the Debit call to the Transaction API.

<script>
  payment.tokenize(
    {}, //optional additional data
    function (token) {
      //Submit token to your server and perform transaction through Transaction API

      //Example:
      $('#transaction_token').val(token); //store the transaction token
      $('#payment_form').get(0).submit(); //submit the form
    },
    function (errors) {
      //show/handle errors
    }
  );
</script>

Amazon Payment Services

Payment Methods

Payment Method Transaction Flows Transaction Types
Creditcard iFrame Form & payment.js Integration Debit, Register, Preauthorize, Capture, Void, Refund, Deregister

Mandatory Parameters

Name Type Required Description
customer.email string true The customer's email

Optional Parameters

Name Type Required Description
extraData.recurringMode string false Only relevant for recurring transactions.
Possible values: FIXED, VARIABLE, default: FIXED

Additional Information

Be aware that we have a special converter for this adapter, which converts our Transaction Indicators to Amazon.

Transaction Indicator Amazon Transaction Indicator
SINGLE ECOMMERCE
INITIAL, RECURRING, CARDONFILE, CARDONFILE-MERCHANT-INITIATED RECURRING
MOTO MOTO

For Amazon Payment Services we can identify MADA/MEEZA cards depending on the BIN range to be used in the Hosted Payment Page.

Apple Pay

Apple Pay is not an adapter itself, but a common type of payment supported by some listed adapters.

Prerequisites

For processing transactions with Apple Pay tokens, the Gateway has to be configured with your Payment Processing certificate first. Please ask your Gateway administrator to do so.

Instruction on how to acquire this certificate can be found directly in the Apple documentation: https://developer.apple.com/documentation/apple_pay_on_the_web/setting_up_your_server

Transaction Processing

For Apple Pay transactions acquire a Payment Token through your iOS App, or Apple Pay on the Web. (Refer to https://developer.apple.com/documentation/passkit & https://developer.apple.com/documentation/apple_pay_on_the_web).

The resulting token must be submitted in the transactionToken element of the Debit/Preauthorize, prefixed with applepay:

Example:

<transactionToken>
  applepay:{"token":{"paymentData":{"version":"EC_v1","data":"...","signature":"...","publicKeyHash":"...","transactionId":"...."}},"paymentMethod":{"displayName":"Some card","network":"MasterCard","type":"debit"},"transactionIdentifier":"..."}}
</transactionToken>

ATOM

Payment Methods

Payment Method Transaction Flows Transaction Types
Creditcard Full-Page Redirect Debit, Refund, Partial Refund

Additional parameters

Parameter Required Description
extraData.serviceCharge true Service charge (txnscamt) - can alternatively be set via connector setting
extraData.customerAccountNo true Customer account number (custacc) 10-16 digits - can alternatively be set via connector setting
extraData.mdd true CC or DC - can alternatively be set via connector setting
customer.identifier false If none is given we will pass our UUID
customer.firstName false Customer first name
customer.lastName false Customer lsat name
customer.email false Customer email
customer.billingPhone false Customer phone
customer.billingAddress1 false Customer billing address
extraData.udf5 false EMI bank name (only for EMI merchants)
extraData.udf6 false EMI tenure (only for EMI merchants)

Authorize.net

Payment Methods

Payment Method Transaction Flows Transaction Types
Creditcard iFrame Form All

Additional Parameters

none

Banca Intesa

Payment Methods

Payment Method Transaction Flows Transaction Types
Creditcard Server-To-Server, iFrame Form & payment.js Integration Debit, Preauthorize, Capture, Refund, Void, Register

Additional Parameters

Parameter Required Description
extraData.installment false Numeric count of installments

Bank Of America

The Bank of America Adapter differs in its behavior from an ordinary Adapter. It does not directly communicate with any Bank of America provided Endpoint to process transactions. It is solely responsible for Transaction creation (and validation), to be processed later on with a so called Provider.

Please consult the official Bank of America NACHA File Spec User Guide for indepth information about individual Parameters.

Payment Methods

Payment Method Transaction Flows Transaction Types
ACH-Direct-Debit SFTP Up-/Download Debit

Connector Config

Parameter / Name Required Default Allowed Value Description
standardEntryClass true CCD - The Standard Entry Class (SEC) in which the Transaction should be processed later on.
batchServiceClassCode true 200 - The Service Class Code that the Batch should receive. "200": Indicates mixed Batch, "220": For Credits only, "225": For Debits only
batchCompanyEntryDescription true PAYROLL - Required Description displayed to the Receiver.
batchOriginatingDfiId true - max. 8 digits Provided by Bank of America.
batchCompanyId true - max. 10 chars Provided by Bank of America.
batchCompanyDiscretionaryData false - max. 20 chars For your Company's internal use.
batchIATOriginISOCurrency conditional - max. 3 chars Required if Standard Entry Class "IAT" is selected. Origin ISO Currency Code of containing Transactions.
batchIATDestinationISOCurrency conditional - max. 3 chars Required if Standard Entry Class "IAT" is selected. Destination ISO Currency Code of containing Transactions.
batchIATDestinationISOCountryCode conditional - max. 2 chars Required if Standard Entry Class "IAT" is selected. Destination ISO Country Code of containing Transactions.

Transaction Parameters

Name Type Required Allowed Value Description
extraData object true object containing key-value pairs (string-to-string)
extraData.accType string true checking or checkings / savings Account Type of Payment Origin.
extraData.accNum string true max. 17 chars Account Number of Payment Origin.
extraData.routingNum string true max. 9 chars Routing Number of Payment Origin.
extraData.originAddress string conditional max. 35 chars Required if Standard Entry Class "IAT" is selected.
extraData.originCity string conditional max. 17 chars Required if Standard Entry Class "IAT" is selected.
extraData.originState string conditional max. 17 chars Required if Standard Entry Class "IAT" is selected.
extraData.originCountry string conditional max. 17 chars Required if Standard Entry Class "IAT" is selected.
extraData.originPostalCode string conditional max. 17 chars Required if Standard Entry Class "IAT" is selected.
extraData.receivingDFIName string conditional max. 35 chars Required if Standard Entry Class "IAT" is selected.
extraData.receivingDFIIdentificationNumberQualifier string conditional max. 2 chars Required if Standard Entry Class "IAT" is selected.
extraData.receivingDFIIdentificationNumber string conditional max. 34 chars Required if Standard Entry Class "IAT" is selected.
extraData.receivingDFIBranchCountryCode string conditional max. 3 chars Required if Standard Entry Class "IAT" is selected.
customer.firstName & customer.lastName to build the fullName string conditional max 35 chars for IAT else concatinated by a space max 22 chars Required if Standard Entry Class "PPD|TEL|WEB" is selected. For IAT either those fields or customer.company has to be provided. All chars greater than the allowed max, will be stripped.
customer.company string conditional max 35 chars for IAT, max 16 char for CTX Required if Standard Entry Class "CCD|CTX" is selected. For IAT either this field or (customer.firstName & customer.lastName) have to be provided. All chars greater than the allowed max, will be stripped.

Error Code Mapping

Error Code Provider Error Code Provider Error Message
2006 R01 Insufficient Funds
2001 R02 Account Closed
2007 R03 No Account/Unable to Locate Account
2007 R04 No Account/Unable to Locate Account
2003 R05 Unauthorized Debit to Consumer Account Using Corporate SEC
2003 R06 Returned Per ODFI's Request'
2003 R07 Authorization Revoked by Customer
2012 R08 Payment Stopped
2006 R09 Uncollected Funds
2003 R10 Customer Advises Originator is Not Known to Receiver and/or Originator is Not Authorized by Receiver to Debit Receiver's Account
2003 R11 Customer Advises Entry Not in Accordance with the Terms of the Authorization
2012 R12 Branch Sold to Another DFI
2007 R13 Invalid ACH Routing Number
2012 R14 Representative Payee Deceased or Unable to Continue in that Capacity
2012 R15 Beneficiary or Account Holder Deceased
2001 R16 Account Frozen
2012 R17 File Record Edit Criteria
2012 R18 Improper Effective Entry Date
2007 R20 Non-Transaction Account
2007 R21 Invalid Company Identification
2007 R22 Invalid Individual ID Number
2003 R23 Credit Entry Refused by Receiver
3004 R24 Duplicate Entry
2007 R25 Addenda Error
2007 R26 Mandatory Field Error
2007 R27 Trace Number Error
2007 R28 Routing Number Check Digit Error
2003 R29 Corporate Customer Advises Not Authorized
2003 R31 Permissible Return Entry (CCD and CTX only)
2003 R33 Return of XCK Entry
2003 R34 Limited Participation DFI
2003 R35 Return of Improper Debit Entry
2003 R36 Return of Improper Credit Entry
2003 R37 Source Document Presented for Payment
2003 R38 Stop Payment on Source Document
2007 R39 Improper Source Document
2003 R50 State Law Affecting RCK Acceptance
2007 R51 Item Ineligible, Notice Not Provided, Signature Not Genuine, or Amount of Entry Not Accurately Obtained from Item
2003 R52 Stop Payment on RCK Item (adjustment entries)
2003 R53 Item and ACH Entry Presented for Payment
2007 C01 Incorrect DFI Account Number
2007 C02 Incorrect Routing Number
2007 C03 Incorrect Routing Number & Incorrect DFI Account Number
2007 C04 Incorrect Individual Name/Receiving Company Name
2007 C05 Incorrect Transaction Code
2007 C06 Incorrect DFI Account Number and Incorrect Transaction Code
2007 C07 Incorrect Routing Number, Incorrect DFI Account Number and Incorrect Transaction Code
2007 C09 Incorrect Individual Identification Number
2007 C13 Addenda Format Error

BDO

Payment Methods

Payment Method Transaction Flows Transaction Types
GCASH Full-Page Redirect Debit, Refund

Mandatory parameters for Debit

Extra data Type Required Description
description string true The order description

Beem

Payment Methods

Payment Method Transaction Flows Transaction Types
eQr Redirect to Qr Code page Debit, Refund

Mandatory Fields

Key Value Transaction Type Description
extraData.store string Debit Name of the store
Description string O Debit
Items item object (Item Name, Item Description, Item Quantity, Item Price) O Debit ( it's mandatory to add at least one Item to the payload)
Item Name one of [sku,tax,shipping, discount] O Debit

Additional Parameters (Conditional Mandatory)

Key Value Required Transaction Type Description
extraData.location string false Debit Location of the store
extraData.type reversal false Refund Adding this within 24 hours of the payment will send an Abort payment request instead of the Refund request
Item.Item Identifier string for sku items Debit The item Identifier
Item.ExtraData.uri string for sku items Debit The URI to the item
Item.ExtraData.disc_amount string for sku items Debit Discount amount, must begin with numeric value
Item.ExtraData.disc_description string for sku items Debit discount description

BillPay

Payment Methods

Payment Method Transaction Flows Transaction Types
DirectDebit Server-To-Server Register, Debit, Refund
Invoice Server-To-Server Register, Debit, Refund

Note: any Debit transaction automatically creates the authorization & the invoice on BillPay side.

Mandatory parameters

Extra Data Required Description
Description false Description that should be shown on the bank statement
extraData.expectedDaysTillShipping true integer in days
extraData.shippingMethod true any string
extraData.itemIdentification For Register any string, used as articleId
extraData.itemName For Register any string, used as articleName
customer.identification true
customer.firstName true
customer.lastName true
customer.email true
customer.billingAddress true all address details
customer.birthDate true e.g. 1980-01-01
customer.iban true for DirectDebit
customer.ipAddress true
customer.extraData.salutation true Mr., Mrs., Hr., Fr., etc.
customer.extraData.type true guest, existing or new
items true at least one item
extraData.paymentType false one of invoice, directDebit - overrules configuration
extraData.shippingPriceNet false decimal
extraData.shippingPriceGross false decimal
extraData.rebateNet false decimal
extraData.rebateGross false decimal
extraData.orderAmountNet false decimal
extraData.shippingTrackingNumber false string
customer.extraData.title false string
customer.extraData.copmanyLegalForm false string
customer.extraData.companyHolderName false string
customer.extraData.companyTaxNumber false string
item.extraData.category false string
item.extraData.subcategory1 false string
item.extraData.subcategory2 false string
item.extraData.priceNet false string

Bitpay

Payment Methods

Payment Method Transaction Flows Transaction Types
BitCoin Full-Page Redirect Debit only

Additional Parameters

Field Required
description false
firstName false
lastName false
email false
billingPhone false
billingAddress1 false
billingCity false
billingState false

Braintree CreditCard

A payment platform that gives you access to PayPal, Venmo (in the US), credit and debit cards plus the most relevant wallets and local payment methods in a single integration.

Supported features

Payment methods

The table below lists the payment methods that Braintree CreditCard supports. It also includes the available processing options and the supported transaction types for each of those payment methods.

Payment Method Processing options Transaction types
Creditcard (Creditcard) Hosted fields — payment.js Debit
Preauthorize
Incremental authorization
Capture
Void
Refund
Payout
Register
Deregister

Connector configuration

Parameter / Name Type Required Description
publicKey string true The Braintree Public Key - to be found in the Braintree Merchant Portal
privateKey string true The Braintree Private Key - to be found in the Braintree Merchant Portal
merchantId string false The Braintree Merchant Id - to be found in the Braintree Merchant Portal
ignoreDisputes bool false Determine if incoming Disputes (part of Callback) should be handled at all.
sendDescriptionInCustomField string false Required if you want to add a description to your Transaction (checkout Further Config Parameter Description down below).
sendMerchantTransactionIdInCustomField string false Required if you want to pass a Merchant-Transaction-Id to your Transaction (checkout Further Config Parameter Description down below).
useBtDescriptor bool false to map additionalId1 to Braintree's descriptor.name
useAvs bool false to use Braintree's Address Verification Service

Mapping to Braintree CreditCard

This segment provides a comprehensive guide to effectively integrate Braintree CreditCard into your payment procedure. It offers a detailed mapping between the fields of the gateway and corresponding fields on the Braintree CreditCard side. Furthermore, it outlines the requisite fields which must be delivered per specific payment method and transaction type.

Parameters

Request mapping

Gateway parameter Braintree CreditCard parameter Type Description Transaction types
transactionIndicator input.transaction.payment.initiator, input.options.externalVault.status required string Mandatory for card on file, card on file merchant initiated, recurring (see Recurring Transactions)
additionalId1 input.transaction.descriptor.name optional string Effective only if the connector configuration setting useBtDescriptor is enabled. only: Debit, Preauthorize
extraData.purchaseOrderNumber input.transaction.purchaseOrderNumber optional string only: Debit, Preauthorize, Capture
extraData.shipsFromPostalCode input.transaction.shipping.shipsFromPostalCode required string
Only to get reduced interchange fees.
only: Debit, Preauthorize, Capture
extraData.taxExempt input.transaction.tax.taxExempt optional boolean If not set: false only: Debit, Preauthorize, Capture
l2L3Data.discountAmount input.transaction.discountAmount required string
Only to get reduced interchange fees.
If not set: 0.00 only: Debit, Preauthorize, Capture
l2L3Data.taxAmount input.transaction.tax.taxAmount required string
Only to get reduced interchange fees.
If not set: 0.00 only: Debit, Preauthorize, Capture
l2L3Data.freightAmount input.transaction.shipping.shippingAmount required string
Only to get reduced interchange fees.
If not set: 0.00 only: Debit, Preauthorize, Capture
items[] input.transaction.lineItems[] required string
Only to get reduced interchange fees.
At least one item is required for Level 2/Level 3 discounts. The following are the required fields for each transaction type. only: Debit, Preauthorize, Capture, Refund
items[].name input.transaction.lineItems[].name required string
Only to get reduced interchange fees.
only: Debit, Preauthorize, Capture, Refund
items[].quantity input.transaction.lineItems[].quantity required string
Only to get reduced interchange fees.
only: Debit, Preauthorize, Capture, Refund
items[].price input.transaction.lineItems[].totalAmount required string
Only to get reduced interchange fees.
only: Debit, Preauthorize, Capture, Refund
items[].identification input.transaction.lineItems[].productCode required string
Only to get reduced interchange fees.
only: Debit, Preauthorize, Capture, Refund
items[].description input.transaction.lineItems[].description required string
Only to get reduced interchange fees.
only: Debit, Preauthorize, Capture, Refund
items[].l2l3Data.unit input.transaction.lineItems[].unitOfMeasure required string
Only to get reduced interchange fees.
only: Debit, Preauthorize, Capture, Refund
items[].l2l3Data.unitPrice input.transaction.lineItems[].unitAmount required string
Only to get reduced interchange fees.
only: Debit, Preauthorize, Capture, Refund
items[].extraData.unitTaxAmount input.transaction.lineItems[].unitTaxAmount required string
Only to get reduced interchange fees.
If not set: 0.00 only: Debit, Preauthorize, Capture, Refund
items[].l2l3Data.taxAmount input.transaction.lineItems[].taxAmount required string
Only to get reduced interchange fees.
If not set: 0.00 only: Debit, Preauthorize, Capture, Refund
items[].l2l3Data.discount input.transaction.lineItems[].discountAmount required string
Only to get reduced interchange fees.
If not set: 0.00 only: Debit, Preauthorize, Capture, Refund
items[].l2l3Data.commodityCode input.transaction.lineItems[].commodityCode required string
Only to get reduced interchange fees.
only: Debit, Preauthorize, Capture, Refund
items[].extraData.url input.transaction.lineItems[].url required string
Only to get reduced interchange fees.
only: Debit, Preauthorize, Capture, Refund
items[].l2l3Data.type input.transaction.lineItems[].itemType optional string only: Debit, Preauthorize, Capture, Refund
items[].extraData.imageUrl input.transaction.lineItems[].imageUrl optional string only: Debit, Preauthorize, Capture, Refund
customer.shippingFirstName input.transaction.shipping.shippingAddress.firstName required string
Only to get reduced interchange fees.
Customer shipping address is required for Level 2/Level 3 discounts. The following are the required fields for each transaction type. only: Debit, Preauthorize
customer.shippingLastName input.transaction.shipping.shippingAddress.lastName required string
Only to get reduced interchange fees.
only: Debit, Preauthorize
customer.shippingAddress1 input.transaction.shipping.shippingAddress.addressLine1 required string
Only to get reduced interchange fees.
only: Debit, Preauthorize
customer.shippingAddress2 input.transaction.shipping.shippingAddress.addressLine2 optional string only: Debit, Preauthorize
customer.shippingCity input.transaction.shipping.shippingAddress.locality required string
Only to get reduced interchange fees.
only: Debit, Preauthorize
customer.shippingPostcode input.transaction.shipping.shippingAddress.postalCode required string
Only to get reduced interchange fees.
only: Debit, Preauthorize
customer.shippingState input.transaction.shipping.shippingAddress.adminArea1 required string
Only to get reduced interchange fees.
only: Debit, Preauthorize
customer.shippingCountry input.transaction.shipping.shippingAddress.countryCode required string
Only to get reduced interchange fees.
only: Debit, Preauthorize

Response mapping

Gateway parameter Braintree CreditCard parameter Type Description Transaction types
extraData.avs_result data.verifyCreditCard.verification.processorResponse.avsPostalCodeResponse required string AVS postal code

Transaction indicators

Gateway transaction indicator Braintree CreditCard transaction indicator
MOTO MOTO
RECURRING RECURRING
INITIAL RECURRING_FIRST
CARDONFILE_MERCHANT UNSCHEDULED
CARDONFILE UNSCHEDULED

Error codes

Braintree CreditCard error codes

Gateway error code Braintree CreditCard error code Braintree CreditCard error message
2011 2000 Do Not Honor
2011 2024 Do Not Honor
2006 2001 Insufficient Funds
2004 2002 Limit Exceeded
2004 2003 Limit Exceeded
2009 2004 Card Expired
2008 2005 Invalid Card Number
2008 2007 Invalid Card Number
2008 2008 Invalid Card Number
2008 2009 Invalid Card Number
2007 2006 Invalid Expiration Date
1002 2010 Invalid Card CVV
1007 2011 Authorization Required
2003 2012 Declined
2003 2013 Declined
2003 2014 Declined
2003 2015 Declined
2003 2017 Declined
2003 2018 Declined
2003 2019 Declined
2003 2020 Declined
2003 2021 Declined
2003 2022 Declined
2003 2023 Declined
2003 2041 Declined
2003 2044 Declined
2003 2046 Declined
2003 2047 Declined
2003 2057 Declined
2003 2066 Declined
2003 2068 Declined
2003 2069 Declined
2003 2070 Declined
2003 2071 Declined
2003 2072 Declined
2003 2073 Declined
2003 2074 Declined
2003 2075 Declined
2003 2076 Declined
2003 2077 Declined
2003 2078 Declined
2003 2079 Declined
2003 2080 Declined
2003 2081 Declined
2003 2082 Declined
2003 2083 Declined
2003 2084 Declined
2003 2085 Declined
2003 2086 Declined
2003 2087 Declined
2003 2088 Declined
2003 2089 Declined
2003 2090 Declined
2003 2091 Declined
2003 2092 Declined
2003 2093 Declined
2003 2094 Declined
2003 2095 Declined
2003 2096 Declined
2003 2097 Declined
2003 2098 Declined
2003 2099 Declined
2003 2100 Declined
2003 2101 Declined
2003 2102 Declined
2003 2103 Declined
2003 2104 Declined
3004 2016 Duplicate Transaction
1007 2025 Configuration Error
1007 2026 Configuration Error
1007 2027 Configuration Error
1007 2028 Configuration Error
1007 2029 Configuration Error
1007 2030 Configuration Error
1007 2058 Configuration Error
1002 2031 Invalid Data
1002 2032 Invalid Data
1002 2033 Invalid Data
1002 2034 Invalid Data
1002 2035 Invalid Data
1002 2036 Invalid Data
1002 2037 Invalid Data
1002 2038 Invalid Data
1002 2039 Invalid Data
1002 2040 Invalid Data
1002 2042 Invalid Data
1002 2045 Invalid Data
1002 2048 Invalid Data
1002 2049 Invalid Data
1002 2050 Invalid Data
1002 2051 Invalid Data
1002 2052 Invalid Data
1002 2054 Invalid Data
1002 2055 Invalid Data
1002 2056 Invalid Data
1002 2059 Invalid Data
1002 2060 Invalid Data
1002 2061 Invalid Data
1002 2062 Invalid Data
1002 2063 Invalid Data
1002 2064 Invalid Data
2016 2043 Stolen Card
2016 2053 Stolen Card
2009 2065 Expired
2009 2067 Expired
1002 83905 Data Validation Error
1002 81801 Data Validation Error
1002 81802 Data Validation Error
1002 81804 Data Validation Error
1002 81805 Data Validation Error
1002 81806 Data Validation Error
1002 81807 Data Validation Error
1002 81813 Data Validation Error
1002 81808 Data Validation Error
1002 81809 Data Validation Error
1002 81810 Data Validation Error
1002 81811 Data Validation Error
1002 81812 Data Validation Error
1002 81827 Data Validation Error
1002 81828 Data Validation Error
1002 91803 Data Validation Error
1002 91815 Data Validation Error
1002 91816 Data Validation Error
1002 91817 Data Validation Error
1002 91814 Data Validation Error
1002 91818 Data Validation Error
1002 91819 Data Validation Error
1002 91820 Data Validation Error
1002 91821 Data Validation Error
1002 91822 Data Validation Error
1002 91823 Data Validation Error
1002 91824 Data Validation Error
1002 91825 Data Validation Error
1002 91826 Data Validation Error
1002 91828 Data Validation Error
1002 918996 Data Validation Error
1002 918997 Data Validation Error
1002 918998 Data Validation Error
1002 918999 Data Validation Error
1002 82602 Data Validation Error
1002 82603 Data Validation Error
1002 82604 Data Validation Error
1002 82605 Data Validation Error
1002 82606 Data Validation Error
1002 82607 Data Validation Error
1002 82608 Data Validation Error
1002 82610 Data Validation Error
1002 82675 Data Validation Error
1002 82676 Data Validation Error
1002 82674 Data Validation Error
1002 82609 Data Validation Error
1002 82637 Data Validation Error
1002 82611 Data Validation Error
1002 82638 Data Validation Error
1002 82612 Data Validation Error
1002 82639 Data Validation Error
1002 82613 Data Validation Error
1002 82640 Data Validation Error
1002 82614 Data Validation Error
1002 82641 Data Validation Error
1002 82615 Data Validation Error
1002 82642 Data Validation Error
1002 82616 Data Validation Error
1002 82643 Data Validation Error
1002 82627 Data Validation Error
1002 82644 Data Validation Error
1002 82628 Data Validation Error
1002 82645 Data Validation Error
1002 82631 Data Validation Error
1002 82632 Data Validation Error
1002 82688 Data Validation Error
1002 82647 Data Validation Error
1002 82633 Data Validation Error
1002 82634 Data Validation Error
1002 82635 Data Validation Error
1002 82649 Data Validation Error
1002 82650 Data Validation Error
1002 82621 Data Validation Error
1002 82622 Data Validation Error
1002 82623 Data Validation Error
1002 82624 Data Validation Error
1002 82625 Data Validation Error
1002 82626 Data Validation Error
1002 82617 Data Validation Error
1002 82657 Data Validation Error
1002 82618 Data Validation Error
1002 82658 Data Validation Error
1002 82619 Data Validation Error
1002 82659 Data Validation Error
1002 82620 Data Validation Error
1002 82660 Data Validation Error
1002 82629 Data Validation Error
1002 82661 Data Validation Error
1002 82664 Data Validation Error
1002 82668 Data Validation Error
1002 82630 Data Validation Error
1002 82662 Data Validation Error
1002 82636 Data Validation Error
1002 82656 Data Validation Error
1002 82663 Data Validation Error
1002 82666 Data Validation Error
1002 82670 Data Validation Error
1002 82671 Data Validation Error
1002 82665 Data Validation Error
1002 82667 Data Validation Error
1002 82672 Data Validation Error
1002 82673 Data Validation Error
1002 82646 Data Validation Error
1002 82677 Data Validation Error
1002 82669 Data Validation Error
1002 82648 Data Validation Error
1002 82685 Data Validation Error
1002 82686 Data Validation Error
1002 82684 Data Validation Error
1002 82679 Data Validation Error
1002 82678 Data Validation Error
1002 82681 Data Validation Error
1002 82680 Data Validation Error
1002 82683 Data Validation Error
1002 82682 Data Validation Error
1002 82687 Data Validation Error
1002 82689 Data Validation Error
1002 82690 Data Validation Error
1002 82691 Data Validation Error
1002 82692 Data Validation Error
1002 926996 Data Validation Error
1002 926997 Data Validation Error
1002 926998 Data Validation Error
1002 926999 Data Validation Error
1002 91602 Data Validation Error
1002 91609 Data Validation Error
1002 91610 Data Validation Error
1002 91611 Data Validation Error
1002 91612 Data Validation Error
1002 91613 Data Validation Error
1002 91617 Data Validation Error
1002 91618 Data Validation Error
1002 91619 Data Validation Error
1002 91620 Data Validation Error
1002 91621 Data Validation Error
1002 91622 Data Validation Error
1002 91623 Data Validation Error
1002 81601 Data Validation Error
1002 81603 Data Validation Error
1002 81604 Data Validation Error
1002 81605 Data Validation Error
1002 81606 Data Validation Error
1002 81607 Data Validation Error
1002 81608 Data Validation Error
1002 81613 Data Validation Error
1002 81614 Data Validation Error
1002 81615 Data Validation Error
1002 81616 Data Validation Error
1002 916996 Data Validation Error
1002 916997 Data Validation Error
1002 916998 Data Validation Error
1002 916999 Data Validation Error
1002 93101 Data Validation Error
1002 93102 Data Validation Error
1002 93103 Data Validation Error
1002 93104 Data Validation Error
1002 93105 Data Validation Error
1002 93106 Data Validation Error
1002 93107 Data Validation Error
1002 93108 Data Validation Error
1002 93109 Data Validation Error
1002 93113 Data Validation Error
1002 93114 Data Validation Error
1002 93115 Data Validation Error
1002 93116 Data Validation Error
1002 93117 Data Validation Error
1002 93118 Data Validation Error
1002 93119 Data Validation Error
1002 93120 Data Validation Error
1002 93121 Data Validation Error
1002 93122 Data Validation Error
1002 93125 Data Validation Error
1002 931996 Data Validation Error
1002 931997 Data Validation Error
1002 931998 Data Validation Error
1002 931999 Data Validation Error
1002 83501 Data Validation Error
1002 83502 Data Validation Error
1002 93503 Data Validation Error
1002 93504 Data Validation Error
1002 93505 Data Validation Error
1002 93506 Data Validation Error
1002 83518 Data Validation Error
1002 93507 Data Validation Error
1002 93508 Data Validation Error
1002 93509 Data Validation Error
1002 93510 Data Validation Error
1002 93511 Data Validation Error
1002 83512 Data Validation Error
1002 93513 Data Validation Error
1002 93514 Data Validation Error
1002 93517 Data Validation Error
1002 93519 Data Validation Error
1002 83520 Data Validation Error
1002 93521 Data Validation Error
1002 93522 Data Validation Error
1002 93523 Data Validation Error
1002 93524 Data Validation Error
1002 93525 Data Validation Error
1002 93526 Data Validation Error
1002 83527 Data Validation Error
1002 935996 Data Validation Error
1002 935997 Data Validation Error
1002 935998 Data Validation Error
1002 935999 Data Validation Error
1002 91701 Data Validation Error
1002 91702 Data Validation Error
1002 91704 Data Validation Error
1002 91705 Data Validation Error
1002 91708 Data Validation Error
1002 91718 Data Validation Error
1002 91719 Data Validation Error
1002 91720 Data Validation Error
1002 91721 Data Validation Error
1002 91722 Data Validation Error
1002 91744 Data Validation Error
1002 81723 Data Validation Error
1002 81703 Data Validation Error
1002 81718 Data Validation Error
1002 81706 Data Validation Error
1002 81707 Data Validation Error
1002 81709 Data Validation Error
1002 81710 Data Validation Error
1002 81711 Data Validation Error
1002 81712 Data Validation Error
1002 81713 Data Validation Error
1002 81714 Data Validation Error
1002 81715 Data Validation Error
1002 81716 Data Validation Error
1002 81717 Data Validation Error
1002 91723 Data Validation Error
1002 81724 Data Validation Error
1002 81725 Data Validation Error
1002 91726 Data Validation Error
1002 91727 Data Validation Error
1002 91728 Data Validation Error
1002 91729 Data Validation Error
1002 91730 Data Validation Error
1002 91731 Data Validation Error
1002 91732 Data Validation Error
1002 91733 Data Validation Error
1002 91734 Data Validation Error
1002 91735 Data Validation Error
1002 91738 Data Validation Error
1002 91742 Data Validation Error
1002 91743 Data Validation Error
1002 81736 Data Validation Error
1002 81737 Data Validation Error
1002 91739 Data Validation Error
1002 91740 Data Validation Error
1002 91741 Data Validation Error
1002 91745 Data Validation Error
1002 81750 Data Validation Error
1002 91752 Data Validation Error
1002 91755 Data Validation Error
1002 91756 Data Validation Error
1002 91759 Data Validation Error
1002 91761 Data Validation Error
1002 917996 Data Validation Error
1002 917997 Data Validation Error
1002 917998 Data Validation Error
1002 917999 Data Validation Error
1002 82901 Data Validation Error
1002 82902 Data Validation Error
1002 82903 Data Validation Error
1002 82904 Data Validation Error
1002 82905 Data Validation Error
1002 92906 Data Validation Error
1002 92907 Data Validation Error
1002 92908 Data Validation Error
1002 92909 Data Validation Error
1002 92910 Data Validation Error
1002 92911 Data Validation Error
1002 92912 Data Validation Error
1002 92913 Data Validation Error
1002 92914 Data Validation Error
1002 92915 Data Validation Error
1002 92916 Data Validation Error
1002 92917 Data Validation Error
1002 92918 Data Validation Error
1002 92919 Data Validation Error
1002 92920 Data Validation Error
1002 92921 Data Validation Error
1002 92922 Data Validation Error
1002 92923 Data Validation Error
1002 92924 Data Validation Error
1002 92925 Data Validation Error
1002 92926 Data Validation Error
1002 92927 Data Validation Error
1002 92928 Data Validation Error
1002 92929 Data Validation Error
1002 92930 Data Validation Error
1002 929996 Data Validation Error
1002 929997 Data Validation Error
1002 929998 Data Validation Error
1002 929999 Data Validation Error
1002 84101 Data Validation Error
1002 84102 Data Validation Error
1002 84103 Data Validation Error
1002 84104 Data Validation Error
1002 84105 Data Validation Error
1002 84106 Data Validation Error
1002 941996 Data Validation Error
1002 941997 Data Validation Error
1002 941998 Data Validation Error
1002 941999 Data Validation Error
1002 92001 Data Validation Error
1002 92002 Data Validation Error
1002 92003 Data Validation Error
1002 92004 Data Validation Error
1002 92005 Data Validation Error
1002 92006 Data Validation Error
1002 92010 Data Validation Error
1002 92011 Data Validation Error
1002 92012 Data Validation Error
1002 92013 Data Validation Error
1002 92014 Data Validation Error
1002 92015 Data Validation Error
1002 92016 Data Validation Error
1002 92017 Data Validation Error
1002 92018 Data Validation Error
1002 92019 Data Validation Error
1002 92020 Data Validation Error
1002 92021 Data Validation Error
1002 92022 Data Validation Error
1002 92023 Data Validation Error
1002 92024 Data Validation Error
1002 92025 Data Validation Error
1002 920996 Data Validation Error
1002 920997 Data Validation Error
1002 920998 Data Validation Error
1002 920999 Data Validation Error
1002 82301 Data Validation Error
1002 82302 Data Validation Error
1002 82303 Data Validation Error
1002 923996 Data Validation Error
1002 923997 Data Validation Error
1002 923998 Data Validation Error
1002 923999 Data Validation Error
1002 81501 Data Validation Error
1002 81502 Data Validation Error
1002 81503 Data Validation Error
1002 81528 Data Validation Error
1002 81509 Data Validation Error
1002 91517 Data Validation Error
1002 81527 Data Validation Error
1002 91501 Data Validation Error
1002 91504 Data Validation Error
1002 91505 Data Validation Error
1002 91506 Data Validation Error
1002 91507 Data Validation Error
1002 91508 Data Validation Error
1002 91526 Data Validation Error
1002 91510 Data Validation Error
1002 91511 Data Validation Error
1002 91512 Data Validation Error
1002 91513 Data Validation Error
1002 91514 Data Validation Error
1002 91515 Data Validation Error
1002 91516 Data Validation Error
1002 91527 Data Validation Error
1002 91518 Data Validation Error
1002 91519 Data Validation Error
1002 91521 Data Validation Error
1002 91533 Data Validation Error
1002 91538 Data Validation Error
1002 91522 Data Validation Error
1002 91529 Data Validation Error
1002 91528 Data Validation Error
1002 91523 Data Validation Error
1002 91524 Data Validation Error
1002 91525 Data Validation Error
1002 91531 Data Validation Error
1002 91547 Data Validation Error
1002 81531 Data Validation Error
1002 81534 Data Validation Error
1002 81535 Data Validation Error
1002 81536 Data Validation Error
1002 81571 Data Validation Error
1002 91537 Data Validation Error
1002 91539 Data Validation Error
1002 91540 Data Validation Error
1002 91541 Data Validation Error
1002 91542 Data Validation Error
1002 91543 Data Validation Error
1002 91544 Data Validation Error
1002 91545 Data Validation Error
1002 91546 Data Validation Error
1002 91548 Data Validation Error
1002 81520 Data Validation Error
1002 91549 Data Validation Error
1002 91550 Data Validation Error
1002 91551 Data Validation Error
1002 91552 Data Validation Error
1002 91553 Data Validation Error
1002 91554 Data Validation Error
1002 91555 Data Validation Error
1002 91556 Data Validation Error
1002 91557 Data Validation Error
1002 91558 Data Validation Error
1002 91559 Data Validation Error
1002 91560 Data Validation Error
1002 91561 Data Validation Error
1002 91562 Data Validation Error
1002 91563 Data Validation Error
1002 91564 Data Validation Error
1002 91565 Data Validation Error
1002 91567 Data Validation Error
1002 91568 Data Validation Error
1002 91569 Data Validation Error
1002 91572 Data Validation Error
1002 91575 Data Validation Error
1002 91576 Data Validation Error
1002 91577 Data Validation Error
1002 91570 Data Validation Error
1002 91573 Data Validation Error
1002 91574 Data Validation Error
1002 91578 Data Validation Error
1002 91580 Data Validation Error
1002 91581 Data Validation Error
1002 91582 Data Validation Error
1002 91583 Data Validation Error
1002 91584 Data Validation Error
1002 91585 Data Validation Error
1002 91586 Data Validation Error
1002 91587 Data Validation Error
1002 91588 Data Validation Error
1002 91589 Data Validation Error
1002 91590 Data Validation Error
1002 91591 Data Validation Error
1002 91592 Data Validation Error
1002 91593 Data Validation Error
1002 91594 Data Validation Error
1002 91595 Data Validation Error
1002 91597 Data Validation Error
1002 91598 Data Validation Error
1002 91599 Data Validation Error
1002 91596 Data Validation Error
1002 915100 Data Validation Error
1002 915103 Data Validation Error
1002 915101 Data Validation Error
1002 915102 Data Validation Error
1002 915104 Data Validation Error
1002 915105 Data Validation Error
1002 915106 Data Validation Error
1002 915152 Data Validation Error
1002 915153 Data Validation Error
1002 915154 Data Validation Error
1002 915155 Data Validation Error
1002 915107 Data Validation Error
1002 915108 Data Validation Error
1002 915109 Data Validation Error
1002 915110 Data Validation Error
1002 915111 Data Validation Error
1002 915112 Data Validation Error
1002 915113 Data Validation Error
1002 915114 Data Validation Error
1002 915116 Data Validation Error
1002 915119 Data Validation Error
1002 915131 Data Validation Error
1002 915156 Data Validation Error
1002 915133 Data Validation Error
1002 915134 Data Validation Error
1002 915135 Data Validation Error
1002 915136 Data Validation Error
1002 915137 Data Validation Error
1002 815141 Data Validation Error
1002 815142 Data Validation Error
1002 915143 Data Validation Error
1002 915144 Data Validation Error
1002 915157 Data Validation Error
1002 915158 Data Validation Error
1002 915145 Data Validation Error
1002 915159 Data Validation Error
1002 915160 Data Validation Error
1002 915161 Data Validation Error
1002 915162 Data Validation Error
1002 915163 Data Validation Error
1002 915164 Data Validation Error
1002 915165 Data Validation Error
1002 915166 Data Validation Error
1002 915167 Data Validation Error
1002 91502 Data Validation Error
1002 915147 Data Validation Error
1002 915148 Data Validation Error
1002 915149 Data Validation Error
1002 915150 Data Validation Error
1002 915151 Data Validation Error
1002 915168 Data Validation Error
1002 915169 Data Validation Error
1002 915170 Data Validation Error
1002 915171 Data Validation Error
1002 915172 Data Validation Error
1002 915173 Data Validation Error
1002 915174 Data Validation Error
1002 915175 Data Validation Error
1002 915176 Data Validation Error
1002 915177 Data Validation Error
1002 915179 Data Validation Error
1002 915180 Data Validation Error
1002 915181 Data Validation Error
1002 915183 Data Validation Error
1002 915195 Data Validation Error
1002 915189 Data Validation Error
1002 915190 Data Validation Error
1002 915191 Data Validation Error
1002 915192 Data Validation Error
1002 815193 Data Validation Error
1002 915200 Data Validation Error
1002 915201 Data Validation Error
1002 915205 Data Validation Error
1002 915207 Data Validation Error
1002 915208 Data Validation Error
1002 915209 Data Validation Error
1002 915210 Data Validation Error
1002 915211 Data Validation Error
1002 915212 Data Validation Error
1002 915215 Data Validation Error
1002 915216 Data Validation Error
1002 915217 Data Validation Error
1002 915218 Data Validation Error
1002 915219 Data Validation Error
1002 915220 Data Validation Error
1002 915221 Data Validation Error
1002 915222 Data Validation Error
1002 915223 Data Validation Error
1002 915224 Data Validation Error
1002 815224 Data Validation Error
1002 915225 Data Validation Error
1002 915226 Data Validation Error
1002 915227 Data Validation Error
1002 915228 Data Validation Error
1002 915229 Data Validation Error
1002 915996 Data Validation Error
1002 915997 Data Validation Error
1002 915998 Data Validation Error
1002 915999 Data Validation Error
1002 95601 Data Validation Error
1002 95602 Data Validation Error
1002 95603 Data Validation Error
1002 95604 Data Validation Error
1002 95605 Data Validation Error
1002 95606 Data Validation Error
1002 95607 Data Validation Error
1002 95608 Data Validation Error
1002 956996 Data Validation Error
1002 956997 Data Validation Error
1002 956998 Data Validation Error
1002 956999 Data Validation Error
1002 92201 Data Validation Error
1002 92202 Data Validation Error
1002 312555 Data Validation Error
1002 92203 Data Validation Error
1002 92204 Data Validation Error
1002 92205 Data Validation Error
1002 92206 Data Validation Error
1002 922996 Data Validation Error
1002 922997 Data Validation Error
1002 922998 Data Validation Error
1002 922999 Data Validation Error
1002 95801 Data Validation Error
1002 95803 Data Validation Error
1002 95804 Data Validation Error
1002 95805 Data Validation Error
1002 95806 Data Validation Error
1002 95807 Data Validation Error
1002 95808 Data Validation Error
1002 95809 Data Validation Error
1002 95810 Data Validation Error
1002 95811 Data Validation Error
1002 95812 Data Validation Error
1002 95813 Data Validation Error
1002 95814 Data Validation Error
1002 95815 Data Validation Error
1002 95816 Data Validation Error
1002 95817 Data Validation Error
1002 95818 Data Validation Error
1002 95819 Data Validation Error
1002 95820 Data Validation Error
1002 95821 Data Validation Error
1002 95822 Data Validation Error
1002 95823 Data Validation Error
1002 95824 Data Validation Error
1002 95825 Data Validation Error
1002 95826 Data Validation Error
1002 95827 Data Validation Error
1002 95828 Data Validation Error
1002 95829 Data Validation Error
1002 958996 Data Validation Error
1002 958997 Data Validation Error
1002 958998 Data Validation Error
1002 958999 Data Validation Error
1002 94201 Data Validation Error
1002 94202 Data Validation Error
1002 94203 Data Validation Error
1002 94204 Data Validation Error
1002 94205 Data Validation Error
1002 94206 Data Validation Error
1002 94207 Data Validation Error
1002 94208 Data Validation Error
1002 942196 Data Validation Error
1002 942197 Data Validation Error
1002 942198 Data Validation Error
1002 942199 Data Validation Error
1002 942200 Data Validation Error
1002 942201 Data Validation Error
1002 942113 Data Validation Error
1002 942114 Data Validation Error
1002 942116 Data Validation Error
1002 942117 Data Validation Error
1002 942119 Data Validation Error
1002 942120 Data Validation Error
1002 942121 Data Validation Error
1002 942122 Data Validation Error
1002 942131 Data Validation Error
1002 84271 Data Validation Error
1002 94268 Data Validation Error
1002 94270 Data Validation Error
1002 94285 Data Validation Error
1002 942169 Data Validation Error
1002 94284 Data Validation Error
1002 942996 Data Validation Error
1002 942997 Data Validation Error
1002 942998 Data Validation Error
1002 942999 Data Validation Error
1002 96101 Data Validation Error
1002 96102 Data Validation Error
1002 96103 Data Validation Error
1002 96104 Data Validation Error
1002 96105 Data Validation Error
1002 96106 Data Validation Error
1002 961996 Data Validation Error
1002 961997 Data Validation Error
1002 961998 Data Validation Error
1002 961999 Data Validation Error
1002 92801 Data Validation Error
1002 92802 Data Validation Error
1002 92803 Data Validation Error
1002 92804 Data Validation Error
1002 92806 Data Validation Error
1002 928996 Data Validation Error
1002 928997 Data Validation Error
1002 928998 Data Validation Error
1002 928999 Data Validation Error
1002 95701 Data Validation Error
1002 95702 Data Validation Error
1002 95703 Data Validation Error
1002 95704 Data Validation Error
1002 95705 Data Validation Error
1002 95706 Data Validation Error
1002 95707 Data Validation Error
1002 95708 Data Validation Error
1002 95709 Data Validation Error
1002 95710 Data Validation Error
1002 95711 Data Validation Error
1002 95712 Data Validation Error
1002 95713 Data Validation Error
1002 95714 Data Validation Error
1002 95715 Data Validation Error
1002 95716 Data Validation Error
1002 95717 Data Validation Error
1002 95720 Data Validation Error
1002 95721 Data Validation Error
1002 95722 Data Validation Error
1002 95723 Data Validation Error
1002 95724 Data Validation Error
1002 95725 Data Validation Error
1002 95726 Data Validation Error
1002 95727 Data Validation Error
1002 957996 Data Validation Error
1002 957997 Data Validation Error
1002 957998 Data Validation Error
1002 957999 Data Validation Error
1002 93401 Data Validation Error
1002 93402 Data Validation Error
1002 93403 Data Validation Error
1002 93404 Data Validation Error
1002 93405 Data Validation Error
1002 93406 Data Validation Error
1002 93407 Data Validation Error
1002 93408 Data Validation Error
1002 93409 Data Validation Error
1002 93410 Data Validation Error
1002 93411 Data Validation Error
1002 93412 Data Validation Error
1002 93413 Data Validation Error
1002 93414 Data Validation Error
1002 93415 Data Validation Error
1002 93416 Data Validation Error
1002 93417 Data Validation Error
1002 93418 Data Validation Error
1002 93419 Data Validation Error
1002 93420 Data Validation Error
1002 93421 Data Validation Error
1002 93422 Data Validation Error
1002 93423 Data Validation Error
1002 93424 Data Validation Error
1002 93425 Data Validation Error
1002 93426 Data Validation Error
1002 93427 Data Validation Error
1002 93428 Data Validation Error
1002 93429 Data Validation Error
1002 93430 Data Validation Error
1002 93431 Data Validation Error
1002 93432 Data Validation Error
1002 934996 Data Validation Error
1002 934997 Data Validation Error
1002 934998 Data Validation Error
1002 934999 Data Validation Error
1002 81901 Data Validation Error
1002 81902 Data Validation Error
1002 81903 Data Validation Error
1002 81904 Data Validation Error
1002 81905 Data Validation Error
1002 81906 Data Validation Error
1002 81907 Data Validation Error
1002 81908 Data Validation Error
1002 81909 Data Validation Error
1002 81910 Data Validation Error
1002 81923 Data Validation Error
1002 91901 Data Validation Error
1002 91902 Data Validation Error
1002 91903 Data Validation Error
1002 91904 Data Validation Error
1002 91905 Data Validation Error
1002 91906 Data Validation Error
1002 91907 Data Validation Error
1002 91908 Data Validation Error
1002 91909 Data Validation Error
1002 91911 Data Validation Error
1002 91912 Data Validation Error
1002 91913 Data Validation Error
1002 91914 Data Validation Error
1002 91915 Data Validation Error
1002 91916 Data Validation Error
1002 91917 Data Validation Error
1002 91918 Data Validation Error
1002 91919 Data Validation Error
1002 91920 Data Validation Error
1002 91921 Data Validation Error
1002 91922 Data Validation Error
1002 91923 Data Validation Error
1002 91924 Data Validation Error
1002 91925 Data Validation Error
1002 91926 Data Validation Error
1002 91927 Data Validation Error
1002 91928 Data Validation Error
1002 91929 Data Validation Error
1002 91930 Data Validation Error
1002 91931 Data Validation Error
1002 91932 Data Validation Error
1002 919996 Data Validation Error
1002 919997 Data Validation Error
1002 919998 Data Validation Error
1002 919999 Data Validation Error
1002 93801 Data Validation Error
1002 93802 Data Validation Error
1002 93803 Data Validation Error
1002 93804 Data Validation Error
1002 93805 Data Validation Error
1002 938996 Data Validation Error
1002 938997 Data Validation Error
1002 938998 Data Validation Error
1002 938999 Data Validation Error
1002 94501 Data Validation Error
1002 94502 Data Validation Error
1002 94503 Data Validation Error
1002 94504 Data Validation Error
1002 94505 Data Validation Error
1002 94506 Data Validation Error
1002 94507 Data Validation Error
1002 94508 Data Validation Error
1002 94509 Data Validation Error
1002 94510 Data Validation Error
1002 94511 Data Validation Error
1002 94512 Data Validation Error
1002 94513 Data Validation Error
1002 94514 Data Validation Error
1002 94515 Data Validation Error
1002 94516 Data Validation Error
1002 94517 Data Validation Error
1002 94518 Data Validation Error
1002 94519 Data Validation Error
1002 94520 Data Validation Error
1002 94521 Data Validation Error
1002 94522 Data Validation Error
1002 94523 Data Validation Error
1002 94524 Data Validation Error
1002 94525 Data Validation Error
1002 94526 Data Validation Error
1002 94527 Data Validation Error
1002 94528 Data Validation Error
1002 94529 Data Validation Error
1002 94530 Data Validation Error
1002 94531 Data Validation Error
1002 94532 Data Validation Error
1002 94533 Data Validation Error
1002 94534 Data Validation Error
1002 94535 Data Validation Error
1002 94536 Data Validation Error
1002 94537 Data Validation Error
1002 94538 Data Validation Error
1002 94539 Data Validation Error
1002 94540 Data Validation Error
1002 94541 Data Validation Error
1002 94542 Data Validation Error
1002 94543 Data Validation Error
1002 94544 Data Validation Error
1002 94545 Data Validation Error
1002 94546 Data Validation Error
1002 94547 Data Validation Error
1002 94548 Data Validation Error
1002 94549 Data Validation Error
1002 94550 Data Validation Error
1002 94551 Data Validation Error
1002 94552 Data Validation Error
1002 94553 Data Validation Error
1002 94554 Data Validation Error
1002 94555 Data Validation Error
1002 94556 Data Validation Error
1002 94557 Data Validation Error
1002 94558 Data Validation Error
1002 201901 Data Validation Error
1002 94559 Data Validation Error
1002 94560 Data Validation Error
1002 94561 Data Validation Error
1002 94562 Data Validation Error
1002 94563 Data Validation Error
1002 94564 Data Validation Error
1002 94565 Data Validation Error
1002 94566 Data Validation Error
1002 94567 Data Validation Error
1002 94568 Data Validation Error
1002 94569 Data Validation Error
1002 94570 Data Validation Error
1002 94571 Data Validation Error
1002 94572 Data Validation Error
1002 94573 Data Validation Error
1002 94574 Data Validation Error
1002 94575 Data Validation Error
1002 94576 Data Validation Error
1002 94578 Data Validation Error
1002 94579 Data Validation Error
1002 94581 Data Validation Error
1002 94582 Data Validation Error
1002 94584 Data Validation Error
1002 94586 Data Validation Error
1002 94587 Data Validation Error
1002 94588 Data Validation Error
1002 94589 Data Validation Error
1002 94590 Data Validation Error
1002 94591 Data Validation Error
1002 94592 Data Validation Error
1002 94598 Data Validation Error
1002 94599 Data Validation Error
1002 945100 Data Validation Error
1002 945101 Data Validation Error
1002 945102 Data Validation Error
1002 945103 Data Validation Error
1002 945104 Data Validation Error
1002 945105 Data Validation Error
1002 945106 Data Validation Error
1002 945107 Data Validation Error
1002 945108 Data Validation Error
1002 945996 Data Validation Error
1002 945997 Data Validation Error
1002 945998 Data Validation Error
1002 945999 Data Validation Error
1002 VALIDATION Data Validation Error
9999 * UnknownError

Braintree CreditCard processor response legacy codes

Gateway error code Braintree CreditCard processor code Braintree CreditCard error message
2003 21092999 Processor Declined
2003 2000 Do Not Honor
2006 2001 Insufficient Funds
2004 2002 Limit Exceeded
2004 2003 Cardholder's Activity Limit Exceeded
2009 2004 Expired Card
2008 2005 Invalid Credit Card Number
2007 2006 Invalid Expiration Date
2003 2007 No Account
2008 2008 Card Account Length Error
2011 2009 No Such Issuer
2003 2010 Card Issuer Declined CVV
2003 2011 Voice Authorization Required
2015 2012 Processor Declined – Possible Lost Card
2016 2013 Processor Declined – Possible Stolen Card
2010 2014 Processor Declined – Fraud Suspected
2003 2015 Transaction Not Allowed
1003 2016 Duplicate Transaction
1003 2017 Cardholder Stopped Billing
1003 2018 Cardholder Stopped All Billing
1003 2019 Invalid Transaction
2003 2020 Violation
2003 2021 Security Violation
2003 2022 Declined – Updated Cardholder Available
1003 2023 Processor Does Not Support This Feature
2011 2024 Card Type Not Enabled
1003 2025 Set Up Error – Merchant
1003 2026 Invalid Merchant ID
1003 2027 Set Up Error – Amount
1003 2028 Set Up Error – Hierarchy
1003 2029 Set Up Error – Card
1003 2030 Set Up Error – Terminal
1003 2031 Encryption Error
1003 2032 Surcharge Not Permitted
1003 2033 Inconsistent Data
1003 2034 No Action Taken
1003 2035 Partial Approval For Amount In Group III Version
1003 2036 Authorization could not be found
1003 2037 Already Reversed
2003 2038 Processor Declined
1003 2039 Invalid Authorization Code
1003 2040 Invalid Store
2003 2041 Declined – Call For Approval
1003 2042 Invalid Client ID
2003 2043 Error – Do Not Retry, Call Issuer
2003 2044 Declined – Call Issuer
1003 2045 Invalid Merchant Number
2003 2046 Declined
9999 2047 Call Issuer. Pick Up Card
1003 2048 Invalid Amount
1003 2049 Invalid SKU Number
1003 2050 Invalid Credit Plan
1003 2051 Credit Card Number does not match method of payment
1003 2052 Invalid level III Purchase
2016 2053 Card reported as lost or stolen
1003 2054 Reversal amount does not match authorization amount
1003 2055 Invalid Transaction Division Number
1003 2056 Transaction amount exceeds the transaction division limit
2003 2057 Issuer or Cardholder has put a restriction on the card
9999 2058 Merchant not Mastercard SecureCode enabled
1003 2059 Address Verification Failed
2003 2060 Address Verification and Card Security Code Failed
1003 2061 Invalid Transaction Data
1003 2062 Invalid Tax Amount
1003 2063 PayPal Business Account preference resulted in the transaction failing
1003 2064 Invalid Currency Code
1003 2065 Refund Time Limit Exceeded
1003 2066 PayPal Business Account Restricted
1003 2067 Authorization Expired
1003 2068 PayPal Business Account Locked or Closed
1003 2069 PayPal Blocking Duplicate Order IDs
1003 2070 PayPal Buyer Revoked Pre-Approved Payment Authorization
1003 2071 PayPal Payee Account Invalid Or Does Not Have a Confirmed Email
1003 2072 PayPal Payee Email Incorrectly Formatted
1003 2073 PayPal Validation Error
2003 2074 Funding Instrument In The PayPal Account Was Declined By The Processor Or Bank, Or It Can\
1003 2075 Payer Account Is Locked Or Closed
1003 2076 Payer Cannot Pay For This Transaction With PayPal
2013 2077 Transaction Refused Due To PayPal Risk Model
1003 2078 Invalid Secure Payment Data
1007 2079 PayPal Merchant Account Configuration Error
1007 2080 Invalid user credentials
1003 2081 PayPal pending payments are not supported
1003 2082 PayPal Domestic Transaction Required
1003 2083 PayPal Phone Number Required
1003 2084 PayPal Tax Info Required
1003 2085 PayPal Payee Blocked Transaction
2004 2086 PayPal Transaction Limit Exceeded
1003 2087 PayPal reference transactions not enabled for your account
1007 2088 Currency not enabled for your PayPal seller account
1003 2089 PayPal payee email permission denied for this request
1003 2090 PayPal or Venmo account not configured to refund more than settled amount
1007 2091 Currency of this transaction must match currency of your PayPal account
1003 2092 No Data Found - Try Another Verification Method
1003 2093 PayPal payment method is invalid
1003 2094 PayPal payment has already been completed
1003 2095 PayPal refund is not allowed after partial refund
1003 2096 PayPal buyer account can't be the same as the seller account
2004 2097 PayPal authorization amount limit exceeded
2004 2098 PayPal authorization count limit exceeded
9999 2099 Cardholder Authentication Required
1007 2100 PayPal channel initiated billing not enabled for your account
9999 2101 Additional authorization required
2003 2102 Incorrect PIN
2003 2103 PIN try exceeded
2003 2104 Offline Issuer Declined
1003 2105 Cannot Authorize at this time (Life cycle)
2003 2106 Cannot Authorize at this time (Policy)
2008 2107 Card Not Activated
2008 2108 Closed Card
1008 3000 Processor Network Unavailable – Try Again
2003 * Declined

Testing

While operating the Braintree CreditCard adapter in test mode, the following credit-card numbers can be used to examine various outcomes:

Number Expiry Result
378282246310005 Valid American Express
371449635398431 Valid American Express
36259600000004 Valid Diners Club
6011000991300009 Valid Discover
3530111333300000 Valid JCB
6304000000000000 Valid Maestro
5555555555554444 Valid Mastercard
2223000048400011 Valid Mastercard
4111111111111111 Valid Visa
4005519200000004 Valid Visa
4009348888881881 Valid Visa
4012000033330026 Valid Visa
4012000077777777 Valid Visa
4012888888881881 Valid Visa
4217651111111119 Valid Visa
4500600000000061 Valid Visa
4000111111111115 Unsuccessful verification — Visa — processor declined
5105105105105100 Unsuccessful verification — Mastercard — processor declined
378734493671000 Unsuccessful verification — American Express — processor declined
6011000990139424 Unsuccessful verification — Discover — processor declined
38520000009814 Unsuccessful verification — Diners Club — processor declined
3566002020360505 Unsuccessful verification — JCB — failed (3000)
4500600000000061 Type indicator: prepaid = "Yes"
4009040000000009 Type indicator: commercial = "Yes"
4005519200000004 Type indicator: Durbin regulated = "Yes"
4012000033330026 Type indicator: healthcare = "Yes"
4012000033330125 Type indicator: debit = "Yes"
4012000033330224 Type indicator: payroll = "Yes"
4012000033330422 Type indicator: all values = "No"
4012000033330323 Type indicator: all values = "Unknown"
4012000033330620 Other information: country of issuance = "USA"
4012000033330729 Other information: country of issuance = "CAN"
4023490000000008 Other information: country of issuance = "IRL"
4444333322221111 Other information: country of issuance = "GBR"
5555444433331111 Other information: country of issuance = "GBR"
374512431123241 Other information: country of issuance = "GBR"
375529658790105 Other information: country of issuance = "IRL"
5101108206957373 Other information: country of issuance = "IRL"
4012000033330521 Other information: issuing bank = "NETWORK ONLY"
4000000000001000 Current year + 3 - 01 Successful No-Challenge Authentication — Visa
5200000000001005 Current year + 3 - 01 Successful No-Challenge Authentication — Mastercard
340000000001007 Current year + 3 - 01 Successful No-Challenge Authentication — Amex
6277800000002390 Current year + 3 - 01 Successful No-Challenge Authentication — ELO
4000000000001018 Current year + 3 - 01 Failed No-Challenge Authentication — Visa
5200000000001013 Current year + 3 - 01 Failed No-Challenge Authentication — Mastercard
340000000001015 Current year + 3 - 01 Failed No-Challenge Authentication — Amex
6277800000002457 Current year + 3 - 01 Failed No-Challenge Authentication — ELO
4000000000001034 Current year + 3 - 01 Unavailable No-Challenge Authentication from the Issuer — Visa
5200000000001039 Current year + 3 - 01 Unavailable No-Challenge Authentication from the Issuer — Mastercard
340000000001031 Current year + 3 - 01 Unavailable No-Challenge Authentication from the Issuer — Amex
6277800000002309 Current year + 3 - 01 Unavailable No-Challenge Authentication from the Issuer — ELO
4000000000001042 Current year + 3 - 01 Rejected No-Challenge Authentication by the Issuer — Visa
5200000000001047 Current year + 3 - 01 Rejected No-Challenge Authentication by the Issuer — Mastercard
340000000001049 Current year + 3 - 01 Rejected No-Challenge Authentication by the Issuer — Amex
6277800000002044 Current year + 3 - 01 Rejected No-Challenge Authentication by the Issuer — ELO
4000000000001059 Current year + 3 - 01 Authentication Not Available on Lookup — Visa
5200000000001054 Current year + 3 - 01 Authentication Not Available on Lookup — Mastercard
340000000001056 Current year + 3 - 01 Authentication Not Available on Lookup — Amex
6277800000002135 Current year + 3 - 01 Authentication Not Available on Lookup — ELO
4000000000001067 Current year + 3 - 01 Error on Lookup — Visa
5200000000001062 Current year + 3 - 01 Error on Lookup — Mastercard
340000000001064 Current year + 3 - 01 Error on Lookup — Amex
6277800000002655 Current year + 3 - 01 Error on Lookup — ELO
4000000000001075 Current year + 3 - 01 Timeout on Lookup — Visa
5200000000001070 Current year + 3 - 01 Timeout on Lookup — Mastercard
340000000001072 Current year + 3 - 01 Timeout on Lookup — Amex
6277800000002820 Current year + 3 - 01 Timeout on Lookup — ELO
4000000000001083 Current year + 3 - 01 Bypassed Authentication — Visa
5200000000001088 Current year + 3 - 01 Bypassed Authentication — Mastercard
340000000001080 Current year + 3 - 01 Bypassed Authentication — Amex
6277800000002945 Current year + 3 - 01 Bypassed Authentication — ELO
4000000000001091 Current year + 3 - 01 Successful Challenge Authentication — Visa
5200000000001096 Current year + 3 - 01 Successful Challenge Authentication — Mastercard
340000000001098 Current year + 3 - 01 Successful Challenge Authentication — Amex
6277800000002325 Current year + 3 - 01 Successful Challenge Authentication — ELO
4000000000001109 Current year + 3 - 01 Failed Challenge Authentication — Visa
5200000000001104 Current year + 3 - 01 Failed Challenge Authentication — Mastercard
340000000001106 Current year + 3 - 01 Failed Challenge Authentication — Amex
6277800000002127 Current year + 3 - 01 Failed Challenge Authentication — ELO
4000000000001117 Current year + 3 - 01 Challenge Authentication is Unavailable — Visa
5200000000001112 Current year + 3 - 01 Challenge Authentication is Unavailable — Mastercard
340000000001114 Current year + 3 - 01 Challenge Authentication is Unavailable — Amex
6277800000002887 Current year + 3 - 01 Challenge Authentication is Unavailable — ELO
4000000000001125 Current year + 3 - 01 Error on Authentication — Visa
5200000000001120 Current year + 3 - 01 Error on Authentication — Mastercard
340000000001122 Current year + 3 - 01 Error on Authentication — Amex
6277800000002507 Current year + 3 - 01 Error on Authentication — ELO
5119737947565580 Current year + 3 - 01 Data Only Successful

Miscellaneous

GooglePay via Braintree CreditCard currently only works with 3DS_CRYPTOGRAM tokens (via mobile phone application) and not with PAN_ONLY (via web).

For further information on how to process ApplePay and GooglePay see our docs at GooglePay and ApplePay.

Braintree PayPal

Payment Methods

Payment Method Transaction Flows Transaction Types
PayPal payment.js All
Venmo payment.js All

Integration guide

Paypal

Braintree requires you to display the PayPal Button on your Checkout page. This is handled by the payment.js integration.

​1. Embed the payment.min.js in your page

<script data-main="payment-js" src="https://gateway.tillpayments.com/js/integrated/payment.1.3.min.js"></script>

​2. Provide a DIV element on your page for the PayPal button

<div id='paypalButtonDiv'></div>

​3. Initialize the payment.js with the following parameters:


<script>
  var payment = new PaymentJs('1.2');

  errorHandler = function (error) {
    // handle error events here
  }

  cancellationHandler = function (data) {
    // handle cancellation event here - called if user cancelled payment process
  }

  completeHandler = function (paymentNonce, deviceData) {
    // send the paymentNonce to the gateway via the transactionToken parameter
    // send deviceData to us via the extraData.deviceData parameter if the parameter 'gatherDeviceData' was set to true
  }

  var buttonOptions = {
    style: { color: 'silver' },
    locale: 'en_US'
  };

  var paypalOptions = {
    amount: '9.99',
    currency: 'EUR',
    button: buttonOptions,
    flow: 'vault'
  };

  payment.initBraintreePaypal(
    'public-integration-key',
    'paypal-button-div',
    false, // gatherDeviceData, set true for merchant initiated card-on-file transactions
    completeHandler,
    errorHandler,
    cancellationHandler,
    paypalOptions
  );
</script>

​4. You can now call the Transaction API with the transaction token set to the paymentNonce returned to the completeHandler.

If you set gatherDeviceData to true, the completeHandler will receive a second parameter deviceData which can be sent via the Transaction API using the extraData.deviceData parameter.

If set to false, device data will not be gathered and the deviceData parameter will be null.

Collecting device data is only required for Card-On-File transactions.

PayPal Pay Later

The integration for Pay Later works like the aforementioned normal PayPal integration. To enable Pay Later, usePayLater: true must be added to the PayPal options. Additionally, the flow parameter for the options must be set to checkout.

<script>
    var paypalOptions = {
        amount: "",
        currency: "",
        button: paypalButtonOptions,
        usePayLater: true,
        flow: 'checkout'
    };
</script>

Venmo

Braintree requires you to display the Venmo Button on your Checkout page. This is handled by the payment.js integration.

​1. Embed the payment.min.js in your page

<script data-main="payment-js" src="https://gateway.tillpayments.com/js/integrated/payment.1.3.min.js"></script>

​2. Provide a DIV element on your page for the PayPal button

<div id="venmoButtonDiv">
  <svg width="280px" height="48px" viewBox="0 0 280 48" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
    <!-- Generator: Sketch 46.1 (44463) - http://www.bohemiancoding.com/sketch -->
    <title>svg/blue_venmo_button_active_280x48</title>
    <desc>Created with Sketch.</desc>
    <defs></defs>
    <g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
      <g id="blue_venmo_button_active_280x48">
        <rect id="Rectangle" fill="#1B74AE" x="0" y="0" width="280" height="48" rx="4"></rect>
        <g id="Group" transform="translate(98.000000, 16.000000)" fill="#FFFFFF">
          <path d="M14.1355722,0.0643062201 C14.6997229,0.996022242 14.9540614,1.95569119 14.9540614,3.16795034 C14.9540614,7.03443424 11.6533091,12.0572714 8.97435371,15.5842648 L2.85545503,15.5842648 L0.401435711,0.910859951 L5.75920168,0.402203543 L7.05667586,10.8432743 C8.26898429,8.86832019 9.76503373,5.76467606 9.76503373,3.64865382 C9.76503373,2.49041769 9.56660332,1.70150782 9.25650148,1.0519281 L14.1355722,0.0643062201 L14.1355722,0.0643062201 Z" id="Shape"></path>
          <path d="M21.0794779,6.525633 C22.0654018,6.525633 24.5475201,6.07462046 24.5475201,4.66393896 C24.5475201,3.98655114 24.0685351,3.64865382 23.5040948,3.64865382 C22.5165776,3.64865382 21.2206966,4.83281521 21.0794779,6.525633 L21.0794779,6.525633 Z M20.9665029,9.31947756 C20.9665029,11.0419863 21.924328,11.7177809 23.1941378,11.7177809 C24.5769225,11.7177809 25.9009024,11.3798836 27.6217431,10.505377 L26.9735853,14.9065874 C25.7611321,15.4989577 23.8715531,15.8942092 22.0374478,15.8942092 C17.3850512,15.8942092 15.7199738,13.0728462 15.7199738,9.545708 C15.7199738,4.97417302 18.4284766,0.120067244 24.0124822,0.120067244 C27.08685,0.120067244 28.8059526,1.84243114 28.8059526,4.24073451 C28.8062423,8.10707358 23.8437439,9.29152463 20.9665029,9.31947756 L20.9665029,9.31947756 Z" id="Shape"></path>
          <path d="M44.2677372,3.50758567 C44.2677372,4.07185827 44.1821369,4.89031424 44.0969712,5.42518557 L42.4892503,15.58412 L37.2722686,15.58412 L38.7387707,6.27159447 C38.7665799,6.01900427 38.8520354,5.51049269 38.8520354,5.22835639 C38.8520354,4.55096858 38.4288137,4.3819475 37.9199918,4.3819475 C37.2441697,4.3819475 36.5667543,4.69203673 36.1155786,4.918412 L34.4522393,15.5842648 L29.2058551,15.5842648 L31.6026627,0.374540282 L36.1433878,0.374540282 L36.2008892,1.58853744 C37.2721237,0.88319669 38.6827177,0.120356912 40.6841129,0.120356912 C43.3356936,0.120067244 44.2677372,1.47498771 44.2677372,3.50758567 L44.2677372,3.50758567 Z" id="Shape"></path>
          <path d="M59.7554481,1.78507694 C61.2496147,0.713885943 62.6604983,0.120067244 64.6058406,0.120067244 C67.2846511,0.120067244 68.216405,1.47498771 68.216405,3.50758567 C68.216405,4.07185827 68.1310944,4.89031424 68.0459287,5.42518557 L66.4400908,15.58412 L61.2216606,15.58412 L62.7161168,6.07476529 C62.7436363,5.82058192 62.8014274,5.51049269 62.8014274,5.31380835 C62.8014274,4.55111341 62.3780609,4.3819475 61.8693838,4.3819475 C61.2213709,4.3819475 60.5736477,4.6640838 60.0927798,4.918412 L58.4297302,15.5842648 L53.2126036,15.5842648 L54.7070598,6.07491013 C54.7345794,5.82072676 54.7906323,5.51063753 54.7906323,5.31395319 C54.7906323,4.55125824 54.367121,4.38209233 53.860182,4.38209233 C53.1829115,4.38209233 52.5069445,4.69218156 52.0557688,4.91855683 L50.3911259,15.5844097 L45.1464798,15.5844097 L47.5429977,0.374685116 L52.0282492,0.374685116 L52.1691783,1.64444329 C53.2126036,0.883486357 54.6220389,0.12064658 56.511473,0.12064658 C58.1474376,0.120067244 59.2185273,0.825552826 59.7554481,1.78507694 L59.7554481,1.78507694 Z" id="Shape"></path>
          <path d="M78.5990953,6.21583344 C78.5990953,4.97417302 78.288559,4.12761929 77.358688,4.12761929 C75.2997914,4.12761929 74.8770043,7.76743825 74.8770043,9.62942196 C74.8770043,11.0419863 75.2722719,11.9162033 76.2018532,11.9162033 C78.1479196,11.9162033 78.5990953,8.07767231 78.5990953,6.21583344 L78.5990953,6.21583344 Z M69.5751464,9.40463986 C69.5751464,4.60817794 72.1127383,0.120067244 77.9512273,0.120067244 C82.3505888,0.120067244 83.9587442,2.71679297 83.9587442,6.30099573 C83.9587442,11.0418415 81.4485271,15.9514186 75.4692539,15.9514186 C71.0415037,15.9514186 69.5751464,13.0446036 69.5751464,9.40463986 L69.5751464,9.40463986 Z" id="Shape"></path>
        </g>
      </g>
    </g>
  </svg>
</div>

​3. Initialize the payment.js with the following parameters:


<script>
  var payment = new PaymentJs('1.2');

  errorHandler = function (error) {
    // handle error events here
  }

  cancellationHandler = function (data) {
    // handle cancellation event here - called if user cancelled payment process
  }

  completeHandler = function (paymentNonce, deviceData) {
    // send the paymentNonce to the gateway via the transactionToken parameter
    // send deviceData to us via the extraData.deviceData parameter if the parameter 'gatherDeviceData' was set to true
  }

  const venmoLineItems = [];

  const venmoOptions = {
    totalAmount: '9.99',
    paymentMethodUsage: 'single_use', // multi_use,
    allowNewBrowserTab: false,
    allowDesktop: true,
    allowDesktopWebLogin: true,
    mobileWebFallBack: true,
    lineItems: venmoLineItems,
  };

  payment.initBraintreeVenmo(
    'public-integration-key',
    'venmoButtonDiv',
    true, // gatherDeviceData, set true for merchant initiated card-on-file transactions
    completeHandler,
    errorHandler,
    cancellationHandler,
    venmoOptions
  );
</script>

​4. You can now call the Transaction API with the transaction token set to the paymentNonce returned to the completeHandler.

If you set gatherDeviceData to true, the completeHandler will receive a second parameter deviceData which can be sent via the Transaction API using the extraData.deviceData parameter.

If set to false, device data will not be gathered and the deviceData parameter will be null. collecting device data is required for Venmo transactions

Transaction API Additional Parameters

When sending the payment token received by the completeHandler to the Transaction API, the following extraData keys can be used:

Key Description
merchantAccountId The merchant account ID used to create a transaction, which also defines the currency. If not given, the default merchant account ID is used.
deviceData Only required for Card-On-File transactions. Use device data returned by the completeHandler.

Item Parameters:

Should be used to pass item details, so called "lineItems"

Key Description
item.identification Item description
item.name Item name
item.description Item description
item.quantity Number of units of the item purchased
item.price Total Amount. Quantity x unit amount
item.l2l3Data.unitPrice Single unit price
item.l2l3Data.taxAmount Per-unit tax price of the item

L2L3 Data Parameters:

Key Description
l2l3Data.discountAmount Discount amount that was included in the total transaction amount
l2l3Data.freightAmount The shipping cost of the entire transaction

Customer ExtraData Parameters:

Key Description
fax Refer to Braintree documentation
phone Refer to Braintree documentation
website Refer to Braintree documentation
billingCompany If not available, falls back to the company name of the Customer object
billingFirstName If not available, falls back to the first name of the Customer object
billingLastName If not available, falls back to the last name of the Customer object

Customer Identification Mandatory

The parameter customer.identification is mandatory in the following cases:

Paypal Airline-Itinerary as Transaction ExtraData Parameters:

Braintree Documentation for AID.

Key Description
folioNumber Refer to Braintree Documentation for AID
checkInDate Refer to Braintree Documentation for AID
checkOutDate Refer to Braintree Documentation for AID
travelPackage Refer to Braintree Documentation for AID
departureDate Refer to Braintree Documentation for AID
lodgingCheckInDate Refer to Braintree Documentation for AID
lodgingCheckOutDate Refer to Braintree Documentation for AID
lodgingName Refer to Braintree Documentation for AID
roomRate Refer to Braintree Documentation for AID
roomTax Refer to Braintree Documentation for AID
passengerFirstName Refer to Braintree Documentation for AID
passengerLastName Refer to Braintree Documentation for AID
passengerMiddleInitial Refer to Braintree Documentation for AID
passengerTitle Refer to Braintree Documentation for AID
issuedDate Refer to Braintree Documentation for AID
travelAgencyName Refer to Braintree Documentation for AID
travelAgencyCode Refer to Braintree Documentation for AID
ticketNumber Refer to Braintree Documentation for AID
issuingCarrierCode Refer to Braintree Documentation for AID
customerCode Refer to Braintree Documentation for AID
fareAmount Refer to Braintree Documentation for AID
feeAmount Refer to Braintree Documentation for AID
taxAmount Refer to Braintree Documentation for AID
restrictedTicket Refer to Braintree Documentation for AID
noShow Refer to Braintree Documentation for AID
advancedDeposit Refer to Braintree Documentation for AID
fireSafe Refer to Braintree Documentation for AID
propertyPhone Refer to Braintree Documentation for AID

Adding Legs to Transaction ExtraData Parameters

Key Description
conjunctionTicket Refer to Braintree Documentation for AID
exchangeTicket Refer to Braintree Documentation for AID
couponNumber Refer to Braintree Documentation for AID
serviceClass Refer to Braintree Documentation for AID
carrierCode Refer to Braintree Documentation for AID
fareBasisCode Refer to Braintree Documentation for AID
flightNumber Refer to Braintree Documentation for AID
departureDate Refer to Braintree Documentation for AID
departureAirportCode Refer to Braintree Documentation for AID
departureTime Refer to Braintree Documentation for AID
arrivalAirportCode Refer to Braintree Documentation for AID
arrivalTime Refer to Braintree Documentation for AID
stopoverPermitted Refer to Braintree Documentation for AID
fareAmount Refer to Braintree Documentation for AID
feeAmount Refer to Braintree Documentation for AID
taxAmount Refer to Braintree Documentation for AID
endorsementOrRestrictions Refer to Braintree Documentation for AID

Adding Additional Charges to Transaction ExtraData Parameters

Key Description
kind Refer to Braintree Documentation for AID
amount Refer to Braintree Documentation for AID

Paypal STC ExtraData Parameters:

To add an STC parameter to extraData, start the name of the extraData field with stc. followed by the stc parameter. e.g: stc.sender_account_id.

IMPORTANT NOTE: setting Transaction Context must be activated on the merchant's Paypal Account

Braintree Local Payment Methods

Payment Methods

Payment Method Transaction Flows Transaction Types
Blik payment.js Debit, Refund
Blik Non-Redirect payment.js Debit, Refund

Integration guide

Braintree requires you to display the PayPal Button on your Checkout page. This is handled by the payment.js integration.

​1. Embed the payment.min.js in your page

<script data-main="payment-js" src="https://gateway.tillpayments.com/js/integrated/payment.1.3.min.js"></script>

​2. Provide a DIV element on your page for the Local Payment Method button

<div id='localPaymentButtonDiv'></div>

​3. Initialize the payment.js with the following parameters:

Example 1: Blik


<script>
  var payment = new PaymentJs('1.3');

  errorHandler = function (error) {
    // handle error events here
  }

  cancellationHandler = function (data) {
    // handle cancellation event here - called if user cancelled payment process
  }

  completeHandler = function (data) {
    // handle completed transaction
  }

  paymentIdHandler = function (paymentId) {
    // create a debit transaction including the paymentId in the request under the transactionToken parameter
  }

  let blikButtonDiv = document.getElementById('blikButtonDiv')

  var localPaymentMethodOptions = {
    paymentType: 'blik',
    amount: '9.99',
    currency: 'PLN',
    firstName: 'Max',
    lastName: 'Mustermann',
    email: '[email protected]', 
    address: { // NOTE: Address is optional. If present, then make sure it's complete and valid, otherwise the transaction will FAIL.
      streetAddress: 'Mokotowska 34',
      extendedAddress: 'Zlota Jesien 64',
      locality: 'Warsaw',
      postalCode: '02-697',
      countryCode: 'PL'
    },
    fallbackUrl: '[email protected]',
    fallbackButtonText: 'Please retry'
  };

  payment.initBraintreeLocalPayment(
    'public-integration-key',
    blikButtonDiv,
    paymentIdHandler,
    completeHandler,
    errorHandler,
    cancellationHandler,
    localPaymentMethodOptions
  );
</script>

Example 2: Blik Non-Redirect


<!-- Payment methods selection form fields-->

<!-- This field is mandatory. Id and name have to be  __blikToken.-->
<input type="hidden" name="__blikToken" id="__blikToken" />

<!-- This field is optional and is used to collect Blik code from the UI. Id of the element has to be blikCode. If present, then authCode does not need to be passed with localPaymentMethodOptions. -->
<input type="text" id="blikCode" name="blikCode"/>

<!-- This field is mandatory. It can be styled and is used for payment initiation.-->
<div id="blikButtonDiv"> </div>
<!-- end of HTML -->

<script>
  var payment = new PaymentJs('1.3');

  errorHandler = function (error) {
    // handle error events here
  }

  cancellationHandler = function (data) {
    // handle cancellation event here - called if user cancelled payment process
  }

  completeHandler = function () {
    // handle completed transaction
  }

  paymentIdHandler = function (paymentId) {
      // blikTokenElement has to be updated with paymentId so the transaction can be updated with it.
      var blikTokenElement = document.getElementById('__blikToken');

      blikTokenElement.value = paymentId;
  }

  let blikButtonDiv = document.getElementById('blikButtonDiv')

  var localPaymentMethodOptions = {
    paymentType: 'blik',
    amount: '9.99',
    currency: 'PLN',
    firstName: 'Max',
    lastName: 'Mustermann',
    email: '[email protected]', 
    address: { // NOTE: Address is optional. If present, then make sure it's complete and valid, otherwise the transaction will FAIL.
      streetAddress: 'Mokotowska 34',
      extendedAddress: 'Zlota Jesien 64',
      locality: 'Warsaw',
      postalCode: '02-697',
      countryCode: 'PL'
    },
    authCode: '123456', // Blik auth code from the Blik application
      // NOTE: authCode can also be automatically fetched from an element with an id 'blikCode'(example above). 
      // In this case, the localPaymentMethodOptions.authCode is not required.
  };

  payment.initBraintreeLocalPayment(
    'public-integration-key',
    blikButtonDiv,
    paymentIdHandler,
    completeHandler,
    errorHandler,
    cancellationHandler,
    localPaymentMethodOptions
  );
</script>

​4. After the end customer has completed the payment, we rely on incoming webhooks from Braintree. Therefore, it can take up to 2 minutes before we update the transaction status.

Cardeta

Payment Methods

Payment Method Transaction Flows Transaction Types
Creditcard Server-To-Server, iFrame Form & payment.js Integration Debit, Register, Preauthorize, Capture, Refund, Deregister, Recurring Debit/Preauthorize

Additional Mandatory Parameters

Parameter Required Description
customer.billingPhone true Customer phone number
customer.email true Customer email address

CashFlows

Payment Methods

Payment Method Transaction Flows Transaction Types
Creditcard (without 3DS) iFrame Form & payment.js Integration All

Additional parameters

Extra Data Required Description
Customer - Address true (for AMEX)
Customer - City true (for AMEX)
Customer - State true (for AMEX)
Customer - ZIP true (for AMEX)
Customer - Country true (for AMEX)
Customer - Email true (for AMEX)
Customer - IP true (for AMEX)

Certegy

Payment Methods

Payment Method Transaction Flows Transaction Types
ACHDirectDebit Full-Page Redirect, HPP Register, Debit, Preauthorize, Capture, Refund, Void

Mandatory parameters for Debit and Preauthorize

Parameter Required Description
extraData.consumerId conditional Required if accountNumber or bankAccountId are not given
extraData.bankAccountId conditional Required if consumerId or accountNumber are not given
extraData.accountNumber conditional Required if consumerId or bankAccountId are not given
extraData.accountNumberConfirmation conditional Required if accountNumber is given
extraData.accountType conditional Required if accountNumber is given
extraData.routingNumber conditional Required if accountNumber is given
Customer firstName conditional Required if accountNumber is given
Customer lastName conditional Required if accountNumber is given
Customer Email conditional Required if accountNumber is given
Customer billingPhone conditional Required if accountNumber is given

Mandatory parameters for Register

Parameter Required Description
Customer firstName true Customer firstname
Customer lastName true Customer lastname
Customer Email true Customer Email
Customer billingPhone true Customer billing phone

CheckoutCom

Payment Methods

Payment Method Transaction Flows Transaction Types
Creditcard iFrame Form & payment.js Integration Debit, Register, Preauthorize, Capture, Void, Refund, Deregister
iDeal Full-Page Redirect Debit, Refund

Additional Parameters

iDeal Debit

Field Required
bic true
description true
billingCity false
ipAddress false
language (customer.extraData) false

Payout parameters

Platform 1

Field Type Required
customer.firstName string true
customer.lastName string true

On behalf of another person or business:

Field Type
extraData.senderReference string
extraData.senderAccountNumber string
extraData.senderFirstName string
extraData.senderLastName string
extraData.senderAddressLine1 string
extraData.senderCity string
extraData.senderState string
extraData.senderZip string
extraData.senderCountry string
extraData.senderSourceOfFunds string

For detailed information kindly refer to Requirements

Platform 2

Destination

Field Type Required Info
extraData.accountHolderType string false Defaults to individual
customer.firstName string true
customer.lastName string true
customer.billingAddress1 string conditional
customer.billingAddress2 string false
customer.billingCity string conditional
customer.billingState string conditional
customer.billingPostcode string conditional
customer.billingCountry string conditional
extraData.accountHolderCountryCode string true International country calling code
customer.billingPhone string true
extraData.accountHolderIdType string true account holder identification type: passport driving_license national_id company_registration tax_id
customer.nationalId string true account holder identification number
extraData.accountHolderIdCountry string false account holder identification issuing country (two-letter ISO country code)
extraData.accountHolderIdExpiry string false account holder identification expiry
customer.email string false
customer.birthDate string false
extraData.accountHolderCountryOfBirth string false two-letter ISO country code

Sender

Field Type Required Info
extraData.senderType string false Defaults to individual
extraData.senderFirstName string true
extraData.senderLastName string true
extraData.senderAddressLine1 string true
extraData.senderAddressLine2 string false
extraData.senderCity string true
extraData.senderState string false
extraData.senderZip string false
extraData.senderCountry string true two-letter ISO country code
extraData.senderReference string true
extraData.senderSourceOfFunds string true May be one of: credit debit prepaid deposit_account mobile_money_account cash
extraData.senderIdType string conditional sender identification type
extraData.senderIdNumber string conditional sender identification number
extraData.senderIdIssuingCountry string false sender identification issuing country
extraData.senderIdDateOfExpiry string false sender identification expiry
extraData.senderDateOfBirth string false
extraData.senderCountryOfBirth string false
extraData.senderNationality string false

Misc

Field Type Required Info
extraData.fundsTransferType string false May be one of AA PP FD FT LO OG C04 C07 C52 C55
extraData.purpose string conditional May be one of family_support expatriation travel_and_tourism education medical_treatment emergency_need leisure savings gifts donations financial_services it_services investment insurance loan_payment pension royalties other income

Account Funding Transfer parameters

Field Type Description
extraData.recipientAccountReference string Recipient's account reference (<=34 characters)
extraData.recipientAddress1 string Recipient's address1
extraData.recipientAddress2 string Recipient's address2
extraData.recipientCity string Recipient's city
extraData.recipientCountry string Recipient's country
extraData.recipientState string Recipient's state
extraData.recipientZip string Recipient's zip
extraData.recipientFirstName string Recipient's first name
extraData.recipientLastName string Recipient's last name
customer.billingAddress1 string Sender's address 1
customer.billingAddress2 string Sender's address 2
customer.billingCity string Sender's city
customer.billingCountry string Sender's country
customer.billingState string Sender's state
customer.billingPostcode string Sender's zip
customer.firstName string Sender's first name
customer.lastName string Sender's last name
customer.identification string Sender reference

Level 2 & 3 Data (Supported on Platform 2 only)

maximum of 50 item objects are allowed to be sent in a Level 3 Visa or Mastercard request American Express only supports Level 2 data maximum of 4 item objects are allowed to be sent in an American Express request

Field Type Description
l2l3Data.vatRegistrationNumber string The customer's value-added tax (VAT)
l2l3Data.taxAmount float The total amount of sales tax on the total purchase amount
l2l3Data.discountAmount float The discount amount applied to the transaction by the merchant
l2l3Data.dutyAmount float The total charges for any import or export duty included in the transaction
l2l3Data.freightAmount float The total charges for freight, shipping or handling included in the transaction
l2l3Data.freightTaxAmount float The total amount of tax for the freight, shipping or handling charges
items[].l2l3Data.commodityCode string The code identifying a commodity for value-added tax (VAT) purposes
items[].l2l3Data.discount float The discount applied to each invoice line item
items[].l2l3Data.taxAmount float The total amount of sales tax or value-added tax (VAT) for the line item
items[].l2l3Data.unit string The unit of measure code used for the item in the transaction
items[].l2l3Data.unitPrice float The unit cost of the item purchased
items[].name string The description of the item purchased
items[].quantity int The number of units purchased
item[].identification string The merchant product identifier
items[].price float The total amount for the line item
customer.shippingCountry string The 2-letter destination country code
customer.shippingPostcode string The destination postal or zip code
extraData.senderZipCode string The origin postal or zip code mapped to from_address_zip
extraData.orderId string The invoice number mapped to order_id

Result Extra Data for Credit Card

Parameter Value
avs_result Mapped from the field avs_check. For possible values see Checkout.com API reference
cvv_result Mapped from the field cvv_check. For possible values see Checkout.com API reference

ChinaUMS H5

Payment Methods

Payment Method Transaction Flows Transaction Types
H5 Full-Page Redirect Debit, Refund

Mandatory parameters for Debit

Parameter Required Value Description
extraData.method True one of ['alipay','wechat','wechatApplet','unionpay'] H5 supports different payment platforms, this indicates for which platform the payment is requested.
extraData.sceneType Conditional one of [iOS:IOS_SDK, Android:AND_SDK, website:AND_WEB] Required when extraData.method is wechat
extraData.merAppId Conditional Required when extraData.method is wechat
extraData.merAppName Conditional Required when extraData.method is wechat
extraData.linkExpiry False DataTime must be in the following format Y-m-d H:i:s The expiry date of the QR code.

ChinaUMS C2B

Payment Methods

Payment Method Transaction Flows Transaction Types
C2B Hosted Payment Pages, Server-to-Server Debit, Refund

Additional Parameters for Debit

Parameter Required Description
customer.firstName false Customers firstname
customer.lastName false Customers lastname
customer.billingPhone false Customers billing phone number
extraData.qrCodeExpiry false The expiry date of the QR code. Must be in the following format Y-m-d H:i:s.
description false Mapped to the parameter billDesc

Additional Parameters for Refund

Parameter Required Description
description false Mapped to the parameter refundDesc

Result Extra Data

Parameter Value
qrCode Base64 encoded QR Code

CKB

Payment Methods

Payment Method Transaction Flows Transaction Types
Creditcard Server-To-Server, iFrame Form & payment.js Integration Debit, Preauthorize, Capture, Refund, Void

Additional Parameters

Parameter Required Description
extraData.cardExpirationDay false Expiration day of the card. Defaults to end of month if not set
extraData.udf1 false User defined field
extraData.udf2 false User defined field
extraData.udf3 false User defined field
extraData.udf4 false User defined field
extraData.udf5 false User defined field

Clearhaus

Payment Methods

Payment Method Transaction Flows Transaction Types
Creditcard iFrame Form & payment.js Integration All
ApplePay Server-to-Server Debit, Preauthorize, Capture, Void, Refund

Additional Parameters

none

CM

Payment Methods

Payment Method Transaction Flows Transaction Types
Direct Carrier Billing (SMS) Server-to-Server Debit only

Additional parameters

Extra Data Required Description
from true Originators of the message
alphanumeric: max length 11 characters
numeric: max length 17 characters (must start with 00<country code>), e.g. 0031 for Netherlands
body true Message to be sent
alphanumeric: max 160 characters
type true TEXT or BINARY
to true Recipient MSISDN
including country code, e.g. 0031
tariff false End user tariff
0-3 decimals
header false User data header of binary message
(Do not add length byte at start)
operator false Mobile Country Code / Mobile Network Combination

CMI

Payment Methods

Payment Method Transaction Flows Transaction Types
Creditcard Server-To-Server, iFrame Form & payment.js Integration Debit, Preauthorize, Capture, Refund, Void, Register

Additional Parameters

Parameter Required Description
extraData.installment false Numeric count of installments

CoinGate

Payment Methods

Payment Method Transaction Flows Transaction Types
BitCoin Full-Page Redirect Debit

Additional Parameters

none

Cybersource PCI

Payment Methods

Payment Method Transaction Flows Transaction Types
Creditcard Payment Form & payment.js Integration Register, Deregister, Debit, Pre-authorise, Capture, Void, Refund

Adapter Config

The following fields are required depending on the used features:

Parameter Allowed values Description
MerchantID required
APIKey required
sharedSecret required
Use Decision Manager required if Cybersource Decision Manager is used.
Enable Incremental Authorization required if Incremental Authorizations are used (check with Cybersource if it's available for you)

General Transaction extraData

The following extraData fields are required or optional for ALL transactions:

Parameter Allowed values Description
extraData.purchaseLevel 3 required if LEVEL III Data is sent
extraData.purchaseOrderNumber additional LEVEL III Data value

Capture Transactions

The following extraData fields are required for capture transactions:

Parameter Allowed values Description
extraData.captureSequenceNumber The Capture sequence number for multiple partial captures.
extraData.totalCaptureCount The total amount of Captures that will be done.

Recurring Transactions

The following extraData fields are required for recurring transactions:

Parameter Allowed values Description
extraData.recurringEndDate required - YYYY-MM-DD
extraData.recurringFrequency required 28 days * Month - 6 month = 168
extraData.recurringNumberOfPayments optional
extraData.recurringOriginalPurchaseDate YYYY-MM-DDTHH:MM:SSZ - empty = currentDate
extraData.recurringSequenceNumber This field is mandatory for Cartes Bancaires recurring transactions on Credit Mutuel-CIC - (1st, 2, 3, ..)
extraData.recurringType (1,2,3,4) => (Registration/First transaction, Subsequent transaction, Modification, Cancellation)
extraData.recurringOccurrence 01-12 - see Cybsersource documentation for description of the values
extraData.recurringValidationIndicator 0,1
extraData.recurringAmountType 1 = Fixed amount, 2 = Recurring with maximum amount
extraData.recurringMaximumAmount Maximum amount. Refer to Cybersource documentation.

Debit/Authorization/Incremental Authorization Transactions

Parameter Required Description
extraData.MITReason false Merchant initiated Transaction reason.
extraData.originalAmount false Original amount of the preauthorize.
customer.billingAddress1 true Mapped to billTo.address1
customer.billingAddress2 false Mapped to billTo.address2
customer.billingState true Mapped to billTo.administrativeArea
customer.billingCountry true Mapped to billTo.country
customer.email true Mapped to billTo.email
customer.firstName true Mapped to billTo.firstName
customer.lastName true Mapped to billTo.lastName
customer.billingCity true Mapped to billTo.locality
customer.billingPostcode true Mapped to billTo.postalCode
customer.billingPhone false Mapped to billTo.phoneNumber
customer.shippingAddress1 false Mapped to shipTo.address1
customer.shippingAddress2 false Mapped to shipTo.address2
customer.shippingState false Mapped to shipTo.administrativeArea
customer.shippingCountry false Mapped to shipTo.country
customer.shippingFirstname false Mapped to shipTo.firstName
customer.shippingLastname false Mapped to shipTo.lastName
customer.shippingCity false Mapped to shipTo.locality
customer.shippingPostCode false Mapped to shipTo.postalCode
customer.shippingPhone false Mapped to shipTo.phoneNumber
customer.extraData.shippingEmail false Mapped to shipTo.email
customer.extraData.buyerVatRegistrationNumber false buyerInformation.vatRegistrationNumber
customer.extraData.companyTaxId false buyerInformation.companyTaxId
customer.extraData.language false buyerInformation.language
customer.gender false buyerInformation.gender
customer.extraData.buyerMobilePhone false buyerInformation.mobilePhone
customer.extraData.personalIdentificationType false buyerInformation.personalIdentification.type
customer.extraData.personalIdentificationId false buyerInformation.personalIdentification.id
customer.extraData.personalIdentificationIssuedBy false buyerInformation.personalIdentification.issuedBy
customer.identification false buyerInformation.merchantCustomerId
customer.ipAddress false deviceInformation.ipAddress

Decision Manager

The following extraData fields are necessary or optional for the Cybersource Decision Manager (Please refer to the Cybersource Documentation for the possible values and the requirements):

Parameter Allowed values Description
extraData.useDecisionManager true Required if DM is used. Send true if you want to send the decision manager data to cybersource.
extraData.dm_profile Decision manager profile name not needed if default profile is used.
extraData.dm_lastChangeDate last change of account data
extraData.dm_creationHistory GUEST, NEW_ACCOUNT, EXISTING_ACCOUNT
extraData.dm_modificationHistory IF EXISTING_ACCOUNT = ACCOUNT_UPDATED_NOW or ACCOUNT_UPDATED_PAST
extraData.dm_passwordHistory PASSWORD_CHANGED_NOW, PASSWORD_CHANGED_PAST, PASSWORD_NEVER_CHANGED
extraData.dm_createDate IF EXISTING_ACCOUNT = creation Date
extraData.dm_pwChangeDate IF PASSWORD_CHANGED_PAST = change Date
extraData.dm_firstUseOfShippingAddress IF not GUEST = true/false
extraData.dm_shippingAddressUsageDate Current date if not GUEST and firstUseOfShippingAddress is false
extraData.dm_accountPurchases Number of Purchases
extraData.dm_addCardAttempts Number of add card attempts in last 24 hours.
extraData.dm_suspiciousActivities Indicates previous suspicious activities recogniced by the merchant.
extraData.dm_paymentAccountHistory PAYMENT_ACCOUNT_EXISTS, PAYMENT_ACCOUNT_ADDED_NOW (only for NEW_ACCOUNT and EXISTING_ACCOUNT)
extraData.dm_paymentAccountDate IF PAYMENT_ACCOUNT_EXISTS add date
extraData.dm_transactionCountDay Number of transactions in last 24 hours. (Success & abandoned)
extraData.dm_transactionCountYear Number of transactions in the last year. (Success & abandoned)
extraData.dm_auxiliaryData List of Key value pairs. E.g key1=value1&key2=value2

Japan Payment Options

Parameter Required Description
extraData.japanPaymentOptionPaymentMethod false For possible values see Cybersource API reference
extraData.japanPaymentOptionBonuses false For possible values see Cybersource API reference
extraData.japanPaymentOptionBonusMonth false For possible values see Cybersource API reference
extraData.japanPaymentOptionSecondBonusMonth false For possible values see Cybersource API reference
extraData.japanPaymentOptionBonusAmount false For possible values see Cybersource API reference
extraData.japanPaymentOptionSecondBonusAmount false For possible values see Cybersource API reference
extraData.japanPaymentOptionPreapprovalType false For possible values see Cybersource API reference
extraData.japanPaymentOptionInstallments false For possible values see Cybersource API reference
extraData.japanPaymentOptionTerminalId false For possible values see Cybersource API reference
extraData.japanPaymentOptionFirstBillingMonth false For possible values see Cybersource API reference
extraData.japanPaymentOptionBusinessName false For possible values see Cybersource API reference
extraData.japanPaymentOptionBusinessNameKatakana false For possible values see Cybersource API reference
extraData.japanPaymentOptionJis2TrackData false For possible values see Cybersource API reference
extraData.japanPaymentOptionBusinessNameAlphaNumeric false For possible values see Cybersource API reference

Dalenys

Payment Methods

Payment Method Transaction Flows Transaction Types
Credit card payment.js, Redirect & iFrame Form all

Additional Parameters

3D-Secure Verification parameters are supported, however MANDATORY will behave like OPTIONAL. That is, if the card is not enrolled for 3DS authentication, the transaction will pass unauthenticated.

Dimoco

Payment Methods

Payment Method Transaction Flows Transaction Types
SMS-Pay (DCB & PSMS) Full-Page Redirect Debit, Register, Refund
Credit card payment.js, Redirect & iFrame Form all
EPS Redirect Debit only

Additional Parameters

SMS-Pay

Field Type Required Description
extraData object false object containing key-value pairs (string-to-string)
↳extraData.serviceName string false / true will be displayed in on the Dimoco Checkout - Mandatory if Debit is with Register
↳extraData.promptProductArgs string false can be filled with a JSON String which will be displayed on the Dimoco Checkout e.g. {"pic":{"img":"https://urlToImage","alt":"The Ring"},"desc":{"de":"Cooler Ring","en":"Cool Ring"}} if not set the description field will be used instead
↳extraData.promptMerchantArgs string false can be filled with a JSON String which will be displayed on the Dimoco Checkout e.g. {"logo":{"img":"https://urlToImage","alt":"Ring Store"}}

DCB (Direct Carrier Billing) & PSMS (Premium SMS)

Depending on the underlying country of the MSISDN (mobile subscriber integrated services digital network number), the final payment might be via DCB or PSMS.

Country Method
AT DCB
BA PSMS
BE DCB
BG PSMS
CH DCB & PSMS
CZ DCB & PSMS
DE DCB
DK DCB
ES DCB
FI DCB & PSMS
FR DCB
GR DCB
HR DCB
HU DCB
NL DCB
false DCB
PL DCB
RO PSMS
RS PSMS
RU PSMS
SE DCB
SI DCB & PSMS
SK PSMS
TR DCB
UK DCB

Options Request

EPS

For EPS you can retrieve the bank list via the Options request identifier epsBankList. You can display this list to your customer in order to pre-select the desired bank.

The result contains a list of banks available for EPS, with BIC code as key and bank name as value. The chosen BIC code of the chosen bank should then be passed as bic element in the IbanCustomer element of the XML.

DOKU

Payment Methods

Payment Method TransactionFlows Transaction Types
VAPermata Full-Page Redirect or How to pay data as JSON Debit, Refund
VAMandiri Full-Page Redirect or How to pay data as JSON Debit, Refund
VACIMB Full-Page Redirect or How to pay data as JSON Debit, Refund
VABRI Full-Page Redirect or How to pay data as JSON Debit, Refund
VABRI Full-Page Redirect or How to pay data as JSON Debit, Refund

Mandatory Parameters for Debit

Name Type Required Description
customer.firstName string true Customer first name that will be displayed on acquirer channel when do inquiry
customer.lastName string true Customer last name that will be displayed on acquirer channel when do inquiry

Additional Parameters for Debit

Name Type Required Description
extraData.reusable_status boolean false For VA that can be paid more than once, set this to true (by default equals to false).
extraData.expired_time integer false Virtual account expiration time in minutes format (by default equals to 60).
extraData.ref_info.ref_name string false Additional info that will be display on the acquirer channel (eg. ATM, Internet Banking) when customer do inquiry (only for VAPermata).
extraData.ref_info.ref_value string false Additional info that will be display on the acquirer channel (eg. ATM, Internet Banking) when customer do inquiry. This is the value of the ref.name above (only for VAPermata).
customer.email string false Customer email
extraData.info string false Additional info that will be display on BNI channel.
extraData.info1 string false Additional info that will be display on the acquirer channel (eg. ATM, Internet Banking) when customer do inquiry (only for VAMandiri, VABRI, VACIMB)
extraData.info2 string false Additional info that will be display on the acquirer channel (eg. ATM, Internet Banking) when customer do inquiry (only for VAMandiri, VABRI, VACIMB)
extraData.info3 string false Additional info that will be display on the acquirer channel (eg. ATM, Internet Banking) when customer do inquiry (only for VAMandiri, VABRI, VACIMB)
extraData.info4 string false Additional info that will be display on the acquirer channel (eg. ATM, Internet Banking) when customer do inquiry (only for VABRI)
extraData.info5 string false Additional info that will be display on the acquirer channel (eg. ATM, Internet Banking) when customer do inquiry (only for VABRI)
extraData.additional_info string false Merchant can send additional data through this parameter and will be get the data when notify payment (only for VABNI)

Mandatory Parameters for Refund

Name Type Required Description
description string true Transaction description (required only for refund transaction).
customer.firstName string true Customer first name.
customer.lastName string true Customer last name.
customer.email string true Customer email required only if customer.extraData.phone not present
customer.extraData.phone string true Customer phone number. required only if customer.email not present
extraData.bank_code integer true Destination bank code required only if extraData.destination_type equals to BANK.
extraData.original_transaction_date string true extraData.original_transaction_date required if merchant want to refund using settlement fund. (YYYY-MM-DD)

Config Parameters

Name Type Required Description
Debit Secret Key string true The secret key for debit provided by Doku.
extraData.debitClientId string true The client id for debit provided by Doku.
extraData.refundClientId string false The client id for refund provided by Doku required when using Doku refund API.
extraData.refundSecretKey string false The secret key for refund provided by Doku required when using Doku refund API.
extraData.returnHowToPayAsJson boolean false This configuration used to enable getting the how to pay data in JSON format.
extraData.useSettlementFundToRefund boolean false This configuration used to enable using settlement fund refund.

DOKU PCI

Payment Methods

Payment Method Transaction Flows Transaction Types
Creditcard payment.js, Full-Page Redirect Register, Debit, Preauthorize, Capture, Refund, Void, Moto

Mandatory parameters for Register

Parameter Required Description
customer.identification true Unique customer identifier generated by merchant

Mandatory parameters for Preauthorize, Debit

Parameter Required Description
customer.identification conditional Required if merchant wants to use tokenization feature
amount true Transaction amount: decimals separated by a "." (dot)

Mandatory parameters for Capture, Refund, Void

Parameter Required Description
amount true Transaction amount: decimals separated by a "." (dot)
currency true 3 letter currency code

Recurring transactions

All transactionIndicators within Doku including CARDONFILE_MERCHANT, RECURRING, CARDONFILE are associated with MOTO. for thes transactions, the optional parametersextraData.tenor and extraData.plan_id can be provided.

dLocal

Payment Methods

Payment Method Transaction Flows Transaction Types
Credit card iFrame Form & payment.js Integration Debit, Preauthorize, Capture, Void, Register, Deregister, Refund
BankTransfer Full-Page Redirect Debit, Payout
Abitab Full-Page Redirect Debit
Baloto Full-Page Redirect Debit
BancoNacional Full-Page Redirect Debit
BNServicios Full-Page Redirect Debit
Boleto Full-Page Redirect Debit
Cash Full-Page Redirect Debit
Davivienda Full-Page Redirect Debit
Efecty Full-Page Redirect Debit
Fawry Full-Page Redirect Debit
Nequi Full-Page Redirect Debit
Oxxo Full-Page Redirect Debit
PagoEfectivo Full-Page Redirect Debit
PagoExpress Full-Page Redirect Debit
PagoFacil Full-Page Redirect Debit
Pix Full-Page Redirect Debit
PuntoPago Full-Page Redirect Debit
PuntoXpress Full-Page Redirect Debit
PayCash Full-Page Redirect Debit
RapiPago Full-Page Redirect Debit
RedPagos Full-Page Redirect Debit
Serviepag Full-Page Redirect Debit
SevenEleven Full-Page Redirect Debit
Sinpe Full-Page Redirect Debit
Speedmart Full-Page Redirect Debit
Tucan Full-Page Redirect Debit
Wafacash Full-Page Redirect Debit
VPay Full-Page Redirect Debit,

Additional Parameters

Credit card

Field Required
customer.firstName true
customer.lastName true
customer.billingCountry true
customer.nationalId true
customer.billingAddress1 true in India

Note: 3D-Secure behaviour is dependent on dLocal's configuration. For Mexico you may set 3dsecure explicitly to OPTIONAL.

APM & BankTransfer

Field Required
customer.firstName country dependent
customer.lastName country dependent
customer.email country dependent
customer.billingPhone country and method dependent
customer.nationalId country dependent
extraData.bank_id true for BankTransfer

Payouts

Depending on the country and receiving bank, a variety of additional parameter may be required (refer to dLocal's documentation).

Options Request

Debit - BankTransfer

For BankTransfer, you may retrieve a list of available banks in a country via the Options request identifier getBankList. You can display this list to your customer having him selecting his bank. The selected bank code should be submitted as bank_id in extra data.

EasyPay (ePay.bg)

Payment Methods

Payment Method Transaction Flows Transaction Types
Creditcard Full-Page Redirect Debit
EasyPay Full-Page Redirect & Server-to-server Debit

Additional Parameters

EBANX PCI

Payment Methods

Payment Method Transaction Flows Transaction Types
Credit card iFrame Form & payment.js Integration Debit, Preauthorize, Capture, Void, Register, Deregister, Refund

Credit Card

Please refer to EBANX to see which customer data are necessary to process in certain countries.

Field Type Required
customer.firstName string conditional
customer.lastName string conditional
customer.billingCountry string conditional
customer.nationalId string conditional
customer.billingAddress string conditional
customer.extraData.streetNumber string conditional
customer.extraData.streetComplement string conditional

Additional Parameters

You will have to use the following extraData keys:

Name Type Required
extraData object false
↳extraData.instalments string false
↳extraData.subAccountName string false
↳extraData.subAccountImageUrl string false
↳extraData.deviceChannel string false
↳extraData.profileId string false
↳extraData.profileName string false
↳extraData.recurringPayment bool false
↳extraData.loyalCustomer bool false
↳extraData.customerAccountCreateDate string false
↳extraData.deviceId string false

EBANX

Payment Methods

Payment Method Transaction Flows Transaction Types
Baloto Full-Page Redirect Debit & Refund
BancoDoBrasil Full-Page Redirect Debit & Refund
BankTransfer Full-Page Redirect Debit, Refund & Payout
Banrisul Full-Page Redirect Debit & Refund
Boleto Full-Page Redirect Debit & Refund
Bradesco Full-Page Redirect Debit & Refund
EbanxAccount Full-Page Redirect Debit & Refund
Eft Full-Page Redirect Debit & Refund
Itau Full-Page Redirect Debit & Refund
Multicaja Full-Page Redirect Debit & Refund
Oxxo Full-Page Redirect Debit & Refund
PagoEfectivo Full-Page Redirect Debit & Refund
PagosNet Full-Page Redirect Debit & Refund
SafetyPay Full-Page Redirect Debit & Refund
SafetyPayCash Full-Page Redirect Debit & Refund
SafetyPayOnline Full-Page Redirect Debit & Refund
Sencillito Full-Page Redirect Debit & Refund
Servipag Full-Page Redirect Debit & Refund
Spei Full-Page Redirect Debit & Refund
Webpay Full-Page Redirect Debit & Refund

Additional Parameters

Debit: APM & BankTransfer

Field Required
customer.firstName true
customer.lastName true
customer.email true
customer.billingPhone false
customer.billingAddress1 false
customer.billingCity false
customer.billingPostcode false
customer.billingState false
customer.billingCountry true

Refund: APM & BankTransfer

Field Required
description true

Payout: BankTransfer

Field Required
customer.firstName true
customer.lastName true
customer.email true
customer.birthDate true
customer.iban true
customer.bic true for Brazil (=bank branch)
customer.billingCountry true
customer.nationalId true
customer.extraData.documentType true
customer.extraData.bankDetails true
customer.extraData.bankName true
customer.extraData.termsAcceptedAt (format: YYYY-MM-DD HH:MM:SS) Depending on EBANX business account

Options Request

You can find more information about the options request here: Options Request

Retrieving a list of available banks

EBANX supports 2 endpoints for retrieving a list of available banks for all supported countries. The results may be used for providing the correct parameters for the payout request.

They're available with the options request identifier getAvailableBanks and getBankDetails.

Ecommpay

Because of a restriction on Ecommpay side, you need to set the particular setting "Accept postbacks from other connectors (list GUIDs comma-separated)" inside the connector where you passed the notification URL to Ecommpay if you want to configure multiple connectors.

As a value you need to pass the connector ID from all other Ecommpay connectors of the same account, example: CO-8ce8-4ed7-e9d9-9261-715a-fad8,CO-02c7-62dd-d0e8-5918-6373-7e75. With this setting, all connectors will work with the same notification URL. This setting only needs to be set on the connector where you passed the notification URL to Ecommpay.

If you only have one connector per Ecommpay account, you don't need to configure this setting.

Payment Methods

Payment Method Transaction Flows Transaction Types Supported Currencies
Alipay Redirect Debit, Refund* ** AUD, CAD, CNY, EUR, GBP,
HKD, JPY, SGD, USD
China Union Pay (CUP P2P) Redirect Debit, Payout* CNY
DOKU Wallet Redirect Debit, Payout* IDR
Nganluong Wallet Redirect Debit, Payout* VND
Bank Transfer Indonesia Redirect Debit, Payout* IDR
Bank Transfer Malaysia Redirect Debit, Payout* MYR
Bank Transfer Philippines Redirect Debit, Payout* PHP
Bank Transfer Korea Redirect Debit, Payout* KRW
Bank Transfer Thailand Redirect Debit, Payout* THB
Bank Transfer Thailand QR Redirect Debit THB
Bank Transfer Vietnam Redirect Debit, Payout* VND
Bank Transfer Vietnam QR Redirect Debit VND

*Payout/Refund doesn't require any customer interaction or redirection.

**For Alipay refunds you have to activate the merchant_refund_id field on Ecommpay side. Please talk to your Ecommpay Account Manager for further information.

Additional parameters for BankTransfer Debit

Extra Data Required Description
Customer - Identification true Unique customer identification,
should be used on multiple payments if it is the same customer
Customer - First name true For Korea: the name entered needs to be the same as the account holder
Customer - Last name true For Korea: the surname entered needs to be the same as the account holder
Customer - EMail true
Customer - Phone false
Customer - Country false
Customer - City false
Customer - State false
Customer - Postcode false
Customer - National Id false

Additional parameters for BankTransfer Payout

Extra Data Required Description
Customer - Identification true Unique customer identification,
should be used on multiple payments if it is the same customer
Customer - First name true
Customer - Last name true
Customer - EMail true
Customer - IP Address true
extraData.account_number true Customer account number
extraData.bank_id true Bank identifier*
extraData.bank_branch true Bank branch identifier
extraData.bank_city true Bank branch city
extraData.region_id true Region identifier**

*To retrieve a list of bank identifiers you need to send an options request with the identifier debit-bank-list or payout-bank-list and as parameter the bank name (available: vietnam, malaysia, philippines, indonesia, thailand).

** To retrieve a list of region identifiers you need to send an options request with the identifier region-list and as parameter the bank name(available: vietnam, malaysia, philippines, indonesia, thailand).

You can find more information about the options request here: Options Request

Additional parameters for AliPay / DOKU Wallet / Nganluong Wallet Debit

Extra Data Required Description
Customer - Identification false Unique customer identification,
should be used on multiple payments if it is the same customer
Customer - First name false
Customer - Last name false
Customer - EMail false
Customer - Phone false
Customer - Country false
Customer - City false
Customer - State false
Customer - National Id false

Additional parameters for China Union Pay Payout

Extra Data Required Description
Customer - Identification true Unique customer identification,
should be used on multiple payments if it is the same customer
Customer - First name true
Customer - Last name true
Customer - IP Address true
Customer - EMail true
Customer - Phone true
Customer - Address true
Customer - Country true Need to be CN
Customer - City true
Customer - State true
Customer - Postcode true
extraData.bank_id true Bank identifier*
extraData.bank_branch true Bank branch identifier
extraData.bank_city true Bank branch city
extraData.region_id true Region identifier**
extraData.doc_number false Document number

*To retrieve a list of bank identifiers you need to send an options request with the identifier debit-bank-list or payout-bank-list and as parameter the bank name (available: vietnam, malaysia, philippines, indonesia, thailand).

**To retrieve a list of region identifiers you need to send an options request with the identifier region-list and as parameter the bank name (available: vietnam, malaysia, philippines, indonesia, thailand).

You can find more information about the options request here: Options Request

Additional parameters for Alipay Refund

Extra Data Required Description
Description true
Customer - Ip Address true

Additional parameters for Nganluong Wallet Payout

Extra Data Required Description
Customer - Identification true Unique customer identification,
should be used on multiple payments if it is the same customer
Customer - IP Address true
extraData.account_number true

Additional parameters for DOKU Wallet Payout

Extra Data Required Description
Customer - Identification true Unique customer identification,
should be used on multiple payments if it is the same customer
Customer - First name true
Customer - Last name true
Customer - EMail true
Customer - IP Address true
Customer - Phone true
Customer - City true
Customer - Country true
Customer - Birthday true
extraData.wallet_number true Customer account number
extraData.doc_number true Document number
extraData.doc_type true Document type
extraData.doc_issue_country true An ISO 3166-1 (alpha-2) code of country that issued the document

E-Comprocessing PCI

Payment Methods

Payment Method Transaction Flows Transaction Types
Credit Card Server-to-Server, iFrame Form & payment.js Integration Debit, Deregister, Refund, Register

Mandatory parameters for Debit, Debit with Register, Register

Data Type Required Description
customer.firstName String true Customers firstname
customer.lastName String true Customers lastname
customer.billingAddress1 String true Customers billing address
customer.billingPostcode String true Customers billing post code
customer.billingCity String true Customers billing city
customer.billingCountry ISO 3166-1 alpha-2 country code true Customers billing country
customer.email String true Customers email
customer.ipAddress IPv4 or IPv6 address true IPv4 or IPv6 address of customer

EmerchantPay

Payment Methods

Payment Method Transaction Flows Transaction Types
Creditcard iFrame Form & payment.js Integration All
SEPA Direct Debit iFrame Form & Server-to-server All

Additional Parameters

none

Emerchantpay Genesis

Payment Methods

Payment Method Transaction Flows Transaction Types
SEPA Direct Debit Server-to-Server Debit,Debit with Register,Recurring Debit,Deregister,Refund,Register,Payout,Chargeback,Chargeback-reversal

Mandatory parameters for Debit, Debit with Register, Register

Data Type Required Description
description String true Description of the transaction for later use
currency String true Base currency for the order with three-character currency code
amount Number true Amount of transaction in minor currency unit
remote_ip String true IPv4 or IPv6 address of customer
iban String true Customer’s IBAN number
first_name String true Customer first name
last_name String true Customer last name
address1 String true Primary address
zip_code String true Postal code
city String true City
country String true Country code

Mandatory parameters for Recurring Debit

Data Type Required Description
description String true Description of the transaction for later use
currency String true Base currency for the order with three-character currency code
amount Number true Amount of transaction in minor currency unit
remote_ip String true IPv4 or IPv6 address of customer

Mandatory parameters for Refund

Data Type Required Description
description String true Description of the transaction for later use
currency String true Base currency for the order with three-character currency code
amount Number true Amount of transaction in minor currency unit

Mandatory parameters for Payout

Data Type Required Description
description String true Description of the transaction for later use
currency String true Base currency for the order with three-character currency code
amount Number true Amount of transaction in minor currency unit
remote_ip String true IPv4 or IPv6 address of customer
iban String true Customer’s IBAN number
bic String true SWIFT/BIC code of the customer’s bank
first_name String true Customer first name
last_name String true Customer last name
address1 String true Primary address
zip_code String true Postal code
city String true City
country String true Country code

Supported countries

AT, BE, CY, EE, FI, FR, DE, GR, IE, IT, LV, LT, LU, MT, MC, NL, PT, SK, SM, SI, ES

Emerchantpay Genesis PCI

Payment Methods

Payment Method Transaction Flows Transaction Types
Credit Card Server-to-Server, iFrame Form & payment.js Integration Debit, Deregister, Refund, Register

Mandatory parameters for Debit, Debit with Register, Register

Data Type Required Description
customer.firstName String true Customers firstname
customer.lastName String true Customers lastname
customer.billingAddress1 String true Customers billing address
customer.billingPostcode String true Customers billing post code
customer.billingCity String true Customers billing city
customer.billingCountry ISO 3166-1 alpha-2 country code true Customers billing country
customer.email String true Customers email
customer.ipAddress IPv4 or IPv6 address true IPv4 or IPv6 address of customer

ESR / SwissQR Bill

Payment Methods

Payment Method Transaction Flows Transaction Types
ESR Server-To-Server Debit

Additional parameters

Return Values

In the response you will find the key qrCode within the extraData element. This contains the base64-encoded Image for the QR Code.

EwlPISP

The APIs will allow the initiation of a payment from any payment account to another payment account in Europe, held by any reachable ASPSP provided the account holder has given his explicit consent as is stipulated by the Payment Services Directive

Payment Methods

Payment Method Transaction Flows Transaction Types
Bank Transfer Redirect Debit

Additional Parameters

Name Type Required Description
extraData.AspspId string false The Id of the ASPSP from bank list.
extraData.debtorAccount string false (IBAN) Unambiguous identification of the account of the debtor to which a debit entry will be made as a result of the transaction..
customer.shippingAddress1 (Customer) string false The first address line
customer.shippingAddress2 (Customer) string false The second address line
customer.shippingCity (Customer) string false The address suburb, town or county
customer.shippingCountry (Customer) string false The two-character country code
customer.shippingPostcode (Customer) string false The address postcode

Options Request

Get Bank List from Reach Directory

In order to get the bank list from reach directory an Options Request is required.

Please use getBankList as an identifier e.g. POST /options/{apiKey}/getBankList.

Request Body

{
  "parameters": {
    "countryCode": "FR"
  }
}

You can find more information about the options request here: Options Request

Name Type Required Description
parameters.countryCode string false The two-character country code

E-xact

Payment Methods

Payment Method Transaction Flows Transaction Types
Creditcard iFrame Form & payment.js Integration Debit, Register, Preauthorize, Capture, Void, Refund, Deregister

Additional Parameters

none

FacilitaPay

Payment Methods

Payment Method Transaction Flows Transaction Types
Bank Transfer Server-to-Server debit, register and payout

Parameters Register

Parameter Required Company or Person Description
customer.extraData.document_type true both Company/Person document type. Possible options: 'cnpj', 'tax_id' for companies and 'cpf', 'passport' for person
customer.extraData.document_number true both Company/Person document number
customer.extraData.fiscal_country true both Company/Person fiscal country e.g "BRA"
customer.extraData.social_name true company Company social name
customer.company true company Company name
customer.extraData.documents false both Documents as defined by Facilitapay documentation as JSON string
customer.email false both Company/Person email address
customer.birthDate false person Person birth date
customer.billingPhone false both Company/Person phone number
customer.extraData.creation_date false company Company creation date e.g. 2015-04-01
customer.billingAddress1 false both Company/Person address street name
customer.billingAddress2 false both Company/Person address number
customer.extraData.address_complement false both Company/Person address complement
customer.billingPostcode false both Company/Person address postal code
customer.billingCity false both Company/Person address city
customer.billingState false both Company/Person address state
customer.billingCountry false both Company/Person address state
customer.extraData.main_activity false company Company/Person main activity
customer.extraData.activity_type false company Company activity type. Possible options: other, open-capital, non-profit
customer.extraData.net_value false company Company net value
customer.extraData.net_monthly_average_income false person Person net monthly average income
customer.extraData.partners false company Partners as defined by Facilitapay documentation as JSON string
customer.extraData.account_number false both Company/Person account number
customer.extraData.branch_number false both Company/Person branch number
customer.extraData.owner_document_number false both Account owner CPF/CNPJ
customer.extraData.owner_name false both Account owner name
customer.extraData.branch_country false both Account branch country
customer.extraData.bank false both Bank object as defined by Facilitapay documentation as JSON string
customer.extraData.currency false both Account currency
customer.iban false both IBAN Number
customer.extraData.routing_number false both Routing number

Parameters Debit

Parameter Required Description
extraData.exchange_currency true Currency for exchanging
same parameters as for register only if no referenced register or debit with register is submitted

Parameters Payout

Parameter Required Description
extraData.exchange_currency true Currency for exchanging
same parameters as for register only if no referenced register or debit with register is submitted

Finance Wide

Payment Methods

Payment Method Transaction Flows Transaction Types
Creditcard iFrame Form & payment.js Integration All (no recurring, CVV must be present)

Additional Parameters

3D-Secure Verification parameters are ignored entirely, however the underlying gateway manages and changes the behavior of 3D-Secure requirements on demand.

Finaro

Payment Methods

Payment Method Transaction Flows Transaction Types
Creditcard iFrame Form & payment.js Integration All

Additional Parameters

Creditcard

Finrax

Payment Methods

Payment Method Transaction Flows Transaction Types
BitCoin Full-Page Redirect Debit, Payout

Additional Parameters

You can use the following extraData keys, which will be passed in the corresponding fields to Finrax:

Key Values Description
withdrawCurrency BTC,ETH,XRP.. Cryptocurrency abbreviation that should be withdrawn
targetAmountPolicy fiat, crypto Specifies if the targetAmount will be requested in fiat or crypto

FinTecSystems

Payment Methods

Payment Method Transaction Flows Transaction Types
BankTransfer Full-Page Redirect Debit, Register

Additional parameters

Extra Data Required Description
checkAmount Required for risk check Amount to be checked against
checkCurrency Required for risk check Currency, e.g. EUR
checkBalanceOverview Not required If set to true, the current running total of the account will be returned
checkChargebacks Not required If set to true, the number of detected chargeback transactions for the account will be returned
checkName Required for name risk check Last name to be checked against. Both first and last name are required for the check
checkFirstname Required for name risk check First name to be checked against. Both first and last name are required for the check
checkAccountSnapshotDays Required for snapshot risk check if from and to date are not set Range in days which should be used (between 10 and 365)
checkAccountSnapshotFrom Required for snapshot risk check if days are not set A date in the format yyyy-mm-dd
checkAccountSnapshotTo Required for snapshot risk check if days are not set A date in the format yyyy-mm-dd
checkAccountSnapshotFilters Not required An array of strings to filter the snapshot (e.g. ["income", "rent", "living-cost", "credit", "expenditure", "revenue", "salary"])
checkAccountSnapshotAllAccounts Not required If set to true, returns snapshot for all accounts including their turnovers
checkAccountSnapshotAllTags Not required If set to true, returns the full categorization of the turnovers in the snapshot

Fortumo

Payment Methods

Payment Method Transaction Flows Transaction Types
Direct Carrier Billing (SMS) Redirect & iFrame Form Debit only

Additional Parameters

none

GatewayHub

Payment Methods

Payment Method Transaction Flows Transaction Types
Creditcard Server-To-Server Debit, Register, Preauthorize, Capture, Refund, Deregister, Recurring Debit/Preauthorize

Additional Mandatory Parameters

Parameter Required Description
customer.billingPhone true Customer phone number
customer.email true Customer email address

GiroSolutions

Payment Methods

Payment Method Transaction Flows Transaction Types
GiroPay Full-Page Redirect Debit only
EPS Full-Page Redirect Debit only

Additional Parameters

none

GoCardless

Payment Methods

Payment Method Transaction Flows Transaction Types
BankTransfer Full-Page Redirect, Server-To-Server Debit, Register, Deregister, Refund

Mandatory Parameters for Debit with Register

Name Type Required Description
description string true A human-readable description of the payment. This will be displayed to the payer when authorising the billing request.

Additional Parameters for Debit, Register

Name Type Required Description
extraData.charge_date string false A future date on which the payment should be collected. If not specified, the payment will be collected as soon as possible. If the value is before the mandate’s next_possible_charge_date creation will fail. If the value is not a working day it will be rolled forwards to the next available one.
reference string false An optional reference that will appear on your customer’s bank statement. The character limit for this reference is dependent on the scheme.
customer.company string false Customer’s company name. Required unless a given_name and family_name are provided. For Canadian customers, the use of a company_name value will mean that any mandate created from this customer will be considered to be a "Business PAD" (otherwise, any mandate will be considered to be a "Personal PAD").
customer.company string false Customer’s company name. Required unless a given_name and family_name are provided. For Canadian customers, the use of a company_name value will mean that any mandate created from this customer will be considered to be a "Business PAD" (otherwise, any mandate will be considered to be a "Personal PAD").
customer.firstName string false Customer’s surname. Required unless a company_name is provided.
customer.lastName string false Customer’s first name. Required unless a company_name is provided.
customer.billingPhone string false ITU E.123 formatted phone number, including country code.
customer.billingAddress1 string false The first line of the customer’s address.
customer.billingAddress2 string false The second line of the customer’s address.
extraData.address_line3 string false The third line of the customer’s address.
customer.email string false Customer’s email address. Required in most cases, as this allows GoCardless to send notifications to this customer.
customer.billingCity string false The city of the customer’s address.
customer.billingCountry string false ISO 3166-1 alpha-2 code.
customer.billingState string false The customer’s address region, county or department. For US customers a 2 letter ISO3166-2:US state code is required (e.g. CA for California).
customer.billingPostcode string false The customer’s postal code.
extraData.lang string false ISO 639-1 code. Used as the language for notification emails sent by GoCardless. Currently only "en", "fr", "de", "pt", "es", "it", "nl", "da", "nb", "sl", "sv" are supported. If this is not provided, the language will be chosen based on the country_code (if supplied) or default to "en"
customer.paymentData.ibanData.iban string false International Bank Account Number. Alternatively you can provide local details. IBANs are not accepted for Swedish bank accounts denominated in SEK - you must supply local details.
extraData.danish_identity_number string false For Danish customers only. The civic/company number (CPR or CVR) of the customer. Must be supplied if the customer’s bank account is denominated in Danish krone (DKK).
extraData.swedish_identity_number string false For Swedish customers only. The civic/company number (personnummer, samordningsnummer, or organisationsnummer) of the customer. Must be supplied if the customer’s bank account is denominated in Swedish krona (SEK). This field cannot be changed once it has been set.
extraData.account_number string false Bank account number. Alternatively you can provide an iban.
extraData.account_number_suffix string false Account number suffix (only for bank accounts denominated in NZD).
extraData.account_type string false Bank account type. Required for USD-denominated bank accounts. Must not be provided for bank accounts in other currencies.
extraData.bank_code string false Bank code. Alternatively you can provide an iban
extraData.branch_code string false Branch code. Alternatively you can provide an iban.
extraData.lock_customer_details string false If true, the payer will not be able to edit their customer details within the flow. Default is false.
extraData.lock_bank_account string false If true, the payer will not be able to change their bank account within the flow. Default is false.

Additional Parameters for Refund

Name Type Required Description
reference string false An optional reference that will appear on your customer’s bank statement. The character limit for this reference is dependent on the scheme.

GooglePay™

GooglePay is not an adapter itself, but a common type of payment supported by some listed adapters.

Only GooglePay protocol version 2 (ECv2) is supported.

Prerequisites

You can use GooglePay in your Android app or on your website.

To integrate GooglePay in your Android app please refer to the following links:

To integrate GooglePay in your website please refer to the following links:

Transaction Processing

For GooglePay transactions acquire a Payment Token through your Android app, or on your website.

Use the following parameters when sending a request to Google and replace YOUR_MERCHANT_ID with the GUID of your merchant:

gateway = "YOUR_GATEWAY_PARAMETER"
gatewayMerchantId = "YOUR_MERCHANT_ID"

If you are unsure about your gateway parameter, please contact your account manager.

The resulting token must be submitted in the transactionToken element of the Debit/Preauthorize, prefixed with googlepay:

Example XML:

<transactionToken>
  googlepay:{"signature":"...","intermediateSigningKey":{"signedKey":"{\"keyValue\":\"...\",\"keyExpiration\":\"...\"}","signatures":["..."]},"protocolVersion":"ECv2","signedMessage":"{\"encryptedMessage\":\"...\",\"ephemeralPublicKey\":\"...\",\"tag\":\"...\"}"}
</transactionToken>

Example JSON:

{
  "transactionToken": "googlepay:{\"signature\":\"...\", ...}\"}",
  ...
}

Card Parameters

A billing address is not required for processing transactions, therefore no billing address parameters need to be given with a card.

Supported Card Authentication Methods

Supported Card Networks

HNCB - Hua Nan Commercial Bank

Payment Methods

Payment Method Transaction Flows Transaction Types
Bank Transfer Full Page Redirect Debit
Credit Card Full Page Redirect Debit
HNCB QR Full Page Redirect Debit

Connector Config

Parameter / Name Type Required Allowed Value Description
MerchantID_CreditCard String true - Provided by HNCB. Also referred to as "StoreID"
TerminalID_CreditCard String true - Provided by HNCB.
MerID_CreditCard String true - Provided by HNCB
CheckID_CreditCard String true - Provided by HNCB.
MerchantName_CreditCard String true - The Merchant Name that gets displayed during the Checkout Process.
MerchantID_QR String true - Provided by HNCB.
TerminalID_QR String true - Provided by HNCB.
AcquiringBank_QR String true 3 chars Provided by HNCB.
MerchantName_QR String true - The Merchant Name that is being used to generate the QR Code.
SecureCode_QR String true - Provided by HNCB.
VerificationParameter_QR String true 32 chars 32 char Hexadecimal String - shared between Merchant and HNCB, required for the QR Encryption.
DefaultCountryCode_QR String true 3 chars Required for the QR Code generation - usually consists of three numbers.
EnterpriseCode_BankTransfer_QR String true 5 chars Provided by HNCB. Also referred to as "Virtual Account"
EBillMerchantNumber_BankTransfer String true - Provided by HNCB.
PaymentTypeNumber_BankTransfer String true - Provided by HNCB.
FeeTypeNumber_BankTransfer String true - Provided by HNCB.

Important Information (HNCB QR + Bank Transfer)

HNCB requires a strict format for the OrderNumber (also known as NoticeNumber in case of the Bank Transfer Payment Method) that is sent to them. The structure of this Number looks like : 5 chars (EnterpriseCode_BankTransfer_QR is automatically taken from the Connector Config) + 11 chars.

Our Gateway requires you to set up a Terminal to your Connector, which will autogenerate a STAN and add it as part of the OrderNumber.

Humm

The required currency is AUD (Australian dollar) for Australia and NZD (New Zealand dollar) for New Zealand.

Payment Methods

Payment Method Transaction Flows Transaction Types
Humm Full-Page Redirect Debit, Refund

Additional Parameters

Name Type Required Description
firstName (Customer) unicode string false Customer's first name
lastName (Customer) unicode string false Customer's last name
email (Customer) unicode string false Customer email address
shippingPhone (Customer) unicode string false Customer's phone number
shippingAddress1 (Customer) unicode string false Shipping address line 1
shippingAddress2 (Customer) unicode string false Shipping address line 2
shippingCity (Customer) unicode string false Shipping city
shippingCountry (Customer) iso-3166-1 alpha-2 false Shipping country e.g. AU
shippingState (Customer) unicode string false Shipping state
shippingPostcode (Customer) unicode string false Shipping postcode
shippingFirstName (Customer) unicode string false Customer's first name (Shipping)
shippingLastName (Customer) unicode string false Customer's last name (Shipping)
billingAddress1 (Customer) unicode string false Billing address line 1
billingAddress2 (Customer) unicode string false Billing address line 2
billingCity (Customer) unicode string false Billing city
billingCountry (Customer) iso-3166-1 alpha-2 false Billing country e.g. AU
billingState (Customer) unicode string false Billing state
billingPostcode (Customer) unicode string false Billing postcode

HiPay

Payment Methods

Payment Method Transaction Flows Transaction Types
Visa Full-Page Redirect Capture, Debit, Preauthorize, Refund, Void
Mastercard Full-Page Redirect Capture, Debit, Preauthorize, Refund, Void
Bancontact Full-Page Redirect Capture, Debit, Preauthorize, Refund, Void
Bancontact QR Code Full-Page Redirect Capture, Debit, Preauthorize, Refund, Void

Mandatory parameters for Debit and Preauthorize

Extra Data Type Required Description
orderid String true Unique order ID
description String true The order short description
currency String true Base currency for the order with three-character currency code
amount Number true Total order amount

Aditional parameters Debit and Preauthorize

Extra Data Type Required Description
operation String false Operation can be either Sale for automatically submitting for capture or Authorization for manually capturing / void
payment_product_list String false List of payment products to display on the payment page
basket String false Shopping cart details
authentication_indicator String false If the payment product is a credit or debit card, this parameter specifies whether 3-D secure authentication should be performed for this transaction.

Mandatory parameters for capture and refund

Data Type Required Description
transaction_reference String true The unique identifier of the transaction
operation String true The operation to perform on the transaction: capture, cancel or refund
amount String true Amount is required for partial maintenances. Do not specify amount for full captures or refunds.

Item Parameters

If items are given with the transaction data, the following parameters can or must be given. For capture and refund only items that must be captured or refunded have to be sent.

Name Type Required Description
item.product_reference string
Alphanumeric characters (a-z, A-Z, 0-9)
true Unique product reference
item.quantity Number true Product quantity
item.name String true Product description
item.unit_price Decimal number with explicit decimal point true Price of the item
item.discount string true Discount amount, always 0 or negative
item.total_amount Number true Unit price X quantity – discount.
. The sum of every "total_amount" must be equal to the "amount" sent in the call and it is automatically calculated
item.extraData.tax_rate string true Tax rate in percentage
item.extraData.type string
Alphanumeric characters (a-z, A-Z, 0-9)
true Type of product Possible values are good, discount or fee
item.extraData.european_article_numbering string
Alphanumeric characters (a-z, A-Z, 0-9)
false European article numbering

Hyp Yaad Pay PCI

Payment Methods

Payment Method Transaction Flows Transaction Types
Creditcard payment.js, iFrame Form Register, Debit, Preauthorize, Capture, Refund, Void

parameters for Register Preauthorize, Debit

Parameter Required Value Description
merchantMetaData true Merchant meta data
additionalId1 true contains the invoice number
item.identification conditional Items are not required, but when adding Items, this field is mandatory
item.name conditional Items are not required, but when adding Items, this field is mandatory
item.quantity conditional Items are not required, but when adding Items, this field is mandatory
item.price conditional Items are not required, but when adding Items, this field is mandatory
extraData.Fild1 false string Optional filled for the website owner
extraData.Fild2 false string Optional filled for the website owner
extraData.Fild3 false string Optional filled for the website owner
extraData.sendemail false accepts [True, False], default : False Send the customer a payment confirmation by email
extraData.SendHesh false accepts [True, False], default : False send invoice in email
extraData.phone false string phone number
extraData.sendHeshSMS false accepts [True, False] default: False The invoice send by SMS to cell parameter
extraData.EZ_lang false accepts [en, he] default: he Language of invoice and email
extraData.EZ_email_text false Add additional text into the body of an email
extraData.EZ_comment false Add additional text into the body of a invoice document
extraData.EZ_cc_emails false An array of valid cc emails the invoice will be sent to
extraData.EZ_vat false default = 0.17 The invoice VAT if not supported the current VAT will be used (format: [1 = 1.00, 0 = 0.00])
extraData.EZ_description false Add additional description into the body of a invoice document
extraData.EZ_customer_crn false The customer company number/ID/ etc… (BN Number) (Required by law when document value is greater than 5,000 ILS)
extraData.EZ_create_org_as_foreign false boolean (accepts [0,1]) default: 0 Default 0.use when you have permission to create original documents in English or foreign currency.

parameters for Refund, Void

Parameter Required Vale Description
extraData.SendHesh false accepts [True, False], default : False send invoice in email

Ingenico Connect

Payment Methods

Payment Method Transaction Flows Transaction Types
Sepa Direct Debit / GlobalCollect Server-to-Server All Debit (Initial, Recurring, withRegister), Register, Refund, Chargeback
Bank Transfer / GlobalCollect Redirect Debit, Refund
Sofort / GlobalCollect Redirect Debit, Refund
Trustly / GlobalCollect Redirect Debit, Refund

Required parameters for Sepa Direct Debit

Required parameters for Bank Transfer & Trustly

Webhooks

To use webhooks with Ingenico Connect you have to register the webhooks callback URL inside the Ingenico Connect Interface or talk with your account manager on Ingenico side.

TransactionIndicators

This applies only for the Payment Method SEPA Direct Debit For Register or withRegister transactions, IngenicoConnect Transaction Indicator will be set to "first"

Transaction Indicator IngenicoConnect Transaction Indicator
INITIAL first
RECURRING recurring

Ingenico Direct

Payment Methods

Payment Method Transaction Flows Transaction Types
Creditcard (incl. Googlepay and Apple Pay) iFrame Form & payment.js Integration Authorization, Capture, Debit, Refund
Paypal Redirect Debit, Refund
iDeal Redirect Debit, Refund
Bancontact Redirect Debit, Refund
PostFinancePay Redirect Authorization, Capture, Debit, Refund

*Documentation regarding Google Pay and Apple Pay can be found here: Google Pay, Apple Pay

Required parameters

iDeal

For the issuer you may do an Options Request using the identifier ideal-issuers. It will return a list of available issuer for iDeal.

Webhooks

To use webhooks with Ingenico Direct you have to register the webhooks callback URL inside the Ingenico Interface or talk with your account manager on Ingenico side.

Test Cards

3DS Test cards can be found here: Ingenico Direct Test Cases

iPayAfrica

Payment Methods

Payment Method Transaction Flows Transaction Types
Creditcard iFrame Form & payment.js Integration only Debit & Refund

Additional Parameters

none

iSignThis

Payment Methods

Payment Method Transaction Flows Transaction Types
Creditcard iFrame Form & payment.js Integration Debit only

Additional parameters

Jcc

Payment Methods

Payment Method Transaction Flows Transaction Types
CreditCard payment.js, Server-to-server Capture, Debit, Preauthorize, Refund, Register, Void

Mandatory Parameters

Name Type Description
Currency string 3 letters (ISO 4217)
Amount number Transaction amount

Additional Parameters

Name Type Required Description
description string false Transaction description.
customer.identification string false The customer identification on the web shop side.
customer.email string false The customers email.
customer.billingAddress1 string false The customers billing address
customer.billingAddress2 string false The customers billing address
customer.billingPostcode string false The customers billing post code.
customer.billingCity string false The customers billing city
customer.billingCountry string false The customers billing country

Item Parameters

Name Type Required Description
item.identification string true Unique product identifier in the cart.
item.name string true Item name
item.commodityCode float true Number (identifier) of an item in the store system
item.quantity integer false Item quantity
item.price float false Price for each item unit

KakaoPay

Supported Payment Methods

Payment Method Transaction Flows Transaction Types
KakaoPay Full-Page Redirect Debit, Refund , Partial-Refund

Mandatory Debit parameters

Parameter Type Description
currency String Currency of the transaction (Accepted: KRW).
customer.identification String identification of the customer
successUrl String redirect to URL on success/pending.
callbackUrl String endpoint to receive status notifications.
cancelUrl String redirect to URL on cancel.

Optional Debit parameters

Parameter Type Description
description String Items description.
items.quantity String Quantity of each item.
taxDetails.tax_free_amount String Tax free amount.
taxDetails.vat_amount String Vat amount.

Mandatory Refund & Partial-Refund parameters

Parameter Type Description
currency String Currency of the transaction (Accepted: KRW).

References:

Kalixa

Payment Methods

Payment Method Transaction Flows Transaction Types
Sofort Full-Page Redirect Debit
Giropay Full-Page Redirect Debit
EPS Full-Page Redirect Debit
Przelewy24 Full-Page Redirect & iFrame Form Debit
iDeal Full-Page Redirect Debit
Aircash Full-Page Redirect Debit, Payout
Aircash ABon Voucher Full-Page Redirect Debit

Additional Parameters

Payment Method additional field value
Aircash ABon Voucher extraData.productCode on of [aircashdefault, EY,BU,RV,EX,CR,SX,PN,OX,BW,CU,EN,FA,FB,SS,SU,WA,TC,ott_voucher,bluvoucher,kazangvoucher]

Kalixa Pci

Payment Methods

Payment Method Transaction Flows Transaction Types
Credit card payment.js, Hosted payment page Debit, Preauthorize, Capture, Refund, Register, Void

Mandatory Parameters (Debit, Preauthorize)

Name Type Description
description string The order short description
customer.identification string The customer identification on the web shop side.

Kalixa InstoreCardDeposit

Payment Methods

Payment Method Transaction Flows Transaction Types
InstoreCardDeposit API only Debit, Preauthorize, Capture, Void, Refund, Register, Incremental authorization

Additional Parameters

Field Required Description
extra.tpn true (for Debit, Preauthorize, and Register) A combination of the terminal manufacturer and terminal serial number, concatenated with a “/”, e.g., PAX/2210106698

Kassa Compleet

Payment Methods

Payment Method Transaction Flows Transaction Types
Creditcard Full-Page Redirect Debit only
iDeal Full-Page Redirect Debit only

Additional Parameters

none

Kcp Pc

Supported Payment Methods

Payment Method Transaction Flows Transaction Types
Credit Card Full-Page Redirect Debit, Refund , Partial-Refund
Bank Transfer Full-Page Redirect Debit, Refund , Partial-Refund

Optional Debit parameters

Parameter Type Description
description String Description of the transaction.
customer.firstName String Customer's first name.
customer.lastName String Customer's last name.
customer.email String Customer's email address.
customer.billingPhone String Customer's billing phone number.
extraData.shop_user_id String Shop user id.

Mandatory Refund & Partial-Refund parameters

Parameter Type Description
description String Reason or description for the refund.

References:

KCP Mobile

Supported Payment Methods

Payment Method Transaction Flows Transaction Types
Credit Card Full-Page Redirect Debit, Refund , Partial-Refund
Bank Transfer Full-Page Redirect Debit, Refund , Partial-Refund

Mandatory Debit parameters

Parameter Type Description
description String Description of the transaction.

Optional Debit parameters

Parameter Type Description
customer.firstName String Customer's first name.
customer.lastName String Customer's last name.
customer.email String Customer's email address.
customer.billingPhone String Customer's billing phone number.
extraData.shop_user_id String Shop user id.
extraData.shop_name String Shop/merchant name.
extraData.escw_used String Escrow used? Possible values: N/Y.
extraData.user_agent String OS user agent value

Mandatory Refund & Partial-Refund parameters

Parameter Type Description
description String Reason or description for the refund.
amount Number Amount to be refunded.
currency String Currency of the transaction (Accepted: USD, WON).

References:

Payment Methods

Payment Method Transaction Flows Transaction Types
DirectDebit Full-Page Redirect Debit, Refund

Connector Config

Parameter / Name Type Required Description
username string true Merchant username
API Secret string true Khipu API key
extraData.merchantID string true Your receiver_id from Khipu

Debit Parameters

Parameter / Name Type Required Description
amount string true Transaction amount: decimals separated by a "." (dot)
currency string true 3 letter currency code
description string true Description of items the user is purchasing

Options Request

You can find more information about the options request here: Options Request

Retrieving a list of available banks

Returns a list of available banks.

Please use bank-list as an option name e.g. POST /options/{apiKey}/bank-list.

Klarna

Klarna is a payment provider that offers its own payment methods, but also supports businesses by offering a large selection of the most popular payment methods on the market.

Supported features

We have two different implementations of the Klarna API in place.

KlarnaHPP

A full page redirect adapter. (See KlarnaHPP) documentation for more details)

KlarnaWidget

A payment widget solution. (See KlarnaWidget) documentation for more details)

Miscellaneous

Supported Countries and Currencies

Code Country Currency
AT Austria EUR
DK Denmark DKK
FI Finland EUR
DE Germany EUR
NL Netherlands EUR
NO Norway NOK
SE Sweden SEK
CH Switzerland CHF
GB Great Britain GBP
BE Belgium EUR
US United States USD
AU Australia AUD
FR France EUR
PT Portugal EUR
GR Greece EUR
IE Ireland EUR
PL Poland PLN
HU Hungary HUF
CZ Czech Republic CZK
SK Slovakia EUR
RO Romania RON
IT Italy EUR
ES Spain EUR

KlarnaHpp

Klarna is a payment provider that offers its own payment methods, but also supports businesses by offering a large selection of the most popular payment methods on the market.

Payment Methods

Payment Method Transaction Flows Transaction Types
Generic (provides all possible Payment Methods) Full-Page Redirect Debit, Authorize, Refund
Invoice Full-Page Redirect Debit, Authorize, Refund
Installment Full-Page Redirect Debit, Authorize, Refund
Sofort Full-Page Redirect Debit, Authorize, Refund

Required Parameters

Name Type Required Description
description string conditional Required if no items are provided
customer.email string true
customer.billingCountry string true
customer.billingAddress1 string true
customer.billingCity string true
customer.billingPostcode string conditional Required if the customer.billingCountry is any of SE, NO, FI, DK, GB, US, DE, AT, CH, NL, BE, AU, FR, PT, PL, GR, CZ, HU, RO, SK, IT, ES
customer.billingPhone string conditional Required if the customer.billingCountry is any of SE, NO, FI, DK, GB, US, DE, AT, CH, NL, BE, AU
customer.firstName string true
customer.lastName string true
customer.billingState string conditional Required if the customer.billingCountry is any of US, AU, IE, RO, IT
items.name string false
items.quantity string false
items.price string false
items.currency string false
items.totalAmount string false
items.type string false any of physical, sales_tax, discount, store_credit, shipping_fee, gift_card, digital, surcharge. If not provided physical will be used
items.identification string false
items.taxRate string false
items.totalTaxAmount string false
items.totalDiscountAmount string false
items.productUrl string false
items.merchantData string false
items.imageUrl string false

Connector Config

Key Required Values Description
region true eu, na, oc Klarna's Api is available through different base URLs depending on the underlying region. eu = Europe, na = North America, oc = Oceania
logo_url false string A Url String that points to your desired Logo (will be displayed in the HPP - Checkout)
page_title false string A optional Page Title for the HPP - Checkout
background_image_url false string A Url String that points to your desired Background Image (will be displayed in the HPP - Checkout)

KlarnaWidget

Klarna is a payment provider that offers its own payment methods, but also supports businesses by offering a large selection of the most popular payment methods on the market.

Payment Methods

Payment Method Transaction Flows Transaction Types
Invoice Widget - payment-widget.js Debit, Authorize, Refund
Installment Widget - payment-widget.js Debit, Authorize, Refund
Sofort Widget - payment-widget.js Debit, Authorize, Refund

Connector Config

Key Required Values Description
region true eu, na, oc Klarna's Api is available through different base URLs depending on the underlying region. eu = Europe, na = North America, oc = Oceania

Integration Guide

To activate the Klarna Widget you will first have to include the payment-widget.js.

​1. Embed the payment-widget.min.js in your page

<script data-main="payment-widget-js" src="https://gateway.tillpayments.com/js/integrated/payment-widget.min.js"></script>

​2. Provide Container for the Klarna Widget.

<div id="klarna-payments-container"></div>

​3. Retrieve a Widget-Token via a Prepare Call (Prepare-Debit or Prepare-Preauthorize). This Call is required to initialize a Klarna Session and provide it with all the checkout data.

Prepare Transaction Parameters

Name Type Required Description
amount string true Amount of transaction, decimals separated by a "." (dot)
currency string true 3 letter currency code
description string false If there is no Item given, the Description will be mandatory
successUrl string true redirect to URL on success/pending
callbackUrl string true endpoint to receive status notifications
customer object true see Customer
↳customer.billingAddress1 string true required for Klarna's authorization process
↳customer.billingCity string true required for Klarna's authorization process
↳customer.billingPostcode string conditional Required if the customer.billingCountry is any of SE, NO, FI, DK, GB, US, DE, AT, CH, NL, BE, AU, FR, PT, PL, GR, CZ, HU, RO, SK, IT, ES
↳customer.billingCountry string true required for session initialization
↳customer.billingState string conditional required if customer.billingCountry is any of US,AU,IE,RO,IT
↳customer.birthDate string false customer birth Date
↳customer.email string true required for session initialization
↳customer.shippingFirstName string false In case of divergent Billing-/ShippingAddress
↳customer.shippingLastName string false In case of divergent Billing-/ShippingAddress
↳customer.shippingAddress1 string false In case of divergent Billing-/ShippingAddress
↳customer.shippingCity string false In case of divergent Billing-/ShippingAddress
↳customer.shippingPostCode string false In case of divergent Billing-/ShippingAddress
↳customer.shippingState string false In case of divergent Billing-/ShippingAddress
↳customer.shippingCountry string false In case of divergent Billing-/ShippingAddress
↳customer.extraData.shippingEmail string false In case of divergent Billing-/ShippingAddress
extraData object false object containing key-value pairs (string-to-string)
↳extraData.orderTaxAmount string false Total tax amount of the order. The value should be in non-negative minor units. Eg: 25 Euros should be 2500.
items object false object containing Items - If no Item is given, a default Item will be generated with the transaction description as name
↳items.item.name string true Name of the item
↳items.item.description string false Description of the item
↳items.item.identification string false Identification of the item, will be passed as 'reference'
↳items.item.quantity string true Quantity of the item
↳items.item.price string true Price of item, decimals separated by a "." (dot)
↳items.item.currency string true Currency of the item - has to identical to the transaction currency
↳items.item.extraData object false object containing key-value pairs (string-to-string)
↳items.item.extraData.totalAmount string true The total amount of the Item (item.price * item.quantity)
↳items.item.extraData.type string false Type of the order line item. The possible values are: physical discount shipping_fee sales_tax digital gift_card store_credit surcharge. Default Value is 'physical'
↳items.item.extraData.taxRate string false Tax rate of the order line. Non-negative value. The percentage value is represented with two implicit decimals. I.e 1900 = 19%.
↳items.item.extraData.totalTaxAmount string false Total tax amount of the order line. Must be within ±1 of total_amount - total_amount 10000 / (10000 + tax_rate). Negative when type is discount.
↳items.item.extraData.productUrl string false A Url String that points to your Product
↳items.item.extraData.merchantData string false Information about the Product
↳items.item.extraData.imageUrl string false A Url String that points to your Product Image

​4. Initialize the Klarna Widget with the following parameters:

<script>
  var widget = new WidgetJs();

  errorHandler = function (error) {
    //handle error events here
  }

  completeHandler = function (initResult) {
    //Klarna init result
  }

  widget.initKlarna(
    'Public Integration Key',
    'Widget-Token',
    'klarna-payments-container',
    completeHandler,
    errorHandler
  );
</script>

​4. Authorize / Finalize the Klarna Widget with the following parameters:

<script>
  var widget = new WidgetJs();

  errorHandler = function (error) {
    //handle error events here
  }

  completeHandler = function (authToken) {
    //send the received authToken in the extraData for a debit or preauthorize call
  }

  widget.authKlarna(
    'Public Integration Key',
    'Widget-Token',
    'klarna-payments-container',
    completeHandler,
    errorHandler,
    true // or false (optional)
  );

  // Depending on Auto-Finalize Option from widget.authKlarna
  widget.finalizeKlarna(
    'Public Integration Key',
    'Widget-Token',
    'klarna-payments-container',
    completeHandler,
    errorHandler
  );
</script>

​5. Send Debit / Preauthorize Request with the received Auth-Token from Step 4.

Send the authorization_token in the extraData object to place the order.

Transaction Request Debit, Preauthorize, Capture

Transaction Parameters

Name Type Required Description
merchantTransactionId string true your unique transaction ID
amount string true Amount of transaction, decimals separated by a "." (dot)
currency string true 3 letter currency code
description string false If there is no Item given, the Description will be mandatory
successUrl string true redirect to URL on success/pending
callbackUrl string true endpoint to receive status notifications
withRegister boolean false store customers payment instrument for recurring transactions
referenceUuid string false UUID of an initial transaction
transactionIndicator string false possible value: RECURRING
customer object true see Customer
↳customer.billingAddress1 string true required to create Klarna Order
↳customer.billingCity string true required to create Klarna Order
↳customer.billingPostcode string true required to create Klarna Order
↳customer.billingCountry string true required to create Klarna Order
↳customer.birthDate string false customer birth Date
↳customer.email string true required to create Klarna Order
↳customer.shippingFirstName string false In case of divergent Billing-/ShippingAddress
↳customer.shippingLastName string false In case of divergent Billing-/ShippingAddress
↳customer.shippingAddress1 string false In case of divergent Billing-/ShippingAddress
↳customer.shippingCity string false In case of divergent Billing-/ShippingAddress
↳customer.shippingPostCode string false In case of divergent Billing-/ShippingAddress
↳customer.shippingState string false In case of divergent Billing-/ShippingAddress
↳customer.shippingCountry string false In case of divergent Billing-/ShippingAddress
↳customer.shippingEmail string false In case of divergent Billing-/ShippingAddress
extraData object true required to create Klarna Order
↳extraData.authorizationToken string true required to create Klarna Order
↳extraData.orderTaxAmount string false / true Total tax amount of the order. Depending if you declared a totalTaxAmount on an item, this will be required or not
items object false object containing Items - If no Item is given, a default Item will be generated with the transaction description as name
↳items.item.name string true Name of the item
↳items.item.description string false Description of the item
↳items.item.identification string false Identification of the item, will be passed as 'reference'
↳items.item.quantity string true Quantity of the item
↳items.item.price string true Price of item, decimals separated by a "." (dot)
↳items.item.currency string true Currency of the item - has to identical to the transaction currency
↳items.item.extraData object false object containing key-value pairs (string-to-string)
↳items.item.extraData.totalAmount string true The total amount of the Item (item.price * item.quantity)
↳items.item.extraData.type string false Type of the order line item. The possible values are: physical discount shipping_fee sales_tax digital gift_card store_credit surcharge. Default Value is physical
↳items.item.extraData.taxRate string false Tax rate of the order line. Non-negative value. The percentage value is represented with two implicit decimals. I.e 1900 = 19%.
↳items.item.extraData.totalTaxAmount string false Total tax amount of the order line. Must be within ±1 of total_amount - total_amount 10000 / (10000 + tax_rate). Negative when type is discount.
↳items.item.extraData.productUrl string false A Url String that points to your Product
↳items.item.extraData.merchantData string false Information about the Product
↳items.item.extraData.imageUrl string false A Url String that points to your Product Image

Recurring Transactions

Klarna supports recurring Orders. To create a recurring Order you will have to send your Debit or Preauthorize with the extra "withRegister" flag. For every following recurring Transaction you will have to provide the initial Transaction Uuid as referenceUuid and the transactionIndicator with RECURRING.

Klarna Partial Capturing / Release remaining authorization

Klarna supports partial capturing of created orders. Therefore, send a regular Capture call with the desired capture amount and the corresponding reference Transaction ID. If you did not fully capture the original order amount, you can either send another Capture Request to actually capture the remaining amount or release it with a "Final Capture". This will "release" the remaining amount and add it to your Klarna Merchant contingent. To release a remaining order amount, you will have to send a Capture with an amount of 0.

Klarna Discounts

Klarna supports transmit of Discount Data, these Data can be sent on either order level oder item level. For further information about this topic please visit the official Klarna Documentation. We assume to receive the correct Discount relevant Data and won't apply any validation to it. If your send that Data don't fit the Klarna convention you might be served with a Klarna provided Error.

On Order Level

To achieve an Order Level Discount, you will have to send an Item with the type discount.

Name Type Required Description
items object false object containing Items
↳items.item.name string true Name of Discount
↳items.item.extraData.type string true Type 'discount' is required to actually create the discount Item

Item Level

If you like to send the discount information for a specific Item, you will have to send / add these on the corresponding Item Level as extraData.

Name Type Required Description
items object false object containing Items
↳items.item.extraData.totalDiscountAmount string true Amount of Item Discount (amount has to be positive), decimals separated by a "." (dot)

Laybuy

The required currency is AUD (Australian dollar).

Payment Methods

Payment Method Transaction Flows Transaction Types
Creditcard Full-Page Redirect Debit, Refund

Additional Parameters

Name Type Required Description
firstName (Customer) string true The customer’s first name
lastName (Customer) string true The customer’s family name
email (Customer) string true The customer’s email
shippingAddress1 (Customer) string true The first address line
shippingAddress2 (Customer) string false The second address line
shippingCity (Customer) string true The address suburb, town or county
shippingCountry (Customer) string false The country
shippingState (Customer) string true The address state (case-sensitive)
shippingPostcode (Customer) string true The address postcode
shippingPhone (Customer) string true The address postcode
items object false The object containing cart items

Item

Name Type Required Description
identification string true The merchant's unique identifier (id, PLU/SKU, barcode, etc.) for the product.
quantity number true The quantity being purchased.
price number true The unit price of the product.
description string true The description of the product.

Additional parameters for Refund

Name Type Required Description
extraData.note string false A brief description of the reason for the refund.

LuxonPay

Payment Methods

Payment Method Transaction Flows Transaction Types
E-Wallet Full-Page Redirect Debit, Debit with Register, Refund, Payout

Debit, Refund, Payout Parameters

Name Type Required Description
amount string true Transaction amount: decimals separated by a . (dot)
currency string true 3 letter currency code
description string false Purpose of use

Debit Customer Parameters

Name Type Required Description
identification string false (but recommended) Unique ID of the customer

Mashreq CCAvenue PCI

Payment Methods

Payment Method Transaction Flows Transaction Types
CreditCard payment.js, Hosted payment page Capture, Debit, Preauthorize, Refund, Register, Void

Mandatory Parameters

Name Type Description
Currency string 3 letters (ISO 4217)
Amount number Transaction amount

Mandatory Parameters for 3ds

Name Type Description
customer.identifier string Unique customer identifier generated by merchant
customer.firstName string Customer first name
customer.lastName string Customer lsat name
customer.email string Customer email
customer.billingPhone string Customer phone
customer.billingAddress1 string Customer billing address
customer.billingCity string Customer city
customer.billingCountry string Customers country 2 letters (ISO 3166-1 alpha-2)

Mandatory Parameters for followup transactions

Name Type Description
threeDSecureData.browserUserAgent string Browser user agent

Mastercard Payment Gateway Services

Payment Methods

Payment Method Transaction Flows Transaction Types
Creditcard iFrame Form & payment.js Integration Debit, Register, Preauthorize, Capture, Void, Refund, Deregister

Additional Parameters

Creditcard

Optional

Sub-Merchant fields (must be enabled for the account)

Name Required Type Description
extraData.submerchantIdentifier conditional string Required when sending Sub-Merchant data
extraData.submerchantTradingname conditional string Required when sending Sub-Merchant data
extraData.submerchantRegisteredName false string
extraData.submerchantBankIndustryCode false string
extraData.submerchantEmail false string
extraData.submerchantPhone false string
extraData.submerchantCity false string
extraData.submerchantCompany false string
extraData.submerchantCountry false string
extraData.submerchantPostcodeZip false string
extraData.submerchantStateProvince false string
extraData.submerchantStreet false string
extraData.submerchantStreet2 false string
extraData.orderReference false string Order identifier (max 40 characters)

MasterPayment

Payment Methods

Payment Method Transaction Flows Transaction Types
Creditcard iFrame Form & payment.js Integration All
Sofortüberweisung Full-Page Redirect Debit only

Additional Parameters

none

MercadoPago

Payment Methods

Payment Method Transaction Flows Transaction Types
Creditcard HPP & payment.js integration Register, Debit, Preauthorize, Capture, Void, Refund, Recurring

Additional Parameters

Key Value Type Description
extraData.entity_type string one of [ individual, association ] Register, Debit, Preauthorize The entity Type of the payer (if not registered)
extraData.payer_id string Register, Debit, Preauthorize Identification of the associated payer
extraData.payer_type string on of [customer, registered, guest] Register, Debit, Preauthorize customer: Payer is a Customer and belongs to the collector.
registered: The account corresponds to a Mercado Pago registered user.
guest: The payer doesn't have an account.
extraData.ident_type string Register, Debit, Preauthorize Identification type
extraData.ident_number string Register, Debit, Preauthorize Identification number

Device Data

When redirecting the user to a Payment Template - Hosted Payment Page (HPP), it's possible to collect their DeviceID and include it as a X-meli-session-id headers of the payment creation, refer to MercadoPago Documentation. Include the following script in the Hosted Payment Page (HPP):

  <script src="https://www.mercadopago.com/v2/security.js" view="checkout" output="deviceId"></script>

Then pass it in a new input field that has the name attribute name="deviceData" and the id must equal the output of the script:

<input type="hidden" id="deviceId" name="deviceData">

MocoPay

Payment Methods

Payment Method Transaction Flows Transaction Types
Direct Carrier Billing (SMS) Redirect & iFrame Form Debit only
PayByCall Redirect & iFrame Form Debit only

Additional Parameters

none

Mollie

Payment Methods

Payment Method Transaction Flows Transaction Types
Creditcard Full-Page Redirect All
Paysafecard Full-Page Redirect All
Bancontact Full-Page Redirect All
Belfius Full-Page Redirect All
KBC Full-Page Redirect All
PodiumCadeaukaart Full-Page Redirect All
Sofortüberweisung Full-Page Redirect All
iDeal Full-Page Redirect All
BankTransfer Full-Page Redirect All
SEPA Direct Debit Full-Page Redirect All
BitCoin Full-Page Redirect All

Additional Parameters

none

MpGateway

The required currency is EUR (Euro).

Payment Methods

Payment Method Transaction Flows Transaction Types
Bancontact Full-Page Redirect, HPP(iFrame) Debit, Refund, Capture, Void, Preauthorize

Additional Parameters

Name Type Required Description
Success URL string true Success notification URL
Error URL string true Failure notification URL
Cancel URL string true Cancel notification URL
extraData.isMobile boolean/null false If the value is true - customer will be redirected to the the page with the button which leads directly to the Bancontact mobile application to finish the transaction

MpGateway Pci

Payment Methods

Payment Method Transaction Flows Transaction Types
Credit card HPP & payment.js Integration All

Additional Parameters

Parameter Type Required Description
extraData.tax string false

MultiSafePay

Following features has to be enabled from your Multisafepay Account Manager

If you want to use Multisafepay SDD without redirect please activate "useDirectType" option on the connector.

Payment Methods

Payment Method Transaction Flows Transaction Types
Creditcard Full-Page Redirect, payment.js Integration All
DotPay Full-Page Redirect All
GiroPay Full-Page Redirect All
Sofortüberweisung Full-Page Redirect All
iDeal Full-Page Redirect All
BankTransfer Full-Page Redirect All
SEPA Direct Debit Full-Page Redirect, Direct Payment All

Additional Parameters

Parameter Description
description If the dynamic descriptor is activated you can set the descriptor for the payment
customer.firstName Required for initial SDD Direct Payment
customer.lastName Required for initial SDD Direct Payment
paymentData.ibanData.iban Required for initial SDD Direct Payment
paymentData.ibanData.mandateId (optional)
customer.extraData.locale (optional) if not provided the connector setting "language" + customer.billingCountry will be used

Neteller

To fully set up the Neteller Connector you will have to fulfill the following (mandatory) steps:

Payment Methods

Payment Method Transaction Flows Transaction Types
Neteller Full-Page Redirect Debit
Neteller false interaction Payout

Additional Parameters

Key Required Values Validation Description
Customer - Identification true string length<=150 Unique customer identification.
The email address of the customer who is making or receiving the payment.
Transaction - Description true string length<=150 Description of the Item.

Customer details verification

@ Customer details verification is used verify that the member's account information in the Neteller system corresponds to the member's information in Merchant system Customer verification is done with each Debit transaction

Parameters for Customer details verification

Name Type Required Description
email string true The customers email
firstName string false The customers first name
lastName String false The customers last name
dateOfBirth string false The customers date of birth
postCode string false The customers postal code or zip code
country string false The customers 2-code country of residence.

NETS

Payment Methods

Payment Method TransactionFlows Transaction Types
Visa Full-Page Redirect & Widget - payment-widget.js All
Mastercard Full-Page Redirect & Widget - payment-widget.js All
Direct Debit Full-Page Redirect & Widget - payment-widget.js All
Swish Full-Page Redirect & Widget - payment-widget.js Debit, Preauthorize, Capture, Refund, Void, Register
Vipps Full-Page Redirect & Widget - payment-widget.js Debit, Preauthorize, Capture, Refund, Void
Sofort Full-Page Redirect & Widget - payment-widget.js Debit, Preauthorize, Capture, Refund, Void
MobilePay Full-Page Redirect & Widget - payment-widget.js Debit, Preauthorize, Capture, Refund, Void
ArvatoAfterPay Full-Page Redirect & Widget - payment-widget.js Debit, Preauthorize, Capture, Refund, Void

Additional Parameters

Name Type Required Description
description string true Transaction description.
extraData.embeddedCheckout boolean false Indicates if the embedded checkout via widget, or the full page redirect should be used.
extraData.termsUrl string true The URL to the terms and conditions of the web shop.
extraData.checkoutUrl string false URL of the page where the embedded checkout widget should be shown. Should be empty if the HPP is used.
extraData.merchantHandlesConsumerData boolean false Indicates if the customer data form will be shown on the checkout page.
extraData.customerType string false Type of the customer. Allowed values are B2B or B2C.
extraData.language string false Specifies the preferred language for the checkout process, enhancing localization and user experience.
customer.shippingCountry string true The customers shipping country.
customer.identification string false The customer identification on the web shop side.
customer.email string false The customers email.
customer.shippingAddress1 string false* The customers shipping address line 1.
customer.shippingAddress2 string false The customers shipping address line 2.
customer.shippingPostcode string false The customers shipping post code.
customer.shippingCity string false* The customers shipping city.
customer.shippingFirstName string false The customers first name.
customer.shippingLastName string false The customers last name.
customer.shippingCompany string false Company name.

Item Parameters

Name Type Required Description
item.identification string true Item identification of the web shop.
item.name string true Item name
item.quantity integer true Item quantity
item.extraData.unit string true Unit used for the items. E.g. pcs.
item.price float true Price for each item unit
item.extraData.netTotalAmount float true Total price for the items excluding VAT. item.price * item.quantity
item.extraData.grossTotalAmount float true Total price for the items including VAT. item.extraData.netTotalAmount + item.extraData.taxAmount
item.extraData.taxAmount float false Tax amount for the items. item.price * item.quanity * item.extraData.taxRate / 10000
item.extraData.taxRate float false Tax rate used for the tax amount. The tax rate should be provided in percentage times 100. E.g. 25% tax rate as 2500

Config Parameters

Name Type Required Description
API Secret string true The API Secret provided by NETS.
checkoutKey string true The checkout key used for the payment widget. Provided by NETS.
webhookAuthorization string true Any string chosen by you. Will be used to authorize webhooks from NETS.
currencyForVerify string true currency used for verify calls.
embeddedCheckout string false See extraData.embeddedCheckout
merchantHandlesConsumerData boolean false See extraData.merchantHandlesConsumerData.
paymentButtonText string false Text used for the payment button on the checkout page.
showMerchantName boolean false Indicates if the merchant name (in the NETS account) should be shown on the checkout page.
showOrderSummary boolean false Indicates if the order summary should be shown on the checkout page.
Name Type Required Description
backgroundColor string false Hex color code for the payment widget background color.
panelColor string false Hex color code for the payment widget panel color.
textColor string false Hex color code for the payment widget text color.
primaryColor string false Hex color code for the payment button color in the payment widget.
linkColor string false Hex color code for the payment widget link color.
placeholderColor string false Hex color code for the payment widget input field placeholders.
outlineColor string false Hex color code for the payment widget outlines.
primaryOutlineColor string false Hex color code for the payment button outline color in the payment widget.
panelTextColor string false Hex color code for the payment widget panel text.
panelLinkColor string false Hex color code for the payment widget panel links.
buttonTextColor string false Hex color code for the payment widget panel button texts.

Nexi

Payment Methods

Payment Method Transaction Flows Transaction Types
bankTransfer Full Page Redirect Debit, Preauthorize, Capture, Refund

Additional Parameters

Key Value Required Flow Description
extraData.language in ISO 639-2 format. one of ['ita', 'eng', 'spa', 'fra', 'ger', 'jpn', 'chi', 'ara', 'rus', 'por'] , default is ita false Debit, Preauthorize defines the language of the payment page
extraData.description string false Capture

NMI (Network Merchants Integrated)

Payment Methods

Payment Method Transaction Flows Transaction Types
Creditcard iFrame Form & Full-Page Redirect All
Creditcard (Direct Post API) iFrame Form & payment.js Integration All

Additional Parameters

Direct Post API

Nuvei

Payment Methods

Payment Method Transaction Flows Transaction Types
AliPay Full-Page Redirect Debit only
FastBankTransfer Full-Page Redirect Debit only
Giropay Full-Page Redirect Debit only
iDeal Full-Page Redirect Debit only
Mistercash Full-Page Redirect Debit only
Qiwi Full-Page Redirect Debit only
Sofort Full-Page Redirect Debit only
UnionPay Full-Page Redirect Debit only
WeChatPay Full-Page Redirect Debit only

Mandatory Parameters

Field Required
customer.email true
customer.billingCountry true

NuveiDCC

NuveiDCC adapter is used to proceed payments with Nuvei using DCC (Dynamic Curency Conversion) service.

Guideline

To use DCC service it's necessary to send requestDcc: "true" with your debit/preauthorize request. If DCC is allowed for the specific card you'll receive an API response with a status "PENDING_DCC" and all the necessary data to provide to the end customer to decide in which currency he/she wants to pay.

As soon as end customer decided which currency to use - you have to send an additional /continue-dcc API call

Mandatory Parameters

Name Type Required Description
requestDcc boolean false To enable DCC service - requestDcc should be true

Nuvei PCI

Payment Methods

Payment Method Transaction Flows Transaction Types
Creditcard iFrame Form & payment.js Integration Debit, Register, Preauthorize, Capture, Void, Refund, Deregister

Mandatory Parameters

Field Required
customer.firstName true
customer.lastName true
customer.email true
customer.billingCountry true
customer.ipAddress true

Mapping to Nuvei

Gateway Parameter Adapter parameter Required Description
merchantTransactionId customData true Adding your unique identifier as custom data to be reflected in Reports created in the Nuvei Dashboard.

VISA AFT Parameters

To enable VISA AFT both fields mentioned below are necessary. Additionally, it's required to set up a dedicated connector for the AFT transactions and check "Enable Account Funding Transactions" checkbox in the connector Vault Setup

Field Required
customer.shippingFirstName true
customer.shippingLastName true

Nuvei POS

Payment Methods

Payment Method Transaction Flows Transaction Types
Creditcard API only Debit, Preauthorize, Capture, Void, Refund, Deregister

Additional Parameters

Field Required Description
extra.tpn true (if not configured at connector level) The terminal profile number, identifying the actual POS terminal
extra.paymentType false (if provided, connector configuration is overruled) Identifies the EDC type.
Values: Credit, Debit, Card for Canada, EBT, Check, Gift, Loyalty, Restaurant
extra.printReceipt false (if provided, connector configuration is overruled) Shall the terminal print a receipt?
Values: No, Merchant, Customer, Both
extra.getReceipt false (if provided, connector configuration is overruled) Shall receipt data be returned in digital form, to be printed out via a dedicated printer?
Values: No, Merchant, Customer, Both

Ochapay

Payment Methods

Payment Method Transaction Flows Transaction Types
Creditcard Full-Page Redirect Debit only

Additional Parameters

none

Omipay

The required currency is AUD (Australian dollar).

Payment Methods

Payment Method Transaction Flows Transaction Types
Omipay Full-Page Redirect Debit, Refund

Additional Parameters

none

Oney

Payment Methods

Payment Method Transaction Flows Transaction Types
Creditcard Redirect Pre-authorise, Capture, Void, Refund

Adapter Config

The following fields are mandatory:

Parameter Allowed values Description
Merchant Guid Merchant unique global identifier.
pspGuid PSP unique global identifier.
apiKey Oney Api Key.
countryCode Required for header: X-Oney-Partner-Country-Code.
businessTransactionCode business_transaction code x3 or x4 provided by Oney.

Pre-Authorise: Additional Parameters

The following extraData fields are mandatory for the pre-authorization (purchase) request:

Parameter Allowed values Description
extraData.deliveryDate yyyy-MM-dd Must be greater or equal to today's date.
extraData.deliveryModeCode Refer to Oney API docs.
extraData.deliveryOption Refer to Oney API docs.
extraData.deliveryAddressType Refer to Oney API docs.
extraData.deliveryPriorityDeliveryCode Refer to Oney API docs. Mandatory if extraData.deliveryOption is 3.
items.item.extraData.isMainItem Refer to Oney API docs.
items.item.extraData.categoryCode Refer to Oney API docs.
customer.extraData.languageCode Refer to Oney API docs.
customer.extraData.honorificCode 1,2,3 Refer to Oney API docs.
customer.extraData.pickupPointName Name of delivery point (shop name,...). Mandatory if extraData.addressType is either 1,2 or 3.

The following extraData fields are optional for the pre-authorization (purchase) request:

Parameter Allowed values Description
customer.extraData.taxpayerCode Refer to Oney API docs.

Refund & Void: Additional Parameters

Additional Information for Refund:

RULES FRANCE ONLY

RULES OTHER COUNTRIES (PT, RO, IT, BE, SP)

The following extraData fields are mandatory for the refund request:

Parameter Allowed values Description
extraData.purchaseCancellationReasonCode 0, 1 Refer to Oney API docs.
extraData.purchaseRefundDownPayment true, false Required if extraData.purchaseCancellationReasonCode is 1. Refer to Oney API docs.

Openpay

The required currency is AUD (Australian dollar).

Payment Methods

Payment Method Transaction Flows Transaction Types
Openpay Full-Page Redirect Debit, Refund

Additional Parameters

Name Type Required Description
firstName (Customer) string true The customer’s first name
lastName (Customer) string true The customer’s family name
email (Customer) string true The customer’s email
birthDate (Customer) string false The customer’s date of birth
shippingAddress1 (Customer) string true The first address line
shippingAddress2 (Customer) string false The second address line
shippingCity (Customer) string true The address suburb, town or county
shippingState (Customer) string true The address state (case-sensitive)
shippingPostcode (Customer) string true The address postcode
billingAddress1 (Customer) string false The first address line
billingAddress2 (Customer) string false The first address line
billingCity (Customer) string false The address suburb, town or county
billingState (Customer) string false he address state (case-sensitive)
billingPostcode (Customer) string false The address postcode
items object false The object containing cart items
extraData object false object containing key-value pairs (string-to-string)
↳extraData.source string false The type of customer journey being started Enum: "Online" "PosApp" "PosWeb"
↳extraData.deliveryMethod string false Enum: "Delivery" "Pickup" "Email"
↳extraData.goodsDescription string false Brief description of goods being purchased

Item

Name Type Required Description
identification string true An internal stock number for this item
name string true A description of the item used by the retailer
quantity number false How many of the items were purchased
price number true The individual retail price charged for the item An integer number in the lowest denomination in the currency being used (e.g. 1034 indicates $10.34)
extraData object true object containing key-value pairs (string-to-string)
↳itemRetailCharge string true The overall retail charge for the quantity of items An integer number in the lowest denomination in the currency being used (e.g. 1034 indicates $10.34)
↳itemGroup string false A group level description if available
↳itemGroupCode string false If a group has an internal code that may be used to refer to it, it can be supplied

Options Request

Get Configured Min Max Purchase Price

In order to get the configured Min and Max purchase price range an Options Request is required.

Please use minMaxPrice as an identifier e.g. POST /options/{apiKey}/minMaxPrice.

You can find more information about the options request here: Options Request

Paygate PCI

Payment Methods

Payment Method Transaction Flows Transaction Types
Creditcard HPP & payment.js Integration Register, Preauthorize, Capture, Void, Debit, Refund

Required Parameters

Parameter Required Transaction Type Description
description true Register, Preauthorize, Capture, Void, Debit, Refund
extraData.serviceType conditional Register, Debit, Preauthorize Default value can be set on connector config
Customer.email Register
Customer.firstName Register
Customer.lastName Register
Customer.billingPhone Register
Customer.billingCountry Register

Optional Parameters

Parameter Transaction Type Description
Customer.billingAddress1 Register, Debit, Preauthorize
Customer.billingCity Register, Debit, Preauthorize
Customer.billingPostcode Register, Debit, Preauthorize

Pago46

Payment Methods

Payment Method Transaction Flows Transaction Types
Pago46 Full-Page Redirect Debit

Additional Parameters

none

Options Request

Paying an Agent (sandbox only)

In order to mock the event on the sandbox that a customer has paid an agent an Options Request is required. Use payAgent as identifier and pass the adapter's transaction ID in the transaction parameter.

Paygate

Payment methods

Payment Method Transaction Flows Transaction Types
SID_EFT Full-Page Redirect Debit, Refund
DPO Pay mobile Full-Page Redirect Debit, Refund
USSD Full-Page Redirect Debit, Refund

Mandatory Parameters

Name Type Required Description
amount (Transaction) string true Total amount in the selected currency. No more than 2 digits after the comma
currency (Transaction) string true 3 letter currency code
description (Transaction) string true The description of the payment made

Data Levels

Name Required Description
Transaction true Contains all the basic transaction information
Allocations false Contains all the information regarding the allocation of money received from transaction to be paid to other providers in Direct Pay Online system. If this level is not sent, the system will allocate all the money from this transaction to the provider
Additional false Contains an option to block specific payment options in the transaction (for example, on an application which needs fast payment, block off Direct Pay Online bank payment)
Travelers false Contains information regarding travelers (passengers / guests) which will a process in Direct Pay Online system to verify that one of the payers name matches the name of one of the travelers

ExtraData Parameters

ExtraData fields for different levels. If level is not mandatory then fields are also not required until you specify it.

If extraData value has [i] - it means that multiply object could be mapped. [i] - should always start with 1. It should be used even if you are mapping only one object.

Name Type Required Description Level
extraData.companyRefUnique string false Company reference number, i.e also referred to as Booking ref Transaction
extraData.demandPaymentByTraveler Boolean(1/0) false If marked as 1, the system will require one of the travelers which are included in the travelers tag to be the payer Transaction
extraData.emailTransaction string false If marked as 1, the system will send the customer an e-mail about the transaction with a link to pay Transaction
extraData.companyAccRef string false Internal accounting reference number Transaction
extraData.userToken string false To define who created the transaction Transaction
extraData.defaultPayment string false The code of the default payment option (the one to be displayed first in the payment page), options: CC - Credit card, MO - Mobile, PP - PayPal, BT - Bank transfer, XP - xPay Transaction
extraData.defaultPaymentCountry string false Should be used only for Mobile default payment. Name of the default country for the payment option (DefaultPayment will work without this option too) Transaction
extraData.default_PaymentMNO string false Should be used only for Mobile default payment. Name of the default MNO (mobile network operator) for the payment option (DefaultPayment will work without this option too) Transaction
extraData.transactionToPrep Boolean(1/0) false Will mark the transaction as Marketplace Prep Transaction
extraData.voidable Boolean(1/0) false If this tag sent, transaction will be checked in scoring process, if 0 and scoring above high risk/very high risk then will be blocked, if 1 then will go to a check by DPO support team Transaction
extraData.TRANSblockCountries Boolean(1/0) false transaction block countries Transaction
extraData.allocationCode[i] string true The code of the other provider to allocate money to Allocations
extraData.allocationAmount[i] string true The allocated amount Allocations
extraData.allocationServiceType[i] number true Allocation service type from list of services Allocations
extraData.allocationServiceDescription[i] string false Allocation description Allocations
extraData.allocationInvoice[i] string false Invoice of the allocation Allocations
extraData.allocationPnr[i] string false Pnr of the allocation Allocations
extraData.blockPayment[i] string false The code of the payment options to be blocked, options: CC - Credit card, MO - Mobile, PP - PayPal, BT - Bank transfer, XP - xPay Additional
extraData.travelerFirstName[i] string true Traveler first name Travelers
extraData.travelerLastName[i] string true Traveler last name Travelers
extraData.travelerPhone[i] string false Traveler phone number Travelers
extraData.travelerPhonePrefix[i] string false Traveler number prefix (without +) Travelers
extraData.aafTicketType string false Ticket Type AdditionalAirlineFields
extraData.aafDocumentType string false Document Type AdditionalAirlineFields
extraData.aafDateIssued DateTime true Date Issued AdditionalAirlineFields
extraData.aafIATACarrierCode IATA true IATA Carrier Code AdditionalAirlineFields
extraData.aafIATATravelAgencyNbr IATA false IATA Travel Agency Number AdditionalAirlineFields
extraData.aafTicketCarrierName string false Ticket Carrier Name AdditionalAirlineFields
extraData.aafTicketIssuerCityName string false Ticket Issuer City Name AdditionalAirlineFields
extraData.aafPassengerCount number false Number of Passengers AdditionalAirlineFields
extraData.aafConjTicketIndicator string false Conjunction Ticket Indicator AdditionalAirlineFields
extraData.aafElecTicketIndicator string false Electronic Ticket Indicator AdditionalAirlineFields
extraData.aafTicketNumber string true Exchanged/Original Ticket No or PNR AdditionalAirlineFields
extraData.flightDescription[i] string true The description of the payment made AdditionalAirlineFields.FlightLeg
extraData.flightType[i] string true Service type number according to the options accepted from DPO AdditionalAirlineFields.FlightLeg
extraData.flightDate[i] DateTime true Service date of the booked service Format: YYYY/MM/DD HH:MM AdditionalAirlineFields.FlightLeg
extraData.flightFrom[i] IATA true 3 letters departure airport code AdditionalAirlineFields.FlightLeg
extraData.flightTo[i] IATA true 3 letters destination airport code AdditionalAirlineFields.FlightLeg
extraData.flightRef[i] string false Service Reference AdditionalAirlineFields.FlightLeg
extraData.carrierCode[i] IATA true IATA carrier code AdditionalAirlineFields.FlightLeg
extraData.serviceClass[i] string true Service Class AdditionalAirlineFields.FlightLeg
extraData.flightNumber[i] string true Flight Number AdditionalAirlineFields.FlightLeg
extraData.fareBasisCode[i] string true Fare Basis Code AdditionalAirlineFields.FlightLeg
extraData.stopOverCode[i] string true Stop Over Code AdditionalAirlineFields.FlightLeg
extraData.aafTravelerFirstName[i] string true First name AdditionalAirlineFields.Traveler
extraData.aafTravelerLastName[i] string true Last name AdditionalAirlineFields.Traveler
extraData.aafTravelerPhone[i] string false Phone number AdditionalAirlineFields.Traveler
extraData.aafTravelerPhonePrefix[i] number false Phone number prefix (without +) AdditionalAirlineFields.Traveler
extraData.aafTravelerDateOfBirth[i] DateTime false Traveler Date Of Birth AdditionalAirlineFields.Traveler
extraData.aafTravelerCountryCode[i] string false Traveler Country Code AdditionalAirlineFields.Traveler

Paygent

Adapter Configuration

Merchant ID and Hash Code Generation Key are provided by Paygent.

Payment Methods

Payment Method Transaction Flows Transaction Types
Bank Transfer Redirect Debit

Extra Data

Bank Transaction

paylado

Payment Methods

Payment Method Transaction Flows Transaction Types
Wallet Full-Page Redirect, Server to Server Debit, Payout

Additional Parameters for Debit

Parameter Required Description
customer.firstName true
customer.lastName true
customer.email true
customer.ipAddress false

Additional Parameters for Payout

Parameter Required Description
customer.ipAddress conditional If no ipAddress is passed, the ipAddress of the references debit transaction will be used

Payline

Payment Methods

Payment Method Transaction Flows Transaction Types
Creditcard iFrame Form & payment.js Integration All

Additional Parameters

Creditcard

Name Description Required
extraData.paymentMode Overwrite payment mode, see https://docs.payline.com/display/DT/Codes+-+Mode Needed when using Contract Number (PASS)

Payfacs parameters

Note: to enable sending of Payfacs parameters, please enable the "Enable Payfacs" setting on the connector.

Name Description Amex CB MC VISA
extraData.subMerchantId Identifier of the sub-market (final beneficiary) defined by the payment provider (Payment Facilitator). (AN15) R R R R
extraData.subMerchantMCC MCC Code (N4) R R R R
extraData.subMerchantName Sub-merchants name (AN15) R R
extraData.subMerchantSIRET SIRET (French merchants) (AN14) O R O O
extraData.subMerchantTaxCode Tax code (US and Canadian merchants) (AN) - Mandatory for countries USA and CAN. C C
extraData.subMerchantStreet Street name (AN30) R O
extraData.subMerchantCity City (AN15) R O
extraData.subMerchantZipCode Postal code (AN15) R O
extraData.subMerchantCountry Country code (AN2) R R
extraData.subMerchantState State (AN3) O O
extraData.subMerchantEmailAddress Email (ANS40) R
extraData.subMerchantPhoneNumber Phone number (AN20) R

PaymentsOS PayU

Payment Methods

Payment Method Transaction Flows Transaction Types
Credit Card payment.js, HPP Debit, Refund, Authorize, Capture
Credit Card (PayU Colombia) payment.js, HPP Debit, Refund
Netbanking Full-Page Redirect Debit, Debit with Register, Refund
UPI Full-Page Redirect Debit, Refund
PhonePe Full-Page Redirect Debit, Refund
PayTM Full-Page Redirect Debit, Refund
Payzapp Full-Page Redirect Debit, Refund

Additional Parameters for Debit/Authorize

Creditcard

Extra data Required Description
customer.email conditional Required for PayU Mexico, Brazil and Colombia
description conditional Required for PayU Mexico, Brazil and Colombia
customer.billingCountry conditional Required for PayU Russia
customer.nationalId conditional Required for PayU Colombia
customer.extraData.documentType conditional Required for PayU Colombia. Possible values are - CC, CE, NIT, TI, PP, IDC, CEL, RC, DE

The following parameters are only required for One-off transactions or initial recurring transactions. On recurring transactions the value of the referenced transaction will be used if not explicitly set.

Netbanking

Extra data Required Description
customer.billingPhone true
customer.firstName true
customer.lastName true
customer.email true
customer.extraData.bank_code true The customers bank code
customer.extraData.account_number conditional Only required for initial recurring transactions
customer.extraData.account_type conditional Only required for initial recurring transactions
customer.extraData.start_date conditional Only required for initial recurring transactions
customer.extraData.end_date conditional Only required for initial recurring transactions

UPI

Extra data Required Description
customer.billingPhone true
customer.firstName true
customer.email true
customer.extraData.vpa true The customers vpa

PayTM, PhonePe, PayZapp

Extra data Required Description
customer.billingPhone true
customer.firstName true
customer.email true

Paymee

The required currency is TND (Tunisian dinar).

Payment Methods

Payment Method Transaction Flows Transaction Types
Creditcard Redirect Debit, Refund

Additional parameters

Debit Parameters

Parameter Required Description
description true Transaction note.
customer.firstName true First name of the customer.
customer.lastName true Last name of the customer.
customer.email true Email of the customer.
customer.billingPhone true Phone number of the customer.

Paymentwall

Payment Methods

Payment Method Transaction Flows Transaction Types
Creditcard Full-Page Redirect Debit & Refund
Bancontact Full-Page Redirect Debit & Refund
Belfius Full-Page Redirect Debit & Refund
Dotpay Full-Page Redirect Debit & Refund
EPS Full-Page Redirect Debit & Refund
Giropay Full-Page Redirect Debit & Refund
iDeal Full-Page Redirect Debit & Refund
KBC Full-Page Redirect Debit & Refund
Multibanco Full-Page Redirect Debit & Refund
MyBank Full-Page Redirect Debit & Refund
POLi Full-Page Redirect Debit & Refund
Przelewy24 Full-Page Redirect Debit & Refund
SafetyPay Full-Page Redirect Debit & Refund
Sofort/Klarna Full-Page Redirect Debit & Refund
Boleto Full-Page Redirect Debit & Refund
Oxxo Full-Page Redirect Debit & Refund

Additional Parameters

Paymentwall PCI

Payment Methods

Payment Method Transaction Flows Transaction Types
Creditcard iFrame Form & payment.js Integration All

Recurring payments

The same customer identification must be used for all affected transactions (for the initial, as well as for subsequent transactions).

Additional Parameters

Required Parameters

Paynetics

Payment Methods

Payment Method Transaction Flows Transaction Types
Credit card payment.js, Redirect & iFrame Form Register, Preauthorize, Void, Capture, Debit, Refund, Payout

Additional Parameters for Preauthorize

Parameter Type Required Description
extraData.avsCheck bool false If true is sent, the customers postal code and billing address will be sent for verification
extraData.preauthSupplementary bool false

Additional Parameters for Capture

Parameter Type Required Description
extraData.captureType string false One of partial, full, final

Additional Parameters Register and Debit

Parameter Type Required Description
extraData.avsCheck bool false If true is sent, the customers postal code and billing address will be sent for verification

PayOn

Payment Methods

Payment Method Transaction Flows Transaction Types
Creditcard iFrame Form & payment.js Integration All + Incremental Authorizations

Additional Parameters

Name Type Required Description
extraData.shipFromZip string false
items[].extraData.customsTax string false

Payone

Payment Methods

Payment Method Transaction Flows Transaction Types
Credit card payment.js, Redirect & iFrame Form Register, Preauthorize, Void, Capture, Debit, Refund, Payout

Additional Parameters for Preauthorize

Parameter Type Required Description
extraData.avsCheck bool false If true is sent, the customers postal code and billing address will be sent for verification
extraData.preauthSupplementary bool false

Additional Parameters for Capture

Parameter Type Required Description
extraData.captureType string false One of partial, full, final

Additional Parameters Register and Debit

Parameter Type Required Description
extraData.avsCheck bool false If true is sent, the customers postal code and billing address will be sent for verification

Payoneer

In order to use the Payoneer Adapter, you will have to contact Payoneer to register a Backdirect Uri of the Gateway to your Payoneer Account.

e.g.: https://{HOSTNAME}/backdirect/custom/{CONNECTOR-ID}.

Additional Information

In order to process via Payoneer you will have to generate unique ID that you register your clients with, this ID is known as the Payoneer Payee Id.

Payment Methods

Payment Method Transaction Flows Transaction Types
Payoneer Full-Page Redirect Debit, Payout, Refund

Additional Parameters

Key Required Values Validation Description
description true string max. 255 characters The description is required for a Payoneer Transaction
payeeId true string max. 50 characters The Payoneer Payee Id is a unique ID that the Merchant has so generate in order to register or reference the individual client

PayPal

Payment Methods

Payment Method Transaction Flows Transaction Types
PayPal Full-Page Redirect All

PayPal Payment Types

PayPal supports different kind of payments:

A Debit will always use the Sale type. A Preauthorize will by default use the Authorization type.

You can control the behavior for Preauthorize by sending the paypalPaymentAction parameter (see below).

Additional Parameters

You can use the following extraData keys, which will be passed in the corresponding fields to PayPal:

Key Values Description
paypalPaymentAction "Authorization", "Order", "Order_Auth", "Sale" Only for Preauthorize transactions. Defines "PaymentAction" for PayPal payments. "Order_Auth" automatically performs an Authorization for full amount after Order has been confirmed by customer
addressOverride 0 or 1 Tells PayPal to use the shipping address you are providing instead of the customer's configured address in the PayPal account
noShipping 0, 1, 2 0 = Display Shipping address, 1 = No Shipping address (digital goods), 2 = Use customer's configured shipping address
noteToBuyer string a note displayed to the customer
requiredConfirmShipping true, false Refer to PayPal documentation
noShipping 0, 1, 2 0 = Display, 1 = No display, 2 = Buyers account
allowNote true, false Refer to PayPal documentation
localeCode Refer to PayPal documentation
pageStyle Refer to PayPal documentation
hdrImg Refer to PayPal documentation
payflowColor Refer to PayPal documentation
cartBoardColor Refer to PayPal documentation
logoImg Refer to PayPal documentation
solutionType "Sole", "Mark" Refer to PayPal documentation
landingPageType "Billing", "Login" Refer to PayPal documentation
channelType "Merchant", "eBayItem" Refer to PayPal documentation
totalType "Total", "EstimatedTotal" Refer to PayPal documentation
brandName Refer to PayPal documentation
customerServiceNumber Refer to PayPal documentation
giftMessageEnable Refer to PayPal documentation
giftReceiptEnable Refer to PayPal documentation
giftWrapEnable Refer to PayPal documentation
giftWrapName Refer to PayPal documentation
giftWrapAmount Refer to PayPal documentation
buyerEmailOptInEnable Refer to PayPal documentation
taxIdType Refer to PayPal documentation
taxId Refer to PayPal documentation
merchantSessionId Refer to PayPal documentation
isFinalCapture true, false Only for Capture transactions. Sending isFinalCapture = true will mark the capture as final on the PayPal side and subsequent captures won't be possible. Default value = false

Items

If submitting items, the following fields are Mandatory:

Field
quantity
name
price
extraData -> category

Item ExtraData Parameters:

Key Values Description
category Refer to PayPal documentation
number Refer to PayPal documentation
tax Refer to PayPal documentation
weightValue Refer to PayPal documentation
weightUnit Refer to PayPal documentation
lengthValue Refer to PayPal documentation
lengthUnit Refer to PayPal documentation
widthValue Refer to PayPal documentation
widthUnit Refer to PayPal documentation
heightValue Refer to PayPal documentation
heightUnit Refer to PayPal documentation

PayPal Complete Platform

Payment Methods

Payment Method Transaction Flows Transaction Types
PayPal payment.js Debit, Register, Preauthorize, Capture, Refund, Deregister, Recurring Debit/Preauthorize
PayPal ACDC payment.js Debit, Register, Preauthorize, Capture, Refund, Deregister, Recurring Debit/Preauthorize

Integration guide

PayPal

PayPal requires you to display the PayPal Button on your Checkout page. This is handled by the payment.js integration.

​1. Embed the payment.min.js in your page

<script data-main="payment-js" src="https://gateway.tillpayments.com/js/integrated/payment.1.3.min.js"></script>

​2. Provide a DIV element on your page for the PayPal button

<div id='paypalButtonDiv'></div>

​3. Initialize the payment.js with the following parameters:

PayPal options

Option Required Type Description
paypal-btn yes HTMLElement Container element into which the button will be rendered.
currency yes string Currency
intent yes string Possible values - capture, authorize. Preauthorize flow requires to send authorize. Otherwise, it should be set to capture.
createOrderEndpoint yes string Your server endpoint where prepareX transaction is implemented
vaultingWithoutPurchase no boolean Only required with register flow.
vault no boolean Only required for register and debit/preauthorize with register = true
userIdToken no boolean Required for One-click payment
enablePaylater no boolean If you would like to display PayLater button, make sure that this field is set to true
completeHandler no (data) => void Triggered after successful payment.
errorHandler no (error) => void Triggered if an error occurred in payment process.
cancelHandler no (data) => void Triggered if the user canceled the payment process.
button no object https://developer.paypal.com/sdk/js/reference/#link-style

<script>
  var paymentJs = new PaymentJs('1.3');

  errorHandler = function (error) {
      // If an error prevents buyer checkout, alert the user that an error has occurred with the buttons using the onError callback
  }

  cancellationHandler = function (data) {
      // When a buyer cancels a payment, they typically return to the parent page.
      // You can instead use the onCancel function to show a cancellation page or return to the shopping cart.
  }

  completeHandler = function (paypalToken) {
      // Captures the funds from the transaction and shows a message that tells the buyer the payment was successful.
      // The method is called after the buyer approves the transaction on the paypal.com website.
      // paypalToken should be passed to the debit request using extraData with the key 'paypalToken'

  }

  var paypalOptions = {
      button: {
          color: gold,
      },
      currency: "EUR",
      intent: "capture" || "authorize", // debit = capture / preauthorize = authorize
      vaultingWithoutPurchase: false // should be set to true if you're doing register call
      vault: false // should be set to true if you would like to vault transaction using PayPal vaulting. for example register / debit + withRegister=true
  };

  // Prepare Transaction
  var prepareCall = () => {
    return fetch('{MY_PREPARE_ENDPOINT}', {
      method: 'POST',
    }).then(function (res) {
      return res.json();
    }).then(function (data) {
      return data.id;
    });
  };

  paymentJs.initPaypal(
    'public-integration-key',
    'paypal-button-div',
    completeHandler,
    errorHandler,
    cancellationHandler,
    paypalOptions,
    prepareCall
  );
</script>

​4. You can now call the Transaction API with the extraData.paypalToken set to the paypalToken returned to the completeHandler.

Prepare Transaction

PayPal requires to create order/setup token when the PayPal button is being pressed. That's being handled with prepare-debit/prepare-preauthorize/prepare-register API calls. Therefore, you would need to implement prepareDebit call and provide your server endpoint initializing PayPal via PaymentJs.

When using the Hosted Payment Page option, the prepare call can be handled automatically on our side. E.g.

 prepareCall = function() {
    return fetch('', {
        method: 'POST',
        headers: {
            'Accept': 'application/json',
            'Content-Type': 'application/json'
        }
    }).then(function (res) {
        return res.json();
    }).then(function (data) {
        return data.orderID;
    });
}

Additional Prepare Transaction Parameters (CreateOrder)

Key Values Description
extraData.shipping_type "SHIPPING", "PICKUP_IN_STORE", "PICKUP_FROM_PERSON" Shipping type
extraData.shipping_cost string Shipping cost that will be displayed to the customer
extraData.shipping_preference "GET_FROM_FILE", "NO_SHIPPING", "SET_PROVIDED_ADDRESS" By default is being set on the connector level. However, by using this field can be overwritten per transaction. "SET_PROVIDED_ADDRESS" requires to provide shipping details
extraData.brand_name string Brand name
extraData.discount_amount string Discount amount
extraData.experience_context_shipping_preference string NO_SHIPPING = no shipping information, e.g. for digital goods

SET_PROVIDED_ADDRESS = show address on PayPal but don't allow the customer to change it - item will be shipped to this address

GET_FROM_FILE = shipping address was not provided, ask the buyer to select a shipping address from their PayPal profile

One-click payment / Customer Initiated Transaction

To render One-click payment button you would need to do a prepareDebit/preparePreauthorize call to retrieve user-token-id that needs to be passed to paymentJs via paypalOptions.userIdToken.

Example API Request:

{
  "referenceUuid": "referenceUuid",
  "extraData": {
    "useReturnUserExperience": "true"
  },
  "transactionIndicator": "CARDONFILE"
}
Key Values Description
referenceUuid string Initial transaction UUID
extraData.useReturnUserExperience string Expected value: true
transactionIndicator CARDONFILE Transaction Indicator should be CARDONFILE

Example API Response:

{
  "data": {
    "success": true,
    "returnType": "FINISHED",
    "widgetToken": "eyJraWQiOiJhMDRiMjEwZDYzYjU0NWQzODEwOWUxNDM3ZjQ3ZWYxMiIsInR5cCI6IkpXVCIsImFsZyI6IkVTMjU2In0.eyJpc3MiOiJodHRwczovL2FwaS5zYW3kYm94LasdasXBhbC5jb20iLCJzdWIiOiJDRVlINFVNUUpLMzM4IiwiYWNyIjpbImNsaWVudCJdLCJzY29wZSI6WyJCcmFpbnRyZWU6VmF1bHQiXSwib3B0aW9ucyI6eyJjdXN0b21lcl9pZCI6IklpUklSYWR1UEMifSwiYXoiOiJjY2cxOC5zbGMiLCJleHRlcm5hbF9pZCI6WyJQYXlQYWw6Q0VZSDRVTVFKSzMzOCIsIkJyYWludHJlZTozZG04NjdjdHJyZ3Y2Y2R3Il0sImV4cCI6MTcxNTcwNTEwNiwiaWF0IjoxNzE1NzA0MjA2LCJqdGkiOiJVMkFBSVA4NGprc3dfX1pYSHduR21KeVRQV003SkxzbFJLVlI2OHlxOEN4YmhHN1VWNkFWVVlyTTBqbXRyVEZmU3hBbjZKa0hlekNvSUtTdlZ6LUVpR1JxbVl4VWZaRHJOMDY1eXZQRkMySmgtQWkxaXNiV0xOWnh1MWJNa0VkdyJ9._s54YCC8MRqjllX2wDTmo4fQyTkUXl6_7aPOiNwBnVBJfLoQlwIZvtrkvgxU7RPBQy3uiRp-hhK4LGvwRC74CA"
  }
}

Items

If submitting items, the following fields are Mandatory:

Field
quantity
name
price
extraData.category

Item Additional Parameters:

Key Values Description
description string Item description
extraData.sku string Item SKU
l2l3Data.taxAmount string Item tax amount

PayPal ACDC

​1. Embed the payment.min.js in your page

<script data-main="payment-js" src="https://gateway.tillpayments.com/js/integrated/payment.1.3.min.js"></script>

​2. Provide an input field for the paypalToken which will be created later.

<input type="hidden" name="paypalToken" id="paypalToken" value="">

​3. Initialize the payment.js with the following parameters:

paymentJsPayPal.initPaypal(
  'the public integration key of your connector',
  {
    cardName: 'card-name-field-container',
    cardNumber: 'card-number-field-container',
    cardCvv: 'card-cvv-field-container',
    cardExpiry: 'card-expiry-field-container'
  },
  completeHandler,     <!-- your callback function for when the token has been created -->
  errorHandler,        <!-- your callback function in case of error -->
  cancellationHandler, <!-- your callback funciton in case of cancellation -->
  payPalOptions,       <!-- see PayPalOptions -->
  prepareCall          <!-- see prepareCall -->
);

completeHandler

The completeHandler callback will be called once the PayPal token has been created

Example

completeHandler = function (payPalToken) {
    // do things when the PayPal token is created
    console.log('done: ' + payPalToken);

    // set the PayPal token and submit
    <!-- important to name it paypalToken -->
    document.getElementById("paypalToken").value = paypalToken;
    document.getElementById("payment-form").submit();
}

prepareCall

The prepareCall must be implemented by you and is based on the transaction type: prepare-debit/prepare-preauthorize/prepare-register

Please refer to Prepare Transaction

When using the Hosted Payment Page option, the prepare call can be handled automatically on our side. E.g.

  prepareCall = function() {
      document.getElementById('loader').style.display = '';

      return fetch('{{ paypal.prepareCallEndpoint }}', {
          method: 'POST',
      }).then(function (res) {
          return res.json();
      }).then(function (data) {
          return data.orderID;
      });
  }

errorHandler, cancellationHandler

Here you may implement handling of scenarios for errors and user cancellations.

payPalOptions

Option Required Type Description
currency yes string Currency
intent yes string Possible values - capture, authorize. Preauthorize flow requires to send authorize. Otherwise, it should be set to capture.
vaultingWithoutPurchase no boolean Should be set to true if you would like to vault transaction using PayPal vaulting. for example register / debit + withRegister=true
vault no boolean Should be set to true if you would like to vault transaction using PayPal vaulting. for example register / debit + withRegister=true
style no object Here you may override the style of the card fields

Example

var paypalOptions = {
      currency: "EUR",
      intent: "authorize",
      vaultingWithoutPurchase: false,
      vault: false,
      style: {
          'input': {
              'font-size': '12px',
              'line-height': '1.7rem',
              'color': '#000',
              'padding': '5px',
              'appearance': 'none'
          },
          ':focus': {
              'padding': '5px',
              'outline': 'none'
          }
     }
};

​4. Trigger Payment with billing address data

Billing address data should be collected and submitted with the card data.

To trigger the payment you may use the paymentjs.trigger(data) function.

Example

document.getElementById('submit-btn').addEventListener('click', function (event) {
  event.preventDefault();
  paymentJs.trigger({
    billingAddress: {
      addressLine1: document.getElementById('card-billing-address-line-1').value,
      addressLine2: document.getElementById('card-billing-address-line-2').value,
      adminArea1: document.getElementById('card-billing-address-admin-area-line-1').value,
      adminArea2: document.getElementById('card-billing-address-admin-area-line-2').value,
      countryCode: document.getElementById('card-billing-address-country-code').value,
      postalCode: document.getElementById('card-billing-address-postal-code').value
    }
  });
});

Please note that billing address line 1 and country code are mandatory.

Paysafecard

Payment Methods

Payment Method Transaction Flows Transaction Types
Paysafecard Full-Page Redirect, Server-to-server Debit, Refund, Payout

Required Parameters for Payout

If the transaction includes the parameter 'referenceUuid' the customer parameters will be extracted from the reference transaction if they are not explicitly provided.

Name Type Required Description
customer.identification string true Unique id of the customer in your system
customer.firstName string true
customer.lastName string true
customer.email string conditional Required if psc_id is not provided
customer.extraData.psc_id string conditional Required if email is not provided
customer.birthDate string true

PayTabs

Payment Method

Payment Method Transaction Flows Transaction Types
ValU Full-Page Redirect Debit, Refund
Credit card Full-Page Redirect Debit, Refund

Mandatory parameters for Debit

Parameter Type Required Description
description true

Additional parameters for Debit

Parameter Type Required Description
customer.firstName String false
customer.lastName String false
customer.billingAddress1 String false
customer.billingCity String false
customer.billingPostcode String false
customer.billingState String false
customer.billingCountry String false
customer.billingPhone String false
customer.shippingFirstName String false
customer.shippingLastName String false
customer.shippingAddress1 String false
customer.shippingCity String false
customer.shippingPostcode String false
customer.shippingState String false
customer.shippingCountry String false
customer.shippingPhone String false
extraData.shippingEmail String false

Mandatory parameters for Refund

Parameter Type Required Description
description true

PerfectMoney

Payment Methods

Payment Method Transaction Flows Transaction Types
BankTransfer Full-Page Redirect(Debit), Server-To-Server(Payout) Debit, Register, Payout
Direct Carrier Billing (SMS) Full-Page Redirect(Debit), Server-To-Server(Payout) Debit, Register, Payout
PerfectMoney Account Full-Page Redirect(Debit), Server-To-Server(Payout) Debit, Register, Payout
PerfectMoney Voucher Full-Page Redirect(Debit), Server-To-Server(Payout) Debit, Register, Payout
PerfectMoney Wallet Full-Page Redirect(Debit), Server-To-Server(Payout) Debit, Register, Payout

Please note, that a register transaction only makes sense to be used with followed payout transactions and not for referencing debit transactions, as the latter require the customer to be redirected to PerfectMoney for re-authentication purposes on each follow-up debit. That is different to all other Register -> Debit/Preauth flows on other adapters.

Mandatory Parameters

Additional parameters on debit

Extra Data Required Description
availablePaymentMethods false When using the PerfectMoney wallet payment method, this makes it possible to make only specific payment methods available. Comma separated list of account,voucher,sms,wire,all
forcedPayerAccount false If you want to restrict the Payer to use a specific account you know, provide the account id here E.g. U1234567
baggageFields false Comma separated list of extra data keys, which values you would like to forward to PerfectMoney. All fields presented here become mandatory. E.g. baggageFields=systemId
BAGGAGE-PARAM1 conditional (if provided within extra.baggageFields yes) Comma separated list of extra data keys, which values you would like to forward to PerfectMoney. All fields presented here become mandatory. E.g. baggageFields=BAGGAGE-PARAM1,..
.... conditional (if provided within extra.baggageFields yes) any key value pair you want to forward to PerfectMoney
success URL false To where the shopper should be back-directed after a successful payment
error URL false To where the shopper should be back-directed in case of an error or customer cancellation

Additional parameters on register

Extra Data Required Description
accountId false The account id of the PerfectMoney account the customer want's to use. If not supplied, the customer has to enter it, after being redirected to the returned redirect URL.
accountName false If provided, this accountName will be compared (case-insensitive) against the PerfectMoney account name associated with the accountId.
accountFullName false If provided, this accountFullName will be compared (case-insensitive) against the PerfectMoney account full name associated with the accountId.
accountPhonenumber false If provided, this accountPhonenumber will be compared (case-insensitive) against the PerfectMoney account phonenumber associated with the accountId.
requireVerifiedAccount false If provided, the register transaction will only succeed, if the PerfectMoney account details are currently verified though the PerfectMoney KYC checks.
success URL false To where the shopper should be back-directed after a successful payment
error URL false To where the shopper should be back-directed in case of an error or customer cancellation

If you want to validate the PerfectMoney account data: accountName, accountFullName, accountPhonenumber, requireVerifiedAccount, your PerfectMoney account has be enabled to return those details. Please request that from your account manager at PerfectMoney.

Additional parameters on payout

Extra Data Required Description
payeeAccount true (if not referencing a register transaction) The PerfectMoney account id the funds will be transferred to
code false Provide to enable transfer protection. If code is present, payee must enter this code to get money to his/her account.
codeValidDays If code is provided yes. Number of days you want the transfer with protection code to be valid. If payee does not enter the protection code during this period, money will be transferred back to your account. Must be integer value from 1 to 365 days.

If the payout references a register transaction, it depends on the extra data provided on the initial register transaction, if the current PerfectMoney account details should be compared to those. For example if the extra data requireVerifiedAccount has been provided, all follow-up payouts require the current verification status to be verified. If that is not the case, the payout fails.

If additional extra data fields (accountName|accountFullName|accountPhonenumber) have been provided initially, they also have to match the current returned PerfectMoney account details. If they do not, the payout fails.

Currencies

EUR, USD, OAU

Powercash21

Payment Methods

Payment Method Transaction Flows Transaction Types
Creditcard iFrame Form & payment.js Integration Debit, Register, Preauthorize, Capture, Void, Refund, Deregister
Trustly Full-Page Redirect Debit
Trustly false interaction Payout, Refund
MaxxWallet Full-Page Redirect Debit

Additional Parameters

Creditcard

Mandatory Parameters

Trustly

Parameter Required
customer.firstName true
customer.lastName true
customer.email true (debit, payout)
customer.billingCountry true (debit)
extraData.bankCountry required for payout if no reference transaction is provided
customer.iban required for payout if no reference transaction is provided
customer.birthDate required for payout if no reference transaction is provided

MaxxWallet

Parameter Required
customer.firstName true
customer.lastName true
customer.email true
customer.billingCountry true
customer.billingAddress1 true
customer.billingCity true
customer.billingPostcode true
customer.billingState true
customer.billingPhone true

PPRO

Payment Methods

Payment Method Transaction Flows Transaction Types
AstroPayCard Full-Page Redirect Debit
AstroPayDirect Full-Page Redirect Debit & Refund
BancoDoBrasil Full-Page Redirect Debit
Bcmc Full-Page Redirect Debit & Refund
Blik Full-Page Redirect Debit & Refund
Boleto Full-Page Redirect Debit
Bradesco Full-Page Redirect Debit
DirectDebit Server-to-server Debit & Refund
EPS Full-Page Redirect Debit & Refund
Giropay Full-Page Redirect Debit & Refund
IbanOnDemand Full-Page Redirect Debit & Refund
iDeal Full-Page Redirect Debit & Refund
InstantTransfer Full-Page Redirect Debit & Refund
Itau Full-Page Redirect Debit
Multibanco Full-Page Redirect Debit
MyBank Full-Page Redirect Debit & Refund
Oxxo Full-Page Redirect Debit
PagoFacil Full-Page Redirect Debit
Paypal Full-Page Redirect Debit & Refund
Paysafecard Full-Page Redirect Debit
PayU Full-Page-Redirect Debit & Refund
POLi Full-Page Redirect Debit
Przelewy24 Full-Page Redirect Debit & Refund
Qiwi Full-Page Redirect Debit & Refund
QiwiPayout Full-Page Redirect Debit
Raberil Full-Page Redirect Debit & Refund
RaberilPayout Full-Page Redirect Debit & Refund
RapiPago Full-Page Redirect Debit
SafetyPay Full-Page Redirect Debit & Refund
SepaPayout Server-to-server Debit
Skrill Full-Page Redirect Debit & Refund
Sofort Full-Page Redirect Debit & Refund
Teleingreso Full-Page Redirect Debit
Trustly Full-Page Redirect Debit & Refund
TrustPay Full-Page Redirect Debit
Ukash Full-Page Redirect Debit & Refund
Verkkopankki Full-Page Redirect Debit
YellowPay Full-Page Redirect Debit & Refund

Additional Parameters

none

Qualpay

Payment Methods

Payment Method Transaction Flows Transaction Types
Creditcard iFrame Form & payment.js Integration Debit, Register, Preauthorize, Capture, Void

Additional Parameters

none

Redsys

Payment Methods

Payment Method Transaction Flows Transaction Types
CreditCard payment.js Debit, Preauthorize, Capture, Refund, Void, Register
ApplePay Payment Token
GooglePay Payment Token
Bizum Redirect Debit

Additional Information

Be aware that there is a format restriction for the required Parameter DS_MERCHANT_ORDER, which represents the given MerchantTransactionId. The currently known max character limit is 12.

Please consult the official Redsys Api Documentation for further information - (https://pagosonline.redsys.es/conexion-rest.html)

CreditCard

Connector Config (Vault Setup)

Key Required Type Description
Terminal Id true string A fixed value given by Redsys for each Merchant
Merchant Id true string A fixed value given by Redsys for each Merchant
Key to perform 3DES Card encryption conditional string A fixed value given by Redsys for each Merchant
Key to sign MerchantParameters conditional string A fixed value given by Redsys for each Merchant
Merchant Descriptor conditional string Value which will be sent as DS_MERCHANT_MERCHANTDESCRIPTOR
Username to load stored Production Credentials conditional string Username that is given by us in case "Key to perform 3DES Card encryption" is stored internally by us
Password to load stored Production Credentials conditional string Password that is given by us in case "Key to perform 3DES Card encryption" is stored internally by us
Prioritize Description Field over MerchantTransactionId Field false boolean In case that the "Description" Field, send in the Request, should be used instead of the "MerchantTransactionId" Field
Assign Timestamp to empty Description Field false boolean In case that the "Description" Field should be automatically filled with the current Timestamp. Works in conjunction with the "Prioritize Description Field over MerchantTransactionId Field" Option.
Increment order id false boolean In case of transaction failover/cascading, the order ID (merchantTransactionId) will be automatically incremented to prevent a duplicate order ID. Note: if the merchantTransactionId = 12 length, the last 2 characters will be replaced for the increment

Note: If the options Prioritize Description Field over MerchantTransactionId Field & Assign Timestamp to empty Description Field are enabled simultaneously the first 6 characters of the respective Transaction are appended to the timestamp to ensure uniqueness.

Parameter mapping

Parameter maps to
description DS_MERCHANT_PRODUCTDESCRIPTION

Bizum

Connector Config

Key Required Type Description
Terminal Id true string A fixed value given by Redsys for each Merchant
Merchant Id true string A fixed value given by Redsys for each Merchant
ParamsKey true string A fixed value given by Redsys for each Merchant

SideNote: The merchantTransactionId which has to be sent in the API request, must be between 4 and 12 Characters long to work for Bizum.

Sampath Bank Paycenter

Payment Methods

Payment Method Transaction Flows Transaction Types
Creditcard Redirect Full-Page Redirect Debit, Refund

Optional Fields

Key Value Transaction Type
Description string Debit, Refund

Sampath Bank Shopping Mall

Payment Methods

Payment Method Transaction Flows Transaction Types
BankTransfer Native redirect Debit

SIA

Payment Methods

Payment Method Transaction Flows Transaction Types
Creditcard iFrame Form & payment.js Integration Debit, Register, Preauthorize, Capture, Void, Refund, Deregister

Scalapay

Payment Methods

Payment Method Transaction Flows Transaction Types
Creditcard Full Page Redirect Debit, Preauthorize, Capture, Void, Refund

Additional Parameters

Key Value Required Flow Description
extraData.product pay-in-3 (default)
pay-in-4
later
true (if not filled,the default value will be pay-in-3) Debit, Preauthorize pay-in-3: to split the amount into 3 installments
pay-in-4: to split the amount into 4 installments
later: the whole amount will be booked after 14 days
extraData.delay true false Preauthorize to delay the capture, (entered when creating Preauthorize)
extraData.period numerical between [60000] and [2160000000] milliseconds true (if delay is true) Preauthorize the period of that's wished to extend the capture expiry time (when creating a Preauthorize)

Additional Information

It's mandatory to add items to the Debit and Preauthorize transactions where Item Description represents the "category", and the Item Identification represents the "sku" of the item.

SCB

Payment Methods

Payment Method Transaction Flows Transaction Types
Bank Transfer Full-Page Redirect & Server-to-Server Register & Debit

Additional Parameters

Parameter Required Transaction Types Description
language false register & debit Language of shopper. Possible values: TH and EN (default)
additionalId1 true register Merchant reference
additionalId2 false register Merchant reference
Description false register Option description, passed on during register
national ID (customer) false register Citizen ID
success URL true register URL to where the shopper will be back-directed to the merchant
error URL false register URL to where the shopper will be back-directed to the merchant (defaults to success URL if not present)
iban (customer) conditional debit Bank account to charge; alternatively it's possible to provide a reference to a register TX
identification (customer) false debit Merchant's customer identifier

SecureTrading

Payment Methods

Payment Method Transaction Flows Transaction Types
Creditcard iFrame Form All
Cash-To-Code iFrame Form Debit only

Additional Parameters

none

SepaExpressV2

Payment Methods

Payment Method Transaction Flows Transaction Types
DirectDebit iFrame Form & Server-To-Server Debit, Register, Deregister, Refund, Payout
BankTransfer Full-Page Redirect Debit, Refund

Depending on your setup SepaExpressV2 DirectDebit can be used as Server-to-Server only integration, or with an iFrame Payment form.

For the Server-to-Server integration the IBAN must be sent within the customer details, otherwise the customer will enter its IBAN within the iFrame form.

For SepaExpressV2 BankTransfer, you must use a full-page redirect instead.

Additional parameters for DirectDebit transactions

Key Required Values Description
customer.iban conditional string Required if no reference transaction provided.
customer.bic false string
customer.firstName conditional string Required if no company is provided
customer.lastName conditional string Required if no company is provided
customer.company false string description conditional string Required for payouts.
extraData.checkAmount conditional float Required for register calls.
extraData.checkCurrency conditional string (3 letter currency code) Required for register calls.
extraData.approvalBy false string currently allowed values: click, sms, email, ais

Additional parameters for BankTransfer transactions

Key Required Values Description
extraData.bankAccountId conditional string Required unless a new BankAccount to create is given.
customer.identification conditional string Required unless a new customer to create is given.
customer.bic false string
customer.firstName conditional string Required if no company is provided
customer.lastName conditional string Required if no company is provided
customer.company false string Customer company
description conditional string Required for payouts.
customer.billingAddress1 false string Billing address line 1
customer.billingAddress2 false string Billing address line 2
customer.billingPostcode false string Billing postal code
customer.billingCity false string Billing city
customer.billingState false string Billing state
customer.billingCountry false string Billing country
customer.email false string Customer email
customer.shippingPhone false string Customer phone
paymentData.ibanData.iban true string IBAN
currency true string Currency code
amount true string Amount of transaction

Shimotomo

Payment Methods

Payment Method Transaction Flows Transaction Types
Creditcard iFrame Form & payment.js Integration Debit, Register, Preauthorize, Capture, Void, Refund, Deregister

Additional Parameters

Parameter Required
customer.identification true
customer.firstName true
customer.lastName true
customer.billingAddress1 true
customer.billingCity true
customer.billingPostcode true
customer.billingState true
customer.billingCountry true
customer.billingPhone true
customer.email true
customer.ipAddress true

Creditcard

Depending on your merchant account, additional parameters might be mandatory.

SIX ELink

Payment Method Transaction Flows Transaction Types
Creditcard iFrame Form & payment.js Integration All

If the dynamic descriptor is enabled, it is possible to set the descriptor with the extra parameter extraData.descriptor.

We also support final capture, for this you have to send the extra parameter extraData.captureType - final.

Skrill

Payment Methods

Payment Method Transaction Flows Transaction Types
Skrill Full-Page Redirect Debit, Refund, Payout

Additional Parameters

Key Values Description
extraData.companyName string Display name on the payment page
extraData.subject string for Payouts: Subject of the notification email (250 1-byte characters)
extraData.note string for Payouts: Comment to be included in the notification email (max 2000 1-byte characters)

Customer details verification

The customer verification service is used to check if a customer, identified by an email address, is registered with Skrill.

Parameters for Customer details verification

Name Type Required Description
email string true The customers email
firstName string false The customers first name
lastName String false The customers last name
dateOfBirth string false The customers date of birth
postCode string false The customers postal code or zip code
country string false The customers 2-code country of residence.

Sofort

Payment Methods

Payment Method Transaction Flows Transaction Types
Sofortüberweisung Full-Page Redirect Debit only
iDeal Full-Page Redirect Debit, Refund*

*Refund is only available in BE, NL

Additional Parameters

iDeal debit

Parameter Required Description
customer.bic true Bankcode of customer*
customer.billingCountry true Customer country
description conditional Required if reason1 is not given, max. 27 characters
extraData.reason1 conditional Required if description is not given, max. 27 characters
extraData.reason2 false Can be given additional to reason1, max. 27 characters. If both reasons are given, their total number of characters must not exceed 31 characters

*For the BIC you may do an Options Request using the identifier iDealBankList. It will return a list of available banks for iDeal which you should render to let the customer pick a bank. You should then pass the selected bank code as bic element inside IbanCustomer.

iDeal refund

Parameter Required Description
extraData.reason1 false max. 27 characters, if none given it uses the description of the initial transaction
extraData.reason2 conditional Can be given additional to reason1, max. 27 characters. If both reasons are given, their total number of characters must not exceed 31 characters

Spreedly

Payment Methods

Payment Method Transaction Flows Transaction Types
Creditcard iFrame Form & payment.js Integration All

Additional Parameters

none

Stripe

Payment Methods

Payment Method Transaction Flows Transaction Types
Creditcard payment.js Integration All
Giropay Full-page Redirect Debit
iDeal Full-page Redirect Debit
Sofort Full-page Redirect Debit
Bancontact Full-page Redirect Debit
DirectDebit Server-to-Server Register, Debit, Refund
Pre-Authorized debit (ACSS) Full-page Redirect & Server-to-Server Register, Debit, Refund
ACH Full-page Redirect & Server-to-Server Register, Debit, Refund
ACH Credit Transfer Server-to-Server and push-in transactions Register, Debit (pushed via Stripe's Webhook), Refund

Additional Parameters

ACSS/Pre-Authorized debit ("PAD")

Prior to being able to charge the customer, the merchant must verify that the account is owned by the customer and obtain a mandate. This may be either achieved with a successful Register transaction or aDebit transaction with the withRegister flag set.

Additionally, the merchant is required to pass on the following data when trying to acquire the initial mandate.

Transaction fields Required Description
customer.email true
customer.firstName true
customer.lastName true
extraData.acss_transaction_type true The type of the mandate. Valid values are personal (B2C) and business (B2B)
extraData.acss_payment_schedule true The Payment schedule for the mandate. Valid values are spoardic, interval or combined
extraData.acss_interval_description true, if extraData.acss_payment_schedule is interval or combined A description, based on which criteria the interval-related payments may be triggered (refer to Stripe's documentation).

For subsequent transactions, these data are not required anymore.

ACH

Prior to being able to charge the customer, the merchant must verify that the account is owned by the customer and obtain a mandate. This may be either achieved with a successful Register transaction or aDebit transaction with the withRegister flag set.

Additionally, the merchant is required to pass on the following data when trying to acquire the initial mandate.

Transaction fields Required Description
customer.email true
customer.firstName true
customer.lastName true

For subsequent transactions, these data are not required anymore.

ACH Credit Transfer

In order to provision and retrieve a VBAN from Stripe, send a Register transaction. The bank data are included in the response object.

Transaction fields Required Description
customer.email true for register transactions

Creditcard

Parameter Required Description
extradata.isFinalCapture false Boolean parameter that can be sent with the `Capture' API request to indicate if it should be a final capture

Postback Extra Data for Credit Card

Parameter Value
authentication_flow For authenticated transactions: how the customer was authenticated by the issuing bank. For possible values see Stripe API reference
electronic_commerce_indicator A protocol-level field indicating what degree of authentication was performed. For possible values see Stripe API reference
exemption_indicator The exemption requested via 3DS and accepted by the issuer at authentication time. For possible values see Stripe API reference
exemption_indicator_applied Whether Stripe requested the value of exemption_indicator in the transaction. For possible values see Stripe API reference
result Indicates the outcome of 3D Secure authentication. For possible values see Stripe API reference
result_reason Additional information about why 3D Secure succeeded or failed based on the result. For possible values see Stripe API reference
transaction_id The 3D Secure 1 XID or 3D Secure 2 Directory Server Transaction ID (dsTransId) for this payment. For possible values see Stripe API reference
version The version of 3D Secure that was used. For possible values see Stripe API reference

Extended Authorization

Parameter Required Description
extraData.requestExtendedAuthorization optional Overwrites the connector configuration. Possible values: if_available, never

Refer to https://docs.stripe.com/payments/extended-authorization

Postback/Response Extra Data for Extended Authorization

refer to https://docs.stripe.com/terminal/features/extended-authorizations

Extra Data Parameter Value
charges.data.payment_method_details.card.extended_authorization.status Extended authorization status
charges.data.payment_method_details.card.capture_before Validity window for an authorisation - UNIX timestamp
Example
  "extraData": {
      "charges.data.payment_method_details.card.extended_authorization.status": "enabled",
      "charges.data.payment_method_details.card.capture_before": 1732878746
  },

Straight2Bank

Payment Methods

Payment Method Transaction Flows Transaction Types
BillDesk Full-Page Redirect Debit
BillDeskWallet Full-Page Redirect Debit
Creditcard Full-Page Redirect Debit
DuitNow QR Full-Page Redirect Debit
Enets Full-Page Redirect Debit
FPSQR Full-Page Redirect Debit
FPX Full-Page Redirect Debit
MoMo Full-Page Redirect Debit
PayNow Full-Page Redirect Debit
UPI Full-Page Redirect Debit
UPIQR Full-Page Redirect Debit
VNPAY Full-Page Redirect Debit
VNPAYQR Full-Page Redirect Debit
M-Pesa Full-Page Redirect Debit

Additional Parameters

Parameter Required Description
customer.billingCountry conditional Default value can be set on connector config
extraData.ref1 false Straight2Bank ref1
extraData.ref2 false Straight2Bank ref2

Stuzza

Payment Methods

Payment Method Transaction Flows Transaction Types
EPS Redirect Debit only

Additional parameters

Extra Data Required Description
bank_bic false BIC to identify the bank to use for the transaction

If no bank_bic is given, the user will be redirected to the Stuzza bank selection page.

You can use your own bank selection page by using the bank_bic value. To do this you can retrieve the bank list via the Options request identifier epsBankList. You can display this list to your customer in order to pre-select the desired bank.

The result contains a list of banks available for EPS, with BIC code as key and bank name as value. The BIC code of the chosen bank should then be passed via extra data value bank_bic.

You can find more information about the options request here: Options Request

TabaPay

Payment Methods

Payment Method Transaction Flows Transaction Types
Creditcard payment.js, Redirect & iFrame Form only debit, refund and payout

Additional Parameters

none

Tabby

Payment Methods

Payment Method Transaction Flows Transaction Types
Creditcard Redirect debit, refund

Additional Parameters (Debit)

Parameter Required Description
customer.firstName true Customer's firstname
customer.lastName true Customer's lastname
customer.email true Customer’s email address.
customer.billingPhone true Customer’s phone number. This must be a valid mobile phone where the consumer can receive text messages.
customer.shippingCity true Name of city, municipality, or village.
customer.shippingAddress1 true Building name, apartment number.
customer.shippingPostcode false Postal code
customer.reference_id true Merchant-assigned order or cart ID.
customer.birthDate false Consumer's date of birth; format is YYYY-MM-DD.
customer.isEmailVerified false Boolean
extraData.registered_since true Time the customer got registered with you, in UTC, and displayed in ISO 8601 datetime format.
extraData.loyalty_level false Customer's loyalty level within your store. Number 0..10
extraData.wishlist_count false Number of items in Customer's wishlist.
extraData.is_social_networks_connected false Boolean
extraData.is_phone_number_verified false Booleans
items.name true Name of the product.
items.description false Description for the product.
items.quantity true Quantity of the product ordered.
items.price true Price per unit of the product. Should be positive or zero.
items.identification true Merchant’s product identifier. Used for Item refunds.
items.extraData.product_url false URL of the item at your store.
items.extraData.image_url false URL of the item image to show in the order information.
pspPassthroughData.order_history false Customer's order history as defined by Tabby as JSON string

Additional Parameters (Refund)

Parameter Required Description
extraData.reason false Reason for the refund.
items.name true Name of the product.
items.description false Description for the product.
items.quantity true Quantity of the product ordered.
items.price true Price per unit of the product. Should be positive or zero.
items.extraData.product_url false URL of the item at your store.
items.extraData.product_url false URL of the item at your store.
items.extraData.image_url false URL of the item image to show in the order information.

TECS

Payment Methods

Payment Method Transaction Flows Transaction Types
Creditcard Server-To-Server Refund only

Additional Parameters

none

Tikkie

Payment Methods

Payment Method Transaction Flows Transaction Types
BankTransfer Full-Page Redirect, QR-Code with Redirect Debit, Refund

Mandatory Parameters

Transaction fields Required Description
description true Required for all requests

TNG

Payment Methods

Payment Method Transaction Flows Transaction Types
TNG pushed by provider Debit

Additional Parameters

none

Options Request

Obtaining a QR code

In order to generate a QR code which shall be displayed by the payer in the app, an Options Request is required. Use requestTopupCode as identifier and pass the customer's ID in the customerId parameter.

Transact.eu

Payment Method Transaction Flows Transaction Types
Creditcard Hosted Payment Page & payment.js Integration Preauthorize, Charge, Refund, Void, Payout

Cards vaulted with Transact.eu can only be charged but not preauthorized.

Transbank Webpay Plus

Payment Methods

Payment Method Transaction Flows Transaction Types
Onepay Redirect Debit, Preauthorize, Capture, Refund

TransferWise

Payment Methods

Payment Method Transaction Flows Transaction Types
BankTransfer Server-To-Server Payout

Additional Parameters

Parameter Required
customer.firstName true
customer.lastName true

Additional Parameters depending on source and target currency

Depending on the source and target currency, different parameters may be necessary or different parameter values may be available. If your wanted currency is not listed, kindly contact support.

Target currency inside Europe Required Description
customer.extraData.recipientType true value must be iban
customer.paymentData.ibanData.iban true
customer.extraData.legalType true value must be PRIVATE or BUSINESS
Target currency GBP Required Description
customer.extraData.recipientType true value must be sort_code
customer.extraData.sortCode true UK Sort code
customer.extraData.accountNumber true 8 digits
customer.extraData.legalType true value must be PRIVATE or BUSINESS

Truevo

Payment Methods

Payment Method Transaction Flows Transaction Types
Creditcard iFrame Form & payment.js Integration All

Additional Parameters

none

Trustly

Payment Methods

Payment Method Transaction Flows Transaction Types
Bank Transfer iFrame Form All
iDeal iFrame Form All

Additional parameters

Extra Data Required Description
Description false Description that should be shown on the bank statement
Customer - Identification true Unique customer identification, should be used on multiple payments if it is the same customer
Customer - First name true
Customer - Last name true
Customer - EMail true
Customer - Billing Country true
Customer - Billing Phone false
Customer - IP Address false
Customer - National ID false
Customer - Shipping Country false
Customer - Shipping Postcode false
Customer - Shipping City false
Customer - Shipping Address 1 false
Customer - Shipping Address 2 false

TRUST Payments PCI

Payment Methods

Payment Method Transaction Flows Transaction Types
Creditcard Server-To-Server All

Additional Parameters

Extra Data Required Description
operatorname false The value of this field contains the name of the user that processed the request.
billingstreet false The street entered for the customer’s billing address.
billingemail false The customer’s billing email address. Maximum length of 255 (maximum of 64 characters before the "@" symbol).
billingtelephonetype false The type of telephone number. The options available are: H (Home), M (Mobile), W (Work)
billingprefixname false The prefix of the customer’s billing name (e.g. Mr, Miss, Dr).
billingmiddlename false The customer’s billing middle name(s).
billingsuffixname false The suffix of the customer’s billing name (e.g. Bsc).
billingfirstname false The customer’s billing first name.
billinglastname false The customer’s billing last name.
customerstreet false The customer’s street name.
customertelephonetype false The type of telephone number. The options available are: H (Home), M (Mobile), W (Work)
customertelephone false The customer’s telephone number. Valid characters: Numbers 0-9, Spaces, Special characters: + – ( )
customerprefixname false The customer’s prefix name (e.g. Mr, Miss, Dr).
customermiddlename false The customer’s middle name(s).
customersuffixname false The customer’s suffix name (e.g. Bsc).
customerforwardedip false Customer forwarded IP address, as provided by a proxy server if available.

Unzer

Payment Methods

Payment Method Transaction Flows Transaction Types
Invoice Server-To-Server Debit, Preauthorize, Capture, Void, Refund
Installment Server-To-Server Debit, Preauthorize, Capture, Void, Refund

Mandatory Parameters

Name Type Required Description
currency string true 3 letters (ISO 4217)
amount number true Transaction amount
additionalId1 string false Order ID
customer.identification string false Customers identification
customer.firstname string true Customers firstname
customer.lastname string true Customers lastname
customer.birthdate string true Customers birthdate (YYYY-mm-dd)
customer.email string true Customers E-Mail
customer.gender string false Customers E-Mail
customer.billingAddress1 string true Customers address
customer.billingCity string true Customers city
customer.billingPostcode string true Customers zip code
customer.billingState string false Customers state
customer.billingCountry string true Customers country 2 letters (ISO 3166-1 alpha-2)
customer.billingPhone string false Customers phone number
customer.extraData.mobile string false Customers mobile phone number
customer.shippingAddress1 string true Customers address
customer.shippingCity string true Customers city
customer.shippingPostcode string true Customers zip code
customer.shippingCountry string true Customers country 2 letters (ISO 3166-1 alpha-2)
customer.shippingPhone string false Customers phone number
customer.extraData.language string false Customers language 2 letters (ISO 639-1)
items object true The object containing cart items

Item

Name Type Required Description
item.identification string true The merchant's unique identifier for the product (no spaces allowed).
item.name string true The merchant's name for the product.
item.quantity number true The quantity being purchased (must be >0).
item.price number true The unit price of the product.
item.description string false The description of the product.
item.l2l3Data.unit string false The unit description of the item.
item.l2l3Data.type string false The type of the basket item.
item.l2l3Data.taxRate number true Tax rate used for the tax amount. (can be 0 but not empty)
item.l2l3Data.discount number false Discount (incl. VAT) granted on the basketItems
item.extraData.imageUrl string false The imageUrl for the related basketItem.

Optional ThreatMetrix Parameters

You can find more information about the ThreadMatrix script here: Unzer API docs

Name Type Required Description
customer.extraData.threatMetrixId string false The ThreatMetrix session ID
customer.extraData.customerGroup string false Customer classification for the customer if known
customer.extraData.confirmedAmount string false The amount/value of the successful transactions paid by the end customer
customer.extraData.confirmedOrders string false The number of successful transactions paid* by the end customer
customer.extraData.registrationLevel string false Customer registration level
customer.extraData.registrationDate string false Customer registration date in your shop

Additional Parameters for Installment

Name Type Required Description
customer.iban string false Customers IBAN (recommended)
customer.bic string false Customers BIC
extraData.inquiryId string true inquiryId of the installment plan (retrieved via option call installmentPlans)
extraData.numberOfRates number true Number of rates (available rates retrieved via option call installmentPlans)

Options Request

You can find more information about the options request here: Options Request

Retrieving a list of available installment plans

Returns a list of available installment plans with the inquiryId

Please use installmentPlans as an option name e.g. POST /options/{apiKey}/installmentPlans.

Parameters

Name Type Required Description
parameters.amount number true Transaction amount
parameters.country string true Customers country 2 letters (ISO 3166-1 alpha-2)
parameters.currency string true 3 letters (ISO 4217)
parameters.customerType string true B2C or B2B

ValitorPayPci

Payment Methods

Payment Method Transaction Flows Transaction Types
Creditcard payment.js Debit, Preauthorize, Capture, Partial Capture, Refund, Partial Refund, Void, Register

Additional parameters

Parameter Required Description
extradata.isFinalCapture false Boolean parameter that can be sent with the `Capture' API request to indicate if it should be a final capture

WorldPay (Vantiv / Litle)

Payment Methods

Payment Method Transaction Flows Transaction Types
Creditcard iFrame Form & payment.js Integration All
Direct Debit (eCheck Sales) Server-To-Server Debit / Refund / Void

Additional Parameters

Creditcard

Direct Debit (eCheckSales)

Debit

Field Type Required Description
extraData object true object containing key-value pairs (string-to-string)
↳extraData.accType string / enum true Enumerations = Checking, Savings, Corporate, or Corp Savings
↳extraData.accNum string true The account number of the Direct Debit account.
↳extraData.routingNum string true The routing number of the Direct Debit account
↳extraData.orderSource string / enum false Defines the order entry source for the type of transaction. (Default = ecommerce), Enumerations = 3dsAuthenticated, 3dsAttempted, echeckppd, ecommerce, installment, mailorder, recurring, retail, telephone, recurringtel, applepay, androidpay
↳extraData.reportGroup string false Required attribute that defines the merchant sub-group in the user interface where this transaction will be displayed. (Default = defaultGroup)
↳extraData.descriptor string false The billing descriptor to appear on the bank statements. Maximum length is 15 characters.

Refund & Void

Field Type Required Description
amount string false If the Transaction was already settled and no amount was given, the full Transaction will be refunded. If the amount is given and its value is < than the original transactions amount, a partial Refund will be triggered.
extraData object true object containing key-value pairs (string-to-string)
↳extraData.reportGroup string false Required attribute that defines the merchant sub-group in the user interface where this transaction will be displayed. (Default = defaultGroup)

VOLT

Payment Methods

Payment Method Transaction Flows Transaction Types
BankTransfer Hosted Payment Page, Embedded checkout Debit, Refund, Partial refund
Pix Redirect Debit, Refund

Additional Parameters

Parameter Allowed values Description
extraData.language bg, ce, de, en, es, fr, hr, it, lt, lv, nl, pl, pt, ro, sl, sk Defines the language of the Volt Payment Page. Default is en
customer.billingCountry AT, BE, BG, CY, CZ, DE, DK, EE, ES, FI, FR, GB, GR, HR, HU, IE, IS, IT, LI, LT, LU, LV, MT, NL, NO, PL, PT, RO, SE, SI, SK If provided with one of the following parameter the bank country will be preselect. If its not one of the predefined the customer will just have to select the bank themself
extraData.bank_id ID received from option call* Redirects to the customer directly to his bank information without the need to select a bank on VOLT side
extraData.type BILL, GOODS, PERSON_TO_PERSON, OTHER, SERVICES Transaction Type, default is OTHER
extraData.validity_period Setting a custom expiration time for your Pay By Link is mandatory. Enter the desired validity in minutes. For instance, to make the link valid for 1 day, set it to 1440 (24 hours * 60 minutes)
extraData.beneficiary_name EUR and GBP! Available if dynamic beneficiary is activated in the connector settings
extraData.beneficiary_iban EUR only! Available if dynamic beneficiary is activated in the connector settings
extraData.beneficiary_swift EUR only! Available if dynamic beneficiary is activated in the connector settings
extraData.beneficiary_account_number GBP only! Available if dynamic beneficiary is activated in the connector settings
extraData.beneficiary_sort_code GBP only! Available if dynamic beneficiary is activated in the connector settings
customer.extraData.documentId Can be 11 or 14 digits long and the type has to be String. Available if sendPayerData is activated in the connector settings.
customer.reference Available if sendPayerData is activated in the connector settings. Is mandatory if customer.email or customer.name or customer.ip is set.
customer.email Available if sendPayerData is activated in the connector settings. If set the customer.reference will be mandatory.
customer.name Available if sendPayerData is activated in the connector settings. If set the customer.reference will be mandatory.
customer.ip Available if sendPayerData is activated in the connector settings. If set the customer.reference will be mandatory.

Pix

Transaction fields Required Description
customer.identification true for debit transactions
customer.firstName true for debit transactions
customer.lastName true for debit transactions
customer.extraData.documentId true for debit transactions

BankTransfer

Transaction fields Required Description
customer.identification true for debit transactions

Options Request

You can find more information about the options request here: Options Request

Retrieving a list of available banks

Returns a list of available banks with there id that can be used for the bank_id

Please use bank-list as an option name e.g. POST /options/{apiKey}/bank-list.

BankList Parameters

Name Type Required Description
parameters.page int false Get the page with up to 100 entries

Vyne

Payment Methods

Payment Method Transaction Flows Transaction Types
BankTransfer Redirect, QR Debit

Additional Parameters

Parameter Description
extraData.descriptor If it is enabled on the connector, you can set your bank descriptor over this parameter.

If the QR Method is used (on connector level), the initial debit call will return an extraData.qrCode field with a URL provided by Vyne to the QR Code to show to the customer.

WeAccept

Payment Methods

Payment Method Transaction Flows Transaction Types
Kiosk Server-to-Server Debit
Cash Payment Server-to-Server Debit
Wallet Redirect & iFrame Debit

Additional parameters

Extra Data Required Description
first name (customer) true
last name (customer) true
email (customer) true
billing phone (customer) true
billingAddress1 (customer) only for cash payments
billingPostcode (customer) only for cash payments
billingCity (customer) only for cash payments *
billingState (customer) only for cash payments *
billingCountry (customer) only for cash payments
success URL only for wallet payments To where the shopper should be back-directed

*only certain states and cities within Egypt are supported.

Refer to WeAccept's cash annex.

Wirecard

Payment Methods

Payment Method Transaction Flows Transaction Types
Creditcard iFrame Form & payment.js Integration Debit, Register, Preauthorize, Capture, Void, Refund, Deregister

Additional Parameters

Creditcard

Worldline/Ogone

Payment Methods

Payment Method Transaction Flows Transaction Types
Postfinance Card Hosted payment page Debit, Preauthorize, Capture, Void, Refund
Postfinance e-Finance Hosted payment page Debit, Refund
TWINT Hosted payment page Debit, Refund

Mandatory Parameters

Name Type Required Description
Currency string true 3 letters (ISO 4217)
Amount number true Transaction amount

Optional Parameters

Name Type Required Description
customer.email string false Customers E-Mail
customer.billingAddress1 string false Customers address
customer.billingPostcode string false Customers zip code
customer.billingCity string false Customers city
customer.billingCountry string false Customers country 2 letters (ISO 3166-1 alpha-2)
customer.billingPhone string false Customers phone number
extraData.TP string false Refer to Ogone documentation
extraData.PMLISTTYPE string false Refer to Ogone documentation
extraData.COMPLUS string false Refer to Ogone documentation
extraData.PARAMPLUS string false Refer to Ogone documentation
extraData.EXCLPMLIST string false Refer to Ogone documentation
extraData.CREDITDEBIT string false Refer to Ogone documentation
extraData.USERID string false Refer to Ogone documentation
extraData.HOMEURL string false Refer to Ogone documentation
extraData.CATALOGURL string false Refer to Ogone documentation
extraData.BACKURL string false Refer to Ogone documentation

Additional Parameters for COF and ALIAS

Name Type Required Value Description
extraData.ALIASUSAGE string true Displays information to your customers
extraData.ALIASOPERATION string false BYMERCHANT, BYPSP default BYPSP, if set to BYMERCHANT you have to provide an own alias
extraData.ALIAS string conditional own alias to use if ALIASOPERATION is BYMERCHANT
extraData.COF_RECURRING_EXPIRY string false The end date of the last scheduled payment
extraData.COF_RECURRING_FREQUENCY string false Days between payments for a scheduled series of transactions

Worldline/NPS PCI

Payment Methods

Payment Method Transaction Flows Transaction Types
CreditCard payment.js, Server-to-server Debit, Preauthorize, Capture, Void, Refund

Mandatory Parameters

Name Type Required Description
currency string true 3 letters (ISO 4217)
amount number true Transaction amount
customer.billingCountry string true Country code where transaction will be aproved. ISO rule 3166_1

Optional Parameters

Name Type Required Description
customer.email string false Customers E-Mail
customer.identification string false Merchant customer ID
description string false Merchant purchase description
extraData.descriptor string false Soft descriptor (max length 15)
extraData.channel string false refer to the WorldLineNPS documentation : psp_TxSource (default: WEB)
extraData.orderReference string false additional order id - refer to psp_MerchOrderId at WorldLineNPS documentation (max 64 chars)

Connector Config

Key Required Type Description
Merchant Unique Identifier true string A fixed value given by WorldLineNPS for each Merchant
API Secret true string A fixed value given by WorldLineNPS for each Merchant
Amount for Card Verification true string The amount with will be authorized (and auto-voided) when doing a register
Secondary MerchantId false string The Merchant Unique Identifier for a second merchant account*
Secondary API secret false string The Merchant api secret for a second merchant account*

Second Merchant* :

The ability to set a second merchant can be required to test all Transaction types with one connector. This is caused by a limitation of the testing environment of the PSP. If you are able to do all you need with one merchant account, please do so. Otherwise, the second merchant will be used (if set) to do a register.

Worldpay

Payment Methods

Payment Method Transaction Flows Transaction Types
Creditcard Full-Page Redirect Debit & Refund
iDeal Full-Page Redirect Debit & Refund
Przelewy24 Full-Page Redirect Debit & Refund
Sofort Full-Page Redirect Debit & Refund
POLi Full-Page Redirect Debit & Refund
Boleto Full-Page Redirect Debit & Refund
Paysafecard Full-Page Redirect Debit & Refund
Giropay Full-Page Redirect Debit & Refund
Bancontact Full-Page Redirect Debit & Refund

Additional Parameters

none

Required Parameters for POLi

Parameter Allowed Values
currency NZD, AUD
customer.billingCountry NZ, AU
customer.identification Anything
customer.email Anything

Worldpay Access

Payment Methods

Payment Method Transaction Flows Transaction Types
Creditcard iFrame Form & Full-Page Redirect All

Additional Parameters

Creditcard

Parameter Required Description
extraData.narrativeLine2 false Additional details about the payment e.g. order number, telephone number

Worldpay Express

Payment Methods

Payment Method Transaction Flows Transaction Types
Creditcard payment.js, Redirect & iFrame Form All + Incremental Authorizations

Additional Parameters

none

Worldpay WPG PCI

Payment Methods

Payment Method Transaction Flows Transaction Types
Creditcard iFrame Form & payment.js Integration Register, Preauthorize, Debit, Refund, Capture, Void

Parameters

Parameter Required Types Value
description true Register, Debit, Preauthorize, Payout
extraData.businessAppType false Register, Debit, Preauthorize, Payout one of [FUND_TRANSFER, HIGH_RISK_SECURITIES_PURCHASE, WALLET_TRANSFER]

Additional AFT Parameters

Data of the sender account are taken from the customer object, everything else needs to be provided via extraData. Also see https://docs.worldpay.com/apis/wpg/manage/pull-from-card

Parameter Required Maps to Description
extraData.fundingTransferType mandatory fundingTransfer type attribute see Funding Transfer Type table
extraData.paymentPurpose conditional* fundingTransfer.paymentPurpose see Payment Purpose table
extraData.senderAccountReference optional (sender) fundingParty.accountReference 0-50 char. [a-z][A-Z][0-9] spaces and special characters
extraData.senderAccountType conditional (sender) fundingParty.accountReference accountType attribute mandatory if senderAccountReference is sent, see AccountType table
customer.firstName mandatory (sender) fundingParty.fullName.first 0-35 char. [a-z][A-Z]
customer.lastName mandatory (sender) fundingParty.fullName.last 0-35 char. [a-z][A-Z]
customer.billingAddress1 conditional (sender) fundingParty.fundingAddress.address1 0-255 char. [a-z][A-Z][0-9] optional unless city is supplied
customer.billingAddress2 optional (sender) fundingParty.fundingAddress.address2 0-255 char. [a-z][A-Z][0-9]
customer.billingCity conditional (sender) fundingParty.fundingAddress.city 0-100 char. [a-z][A-Z][0-9] optional unless address1 is supplied
customer.billingPostcode conditional (sender) fundingParty.fundingAddress.postalCode 0-15 char. [a-z][A-Z][0-9] mandatory for countries with post codes
customer.billingState conditional (sender) fundingParty.fundingAddress.state 0-3 char. [a-z][A-Z][0-9] mandatory for US and CA, 2-3 character ISO code
customer.billingCountry mandatory (sender) fundingParty.fundingAddress.countryCode 2 char. [A-Z]
customer.birthDate optional (recipient) fundingParty.fundingAddress.birthDate YYYY-MM-DD
customer.billingPhone optional (recipient) fundingParty.fundingAddress.telephoneNumber max. 30 char.
extraData.recipientAccountReference mandatory (recipient) fundingParty.accountReference 0-50 char. [a-z][A-Z][0-9] spaces and special characters
extraData.recipientAccountType mandatory (recipient) fundingParty.accountReference accountType attribute see AccountType table
extraData.recipientFirstName optional (recipient) fundingParty.fullName.first 0-35 char. [a-z][A-Z]
extraData.recipientLastName conditional (recipient) fundingParty.fullName.last 0-35 char. [a-z][A-Z] mandatory if first name provided
extraData.recipientAddress1 conditional (recipient) fundingParty.fundingAddress.address1 0-255 char. [a-z][A-Z][0-9] optional unless city is supplied
extraData.recipientAddress2 optional (recipient) fundingParty.fundingAddress.address2 0-255 char. [a-z][A-Z][0-9]
extraData.recipientCity conditional (recipient) fundingParty.fundingAddress.city 0-100 char. [a-z][A-Z][0-9] optional unless address1 is supplied
extraData.recipientZip conditional (recipient) fundingParty.fundingAddress.postalCode 0-15 char. [a-z][A-Z][0-9] mandatory for countries with post codes
extraData.recipientState conditional (recipient) fundingParty.fundingAddress.state 0-3 char. [a-z][A-Z][0-9] mandatory for US and CA, 2-3 character ISO code
extraData.recipientCountry mandatory (recipient) fundingParty.fundingAddress.countryCode 2 char. [A-Z]
extraData.recipientBirthdate optional (recipient) fundingParty.fundingAddress.birthDate YYYY-MM-DD
extraData.recipientPhone optional (recipient) fundingParty.fundingAddress.telephoneNumber max. 30 char.

*Required for transactions in Argentina, Bangladesh, Chile, Columbia, Jordan, Mexico, Thailand, UAE, India cross-border

Funding Transfer Type

Can be configured on the connector, sending extraData.fundingTransferType overwrites the configuration

Type Description
A Account-to-account
C Cash
D Funds disbursement
F Funds transfer
P Person-to-person
R Payroll disbursement
S Business-to-business payment
T Top-up for prepaid loads
O Payment of own Bill
Q Rapid merchant settlement
W Staged Digital Wallet payment
U Top-up for debit loads

Payment Purpose

Can be configured on the connector, sending extraData.paymentPurpose overwrites the configuration

Type Description
00 Family Support
01 Regular labour transfers (expatriates)
02 Travel and tourism
03 Education
04 Hospitalisation and medical treatment
05 Emergency need
06 Savings
07 Gifts
08 Other
09 Salary
10 Crowd lending
11 Crypto currency

Account Type

Account Type Value Description
01 RTN + Bank account
02 IBAN
03 Card account
04 Email
05 Phone number
06 Bank Account Number (BAN) and Bank Identification Code (BIC)
07 Wallet ID
08 Social Network ID

Result Extra Data

Parameter Value
avs_result Mapped from the field AVSResultCode. For possible values see Worldpay API Reference
cvv_result Mapped from the field CVCResultCode. For possible values see Worldpay API Reference

Zip Payments

Payment Methods

Payment Method Transaction Flows Transaction Types
Wallet Full-Page Redirect Debit, Preauthorize, Capture, Void, Refund

Additional Parameters

Wallet (Debit & Preauthorize)

Parameter Type Description
extraData.pickup 0 or 1 Whether this is a pickup order
extraData.trackingUri string URI to tracking page of shipment
extraData.trackingNumber string Tracking number of shipment
extraData.trackingCarrier 0 or 1 Carrier used for shipment
customer.extraData.title true Title of customer (Mr., Mrs. etc.)
item.extraData.type sku, tax, shipping or discount Type of item
item.extraData.item_uri string URI to product page
item.extraData.image_uri string URI to product image (thumbnail)

Mandatory Parameters

Wallet (Debit & Preauthorize)

Parameter Required
items true
customer.firstName true
customer.lastName true
customer.email true
customer.billingAddress1 true
customer.billingCity true
customer.billingPostcode true
customer.billingState true
customer.billingCountry true

Integration through ZIP Widget

The integration from the Gateway works by default through the redirect flow from ZipPayments. You can also integrate by using ZIP's Widget solution ("Lightbox Checkout Library"), but you have to handle the Javascript part on your own. The Gateway returns you the following extraData values upon the initial Debit or Preauthorize call, which you will need for the ZIP Widget:

You will have to use these values within the HTTP endpoint which is called by the ZIP Widget:

{
  "id": "value of extraData.zipId",
  "uri": "value of extraData.zipUri",
  "redirect_uri": "value of extraData.zipRedirectUri"
}

Zona Pagos

Payment Methods

Payment Method Transaction Flows Transaction Types
Creditcard Redirect Full-Page Redirect Debit
PSE Full-Page Redirect Debit
ZonaPagos Full-Page Redirect Debit

Additional Parameters

Parameter Required Description
description true string
merchantMetaData false mapping to ZonaPagos parameter info_opcional2
extraData.idType false mapping to ZonaPagos parameter tipo_id . one of:
1 for Citizenship Card.
2 for CE Immigration Card.
3 for NIT Nit Company.
4 for NUIP Unique Identification Number.
5 for Identity Card.
6 for Passport.
7 for IDC Unique Customer Identifier.
8 CEL case that the
customer.identification false mapping to ZonaPagos parameter Id_cliente
extraData.field3 false extra information, mapping to ZonaPagos parameter info_opcional3
extraData.taxAmount false numeric, default value if not set is "0"

ZonaPagos method

ZonaPagos method allows the user to select the payment method on the Zona Pagos hosted payment page. Which payment was selected is communicated through a webhook notification. The information can be found in extra_data under field id_forma_pago.

id_forma_pago value Description
4 Payment was made using the method: ACH-PSE.
5 Payment was made using the method: Online credit card

External Risk

Forter External Risk Adapter

Forter External Risk Check additional extra data

Those extra data fields are mapped to the corresponding Forter Validation Request Parameters: https://portal.forter.com/app/developer/api/api/services-and-apis/validation-api#request

Customer Extra Data

Example

{
  "customer": {
    "identification": "c0001",
    "extraData": {
      "FORTER_CUSTOMER_LAST_LOGINIP": "203.12.55.12",
      "FORTER_CUSTOMER_BILLING_ADDRESS_TYPE": "HOME"
    }
  }
}
Name Type Example values
FORTER_CUSTOMER_PAST_ORDERS_COUNT optional integer 0
FORTER_CUSTOMER_PAST_ORDERS_SUM_USD optional decmimal 0.00
FORTER_CUSTOMER_LAST_LOGINIP string 203.12.55.12
FORTER_CUSTOMER_REGISTRATION_IP string 203.12.55.12
FORTER_CUSTOMER_BILLING_ADDRESS_TYPE

conditional Possible values are: "HOME", "BUSINESS", "OTHER"
string HOME
FORTER_CUSTOMER_BILLING_CREATION_TIME

conditional Time item was first entered by customer in seconds since unix epoch (UTC, Jan 1, 1970)
number 1448549922
FORTER_CUSTOMER_BILLING_REMOVAL_TIME

conditional Time item was removed by customer in seconds since unix epoch (UTC, Jan 1, 1970)
number 1448895522
FORTER_CUSTOMER_BILLING_SUGGESTED_CORRECT_ADDRESS

conditional True if customer selected a corrected address suggested by merchant (For example in cases where customer entered wrong zipcode)
boolean 0/1
FORTER_CUSTOMER_BILLING_VERIFICATION_DOCUMENT_TYPE

required ype of document (Passport, ID, Driving license) Maximum length is 35 characters.
string Passport
FORTER_CUSTOMER_BILLING_VERIFICATION_DOCUMENT_SOURCE

required Source of document (e.g. uploaded file, captured by camera, typed in by customer, etc.) Possible values are: "CAMERA_CAPTURED", "UPLOADED_FILE", "TYPED", "OTHER"
string UPLOADED_FILE
FORTER_CUSTOMER_BILLING_VERIFICATION_NATIONALITY

conditional Document holder's nationality
string US
FORTER_CUSTOMER_BILLING_VERIFICATION_DOCUMENT_ISSUING_STATE

conditional Document issuing state or region
string NY
FORTER_CUSTOMER_BILLING_VERIFICATION_DOCUMENT_NUMBER

conditional Official document's number (e.g. passport number, driving license number, etc.)
string 20439190
FORTER_CUSTOMER_BILLING_VERIFICATION_DOCUMENT_FIRSTNAME

conditional First name as appears on the document
string John
FORTER_CUSTOMER_BILLING_VERIFICATION_DOCUMENT_LASTNAME

conditional Last name as appears on the document
string Smith
FORTER_CUSTOMER_BILLING_VERIFICATION_DOCUMENT_DATEOFBIRTH

conditional Date of birth as appears on the document. Use YYYY-MM-DD format.
string 1982-04-23
FORTER_CUSTOMER_BILLING_VERIFICATION_DOCUMENT_EXPIRATION

conditional Document's exipration date. Use YYYY-MM-DD format.
string 2025-04-23
FORTER_CUSTOMER_BILLING_VERIFICATION_DOCUMENT_PAYLOAD

conditional JSON Response payload received from 3rd party document verification
string JSON {}
FORTER_CUSTOMER_SHIPPING_ADDRESS_TYPE

conditional Possible values are: "HOME", "BUSINESS", "OTHER"
string HOME
FORTER_CUSTOMER_SHIPPING_CREATION_TIME

conditional Time item was first entered by customer in seconds since unix epoch (UTC, Jan 1, 1970)
number 1448549922
FORTER_CUSTOMER_SHIPPING_REMOVAL_TIME

conditional Time item was removed by customer in seconds since unix epoch (UTC, Jan 1, 1970)
number 1448895522
FORTER_CUSTOMER_SHIPPING_SUGGESTED_CORRECT_ADDRESS

conditional True if customer selected a corrected address suggested by merchant (For example in cases where customer entered wrong zipcode)
boolean 0/1
FORTER_CUSTOMER_SHIPPING_VERIFICATION_DOCUMENT_TYPE

required ype of document (Passport, ID, Driving license) Maximum length is 35 characters.
string Passport
FORTER_CUSTOMER_SHIPPING_VERIFICATION_DOCUMENT_SOURCE

required Source of document (e.g. uploaded file, captured by camera, typed in by customer, etc.) Possible values are: "CAMERA_CAPTURED", "UPLOADED_FILE", "TYPED", "OTHER"
string UPLOADED_FILE
FORTER_CUSTOMER_SHIPPING_VERIFICATION_NATIONALITY

conditional Document holder's nationality
string US
FORTER_CUSTOMER_SHIPPING_VERIFICATION_DOCUMENT_ISSUING_STATE

conditional Document issuing state or region
string NY
FORTER_CUSTOMER_SHIPPING_VERIFICATION_DOCUMENT_NUMBER

conditional Official document's number (e.g. passport number, driving license number, etc.)
string 20439190
FORTER_CUSTOMER_SHIPPING_VERIFICATION_DOCUMENT_FIRSTNAME

conditional First name as appears on the document
string John
FORTER_CUSTOMER_SHIPPING_VERIFICATION_DOCUMENT_LASTNAME

conditional Last name as appears on the document
string Smith
FORTER_CUSTOMER_SHIPPING_VERIFICATION_DOCUMENT_DATEOFBIRTH

conditional Date of birth as appears on the document. Use YYYY-MM-DD format.
string 1982-04-23
FORTER_CUSTOMER_SHIPPING_VERIFICATION_DOCUMENT_EXPIRATION

conditional Document's exipration date. Use YYYY-MM-DD format.
string 2025-04-23
FORTER_CUSTOMER_SHIPPING_VERIFICATION_DOCUMENT_PAYLOAD

conditional JSON Response payload received from 3rd party document verification
string JSON {}

Transaction Extra Data

Name Type Example values
FORTER_TYPE

optional, default WEB. Platform order was made through. Possible Values: "WEB", "PHONE", "MOBILE", "IOS", "ANDROID", "WAP", "STORE", "MAIL_ORDER", "AUTOMATIC_RENEWAL_OR_INSTALLMENT_PAYMENT", "UNKNOWN"
string WEB
FORTER_TOKEN

conditional Forter token cookie from request headers. Maximum length is 128 characters.
string 2315688945984
FORTER_USER_AGENT

required when PaymentJS is not used, Customer's User agent. Maximum length is 4096 characters.
string Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/77.0.3865.90 Safari/537.36
FORTER_CHECKOUT_TIME

optional will use current timestamp if not provided. The time when the buyer completed the checkout process in the merchant website in SECONDS since unix epoch (Jan 1, 1970).
number 1415273168
FORTER_MOBILE_UID

optional - mobile UID. The device identifier such as IMEI in android or identifier for vendor in iOS. This should match the deviceId sent via the mobile events API (for mobile transactions only) Maximum length is 128 characters.
string 6429751237891
FORTER_MERCHANT_DEVICE_IDENTIFIER

conditional - A unique device identifier generated by merchant
string HGJ7512345H3
FORTER_MOBILE_APP_VERSION

conditional - The version of the merchant application which is running on the user's device
string 2.9
FORTER_MOBILE_OS_TYPE

conditional - The operating system running on the user's device (relevant for native app only)
string Android
FORTER_MOBILE_DEVICE_BRAND

conditional - The user's device brand (relevant for native app only)
string Samsung
FORTER_MOBILE_DEVICE_MODEL

conditional - The model of the user's device (relevant for native app only)
string Galaxy 3
FORTER_FULL_HEADERS_JSON

conditional - A unique device identifier generated by merchant
string JSON "{"method":"GET / HTTP/1.1", "Host": "forter.com", "Connection": "keep-alive", "Accept": ...}"
FORTER_DELIVERY_DETAILS_DELIVERY_TYPE

optional default PHYSICAL - Type of delivery: PHYSICAL for any type of shipped goods. DIGITAL for non-shipped goods (services, gift cards etc.) Example: PHYSICAL Possible values are: "DIGITAL", "PHYSICAL", "HYBRID"
string DIGITAL
FORTER_DELIVERY_DETAILS_DELIVERY_METHOD

optional default POSTAL SERVICE - Delivery method chosen by customer such as postal service, email, in game transfer, etc. Example: USPS - Ground Mail
string Galaxy
FORTER_DELIVERY_DETAILS_DELAYED_DELIVERY_DATE

conditional - Use if customer chose to deliver the item at a later date (to arrive in time for a holiday, a birthday, etc.). Use YYYY-MM-DD format.
string 2018-10-12
FORTER_DELIVERY_DETAILS_CARRIER

optional - The delivery carrier
string DHL
FORTER_DELIVERY_DETAILS_DELIVERY_PRICE_AMOUNT

conditional - same currency as transaction currency is assumed
string 5.00
FORTER_DELIVERY_DETAILS_TRACKING_EXTRA_CHARGE_AMOUNT

conditional - same currency as transaction currency is assumed
string 1.00
FORTER_DELIVERY_DETAILS_EXPECTED_DELIVERY_DATE

conditional - Date delivery is expected to arrive at destination. Use YYYY-MM-DD
string 2018-10-14
FORTER_DELIVERY_DETAILS_LEAVE_OUTSIDE

optional - 1 if customer chose to allow shipment to be left outside or at a building lobby or reception area.
integer 1
FORTER_DELIVERY_DETAILS_SMS_UPDATES

optional - 1 if customer asked to receive SMS updates regarding delivery.
integer 0
FORTER_DELIVERY_DETAILS_WAIT_TO_SHIP_TOGETHER

conditional - 1 if customer asked to try and bundle shipments together to save costs.
integer 1
FORTER_DELIVERY_DETAILS_DELIVERY_COMMENTS

conditional - Any comments or requests customer had for delivery
string Please call before arriving, Thanks!
FORTER_IS_MERCHANT_OF_RECORD

conditional - 1 if the Forter account owner is also the merchant of record
string 1
FORTER_PAYMENT_METHOD_NICKNAME

conditional - Nickname assigned to this payment method by the user
string My Work Card
FORTER_PAYMENT_CREDIT_USED_AMOUNT

conditional - Store credit used to pay for purchase
string 1.00
FORTER_IS_DEFAULT_PAYMENT_METHOD

conditional - 1 if this payment instrument is the default set by the customer.
integer 0
FORTER_NUMBER_OF_INSTALLMENTS

conditional - Number of payments if customer chose to pay in several installments. integer
string 12
FORTER_DELAYED_CHARGE

conditional - 1 if customer chose to pay at a later date. False if customer chose to pay in several installments as long as first payment is immediate.
integer 0
FORTER_DELAYED_CHARGE_DATE

conditional - Date customer is due to pay. Use YYYY-MM-DD format.
string 2015-12-01
FORTER_PAYMENT_GATEWAY_ID

conditional - Transaction identifier provided by the payment gateway
string SDS34653246346
FORTER_MERCHANT_ID

conditional - Merchant unique identifier
string eh629dK9
FORTER_MERCHANT_DOMAIN

conditional - Use if merchant operates several sites (such as a regular site and a related discount brand)
string HandbagsExpressDiscounts.com
FORTER_MERCHANT_NAME

conditional - Use if merchant operates several sites (such as a regular site and a related discount brand)
string Handbags Express Discounts
FORTER_SITE_LOCALIZATION_COUNTRY

conditional - Use if site has multiple localized versions
string FR
FORTER_SITE_LOCALIZATION_LANGUAGE

conditional - Site interface language chosen by customer, 2-letter ISO-639-1 language code
string EN
FORTER_SITE_LOCALIZATION_CURRENCY

conditional - Currency chosen by customer as default, 3-letter ISO-4217 format currency code
string USD
FORTER_ITEM_DEFAULT_QUANTITY

optional defaults to 1
integer 1
FORTER_ITEM_DEFAULT_TYPE

optional default to TANGIBLE - Tangible if physical item, non-tangible if any other product Example: TANGIBLE Possible values are: "TANGIBLE", "NON_TANGIBLE"
string NON_TANGIBLE
FORTER_ITEM_DEFAULT_CREATED_TIME

conditional - Time item was added to cart by customer in seconds since unix epoch (UTC, Jan 1, 1970)
number 1415273168
FORTER_ITEM_DEFAULT_SPECIFIC_DATA_JSON

conditional - JSON with the format described here: https://portal.forter.com/app/developer/api/api/data-objects/ItemSpecificData
string JSON {"personalCustomization":false, ....}
FORTER_BENEFICIARIES_FIRSTNAME[i]

conditional - Required field in case Beneficiary object is being mapped
string John
FORTER_BENEFICIARIES_LASTNAME[i]

conditional - Required field in case Beneficiary object is being mapped
string Doe
FORTER_BENEFICIEARIES_EMAIL[i]

optional - Beneficiary email address
string [email protected]
FORTER_BENEFICIARIES_USER_COMMENTS_TO_MERCHANT[i]

optional - Message user is leaving to a merchant
string Please pack camera extra secure
FORTER_BENEFICIARIES_MESSAGE_TO_BENEFICIARY[i]

optional - Message to Beneficiary
string Message
FORTER_BENEFICIARIES_MERCHANT_COMMENTS[i]

optional - Merchant comments
string Merchant comments

Transaction Item Extra Data besides the standard item data

Name Type Example values
FORTER_ITEM_TYPE

optional default to TANGIBLE - Tangible if physical item, non-tangible if any other product Example: TANGIBLE Possible values are: "TANGIBLE", "NON_TANGIBLE"
string NON_TANGIBLE
FORTER_ITEM_PRODUCTID

Unique identifier for item that is common to all identical items (such as SKU, ISBN, etc.)
string 324234
FORTER_ITEM_PRODUCTID_TYPE

optional - Type of product ID used (SKU/ISBN/UPC/etc.)
string SKU
FORTER_ITEM_CATEGORY

optional - The item category
string Item Category
FORTER_ITEM_COUPON_CODE_USED

optional - The coupon code used
string FATHERSDAY2015
FORTER_ITEM_DISCOUNT_TYPE

optional - Discount type
string COUPON
FORTER_ITEM_SPECIFIC_DATA_JSON

conditional - JSON with the format described here: https://portal.forter.com/app/developer/api/api/data-objects/ItemSpecificData
string JSON {"personalCustomization":false, ....}
FORTER_ITEM_CREATED_TIME

conditional - Time item was created in seconds since unix epoch (UTC, Jan 1, 1970)
string 1448549922
FORTER_ITEM_DELIVERY_TYPE

conditional - Could be either PHYSICAL or DIGITAL. PHYSICAL by default
string PHYSICAL
FORTER_ITEM_DELIVERY_METHOD

optional - Should be used if items from the cart have different payment methods
string Store Pickup

FraudNet External Risk Adapter

FraudNet External Risk Check additional extra data

Those optional extra data fields are mapped to the corresponding FraudNet Transaction Check Parameters and may help to get much more accurate risk score from the FraudNet: https://api-docs.fraud.net/docs/public-apis/864cd23f8bebe-transaction-check

Required fields

Name Type Example values
identification (customer) string 123

Customer Extra Data

Name Type Example values
FRAUDNET_CUSTOMER_REGION string NY
FRAUDNET_CUSTOMER_PHONE_2

If the phone provided is in not a US number, precede the number with country and city codes
string +43660501869
FRAUDNET_CUSTOMER_PHONE_3

If the phone provided is in not a US number, precede the number with country and city codes
string +43660501869
FRAUDNET_CUSTOMER_STARTED_ON

Date/Time (ISO 8601) customer started
string or null<date-time> 2022-03-26T18:14:29Z
FRAUDNET_CUSTOMER_TYPE

Categorization of the account type
string NEW
FRAUDNET_CUSTOMER_DOB

The date of birth of the customer Format: (YYYY-MM-DD)
string<date> 1995-12-12
FRAUDNET_CUSTOMER_ANNUAL_INCOME string 120000

Transaction Extra Data

Name Type Example values
FRAUDNET_TRANSACTION_TYPE

Type of query that is being requested (usually sale, registration, payment, or authentication)
string sale
FRAUDNET_TRANSACTION_ORDER_IS_DIGITAL

Whether the order is for a digital product or service (digital payments, online games, airline tickets, etc)
boolean false
FRAUDNET_TRANSACTION_EVENT

Your order status or order event that you would like to track. This list can be as detailed and numerous as you would like, but each will generally need to be mapped to one of Fraud.net's statuses
string pending shipment
FRAUDNET_TRANSACTION_ORDER_SOURCE

Marketing channel that delivered the user to your site. If you would like to track detailed marketing channels, campaigns and media, please contact your customer success team member for instructions.
string google ppc
FRAUDNET_TRANSACTION_ORDER_COUNT

User's aggregate (lifetime) number of orders (optional)
integer 2
FRAUDNET_TRANSACTION_TOTAL_SPENT

User's aggregate (lifetime) amount spent
number 420
FRAUDNET_TRANSACTION_SESSION_ID

User's current session ID. Use this to link your website and cart events to your post transaction orders (optional)
string 1234ABC
FRAUDNET_TRANSACTION_FIRST_PURCHASE

Date the user first made a purchase
string 2020-01-06T13:46:46.718Z
FRAUDNET_TRANSACTION_LAST_PURCHASE

Date the user last made a purchase
string 2022-01-06T13:46:46.718Z
FRAUDNET_TRANSACTION_USER_LOCALE

Two-character country code for the transaction location, according to ISO 3166-1 alpha 2
string US
FRAUDNET_TRANSACTION_COUPON_CODE

Coupon code, if a coupon was used
string r4124adsq2
FRAUDNET_TRANSACTION_ORDER_DISCOUNT

Amount of discount
number 1
FRAUDNET_TRANSACTION_ORDER_SHIPPING

Cost of shipping the order
number 10
FRAUDNET_TRANSACTION_ORDER_TAX

Amount of taxes
number 5
FRAUDNET_TRANSACTION_AGENT_CODE

Code for an internal agent who has made changes to the order
string AC775
FRAUDNET_TRANSACTION_AGENT_DEPT

Department of internal agent
string ITD
FRAUDNET_TRANSACTION_IDENT_ID

Identification that the customer provided
string LZ3124125
FRAUDNET_TRANSACTION_IDENT_COUNTRY

Country where the customer identification comes from
string Austria
FRAUDNET_TRANSACTION_FEE

Type of identification. Allowed values: "ssn", "drivers_lic", "national_id"
string ssn
FRAUDNET_TRANSACTION_AGENT_DEPT

Department of internal agent
string ITD
FRAUDNET_TRANSACTION_FEE number 12.00
FRAUDNET_TRANSACTION_GEO

point of purchase [lat, lon]. Pattern: ^([-+]?)([\d]{1,2})(((.)(\d+)(,)))(\s*)(([-+]?)([\d]{1,3})((.)(\d+))?)$
string 47.21746, -1.5476425
FRAUDNET_TRANSACTION_REFERENCE string reference
Name Type Example values
FRAUDNET_SELLER_ADDRESS1

Building number and street address for legal address of the company/seller
string 554 Main Street
FRAUDNET_SELLER_ADDRESS2

Apartment/suite/unit number
string Suite 443
FRAUDNET_SELLER_CITY

Address city
string New York City
FRAUDNET_SELLER_COMPANY

Seller company name
string ACME Inc
FRAUDNET_SELLER_COUNTRY

Two-digit country code , according to ISO 3166-1 alpha 2
string US
FRAUDNET_SELLER_EMAIL

Seller's primary email
string [email protected]
FRAUDNET_SELLER_INDUSTRY

Industry in which the seller operates (using your taxonomy, if available)
string Retail
FRAUDNET_SELLER_MCC_ID

Merchant category code
string 125
FRAUDNET_SELLER_NAME

Seller's Name
string Name
FRAUDNET_SELLER_PHONE

Seller's primary phone. If not a US number, precede the number with country and codes codes
string 212-289-1293
FRAUDNET_SELLER_POSTAL_CODE

Zip or postal code
string 10001
FRAUDNET_SELLER_REGION

Two-digit state or province code, according to ISO 3166-1 alpha 2
string
FRAUDNET_SELLER_SECTOR

Sector in which the seller specializes
string Apparel > Shoes
FRAUDNET_SELLER_TAX_ID

Tax ID for this seller (optional)
string DE12345678911
FRAUDNET_SELLER_ACCOUNT_ID string
FRAUDNET_SELLER_ACCOUNT_TYPE string
Name Type Example values
FRAUDNET_DEVICE_RESOLUTION

legacy field
string 1024x768
FRAUDNET_DEVICE_USER_AGENT string MOZILLA/5.0 (IPHONE; CPU IPHONE OS 7_1 LIKE MAC OS X) APPLEWEBKIT/537.51.2
FRAUDNET_DEVICE_SERVICE

Allowed values: "fraudnet", "infoscore", "inauth", "none"
string none
FRAUDNET_DEVICE_CLIENT_ID string
FRAUDNET_DEVICE_SESSION_ID string 554 Main Street
FRAUDNET_DEVICE_FINGERPRINT_ID string
FRAUDNET_DEVICE_IP_TYPE

The remote IP address type. If a valid ip_address is supplied, this field's value will be overwritten to indicate the type of ip address sent. Allowed values: "v4", "v6"
string v4
FRAUDNET_DEVICE_PLUGIN_HASH

The hash from the Device Fingerprint for browser plugins
string
FRAUDNET_DEVICE_TIME_ZONE string
FRAUDNET_DEVICE_LANGUAGE string en-GB
FRAUDNET_DEVICE_IS_PROXY

Flag that tells about a used proxy
boolean false
FRAUDNET_DEVICE_HTTP_REFERER string
FRAUDNET_DEVICE_NUM_MIME_TYPES string
FRAUDNET_DEVICE_MIME_TYPES_HASH string
FRAUDNET_DEVICE_NUM_FONTS integer
FRAUDNET_DEVICE_FONTS_HASH string
FRAUDNET_DEVICE_NUM_PLUGINS integer
FRAUDNET_DEVICE_PLUGINS_HASH string
FRAUDNET_DEVICE_COLOR_DEPTH integer
FRAUDNET_DEVICE_FONT_SMOOTHING boolean
FRAUDNET_DEVICE_JAVA_SUPPORT boolean
FRAUDNET_DEVICE_TOUCH_SUPPORT boolean
FRAUDNET_DEVICE_COOKIE_SUPPORT boolean
FRAUDNET_DEVICE_CANVAS_FINGERPRINT_ID string
FRAUDNET_DEVICE_CANVAS_HEIGHT integer
FRAUDNET_DEVICE_CANVAS_WIDTH integer
FRAUDNET_DEVICE_SCREEN_HEIGHT integer
FRAUDNET_DEVICE_SCREEN_WIDTH integer
FRAUDNET_DEVICE_IS_TOR boolean
FRAUDNET_DEVICE_GEO

Device location. Pattern: ^([-+]?)([\d]{1,2})(((.)(\d+)(,)))(\s*)(([-+]?)([\d]{1,3})((.)(\d+))?)$
string 47.21746, -1.5476425
FRAUDNET_DEVICE_CITY string
FRAUDNET_DEVICE_COUNTRY string
FRAUDNET_DEVICE_POSTAL_CODE string
FRAUDNET_DEVICE_PROXY_TYPE

Allowed values: "vpn", "tor", "dch", "pub", "web", "ses"
string vpn
Name Type Example values
FRAUDNET_ACCOUNT_CURRENT_BALANCE

Account balance at the time of current transaction
number 55
FRAUDNET_ACCOUNT_DAYS_LATE integer
FRAUDNET_ACCOUNT_DUE_ON

Date the next account payment is due by. Format: ISO 8601
string<date-time> 2022-03-26T18:14:29Z
FRAUDNET_ACCOUNT_INC_COUNTRY

Country the [business] account was incorporated. Format: <= 2 characters
string US
FRAUDNET_ACCOUNT_INC_ON

Date the [business] account was incorporated on
string<date-time> 2022-03-26T18:14:29Z
FRAUDNET_ACCOUNT_INC_REGION

Region or State the [business] account was incorporated on
string
FRAUDNET_ACCOUNT_LABEL

Merchant Specific name of the type of account
string
FRAUDNET_ACCOUNT_LAST_BALANCE

Account balance as of last statement
string
FRAUDNET_ACCOUNT_LAST_LOGIN

Date of the last account login. Format: ISO 8601
string<date-time> 2022-03-26T18:14:29Z
FRAUDNET_ACCOUNT_LAST_MIN_DUE

The minimum amount due on last account statement
string
FRAUDNET_ACCOUNT_LAST_PAYMENT_AMOUNT

The last payment amount for the account
number
FRAUDNET_ACCOUNT_LAST_PAYMENT_ON

The date of the last account payment. Format: ISO 8601
string<date-time> 2022-03-26T18:14:29Z
FRAUDNET_ACCOUNT_MIN_DUE

Minimum amount due on account at the time of current transaction
number
FRAUDNET_ACCOUNT_OPENED_UP

UTC date and time the transaction placed. Format: ISO 8601
string<date-time> 2022-03-26T18:14:29Z
FRAUDNET_ACCOUNT_TAX_ID

Accounts's tax identification number
string
FRAUDNET_ACCOUNT_TYPE

Categorization of the account type
string
FRAUDNET_ACCOUNT_UNBILLED_CHARGES

Fees on account that have not been paid
number
FRAUDNET_ACCOUNT_EXPOSURE_AMT

The total exposure of the account
number
FRAUDNET_ACCOUNT_AVAILABLE_FUNDS

The available funds for the account
number
FRAUDNET_ACCOUNT_CLOSED_ON

The date the account was closed. Format: ISO 8601
string<date-time> 2022-03-26T18:14:29Z
FRAUDNET_ACCOUNT_CREDIT_LIMIT

Credit limit for the account
number
FRAUDNET_ACCOUNT_IS_ACTIVE

Is the account active?
boolean
FRAUDNET_ACCOUNT_IS_FRAUD

Was the account closed for fraud reasons?
boolean
FRAUDNET_ACCOUNT_LATE_STATUS_LABEL

Merchant specific status for account delinquency
string
FRAUDNET_ACCOUNT_STATUS

Merchant specific term for account's current status
string
FRAUDNET_ACCOUNT_PIN_CHANGE_ON

Format: ISO 8601
string<date-time> 2022-03-26T18:14:29Z
FRAUDNET_ACCOUNT_EMAIL_CHANGE_ON

Format: ISO 8601
string<date-time> 2022-03-26T18:14:29Z
FRAUDNET_ACCOUNT_ADDRESS_CHANGE_ON

Format: ISO 8601
string<date-time> 2022-03-26T18:14:29Z
FRAUDNET_ACCOUNT_PASSWORD_CHANGE_ON

Format: ISO 8601
string<date-time> 2022-03-26T18:14:29Z
FRAUDNET_ACCOUNT_PHONE_CHANGE_ON

Format: ISO 8601
string<date-time> 2022-03-26T18:14:29Z
Name Type Example values
FRAUDNET_PAYMENT_CARD_STATUS

The status of the card. Allowed values: "active", "cancelled", "decline", "deleted", "inactive", "lost", "new", "pick-up", "request", "restricted", "stolen", "suspended", "delinquency", "damaged", "expired"
string active
FRAUDNET_PAYMENT_IS_ACTIVE

Is the card for this transaction active?
boolean true
FRAUDNET_PAYMENT_GIFT_CARD_NUMBERS string G4216291
FRAUDNET_PAYMENT_GIFT_CARDS

Single or list of gift card numbers used with order.
array[string]
FRAUDNET_PAYMENT_INPUT_CAPABILITIES

Code indicating card read capabilities.
string
FRAUDNET_PAYMENT_SERVICE_CODE

Service code for the payment.
string 123
FRAUDNET_PAYMENT_TRANSACTION_LABEL

User defined label that categorizes the transaction.
string european_customer
FRAUDNET_PAYMENT_TRANSACTION_TYPE

User defined code specifying the type of Terminal at the Point of transaction.
string
FRAUDNET_PAYMENT_ACTIVE_ON

Format: ISO 8601
string<date-time> 2022-03-26T18:14:29Z