Simulator (Testing connector)
The Simulator is an adapter for integration & testing purposes only. No real transaction will be performed at any payment provider.
Test data
Credit cards
Brand | Number | Result |
---|---|---|
Visa | 4111 1111 1111 1111 | Success |
Visa | 4242 4242 4242 4242 | Failure |
Mastercard | 5555 5555 5555 4444 | Success |
Mastercard | 5105 1051 0510 5100 | Failure |
Diners | 3800 000000 0006 | Success |
Amex | 3782 8224631 0005 | Success |
Direct Debit IBANs
You can use any IBAN you like.
The last four digits will control the result:
Last 4 digits | Result |
---|---|
1111 | Success |
2222 | Pending |
2003 | Transaction Declined |
2006 | Insufficient funds |
Example: AT00 0000 0000 0000 1111
=> Successful transaction
Simulate pending status change
You may simulate a transaction status change by adding the extraData pendingOutcome
. Do note that this simulation
may only be evoked by submitting an IBAN with outcome pending
(ending with 2222) via the simulator payment page.
The status will change in approx. 5 minutes after submission.
Extra data | Value | Result |
---|---|---|
pendingOutcome | success | Status will change from pending to success |
pendingOutcome | anyOtherString | Status will change from pending to error |
Adyen
Payment Methods
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | iFrame Form & payment.js Integration | All |
AliPay | Full-Page Redirect | Debit, Refund |
Giropay | Full-Page Redirect | Debit, Refund |
EPS | Full-Page Redirect | Debit, Refund |
DirectDebit | Full-Page Redirect | Debit, Refund |
iDeal | Full-Page Redirect | Debit, Refund |
Dotpay | Full-Page Redirect | Debit, Refund |
DragonPay | Full-Page Redirect | Debit, Refund |
Boleto | Full-Page Redirect | Debit, Refund |
Bancontact | Full-Page Redirect | Debit, Refund |
Qiwi | Full-Page Redirect | Debit, Refund |
Sofort | Full-Page Redirect | Debit, Refund |
UnionPay | Full-Page Redirect | Debit, Refund |
WeChatPay | Full-Page Redirect | Debit, Refund |
Additional parameters
none
AmazonPayments
Payment Methods
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
AmazonPayments | payment.js | All |
Integration guide
AmazonPayments require you to display the Amazon Widget on your Checkout page. This is handled by the payment.js integration.
1. Embed the payment.min.js in your page
<script data-main="payment-js" src="https://gateway.ixopay.com/js/integrated/payment.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- IDs of the DIV elements
- Javascript function to handle AmazonPayments events
- Additional parameters (see below in example, refer to AmazonPayments Documentation for possible options)
- Javascript function to handle initialization completion
<script type="text/javascript">
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 includecode
andmessage
with Amazon error informationlogin.complete
: customer successfully logged inaddressBook.error
: failed to show addressBook widget,data
will includecode
andmessage
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 includecode
andmessage
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 includecode
andmessage
with Amazon error information
The individual widgets can be shown and hidden with payment.js methods.
<script type="text/javascript">
// 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 type="text/javascript">
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>
ApplePay
ApplePay is not an adapter itself, but a common type of payment supported by some of the listed adapters.
Prerequisites
For processing transactions with ApplePay tokens, the Gateway has to be configured with your Payment Processing certificate first. Please ask your Gateway administrator to do so.
Instruction on how to acquire this certificate can be found directly in the Apple documentation: https://developer.apple.com/documentation/apple_pay_on_the_web/setting_up_your_server
Transaction Processing
For ApplePay transactions acquire a Payment Token through your iOS App, or ApplePay 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>
Authorize.net
Payment Methods
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | iFrame Form | All |
Additional Parameters
none
Banca Intesa
Payment Methods
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | Server-To-Server, iFrame Form & payment.js Integration | Debit, Preauthorize, Capture, Refund, Void, Register |
Additional Parameters
Parameter | Required | Description |
---|---|---|
extraData.installment | No | Numeric count of installments |
BillPay
Payment Methods
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
DirectDebit | Server-To-Server | Register, Debit, Refund |
Invoice | Server-To-Server | Register, Debit, Refund |
Note: any Debit transaction automatically creates the authorization & the invoice on BillPay side.
Mandatory parameters
Extra data | Mandatory | Description |
---|---|---|
Description | No | Description that should be shown on the bank statement |
extraData.expectedDaysTillShipping |
Yes | integer in days |
extraData.shippingMethod |
Yes | any string |
extraData.itemIdentification |
For Register | any string, used as articleId |
extraData.itemName |
For Register | any string, used as articleName |
customer.identification |
Yes | |
customer.firstName |
Yes | |
customer.lastName |
Yes | |
customer.email |
Yes | |
customer.billingAddress |
Yes | all address details |
customer.birthDate |
Yes | e.g. 1980-01-01 |
customer.iban |
Yes | for DirectDebit |
customer.extraData.salutation |
Yes | Mr., Mrs., Hr., Fr., etc. |
customer.extraData.type |
Yes | guest , existing or new |
items |
Yes | at least one item |
extraData.paymentType |
No | one of invoice , directDebit - overrules configuration |
extraData.shippingPriceNet |
No | decimal |
extraData.shippingPriceGross |
No | decimal |
extraData.rebateNet |
No | decimal |
extraData.rebateGross |
No | decimal |
extraData.orderAmountNet |
No | decimal |
extraData.shippingTrackingNumber |
No | string |
customer.extraData.title |
No | string |
customer.extraData.copmanyLegalForm |
No | string |
customer.extraData.companyHolderName |
No | string |
customer.extraData.companyTaxNumber |
No | string |
item.extraData.category |
No | string |
item.extraData.subcategory1 |
No | string |
item.extraData.subcategory2 |
No | string |
item.extraData.priceNet |
No | string |
Braintree
Payment Methods
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
PayPal | payment.js | All |
Integration guide
Braintree requires you to display the PayPal Button on your Checkout page. This is handled by the payment.js integration.
1. Embed the payment.min.js in your page
<script data-main="payment-js" src="https://gateway.ixopay.com/js/integrated/payment.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:
- ID of the DIV element
- Boolean option to state whether device data should be gathered (needed for merchant initiated Card-On-File transactions)
- Javascript function to handle payment completion
- Javascript function to handle error events
- Javascript function to handle cancellation events
- PayPal options (see below in example, refer to Braintree Documentation for possible options. The option 'flow' is set to 'vault' automatically). Please refer to the Paypal Documentation for the different button options.
<script type="text/javascript">
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 Ixopay 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
};
payment.initBraintreePaypal(
'public-integration-key',
'paypal-button-div',
false, // gatherDeviceData, set true for merchant initiated card-on-file transactions
completeHandler,
errorHandler,
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.
Transaction API Additional Parameters
When sending the payment token received by the completeHandler to the Transaction API, the following extraData
keys can be used:
Key | Description |
---|---|
merchantAccountId | The merchant account ID used to create a transaction, which also defines the currency. If not given, the default merchant account ID is used. |
deviceData | Only required for Card-On-File transactions. Use device data returned by the completeHandler. |
Customer ExtraData Parameters:
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 |
Customer Identification Mandatory
The parameter customer.identification
is mandatory in the following cases:
- When creating a new register transaction
- When creating a debit or preauthorize transaction with the flag
withRegister
- When creating a merchant initiated Card-On-File transaction
Cardeta
Payment Methods
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | Server-To-Server, iFrame Form & payment.js Integration | Debit, Register, Preauthorize, Capture, Refund, Deregister, Recurring Debit/Preauthorize |
Additional Mandatory Parameters
Parameter | Required | Description |
---|---|---|
customer.billingPhone | Yes | Customer phone number |
customer.email | Yes | Customer email address |
CashFlows
Payment Methods
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard (without 3DS) | iFrame Form & payment.js Integration | All |
Additional parameters
Extra data | Mandatory | Description |
---|---|---|
Customer - Address | yes (for AMEX) | |
Customer - City | yes (for AMEX) | |
Customer - State | yes (for AMEX) | |
Customer - ZIP | yes (for AMEX) | |
Customer - Country | yes (for AMEX) | |
Customer - Email | yes (for AMEX) | |
Customer - IP | yes (for AMEX) |
CheckoutCom
Payment Methods
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | iFrame Form & payment.js Integration | Debit, Register, Preauthorize, Capture, Void, Refund, Deregister |
Additional Parameters
none
CKB
Payment Methods
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | Server-To-Server, iFrame Form & payment.js Integration | Debit, Preauthorize, Capture, Refund, Void |
Additional Parameters
Parameter | Required | Description |
---|---|---|
extraData.cardExpirationDay | No | Expiration day of the card. Defaults to end of month if not set. |
extraData.udf1 | No | User defined field. |
extraData.udf2 | No | User defined field. |
extraData.udf3 | No | User defined field. |
extraData.udf4 | No | User defined field. |
extraData.udf5 | No | User defined field. |
Clearhaus
Payment Methods
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | iFrame Form & payment.js Integration | All |
ApplePay | Server-to-Server | Debit, Preauthorize, Capture, Void, Refund |
Additional Parameters
none
CM
Payment Methods
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Direct Carrier Billing (SMS) | Server-to-Server | Debit only |
Additional parameters
Extra data | Mandatory | Description |
---|---|---|
from | Yes | Originators of the message alphanumeric: max length 11 characters numeric: max length 17 characters (must start with 00 |
body | Yes | Message to be sent alphanumeric: max 160 characters |
type | Yes | TEXT or BINARY |
to | Yes | Recipient MSISDN including country code, e.g. 0031 |
tariff | No | End user tariff 0-3 decimals |
header | No | User data header of binary message (Do not add length byte at start) |
operator | No | Mobile Country Code / Mobile Network Combination |
CoinGate
Payment Methods
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
BitCoin | Full-Page Redirect | Debit |
Additional Parameters
none
Credorax
Payment Methods
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | iFrame Form & payment.js Integration | All |
Additional Parameters
Creditcard
- 3D-Secure Verification Parameters
Dalenys
Payment Methods
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Credit card | payment.js, Redirect & iFrame Form | all |
Additional Parameters
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.
Dimoco
Payment Methods
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Direct Carrier Billing (SMS) | Redirect & iFrame Form | Debit only |
Credit card | payment.js, Redirect & iFrame Form | all |
EPS | Redirect | Debit only |
Additional Parameters
none
Options Request
EPS
For EPS you can retrieve the bank list via the Options request identifier epsBankList
.
You can display this list to your customer in order to pre-select the desired bank.
The result contains a list of banks available for EPS, with BIC code as key and bank name as value.
The chosen BIC code of the chosen bank should then be passed as bic
element in the IbanCustomer
element of the XML.
dLocal
Payment Methods
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Credit card | iFrame Form & payment.js Integration | Debit, Preauthorize, Capture, Void, Register, Deregister, Refund |
BankTransfer | Full-Page Redirect | Debit, Payout |
Abitab | Full-Page Redirect | Debit |
Baloto | Full-Page Redirect | Debit |
Boleto | Full-Page Redirect | Debit |
Cash | Full-Page Redirect | Debit |
Davivienda | Full-Page Redirect | Debit |
Efecty | Full-Page Redirect | Debit |
Oxxo | Full-Page Redirect | Debit |
PagoEfectivo | Full-Page Redirect | Debit |
PagoExpress | Full-Page Redirect | Debit |
PagoFacil | Full-Page Redirect | Debit |
RapiPago | Full-Page Redirect | Debit |
RedPagos | Full-Page Redirect | Debit |
Additional Parameters
Credit card
Field | Mandatory |
---|---|
customer.firstName | Yes |
customer.lastName | Yes |
customer.billingCountry | Yes |
customer.nationalId | Yes |
customer.billingAddress1 | Yes in India |
Note: 3D-Secure behaviour is dependent on dLocal's configuration. For Mexico you may set 3dsecure
explicitly to OPTIONAL
.
APM & BankTransfer
Field | Mandatory |
---|---|
customer.firstName | Yes |
customer.lastName | Yes |
customer.email | Yes |
customer.nationalId | Yes |
extraData.bank_id | Optional (see Options Request below) |
Payouts
Depending on the country and receiving bank, a variety of additional parameter may be required (refer to dLocal's documentation).
Options Request
Debit - BankTransfer
For BankTransfer you can retrieve a list of available banks in a country via the
Options request identifier getBankList
. You can display this list to your
customer having him selecting his bank. The selected bank code should be
submitted as bank_id
in extra data.
EasyPay (ePay.bg)
Payment Methods
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | Full-Page Redirect | Debit |
EasyPay | Full-Page Redirect & Server-to-server | Debit |
Additional Parameters
invoice
(optional):
If missing, a random id will be generated. The invoice will always be returned in the response.success URL
(required for redirect)cancel URL
(required for redirect)
Ecommpay
Because of a restriction on Ecommpay side, you need to set the particular setting "Accept postbacks from other connectors (list GUIDs comma-separated)" inside the connector where you passed the notification URL to Ecommpay if you want to configure multiple connectors.
As value you need to pass the connector ID from all other Ecommpay connectors of the same account, example: "CO-8ce8-4ed7-e9d9-9261-715a-fad8,CO-02c7-62dd-d0e8-5918-6373-7e75". With this setting, all connectors will work with the same notification URL. This setting only needs to be set on the connector where you passed the notification URL to Ecommpay.
If you only have one connector per Ecommpay account, you don't need to configure this setting.
Payment Methods
Payment Method | Transaction Flows | Transaction Types | Supported Currencies |
---|---|---|---|
Alipay | Redirect | Debit, Refund* ** | AUD, CAD, CNY, EUR, GBP, HKD, JPY, SGD, USD |
China Union Pay (CUP P2P) | Redirect | Debit, Payout* | CNY |
DOKU Wallet | Redirect | Debit, Payout* | IDR |
Nganluong Wallet | Redirect | Debit, Payout* | VND |
Bank Transfer Indonesia | Redirect | Debit, Payout* | IDR |
Bank Transfer Malaysia | Redirect | Debit, Payout* | MYR |
Bank Transfer Philippines | Redirect | Debit, Payout* | PHP |
Bank Transfer Korea | Redirect | Debit, Payout* | KRW |
Bank Transfer Thailand | Redirect | Debit, Payout* | THB |
Bank Transfer Thailand QR | Redirect | Debit | THB |
Bank Transfer Vietnam | Redirect | Debit, Payout* | VND |
Bank Transfer Vietnam QR | Redirect | Debit | VND |
*Payout/Refund doesn't require any customer interaction or redirection.
**For Alipay refunds you have to activate the 'merchant_refund_id' field on Ecommpay side. Please talk to your Ecommpay Account Manager for further information.
Additional parameters for BankTransfer Debit
Extra data | Mandatory | Description |
---|---|---|
Customer - Identification | Yes | Unique customer identification, should be used on multiple payments if it is the same customer |
Customer - First name | Yes | For Korea: the name entered needs to be the same as the account holder |
Customer - Last name | Yes | For Korea: the surname entered needs to be the same as the account holder |
Customer - EMail | Yes | |
Customer - Phone | No | |
Customer - Country | No | |
Customer - City | No | |
Customer - State | No | |
Customer - Postcode | No | |
Customer - National Id | No |
Additional parameters for BankTransfer Payout
Extra data | Mandatory | Description |
---|---|---|
Customer - Identification | Yes | Unique customer identification, should be used on multiple payments if it is the same customer |
Customer - First name | Yes | |
Customer - Last name | Yes | |
Customer - EMail | Yes | |
Customer - IP Address | Yes | |
extraData.account_number | Yes | Customer account number |
extraData.bank_id | Yes | Bank identifier* |
extraData.bank_branch | Yes | Bank branch identifier |
extraData.bank_city | Yes | Bank branch city |
extraData.region_id | Yes | Region identifier** |
- To retrieve a list of bank identifiers you need to send an options request with the identifier
debit-bank-list
orpayout-bank-list
and as parameter the bank name (available: vietnam, malaysia, philippines, indonesia, thailand).
** To retrieve a list of region identifiers you need to send an options request with the identifier region-list
and as parameter the bank name (available: vietnam, malaysia, philippines, indonesia, thailand).
You can find more information about the options request here: Options Request
Additional parameters for AliPay / DOKU Wallet / Nganluong Wallet Debit
Extra data | Mandatory | Description |
---|---|---|
Customer - Identification | No | Unique customer identification, should be used on multiple payments if it is the same customer |
Customer - First name | No | |
Customer - Last name | No | |
Customer - EMail | No | |
Customer - Phone | No | |
Customer - Country | No | |
Customer - City | No | |
Customer - State | No | |
Customer - National Id | No |
Additional parameters for China Union Pay Payout
Extra data | Mandatory | Description |
---|---|---|
Customer - Identification | Yes | Unique customer identification, should be used on multiple payments if it is the same customer |
Customer - First name | Yes | |
Customer - Last name | Yes | |
Customer - IP Address | Yes | |
Customer - EMail | Yes | |
Customer - Phone | Yes | |
Customer - Address | Yes | |
Customer - Country | Yes | Need to be CN |
Customer - City | Yes | |
Customer - State | Yes | |
Customer - Postcode | Yes | |
extraData.bank_id | Yes | Bank identifier* |
extraData.bank_branch | Yes | Bank branch identifier |
extraData.bank_city | Yes | Bank branch city |
extraData.region_id | Yes | Region identifier** |
extraData.doc_number | No | Document number |
- To retrieve a list of bank identifiers you need to send an options request with the identifier
debit-bank-list
orpayout-bank-list
and as parameter the bank name (available: vietnam, malaysia, philippines, indonesia, thailand).
** To retrieve a list of region identifiers you need to send an options request with the identifier region-list
and as parameter the bank name (available: vietnam, malaysia, philippines, indonesia, thailand).
You can find more information about the options request here: Options Request
Additional parameters for Alipay Refund
Extra data | Mandatory | Description |
---|---|---|
Description | Yes | |
Customer - Ip Address | Yes |
Additional parameters for Nganluong Wallet Payout
Extra data | Mandatory | Description |
---|---|---|
Customer - Identification | Yes | Unique customer identification, should be used on multiple payments if it is the same customer |
Customer - IP Address | Yes | |
extraData.account_number | Yes |
Additional parameters for DOKU Wallet Payout
Extra data | Mandatory | Description |
---|---|---|
Customer - Identification | Yes | Unique customer identification, should be used on multiple payments if it is the same customer |
Customer - First name | Yes | |
Customer - Last name | Yes | |
Customer - EMail | Yes | |
Customer - IP Address | Yes | |
Customer - Phone | Yes | |
Customer - City | Yes | |
Customer - Country | Yes | |
Customer - Birthday | Yes | |
extraData.wallet_number | Yes | Customer account number |
extraData.doc_number | Yes | Document number |
extraData.doc_type | Yes | Document type |
extraData.doc_issue_country | Yes | An ISO 3166-1 (alpha-2) code of country that issued the document |
EmerchantPay
Payment Methods
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | iFrame Form & payment.js Integration | All |
SEPA Direct Debit | iFrame Form & Server-to-server | All |
Additional Parameters
none
ESR / SwissQR Bill
Payment Methods
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
ESR | Server-To-Server | Debit |
Additional parameters
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
: optional
Return Values
In the response you will find the key qrCode
within the extraData
element. This contains the Base64-encoded Image for the QR Code.
expressÜberweisung
Payment Methods
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
BankTransfer | iFrame Payment Form | Debit (no recurring) |
Additional parameters
Extra data | Mandatory | 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 |
Finance Wide
Payment Methods
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | iFrame Form & payment.js Integration | All (no recurring, CVV must be present) |
Additional Parameters
3D-Secure Verification parameters are ignored entirely, however the underlying gateway manages and changes the behavior of 3D-Secure requirements on demand.
Finrax
Payment Methods
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
BitCoin | Full-Page Redirect | Debit, Payout |
Additional Parameters
You can use the following extraData
keys, which will be passed in the corresponding fields to Finrax:
Key | Values | Description |
---|---|---|
withdrawCurrency | BTC,ETH,XRP.. | Cryptocurrency abbreviation that should be withdrawn |
targetAmountPolicy | fiat, crypto | Specifies if the targetAmount will be requested in fiat or crypto |
FinTecSystems
Payment Methods
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
BankTransfer | Full-Page Redirect | Debit, Register |
Additional parameters
Extra data | Mandatory | Description |
---|---|---|
checkAmount | Required for risk check | Amount to be checked against |
checkCurrency | Required for risk check | Currency, e.g. EUR |
checkBalanceOverview | Not required | If set to true, the current running total of the account will be returned |
checkChargebacks | Not required | If set to true, the number of detected chargeback transactions for the account will be returned |
checkName | Required for name risk check | Last name to be checked against. Both first and last name are required for the check |
checkFirstname | Required for name risk check | First name to be checked against. Both first and last name are required for the check |
checkAccountSnapshotDays | Required for snapshot risk check if from and to date are not set | Range in days which should be used (between 10 and 365) |
checkAccountSnapshotFrom | Required for snapshot risk check if days are not set | A date in the format yyyy-mm-dd |
checkAccountSnapshotTo | Required for snapshot risk check if days are not set | A date in the format yyyy-mm-dd |
checkAccountSnapshotFilters | Not required | An array of strings to filter the snapshot (e.g. ["income", "rent", "living-cost", "credit", "expenditure", "revenue", "salary"]) |
checkAccountSnapshotAllAccounts | Not required | If set to true, returns snapshot for all accounts including their turnovers |
checkAccountSnapshotAllTags | Not required | If set to true, returns the full categorization of the turnovers in the snapshot |
Fortumo
Payment Methods
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Direct Carrier Billing (SMS) | Redirect & iFrame Form | Debit only |
Additional Parameters
none
GatewayHub
Payment Methods
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | Server-To-Server | Debit, Register, Preauthorize, Capture, Refund, Deregister, Recurring Debit/Preauthorize |
Additional Mandatory Parameters
Parameter | Required | Description |
---|---|---|
customer.billingPhone | Yes | Customer phone number |
customer.email | Yes | Customer email address |
GiroSolutions
Payment Methods
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
GiroPay | Full-Page Redirect | Debit only |
EPS | Full-Page Redirect | Debit only |
Additional Parameters
none
GooglePay™
GooglePay is not an adapter itself, but a common type of payment supported by some of the listed adapters.
Only GooglePay protocol version 2 (ECv2) is supported.
Prerequisites
You can use GooglePay in your Android app or on your website.
To integrate GooglePay in your Android app please refer to the following links:
- Google Pay Android developer documentation
- Google Pay Android integration checklist
- Google Pay Android brand guidelines
To integrate GooglePay in your website please refer to the following links:
- Google Pay Web developer documentation
- Google Pay Web integration checklist
- Google Pay Web brand guidlines
Transaction Processing
For GooglePay transactions acquire a Payment Token through your Android app, or on your website.
Use the following parameters when sending a request to Google and replace YOUR_MERCHANT_ID with the GUID of your merchant:
gateway = "YOUR_GATEWAY_PARAMETER"
gatewayMerchantId = "YOUR_MERCHANT_ID"
If you are unsure about your gateway parameter, please contact your account manager.
The resulting token must be submitted in the transactionToken
element of the Debit/Preauthorize, prefixed with googlepay:
Example:
<transactionToken>googlepay:{"signature":"...","intermediateSigningKey":{"signedKey":"{\"keyValue\":\"...\",\"keyExpiration\":\"...\"}","signatures":["..."]},"protocolVersion":"ECv2","signedMessage":"{\"encryptedMessage\":\"...\",\"ephemeralPublicKey\":\"...\",\"tag\":\"...\"}"}</transactionToken>
Card Parameters
A billing address is not required for processing transactions, therefore no billing address parameters need to be given with a card.
Supported Card Authentication Methods
PAN_ONLY
CRYPTOGRAM_3DS
Supported Card Networks
AMEX
DISCOVER
INTERAC
JCB
MASTERCARD
VISA
Ingenico Connect
Payment Methods
Payment Method | Transaction Flows | 3DSecure |
---|---|---|
Creditcard / Global Collect | iFrame Form & payment.js Integration | 3DS, 3DSv2 |
Creditcard / Ogone | iFrame Form & payment.js Integration | 3DS |
Required parameters
customer.billingCountry
: mandatorycustomer.identification
: mandatory for register, debit with register, authorization with registertransaction.indicator
: mandatory for card on file, card on file merchant initiated, recurring (see Recurring Transactions)
Webhooks
To use webhooks with Ingenico Connect you have to register the webhooks callback URL inside the Ingenico Connect Interface or talk with your account managerr on Ingenico side.
Testcards
3DS Test cards can be found here:
iPayAfrica
Payment Methods
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | iFrame Form & payment.js Integration | only Debit & Refund |
Additional Parameters
none
iSignThis
Payment Methods
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | iFrame Form & payment.js Integration | Debit only |
Additional parameters
customer.identification
: mandatorycustomer.firstName
: mandatorycustomer.lastName
: mandatorycustomer.email
: mandatorycustomer.ipAddress
: mandatory
Kalixa
Payment Methods
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Sofort | Full-Page Redirect | Debit |
Giropay | Full-Page Redirect | Debit |
EPS | Full-Page Redirect | Debit |
Przelewy24 | Full-Page Redirect & iFrame Form | Debit |
iDeal | Full-Page Redirect | Debit |
Creditcard | iFrame Form & payment.js Integration | All |
Additional Parameters
Creditcard
- 3D-Secure Verification Parameters
Kassa Compleet
Payment Methods
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | Full-Page Redirect | Debit only |
iDeal | Full-Page Redirect | Debit only |
Additional Parameters
none
Klarna
Payment Methods
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Invoice | Full-Page Redirect | Debit, Authorize, Refund |
Additional Parameters
none
Klarna Widget
Payment Methods
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Invoice | Widget - payment-widget.js | Debit, Authorize, Refund |
Installment | Widget - payment-widget.js | Debit, Authorize, Refund |
Sofort | Widget - payment-widget.js | Debit, Authorize, Refund |
Additional Parameters
You will have to use the following extraData keys:
Key | Mandatory | Values | Description |
---|---|---|---|
region | true |
eu , na , oc |
Klarnas Api is available through different base URLs depending on the underlying region. eu = Europe, na = North America, oc = Oceania |
Integration Guide
To activate the Klarna Widget you will first have to include the payment-widget.js.
1. Embed the payment-widget.min.js in your page
<script data-main="payment-widget-js" src="https://gateway.ixopay.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.
- Endpoint:
POST https://gateway.ixopay.com/api/v3/transaction/{apiKey}/prepare-(debit or preauthorize)
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 |
callbackUrl | string | true |
endpoint to receive status notifications |
customer | object | true |
see Customer |
↳customer.billingAddress1 | string | true |
required for Klarnas authorization process |
↳customer.billingCity | string | true |
required for Klarnas authorization process |
↳customer.billingPostcode | string | true |
required for Klarnas authorization process |
↳customer.billingCountry | string | true |
required for session initialization |
↳customer.birthDate | string | true |
required for Klarnas 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:
- The "Public Integration Key" of your Connector
- The "Widget-Token" that you received from the Prepare Call
- Javascript function to handle payment completion
- Javascript function to handle error events
<script type="text/javascript">
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:
- The "Public Integration Key" of your Connector
- The "Widget-Token" that you received from the Prepare Call
- Javascript function to handle payment completion
- Javascript function to handle error events
- Auto-Finalize Option (only available for the Sofort '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 multi-step checkouts. In a multi-step checkout scenario theauthorize()
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 theauto_finalize
property set tofalse
.
<script type="text/javascript">
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/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 |
callbackUrl | string | true |
endpoint to receive status notifications |
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 |
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 |
Klarna Discounts
Klarna supports transmit of Discount Data, these Data can be send on either order level oder item level. For further information about this topic please visit the official Klarna Documentation. IXOPAY assumes to receive the correct Discount relevant Data and wont apply any validation to it. If your send that Data dont fit the Klarna convention you might be served with an Klarna provided Error.
On Order Level
To achieve an Order Level Discount, you will have to send an Item with the type 'discount'.
Name | Type | Required | Description |
---|---|---|---|
items | object | false |
object containing Items |
↳items.item.name | string | true |
Name of Discount |
↳items.item.extraData.type | string | true |
Type 'discount' is required to actually create the discount Item |
Item Level
If you like to send the discount information for a specific Item, you will have to send / add these on the corresponding Item Level.
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) |
Klarna Hpp
Payment Methods
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Generic (provides all possible Payment Mehtods) | 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 |
Additional Parameters
You will have to use the following extraData keys in the Connector Settings:
Key | Mandatory | Values | Description |
---|---|---|---|
region | true |
eu , na , oc |
Klarnas 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) |
Mastercard Payment Gateway Services
Payment Methods
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | iFrame Form & payment.js Integration | Debit, Register, Preauthorize, Capture, Void, Refund, Deregister |
Additional Parameters
Creditcard
- 3D-Secure Verification Parameters
MasterPayment
Payment Methods
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | iFrame Form & payment.js Integration | All |
Sofortüberweisung | Full-Page Redirect | Debit only |
Additional Parameters
none
MocoPay
Payment Methods
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Direct Carrier Billing (SMS) | Redirect & iFrame Form | Debit only |
PayByCall | Redirect & iFrame Form | Debit only |
Additional Parameters
none
Mollie
Payment Methods
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | Full-Page Redirect | All |
Paysafecard | Full-Page Redirect | All |
Bancontact | Full-Page Redirect | All |
Belfius | Full-Page Redirect | All |
KBC | Full-Page Redirect | All |
PodiumCadeaukaart | Full-Page Redirect | All |
Sofortüberweisung | Full-Page Redirect | All |
iDeal | Full-Page Redirect | All |
BankTransfer | Full-Page Redirect | All |
SEPA Direct Debit | Full-Page Redirect | All |
BitCoin | Full-Page Redirect | All |
Additional Parameters
none
MultiSafePay
Following features has to be enabled from your Multisafepay Account Manager
- 0 Cent Authorization if you want to use register without the pre-authorization / void workflow
- Flexible 3ds if you want to control when the user has to 3DS authenticate
Payment Methods
Payment Method | Transaction Flows | Transaction Types | 3DS Versions |
---|---|---|---|
Creditcard | Full-Page Redirect, payment.js Integration | All | 3DSv1 with payment.js |
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 | All | - |
Additional Parameters
Parameter | Description |
---|---|
extra.descriptor | If the dynamic descriptor is activated you can set the descriptor for the payment |
Neteller
To fully set up the Neteller Connector you will have to fulfill the following (mandatory) steps:
Enter your Private Key Username & Private Key Password in the "Extra Data" Fields. (Merchants / User / Connectors / Neteller / Config / Extra Data).
- You can retrieve your Private and Public keys via the NETELLER Merchant Dashboard (Developer / Apps; You might need to "Add application")
- Copy the Username & Password from the Section "PRIVATE Key".
Inform Paysafe (
[email protected]
) to set up your Webhook URL.- You can retrieve your Webhook URL via the Connector Settings (Merchants / User / Connectors / Neteller / Base Data / Notification Url).
- Send them the given "Notification URL".
Payment Methods
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Neteller | Full-Page Redirect | Debit |
Neteller | No interaction | Payout |
Additional Parameters
Key | Mandatory | 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. |
NMI (Network Merchants Integrated)
Payment Methods
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | iFrame Form & Full-Page Redirect | All |
Additional Parameters
none
Ochapay
Payment Methods
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | Full-Page Redirect | Debit only |
Additional Parameters
none
Pago46
Payment Methods
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Pago46 | Full-Page Redirect | Debit |
Additional Parameters
none
Options Request
Paying an Agent (sandbox only)
In order to mock the event on the sandbox that a customer has payed an agent an
Options Request is required. Use payAgent
as
identifier and pass the adapter's transaction ID in the transaction
parameter.
Payline
Payment Methods
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | iFrame Form & payment.js Integration | All |
Additional Parameters
Creditcard
- 3D-Secure Verification Parameters
Mandatory Parameters
Field | Mandatory |
---|---|
customer.billingCountry | Yes |
Paymentwall PCI
Payment Methods
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | iFrame Form & payment.js Integration | All |
Recurring payments
The same customer identification must be used for all affected transactions (for the initial, as well as for subsequent transactions).
Additional Parameters
- 3D-Secure Verification Parameters
Required Parameters
- productId
- productName
- identification (Customer)
- email (Customer)
- ipAddress (Customer)
- firstName (Customer)
- lastName (Customer)
Paymentwall
Payment Methods
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | Full-Page Redirect | Debit & Refund |
Bancontact | Full-Page Redirect | Debit & Refund |
Belfius | Full-Page Redirect | Debit & Refund |
Dotpay | Full-Page Redirect | Debit & Refund |
EPS | Full-Page Redirect | Debit & Refund |
Giropay | Full-Page Redirect | Debit & Refund |
iDeal | Full-Page Redirect | Debit & Refund |
KBC | Full-Page Redirect | Debit & Refund |
Multibanco | Full-Page Redirect | Debit & Refund |
MyBank | Full-Page Redirect | Debit & Refund |
POLi | Full-Page Redirect | Debit & Refund |
Przelewy24 | Full-Page Redirect | Debit & Refund |
SafetyPay | Full-Page Redirect | Debit & Refund |
Sofort/Klarna | Full-Page Redirect | Debit & Refund |
Boleto | Full-Page Redirect | Debit & Refund |
Oxxo | Full-Page Redirect | Debit & Refund |
Additional Parameters
- email (Customer)
- productId
- productName
- successUrl
- errorUrl
PayOn
Payment Methods
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | iFrame Form & payment.js Integration | All |
Additional Parameters
none
PayPal
Payment Methods
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
PayPal | Full-Page Redirect | All |
PayPal Payment Types
PayPal supports different kind of payments:
- Sale: Will charge the user for the full amount of the transaction
- Authorization: Only authorizes the user's payment instrument. This needs afterwards to be captured with a
Capture
request - Order: Only gets consent from user for this particular order. No funds will be authorized
A Debit
will always use the Sale type. A Preauthorize
will by default use the Authorization type.
You can control the behavior for Preauthorize
by sending the paypalPaymentAction
parameter (see below).
Additional Parameters
You can use the following extraData
keys, which will be passed in the corresponding fields to PayPal:
Key | Values | Description |
---|---|---|
paypalPaymentAction | "Authorization", "Order", "Order_Auth", "Sale" | Only for Preauthorize transactions. Defines "PaymentAction" for PayPal payments. "Order_Auth" automatically performs an Authorization for full amount after Order has been confirmed by customer |
addressOverride | 0 or 1 | Tells PayPal to use the shipping address you are providing instead of the customer's configured address in the PayPal account |
noShipping | 0, 1, 2 | 0 = Display Shipping address, 1 = No Shipping address (digital goods), 2 = Use customer's configured shipping address |
noteToBuyer | string | a note displayed to the customer |
requiredConfirmShipping | true, false | Refer to PayPal documentation |
noShipping | 0, 1, 2 | 0 = Display, 1 = No display, 2 = Buyers account |
allowNote | true, false | Refer to PayPal documentation |
localeCode | Refer to PayPal documentation | |
pageStyle | Refer to PayPal documentation | |
hdrImg | Refer to PayPal documentation | |
payflowColor | Refer to PayPal documentation | |
cartBoardColor | Refer to PayPal documentation | |
logoImg | Refer to PayPal documentation | |
solutionType | "Sole", "Mark" | Refer to PayPal documentation |
landingPageType | "Billing", "Login" | Refer to PayPal documentation |
channelType | "Merchant", "eBayItem" | Refer to PayPal documentation |
totalType | "Total", "EstimatedTotal" | Refer to PayPal documentation |
brandName | Refer to PayPal documentation | |
customerServiceNumber | Refer to PayPal documentation | |
giftMessageEnable | Refer to PayPal documentation | |
giftReceiptEnable | Refer to PayPal documentation | |
giftWrapEnable | Refer to PayPal documentation | |
giftWrapName | Refer to PayPal documentation | |
giftWrapAmount | Refer to PayPal documentation | |
buyerEmailOptInEnable | Refer to PayPal documentation | |
taxIdType | Refer to PayPal documentation | |
taxId | Refer to PayPal documentation |
Items
If submitting items, the following fields are Mandatory:
Field |
---|
quantity |
name |
price |
extraData -> category |
Item ExtraData Parameters:
Key | Values | Description |
---|---|---|
category | Refer to PayPal documentation | |
number | Refer to PayPal documentation | |
tax | Refer to PayPal documentation | |
weightValue | Refer to PayPal documentation | |
weightUnit | Refer to PayPal documentation | |
lengthValue | Refer to PayPal documentation | |
lengthUnit | Refer to PayPal documentation | |
widthValue | Refer to PayPal documentation | |
widthUnit | Refer to PayPal documentation | |
heightValue | Refer to PayPal documentation | |
heightUnit | Refer to PayPal documentation |
Paysafecard
Payment Methods
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Paysafecard | Full-Page Redirect | Debit, Refund |
Additional Parameters
none
PerfectMoney
Payment Methods
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
BankTransfer | Full-Page Redirect(Debit), Server-To-Server(Payout) | Debit, Register, Payout |
Direct Carrier Billing (SMS) | Full-Page Redirect(Debit), Server-To-Server(Payout) | Debit, Register, Payout |
PerfectMoney Account | Full-Page Redirect(Debit), Server-To-Server(Payout) | Debit, Register, Payout |
PerfectMoney Voucher | Full-Page Redirect(Debit), Server-To-Server(Payout) | Debit, Register, Payout |
PerfectMoney Wallet | Full-Page Redirect(Debit), Server-To-Server(Payout) | Debit, Register, Payout |
Please note, that a register transaction only makes sense to be used with followed payout transactions and not for referencing debit transactions, as the latter require the customer to be redirected to PerfectMoney for re-authentication purposes on each follow up debit. That is different to all other Register -> Debit/Preauth flows on other adapters.
Mandatory Parameters
- amount
- currency
- description
Additional parameters on debit
Extra data | Mandatory | Description |
---|---|---|
availablePaymentMethods | no | 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 | no | If you want to restrict the Payer to use a specific account you know, provide the account id here E.g. U1234567 |
baggageFields | no | 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 | conditionally: 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,.. |
.... | conditionally: if provided within extra.baggageFields yes | any key value pair you want to forward to PerfectMoney |
success URL | no | To where the shopper should be back-directed after a successful payment |
error URL | no | To where the shopper should be back-directed in case of an error or customer cancellation |
Additional parameters on register
Extra data | Mandatory | Description |
---|---|---|
accountId | no | 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 | no | If provided, this accountName will be compared (case-insensitive) against the PerfectMoney account name associated with the accountId. |
accountFullName | no | If provided, this accountFullName will be compared (case-insensitive) against the PerfectMoney account full name associated with the accountId. |
accountPhonenumber | no | If provided, this accountPhonenumber will be compared (case-insensitive) against the PerfectMoney account phonenumber associated with the accountId. |
requireVerifiedAccount | no | If provided, the register transaction will only succeed, if the PerfectMoney account details are currently verified though the PerfectMoney KYC checks. |
success URL | no | To where the shopper should be back-directed after a successful payment |
error URL | no | To where the shopper should be back-directed in case of an error or customer cancellation |
If you want to validate the PerfectMoney account data: accountName, accountFullName, accountPhonenumber, requireVerifiedAccount, your PerfectMoney account has be enabled to return those details. Please request that from your account manager at PerfectMoney.
Additional parameters on payout
Extra data | Mandatory | Description |
---|---|---|
payeeAccount | yes (if not referencing a register transaction) | The PerfectMoney account id the funds will be transferred to |
code | no | Provide to enable transfer protection. If code is present, payee must enter this code to get money to his/her account. |
codeValidDays | If code is provided yes. | Number of days you want the transfer with protection code to be valid. If payee does not enter the protection code during this period, money will be transferred back to your account. Must be integer value from 1 to 365 days. |
If the payout references a register transaction, it depends on the extra data provided on the initial register transaction, if the current PerfectMoney account details should be compared to those. For example if the extra data requireVerifiedAccount has been provided, all follow up payouts require the current verification status to be verified. If that is not the case, the payout fails. If additional extra data fields (accountName|accountFullName|accountPhonenumber) have been provided initially, they also have to match the current returned PerfectMoney account details. If they do not, the payout fails.
Currencies
EUR, USD, OAU
Powercash21
Payment Methods
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | iFrame Form & payment.js Integration | Debit, Register, Preauthorize, Capture, Void, Refund, Deregister |
Trustly | Full-Page Redirect | Debit |
Trustly | No interaction | Payout, Refund |
MaxxWallet | Full-Page Redirect | Debit |
Additional Parameters
Creditcard
- 3D-Secure Verification Parameters
Mandatory Parameters
Trustly
Parameter | Mandatory |
---|---|
customer.firstName | yes |
customer.lastName | yes |
customer.email | yes (debit, payout) |
customer.billingCountry | yes (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 | Mandatory |
---|---|
customer.firstName | yes |
customer.lastName | yes |
customer.email | yes |
customer.billingCountry | yes |
customer.billingAddress1 | yes |
customer.billingCity | yes |
customer.billingPostcode | yes |
customer.billingState | yes |
customer.billingPhone | yes |
PPRO
Payment Methods
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
AstroPayCard | Full-Page Redirect | Debit |
AstroPayDirect | Full-Page Redirect | Debit & Refund |
BancoDoBrasil | Full-Page Redirect | Debit |
Bcmc | Full-Page Redirect | Debit & Refund |
Blik | Full-Page Redirect | Debit & Refund |
Boleto | Full-Page Redirect | Debit |
Bradesco | Full-Page Redirect | Debit |
DirectDebit | Server-to-server | Debit & Refund |
EPS | Full-Page Redirect | Debit & Refund |
Giropay | Full-Page Redirect | Debit & Refund |
IbanOnDemand | Full-Page Redirect | Debit & Refund |
iDeal | Full-Page Redirect | Debit & Refund |
InstantTransfer | Full-Page Redirect | Debit & Refund |
Itau | Full-Page Redirect | Debit |
Multibanco | Full-Page Redirect | Debit |
MyBank | Full-Page Redirect | Debit & Refund |
Oxxo | Full-Page Redirect | Debit |
PagoFacil | Full-Page Redirect | Debit |
Paypal | Full-Page Redirect | Debit & Refund |
Paysafecard | Full-Page Redirect | Debit |
POLi | Full-Page Redirect | Debit |
Przelewy24 | Full-Page Redirect | Debit & Refund |
Qiwi | Full-Page Redirect | Debit & Refund |
QiwiPayout | Full-Page Redirect | Debit |
Raberil | Full-Page Redirect | Debit & Refund |
RaberilPayout | Full-Page Redirect | Debit & Refund |
RapiPago | Full-Page Redirect | Debit |
SafetyPay | Full-Page Redirect | Debit & Refund |
SepaPayout | Server-to-server | Debit |
Skrill | Full-Page Redirect | Debit & Refund |
Sofort | Full-Page Redirect | Debit & Refund |
Teleingreso | Full-Page Redirect | Debit |
Trustly | Full-Page Redirect | Debit & Refund |
TrustPay | Full-Page Redirect | Debit |
Ukash | Full-Page Redirect | Debit & Refund |
Verkkopankki | Full-Page Redirect | Debit |
YellowPay | Full-Page Redirect | Debit & Refund |
Additional Parameters
none
Qualpay
Payment Methods
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | iFrame Form & payment.js Integration | Debit, Register, Preauthorize, Capture, Void |
Additional Parameters
none
SafeCharge
Payment Methods
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 |
Additional Parameters
none
SecureTrading
Payment Methods
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | iFrame Form | All |
Cash-To-Code | iFrame Form | Debit only |
Additional Parameters
none
SepaExpress
Payment Methods
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.
Additional parameters
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
: mandatory
Shimotomo
Payment Methods
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | iFrame Form & payment.js Integration | Debit, Register, Preauthorize, Capture, Void, Refund, Deregister |
Additional Parameters
Parameter | Mandatory |
---|---|
customer.identification | Yes |
customer.firstName | Yes |
customer.lastName | Yes |
customer.billingAddress1 | Yes |
customer.billingCity | Yes |
customer.billingPostcode | Yes |
customer.billingState | Yes |
customer.billingCountry | Yes |
customer.billingPhone | Yes |
customer.email | Yes |
customer.ipAddress | Yes |
Creditcard
- 3D-Secure Verification Parameters
Depending on your merchant account, additional parameters might be mandatory.
SIX ELink
Payment Methods
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | iFrame Form & payment.js Integration | All |
Additional Parameters
If the dynamic descriptor is enabled, it is possible to set the descriptor with the extra parameter extra.descriptor
.
IXOPAY also supports final capture, for this you have to send the extra parameter extra.captureType
- final
.
Skrill
Payment Methods
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Skrill | Full-Page Redirect | Debit, Refund, Payour |
Additional Parameters
Key | Values | Description |
---|---|---|
extraData.companyName | string | Display name on the payment page |
extraData.subject | string | for Payouts: Subject of the notification email (250 1-byte characters) |
extraData.note | string | for Payouts: Comment to be included in the notification email (max 2000 1-byte characters) |
Sofort
Payment Methods
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Sofortüberweisung | Full-Page Redirect | Debit only |
iDeal | Full-Page Redirect | Debit, Refund* |
*Refund is only available in BE, NL
Additional Parameters
iDeal debit
Parameter | Required | Description |
---|---|---|
customer.bic | Yes | Bankcode of customer* |
customer.billingCountry | Yes | 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 | Optional | Can be given additional to reason1 , max. 27 characters. If both reasons are given, their total number of characters must not exceed 31 characters |
*For the BIC you may do an Options Request using the identifier iDealBankList
. It will
return a list of available banks for iDeal which you should render to let the customer pick a bank. You should then
pass the selected bank code as bic
element inside IbanCustomer.
iDeal refund
Parameter | Required | Description |
---|---|---|
extraData.reason1 | Optional | max. 27 characters, if none given it uses the description of the initial transaction |
extraData.reason2 | Conditional | Can be given additional to reason1 , max. 27 characters. If both reasons are given, their total number of characters must not exceed 31 characters |
Spreedly
Payment Methods
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | iFrame Form & payment.js Integration | All |
Additional Parameters
none
SCB
Payment Methods
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Bank Transfer | Full-Page Redirect & Server-to-Server | Register & Debit |
Additional Parameters
Parameter | Transaction Types | Description |
---|---|---|
language | Optional: register & debit | Language of shopper. Possible values: TH and EN (default) |
additionalId1 | Required: register | Merchant reference |
additionalId2 | Optional: register | Merchant reference |
Description | Optional: register | Option description, passed on during register |
national ID (customer) | Optional: register | Citizen ID |
success URL | Required: register | URL to where the shopper will be back-directed to the merchant |
error URL | Optional: register | URL to where the shopper will be back-directed to the merchant (defaults to success URL if not present) |
iban (customer) | Depending: debit | Bank account to charge; alternatively it's possible to provide a reference to a register TX |
identification (customer) | Optional: debit | Merchant's customer identifier |
Stripe
Payment Methods
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | payment.js Integration | All |
Giropay | Full-page Redirect | Debit |
iDeal | Full-page Redirect | Debit |
Sofort | Full-page Redirect | Debit |
Bancontact | Full-page Redirect | Debit |
DirectDebit | Server-to-Server | Register, Debit, Refund |
Additional Parameters
none
TabaPay
Payment Methods
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | payment.js, Redirect & iFrame Form | only debit, refund and payout |
Additional Parameters
none
TECS
Payment Methods
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | Server-To-Server | Refund only |
Additional Parameters
none
TNG
Payment Methods
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
TNG | pushed by provider | Debit |
Additional Parameters
none
Options Request
Obtaining a QR code
In order to generate a QR code which shall be displayed by the payer in the app,
an Options Request is required. Use requestTopupCode
as identifier and pass the customer's ID in the customerId
parameter.
Transact.eu
Payment Method | Transaction Flows | Transaction Types | MPI |
---|---|---|---|
Creditcard | Hosted Payment Page & payment.js Integration | Preauthorize, Charge, Refund, Void, Payout | IXOPAY MPI |
Cards vaulted with Transact.eu can only be charged but not preauthorized.
Truevo
Payment Methods
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | iFrame Form & payment.js Integration | All |
Additional Parameters
none
Trustly
Payment Methods
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Bank Transfer | iFrame Form | All |
iDeal | iFrame Form | All |
Additional parameters
Extra data | Mandatory | Description |
---|---|---|
Description | No | Description that should be shown on the bank statement |
Customer - Identification | Yes | Unique customer identification, should be used on multiple payments if it is the same customer |
Customer - First name | Yes | |
Customer - Last name | Yes | |
Customer - EMail | Yes | |
Customer - Billing Country | Yes | |
Customer - Billing Phone | No | |
Customer - IP Address | No | |
Customer - National ID | No | |
Customer - Shipping Country | No | |
Customer - Shipping Postcode | No | |
Customer - Shipping City | No | |
Customer - Shipping Address 1 | No | |
Customer - Shipping Address 2 | No |
WorldPay (Vantiv / Litle)
Payment Methods
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | iFrame Form & payment.js Integration | All |
Additional Parameters
Creditcard
- 3D-Secure Verification Parameters
VOLT
Payment Methods
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
BankTransfer | Redirect | Debit |
Additional Parameters
Parameter | Allowed values | Description |
---|---|---|
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 |
type | BILL, GOODS, PERSON_TO_PERSON, OTHER, SERVICES | Transaction Type, default is OTHER |
Options Request
Endpoint | Parameter | Description |
---|---|---|
bank-list | - | Returns a list of available banks with there id that can be used for the bank_id |
WeAccept
Payment Methods
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Kiosk | Server-to-Server | Debit |
Cash Payment | Server-to-Server | Debit |
Wallet | Redirect & iFrame | Debit |
Additional parameters
Extra data | Mandatory | Description |
---|---|---|
first name (customer) | Yes | |
last name (customer) | Yes | |
email (customer) | Yes | |
billing phone (customer) | Yes | |
billingAddress1 (customer) | only for cash payments | |
billingPostcode (customer) | only for cash payments | |
billingCity (customer) | only for cash payments | * |
billingState (customer) | only for cash payments | * |
billingCountry (customer) | only for cash payments | |
success URL | only for wallet payments | To where the shopper should be back-directed |
*) only certain states and cities within Egypt are supported.
Refer to WeAccept's cash annex.
Wirecard
Payment Methods
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | iFrame Form & payment.js Integration | Debit, Register, Preauthorize, Capture, Void, Refund, Deregister |
Additional Parameters
Creditcard
- 3D-Secure Verification Parameters
Worldpay
Payment Methods
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | iFrame Form & Full-Page Redirect | All |
iDeal | Full-Page Redirect | Debit & Refund |
Przelewy24 | Full-Page Redirect | Debit & Refund |
POLi | Full-Page Redirect | Debit & Refund |
Additional Parameters
none
Required Parameters for POLi
Parameter | Allowed Values |
---|---|
currency | NZD, AUD |
customer.billingCountry | NZ, AU |
customer.identification | Anything |
customer.email | Anything |
Worldpay Access
Payment Methods
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | iFrame Form & Full-Page Redirect | All |
Additional Parameters
Creditcard
Parameter | Required | Description |
---|---|---|
extraData.narrativeLine2 | No | Additional details about the payment e.g. order number, telephone number |
- 3D-Secure Verification Parameters
Worldpay Express
Payment Methods
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | payment.js, Redirect & iFrame Form | All |
Additional Parameters
none
Zip Payments
Payment Methods
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Wallet | Full-Page Redirect | Debit, Preauthorize, Capture, Void, Refund |
Additional Parameters
Wallet (Debit & Preauthorize)
Parameter | Type | Description |
---|---|---|
extraData.pickup | 0 or 1 | Whether this is a pickup order |
extraData.trackingUri | string | URI to tracking page of shipment |
extraData.trackingNumber | string | Tracking number of shipment |
extraData.trackingCarrier | 0 or 1 | Carrier used for shipment |
customer.extraData.title | yes | Title of customer (Mr., Mrs. etc.) |
item.extraData.type | sku, tax, shipping or discoung | Type of item |
item.extraData.item_uri | string | URI to product page |
item.extraData.image_uri | string | URI to product image (thumbnail) |
Mandatory Parameters
Wallet (Debit & Preauthorize)
Parameter | Mandatory |
---|---|
items | yes |
customer.firstName | yes |
customer.lastName | yes |
customer.email | yes |
customer.billingAddress1 | yes |
customer.billingCity | yes |
customer.billingPostcode | yes |
customer.billingState | yes |
customer.billingCountry | yes |
Integration through ZIP Widget
The integration from the Gateway works by default through the redirect flow from ZipPayments.
You can also integrate by using ZIP's Widget solution ("Lightbox Checkbout 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 your 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"
}