The Simulator is an adapter for integration & testing purposes only. No real transaction will be performed at any payment provider.
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).
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 |
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
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 |
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 |
Field | Required |
---|---|
description | true |
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.
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
AdvCash Wallet | Full-Page Redirect, Server-To-Server | Register, Debit, Payout |
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.
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 |
Parameter | Required | Description |
---|---|---|
extraData.authorisationType | false | PreAuth or FinalAuth |
extraData.requestedTestAcquirerResponseCode | false | To test different responses on Adyen |
Parameter | Required | Description |
---|---|---|
extraData.blikCode | false | The code the customer got from Blik |
Afterpay supports the following currencies: AUD, NZD, USD and CAD. The used currency must also match the currency of the Afterpay merchant account.
Payment Method | Transaction Flows | Transaction Types | Supported Currencies |
---|---|---|---|
Afterpay | Full-Page Redirect | Debit, Preauthorize, Capture, Void, Refund | AUD, NZD, USD, CAD |
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) |
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 |
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 |
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
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) |
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. |
Name | Type | Required | Description |
---|---|---|---|
extraData.goodsName | string | true | Maximum length: 256 Characters |
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. |
The current Alipay+ integration only supports the Alipay+ CashierPayment Flow!
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 |
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 |
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 |
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 |
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 |
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
.
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 Example
{
"parameters": {
"type": "CASHIER",
"currency": "USD",
"amount": 100,
"settlementCurrency": "JPY",
"terminalType": "WEB"
}
}
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
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
AmazonPayments | payment.js | All |
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:
publicIntegrationKey
of the AmazonPayments connector<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:
login.ready
: ready to show login buttonlogin.shown
: login button was shownlogin.error
: failed to show login button, data
will include code
and message
with Amazon error informationlogin.complete
: customer successfully logged inaddressBook.error
: failed to show addressBook widget, data
will include code
and message
with Amazon error informationaddressBook.shown
: addressBook widget was shownaddressBook.selected
: customer has chosen/changed the delivery addresswallet.error
: failed to show wallet widget, data
will include code
and message
with Amazon error informationwallet.selected
: customer has chosen a walletwallet.shown
: wallet widget was shownconsent.complete
: consent was granted by customerconsent.incomplete
: consent is not yet granted by customerconsent.error
: failed to show consent widget, data
will include code
and message
with Amazon error informationThe 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>
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | iFrame Form & payment.js Integration | Debit, Register, Preauthorize, Capture, Void, Refund, Deregister |
Name | Type | Required | Description |
---|---|---|---|
customer.email | string | true | The customer's email |
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 is not an adapter itself, but a common type of payment supported by some listed adapters.
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
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>
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | Full-Page Redirect | Debit, Refund, Partial Refund |
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) |
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | iFrame Form | All |
none
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | Server-To-Server, iFrame Form & payment.js Integration | Debit, Preauthorize, Capture, Refund, Void, Register |
Parameter | Required | Description |
---|---|---|
extraData.installment | false | Numeric count of installments |
The Bank of America Adapter in IXOPAY 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) in IXOPAY, to be processed later on with an so called IXOPAY Provider.
Please consult the official Bank of America NACHA File Spec User Guide for indepth information about individual Parameters.
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
ACH-Direct-Debit | SFTP Up-/Download | Debit |
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. |
Name | Type | Required | Allowed Value | Description |
---|---|---|---|---|
extraData | object | true | object containing key-value pairs (string-to-string) |
|
extraData.accType | string | true | 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. |
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
GCASH | Full-Page Redirect | Debit, Refund |
Extra data | Type | Required | Description |
---|---|---|---|
description | string | true | The order description |
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
eQr | Redirect to Qr Code page | Debit, Refund |
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 |
Key | Value | Required | Transaction Type | Description |
---|---|---|---|---|
extraData.type |
reverse |
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 |
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.
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 |
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
BitCoin | Full-Page Redirect | Debit only |
Field | Required |
---|---|
description | false |
firstName | false |
lastName | false |
false | |
billingPhone | false |
billingAddress1 | false |
billingCity | false |
billingState | false |
Provider Test-Cards:
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
CreditCard incl. GooglePay and ApplePay | payment.js Integration | All |
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). |
To be able to use sendDescriptionInCustomField
or sendMerchantTransactionIdInCustomField
,
you will have to set up "Custom Fields" in the Braintree Merchant Portal
(please check out the official Braintree Documentation, see Custom Fields).
Add a new Custom Field and pass the "Api Name" of the representing field in the Connector Config
(e.g 'merchant_tx_id' for sendMerchantTransactionIdInCustomField
).
transaction.indicator
: mandatory for card on file, card on file merchant initiated, recurring (see Recurring Transactions)Further Information on how to process GooglePay & ApplePay Tokens.
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
PayPal | payment.js | All |
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.
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. |
Key | Description |
---|---|
fax | Refer to Braintree documentation |
phone | Refer to Braintree documentation |
website | Refer to Braintree documentation |
billingCompany | Refer to Braintree documentation |
billingFirstName | Refer to Braintree documentation |
billingLastName | Refer to Braintree documentation |
The parameter customer.identification
is mandatory in the following cases:
withRegister
Test Me
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | Server-To-Server, iFrame Form & payment.js Integration | Debit, Register, Preauthorize, Capture, Refund, Deregister, Recurring Debit/Preauthorize |
Parameter | Required | Description |
---|---|---|
customer.billingPhone | true | Customer phone number |
customer.email | true | Customer email address |
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard (without 3DS) | iFrame Form & payment.js Integration | All |
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) |
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
ACHDirectDebit | Full-Page Redirect, HPP | Register, Debit, Preauthorize, Capture, Refund, Void |
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 |
Parameter | Required | Description |
---|---|---|
Customer firstName | true | Customer firstname |
Customer lastName | true | Customer lastname |
Customer Email | true | Customer Email |
Customer billingPhone | true | Customer billing phone |
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 |
iDeal Debit
Field | Required |
---|---|
bic | true |
description | true |
billingCity | false |
ipAddress | false |
language (customer.extraData) | false |
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
Field | Type | Description |
---|---|---|
extraData.recipientAccountReference | string | Recipient's account reference |
extraData.recipientCountry | string | Recipient's country |
extraData.recipientFirstName | string | Recipient's first name |
extraData.recipientLastName | string | Recipient's last name |
customer.billingAddress1 | string | Sender address 1 |
customer.billingAddress2 | string | Sender address 2 |
customer.billingCity | string | Sender city |
customer.billingCountry | string | Sender country |
customer.firstName | string | Sender first name |
customer.lastName | string | Sender last name |
customer.identification | string | Merchant's unique customer ID |
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 |
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | Server-To-Server, iFrame Form & payment.js Integration | Debit, Preauthorize, Capture, Refund, Void |
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 |
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | iFrame Form & payment.js Integration | All |
ApplePay | Server-to-Server | Debit, Preauthorize, Capture, Void, Refund |
none
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Direct Carrier Billing (SMS) | Server-to-Server | Debit only |
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 |
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
BitCoin | Full-Page Redirect | Debit |
none
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | Payment Form & payment.js Integration | Register, Deregister, Debit, Pre-authorise, Capture, Void, Refund |
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) |
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 |
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. |
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. |
The following extraData
fields are optional for these transaction types:
Parameter | Allowed values | Description |
---|---|---|
extraData.MITReason | Merchant initiated Transaction reason. | |
extraData.originalAmount | Original amount of the preauthorize. |
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 | Array of Arrays with key, value pair |
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Credit card | payment.js, Redirect & iFrame Form | all |
description
(required)useragent
(extra data, required): The browser's useragent (even for recurring transactions).descriptor
(extra data, optional): needs to be enabled on Daleny's side too.identification
(customer, required)email
(customer, required)IP address
(customer, required)Reference Transaction
(maybe required): Depending on your MCC, it might be required to reference a 3DS authed transaction for payouts.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.
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 |
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"}}" \n 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"}}" |
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 |
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.
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 |
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 |
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) |
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) |
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. |
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | payment.js, Full-Page Redirect | Register, Debit, Preauthorize, Capture, Refund, Void, Moto |
Parameter | Required | Description |
---|---|---|
customer.identification | true | Unique customer identifier generated by merchant |
Parameter | Required | Description |
---|---|---|
customer.identification | conditional | Required if merchant wants to use tokenization feature |
amount | true | Transaction amount: decimals separated by a "." (dot) |
Parameter | Required | Description |
---|---|---|
amount | true | Transaction amount: decimals separated by a "." (dot) |
currency | true | 3 letter currency code |
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 |
RapiPago | Full-Page Redirect | Debit |
RedPagos | Full-Page Redirect | Debit |
Serviepag | Full-Page Redirect | Debit |
SevenEleven | Full-Page Redirect | Debit |
Speedmart | Full-Page Redirect | Debit |
Tucan | Full-Page Redirect | Debit |
Wafacash | Full-Page Redirect | Debit |
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 |
Depending on the country and receiving bank, a variety of additional parameter may be required (refer to dLocal's documentation).
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.
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | Full-Page Redirect | Debit |
EasyPay | Full-Page Redirect & Server-to-server | Debit |
invoice
(optional): If missing, a random id will be generated. The invoice will always be included in the response.success URL
(required for redirect)cancel URL
(required for redirect)Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Credit card | iFrame Form & payment.js Integration | Debit, Preauthorize, Capture, Void, Register, Deregister, Refund |
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 |
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 |
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 |
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 |
Field | Required |
---|---|
description | true |
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 |
You can find more information about the options request here: Options Request
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
.
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 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.
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 |
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
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 |
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
Extra Data | Required | Description |
---|---|---|
Description | true | |
Customer - Ip Address | true |
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 |
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 |
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | iFrame Form & payment.js Integration | All |
SEPA Direct Debit | iFrame Form & Server-to-server | All |
none
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
SEPA Direct Debit | Server-to-Server | Debit, Debit with Register, Recurring Debit, Refund, Register, Payout, Chargeback, Chargeback-reversal |
Extra 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 |
Extra 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 |
Extra 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 |
Extra 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 |
AT, BE, CY, EE, FI, FR, DE, GR, IE, IT, LV, LT, LU, MT, MC, NL, PT, SK, SM, SI, ES
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
ESR | Server-To-Server | Debit |
additionalId1
: mandatory - must contain the reference number for the bill.description
: optional - description for the billcustomer.firstName
: optionalcustomer.lastName
: optionalcustomer.billingAddress1
: optionalcustomer.billingPostcode
: optionalcustomer.billingCity
: optionalcustomer.billingCountry
: optionalIn the response you will find the key qrCode
within the extraData
element.
This contains the base64-encoded Image for the QR Code.
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 Method | Transaction Flows | Transaction Types |
---|---|---|
Bank Transfer | Redirect | Debit |
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 |
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.
{
"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 |
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | iFrame Form & payment.js Integration | Debit, Register, Preauthorize, Capture, Void, Refund, Deregister |
none
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
BankTransfer | iFrame Payment Form | Debit (no recurring) |
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 |
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Bank Transfer | Server-to-Server | debit, register and payout |
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 |
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 |
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 |
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | iFrame Form & payment.js Integration | All (no recurring, CVV must be present) |
3D-Secure Verification parameters are ignored entirely, however the underlying gateway manages and changes the behavior of 3D-Secure requirements on demand.
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | iFrame Form & payment.js Integration | All |
Creditcard
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
BitCoin | Full-Page Redirect | Debit, Payout |
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 |
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
BankTransfer | Full-Page Redirect | Debit, Register |
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 |
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Direct Carrier Billing (SMS) | Redirect & iFrame Form | Debit only |
none
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | Server-To-Server | Debit, Register, Preauthorize, Capture, Refund, Deregister, Recurring Debit/Preauthorize |
Parameter | Required | Description |
---|---|---|
customer.billingPhone | true | Customer phone number |
customer.email | true | Customer email address |
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
GiroPay | Full-Page Redirect | Debit only |
EPS | Full-Page Redirect | Debit only |
none
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
BankTransfer | Full-Page Redirect, Server-To-Server | Debit, Register, Deregister, Refund |
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. |
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. |
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 is not an adapter itself, but a common type of payment supported by some listed adapters.
Only GooglePay protocol version 2 (ECv2) is supported.
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:
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\":\"...\", ...}\"}",
...
}
A billing address is not required for processing transactions, therefore no billing address parameters need to be given with a card.
PAN_ONLY
CRYPTOGRAM_3DS
AMEX
DISCOVER
INTERAC
JCB
MASTERCARD
VISA
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Bank Transfer | Full Page Redirect | Debit |
Credit Card | Full Page Redirect | Debit |
HNCB QR | Full Page Redirect | Debit |
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. |
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.
The required currency is AUD (Australian dollar) for Australia and NZD (New Zealand dollar) for New Zealand.
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Humm | Full-Page Redirect | Debit, Refund |
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 |
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 |
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 |
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. |
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. |
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 |
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 |
customer.billingCity
: required for Register, Debitcustomer.billingCountry
: required for Register, Debitcustomer.billingLastname
: required for Register, DebitibanCustomer.iban
: required for Register, Debittransaction.description
: required for Debitcustomer.identification
customer.billingCountry
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.
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 |
*Documentation regarding Google Pay and Apple Pay can be found here: Google Pay, Apple Pay
extraData.ideal_issuer
For the issuer you may do an Options Request using the
identifier ideal-issuers
. It will return a list of available issuer for iDeal.
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.
3DS Test cards can be found here: Ingenico Direct Test Cases
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | iFrame Form & payment.js Integration | only Debit & Refund |
none
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | iFrame Form & payment.js Integration | Debit only |
customer.identification
: mandatorycustomer.firstName
: mandatorycustomer.lastName
: mandatorycustomer.email
: mandatorycustomer.ipAddress
: mandatoryPayment 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 |
Creditcard | iFrame Form & payment.js Integration | All |
Creditcard
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | Full-Page Redirect | Debit only |
iDeal | Full-Page Redirect | Debit only |
none
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
DirectDebit | Full-Page Redirect | Debit, Refund |
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 |
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 |
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 |
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) |
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 |
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 |
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.
POST https://gateway.tillpayments.com/api/v3/transaction/{apiKey}/prepare-(debit or preauthorize)
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 | true | required for Klarna's authorization process |
↳customer.billingCountry | string | true | required for session initialization |
↳customer.birthDate | string | true | required for Klarna's authorization process |
↳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.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:
pay_now
payment method - default = true), as described in the Klarna Documentation: finalize
is a special call that is needed for the Pay Now payment method category in multistep checkouts. In a multistep checkout scenario the authorize()
call can be triggered when the consumer selects the payment method and then presses the "continue" button to go to the next step of the checkout. With Pay Now as payment method category however transferring the funds should only happen once the consumer has pressed the "buy" button to finalize the purchase. To cater for such a scenario authorize() can still be called when the consumer has selected the payment method, but with the auto_finalize
property set to false.<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
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 | true | required to create Klarna Order |
↳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 |
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 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 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.
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 |
If you like to send the discount information for a specific Item, you will have to send / add these on the corresponding Item Level.
Name | Type | Required | Description |
---|---|---|---|
items | object | false | object containing Items |
↳items.item.totalDiscountAmount | string | true | Amount of Item Discount (amount has to be positive), decimals separated by a "." (dot) |
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Invoice | Full-Page Redirect | Debit, Authorize, Refund |
none
The required currency is AUD (Australian dollar).
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | Full-Page Redirect | Debit, Refund |
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 |
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. |
Name | Type | Required | Description |
---|---|---|---|
extraData.note | string | false | A brief description of the reason for the refund. |
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
E-Wallet | Full-Page Redirect | Debit, Debit with Register, Refund, Payout |
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 |
Name | Type | Required | Description |
---|---|---|---|
identification | string | false (but recommended) | Unique ID of the customer |
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | iFrame Form & payment.js Integration | Debit, Register, Preauthorize, Capture, Void, Refund, Deregister |
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) |
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | iFrame Form & payment.js Integration | All |
Sofortüberweisung | Full-Page Redirect | Debit only |
none
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | HPP & payment.js integration | Register, Debit, Preauthorize, Capture, Void, Refund, Recurring |
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 |
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Direct Carrier Billing (SMS) | Redirect & iFrame Form | Debit only |
PayByCall | Redirect & iFrame Form | Debit only |
none
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 |
none
The required currency is EUR (Euro).
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Bancontact | Full-Page Redirect, HPP(iFrame) | Debit, Refund, Capture, Void, Preauthorize |
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 |
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Credit card | HPP & payment.js Integration | All |
Parameter | Type | Required | Description |
---|---|---|---|
extraData.tax | string | false |
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 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 |
Parameter | Description |
---|---|
extra.descriptor | 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) |
To fully set up the Neteller Connector you will have to fulfill the following (mandatory) steps:
[email protected]
) to set up your Webhook URL.
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Neteller | Full-Page Redirect | Debit |
Neteller | false interaction | Payout |
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 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
Name | Type | Required | Description |
---|---|---|---|
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. |
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 |
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 . |
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. |
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 |
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. |
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | iFrame Form & Full-Page Redirect | All |
Creditcard (Direct Post API) | iFrame Form & payment.js Integration | All |
Direct Post API
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | iFrame Form & payment.js Integration | Debit, Register, Preauthorize, Capture, Void, Refund, Deregister |
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 |
Field | Required |
---|---|
customer.email | true |
customer.billingCountry | true |
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 |
NuveiDcc adapter is used to proceed payments with Nuvei using DCC (Dynamic Curency Conversion) service.
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
Name | Type | Required | Description | |
---|---|---|---|---|
requestDcc | boolean | false | To enable DCC service - requestDcc should be true |
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | iFrame Form & payment.js Integration | Debit, Register, Preauthorize, Capture, Void, Refund, Deregister |
Field | Required |
---|---|
customer.email | true |
customer.billingCountry | true |
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | Full-Page Redirect | Debit only |
none
The required currency is AUD (Australian dollar).
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Omipay | Full-Page Redirect | Debit, Refund |
none
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | Redirect | Pre-authorise, Capture, Void, Refund |
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. |
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. |
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. |
The required currency is AUD (Australian dollar).
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Openpay | Full-Page Redirect | Debit, Refund |
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 |
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 |
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
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | HPP & payment.js Integration | Debit, Refund |
Parameter | Required | Description |
---|---|---|
description | true | |
extraData.serviceType | conditional | Default value can be set on connector config |
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Pago46 | Full-Page Redirect | Debit |
none
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.
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
SID_EFT | Full-Page Redirect | Debit, Refund |
DPO Pay mobile | Full-Page Redirect | Debit, Refund |
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 |
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 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 |
Merchant ID
and Hash Code Generation Key
are provided by Paygent.
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Bank Transfer | Redirect | Debit |
goods
, add more Items
, but notice only Item Name
and Item Price
are countedPayment Method | Transaction Flows | Transaction Types |
---|---|---|
Wallet | Full-Page Redirect, Server to Server | Debit, Payout |
Parameter | Required | Description |
---|---|---|
customer.firstName | true | |
customer.lastName | true | |
customer.email | true | |
customer.ipAddress | false |
Parameter | Required | Description |
---|---|---|
customer.ipAddress | conditional | If no ipAddress is passed, the ipAddress of the references debit transaction will be used |
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | iFrame Form & payment.js Integration | All |
Creditcard
Name | Description | Required |
---|---|---|
extraData.paymentMode | Overwrite payment mode, see https://docs.payline.com/display/DT/Codes+-+Mode | Needed when using Contract Number (PASS) |
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 |
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 |
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 |
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 |
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 |
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | iFrame Form & payment.js Integration | All |
The same customer identification must be used for all affected transactions (for the initial, as well as for subsequent transactions).
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | iFrame Form & payment.js Integration | All + Incremental Authorizations |
Name | Type | Required | Description |
---|---|---|---|
extraData.shipFromZip | string | false | |
items[].extraData.customsTax | string | false |
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Credit card | payment.js, Redirect & iFrame Form | all |
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}.
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 Method | Transaction Flows | Transaction Types |
---|---|---|
Payoneer | Full-Page Redirect | Debit, Payout, Refund |
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 |
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
PayPal | Full-Page Redirect | All |
PayPal supports different kind of payments:
Capture
requestA 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).
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 |
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 |
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Paysafecard | Full-Page Redirect | Debit, Refund |
none
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.
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 |
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.
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
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 |
Creditcard
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 |
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 |
none
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | iFrame Form & payment.js Integration | Debit, Register, Preauthorize, Capture, Void |
none
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
CreditCard | payment.js | Debit, Preauthorize, Capture, Refund, Void, Register |
ApplePay | Payment Token | |
GooglePay | Payment Token | |
Bizum | Redirect | Debit |
Be aware that there is a format restriction for the required Parameter
DS_MERCHANT_ORDER
, which represents the given MerchantTransactionId
.
Please consult the official Redsys Api Documentation for further information - (https://pagosonline.redsys.es/conexion-rest.html)
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 |
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. |
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.
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 who has to be sent in the Api request, has to be between 4 and 12 Characters long to work for Bizum.
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | iFrame Form & payment.js Integration | Debit, Register, Preauthorize, Capture, Void, Refund, Deregister |
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | Full Page Redirect | Debit, Preauthorize, Capture, Void, Refund |
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 installmentspay-in-4 : to split the amount into 4 installmentslater : 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 ) |
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.
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Bank Transfer | Full-Page Redirect & Server-to-Server | Register & Debit |
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 |
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | iFrame Form | All |
Cash-To-Code | iFrame Form | Debit only |
none
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
DirectDebit | iFrame Form & Server-To-Server | Debit, Register, Deregister, Refund |
CreditTransfer | iFrame Form & Server-To-Server | Payout |
Depending on your setup SepaExpress 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.
additionalId1
: must contain the Order ID. One Order ID can contain more than one transaction! Relevant for SepaExpress to detect the sequence of the transaction and for refunds. Allowed pattern ([A-Za-z0-9]|[+|\?|/|\-|:|(|)|.|,|']){1,50}
additionalId2
: for recurring transactions it must contain the Contract ID: A unique identifier of the user or contract of the user on merchant level. One Contract ID can contain more than one Order IDs! Relevant to detect the sequence of the transaction.description
: mandatorycustomer.firstName
: mandatorycustomer.lastName
: mandatorycustomer.iban
: mandatory (for Server-to-Server)customer.bic
: optionalcustomer.mandateId
: mandatory. Allowed pattern ([A-Za-z0-9]|[+|\?|/|\-|:|(|)|.|,|']){1,35}
customer.mandateDate
: mandatoryPayment Method | Transaction Flows | Transaction Types |
---|---|---|
DirectDebit | iFrame Form & Server-To-Server | Debit, Register, Deregister, Refund, Payout |
Depending on your setup SepaExpressV2 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.
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 | |
customer.bic | 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 |
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | iFrame Form & payment.js Integration | Debit, Register, Preauthorize, Capture, Void, Refund, Deregister |
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.
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
.
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Skrill | Full-Page Redirect | Debit, Refund, Payout |
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) |
The customer verification service is used to check if a customer, identified by an email address, is registered with Skrill.
Name | Type | Required | Description |
---|---|---|---|
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. |
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
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.
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 |
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | iFrame Form & payment.js Integration | All |
none
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 |
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.
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.
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 |
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 |
Parameter | Required | Description |
---|---|---|
customer.billingCountry | conditional | Default value can be set on connector config |
extraData.ref1 | false | Straight2Bank ref1 |
extraData.ref2 | false | Straight2Bank ref2 |
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
EPS | Redirect | Debit only |
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
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | payment.js, Redirect & iFrame Form | only debit, refund and payout |
none
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | Redirect | debit, refund |
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 |
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. |
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | Server-To-Server | Refund only |
none
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
BankTransfer | Full-Page Redirect, QR-Code with Redirect | Debit, Refund |
Transaction fields | Required | Description |
---|---|---|
description |
true | Required for all requests |
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
TNG | pushed by provider | Debit |
none
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.
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.
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
BankTransfer | Server-To-Server | Payout |
Parameter | Required |
---|---|
customer.firstName | true |
customer.lastName | true |
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 |
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | iFrame Form & payment.js Integration | All |
none
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Bank Transfer | iFrame Form | All |
iDeal | iFrame Form | All |
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 |
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | Server-To-Server | All |
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. |
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | iFrame Form & payment.js Integration | All |
Direct Debit (eCheck Sales) | Server-To-Server | Debit / Refund / Void |
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) |
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
BankTransfer | Hosted Payment Page, Embedded checkout | Debit, Refund, Partial refund |
Pix | Redirect | Debit, Refund |
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.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. |
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 |
Transaction fields | Required | Description |
---|---|---|
customer.identification | true | for debit transactions |
Endpoint | Parameter | Description |
---|---|---|
bank-list | - | Returns a list of available banks with there id that can be used for the bank_id |
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
BankTransfer | Redirect, QR | Debit |
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.
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Kiosk | Server-to-Server | Debit |
Cash Payment | Server-to-Server | Debit |
Wallet | Redirect & iFrame | Debit |
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.
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | iFrame Form & payment.js Integration | Debit, Register, Preauthorize, Capture, Void, Refund, Deregister |
Creditcard
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 |
Name | Type | Required | Description |
---|---|---|---|
Currency | string | true | 3 letters (ISO 4217) |
Amount | number | true | Transaction amount |
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 |
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 |
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 |
none
Parameter | Allowed Values |
---|---|
currency | NZD, AUD |
customer.billingCountry | NZ, AU |
customer.identification | Anything |
customer.email | Anything |
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | iFrame Form & Full-Page Redirect | All |
Creditcard
Parameter | Required | Description |
---|---|---|
extraData.narrativeLine2 | false | Additional details about the payment e.g. order number, telephone number |
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | payment.js, Redirect & iFrame Form | All + Incremental Authorizations |
none
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | iFrame Form & payment.js Integration | Register, Preauthorize, Debit, Refund, Capture, Void |
Parameter | Required | Types | Value |
---|---|---|---|
extraData.businessAppType |
false | Register, Debit, Preauthorize | one of [FUND_TRANSFER , HIGH_RISK_SECURITIES_PURCHASE , WALLET_TRANSFER ] |
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Wallet | Full-Page Redirect | Debit, Preauthorize, Capture, Void, Refund |
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) |
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 |
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:
zipId
zipUri
zipRedirectUri
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"
}
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
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 | {} |
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 |
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 |
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
Name | Type | Example values |
---|---|---|
identification (customer) |
string | 123 |
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 |
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 | IXOLIT GmbH |
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 |