Please try searching something.
Payment Methods
Cards
Description
Virtual Terminal allows you to accept debit and credit card payments on your PC, smartphone or tablet, as long as you have internet access. A virtual payment terminal is an ID assigned to the merchant (MID) which allows you to accept the following card types in your e-commerce store or application:
- Visa, Mastercard, JCB, UPI.
Integration Options
- Host2Host
- Direct Post
- Full Page
- Payform JS SDK
Payment Scenarios
- One-Step Payment
- Two-Step Payment
- Zero-Amount Payment
- Recurring
- One-Click
- Full Refund
- Partial Refund
- Reversal
- Payouts: A2A
- Payouts: B2P
- Payouts: P2P
- Payouts: OG
- Payouts: SDWO
Additional Capabilities
- Payment Method Saving
- Use of Travel Data
- Use of Account Funding details
- Use of Dynamic Descriptor
- QCash
- MOTO
- SDWO Funding Payments
- SDWO Purchase Payments
- Automatic Billing Updater
Markets
Afghanistan, Albania, Algeria, American Samoa, Andorra, Angola, Anguilla, Antarctica, Antigua and Barbuda, Argentina, Armenia, Aruba, Australia, Austria, Azerbaijan, Bahamas, Bahrain, Bangladesh, Barbados, Belarus, Belgium, Belize, Benin, Bermuda, Bhutan, Bolivia, Bonaire, Bosnia and Herzegovina, Botswana, Bouvet Island, Brazil, British Indian Ocean Territory, Brunei, Bulgaria, Burkina Faso, Burundi, Cabo Verde, Cambodia, Cameroon, Canada, Cayman Islands, Central African Republic, Chad, Chile, China, Christmas Island, Cocos (Keeling) Islands, Colombia, Comoros, Congo, The Democratic Republic of the Congo, Cook Islands, Costa Rica, Croatia, Cuba, Curaçao, Cyprus, Czech Republic, Côte d'Ivoire, Denmark, Djibouti, Dominica, Dominican Republic, Ecuador, Egypt, El Salvador, Equatorial Guinea, Eritrea, Estonia, Ethiopia, Falkland Islands, Faroe Islands, Fiji, Finland, France, French Guiana, French Polynesia, French Southern Territories, Gabon, Gambia, Georgia, Germany, Ghana, Gibraltar, Greece, Greenland, Grenada, Guadeloupe, Guam, Guatemala, Guernsey, Guinea, Guinea-Bissau, Guyana, Haiti, Heard Island and McDonald Islands, Honduras, Hong Kong, Hungary, Iceland, India, Indonesia, Iran, Iraq, Ireland, Isle of Man, Israel, Italy, Jamaica, Japan, Jersey, Jordan, Kazakhstan, Kenya, Kiribati, North Korea, South Korea, Kuwait, Kyrgyzstan, Laos, Latvia, Lebanon, Lesotho, Liberia, Libya, Liechtenstein, Lithuania, Luxembourg, Macao, Macedonia, Madagascar, Malawi, Malaysia, Maldives, Mali, Malta, Marshall Islands, Martinique, Mauritania, Mauritius, Mayotte, Mexico, Micronesia, Moldova, Monaco, Mongolia, Montenegro, Montserrat, Morocco, Mozambique, Myanmar, Namibia, Nauru, Nepal, Netherlands, New Caledonia, New Zealand, Nicaragua, Niger, Nigeria, Niue, Norfolk Island, Northern Mariana Islands, Norway, Oman, Pakistan, Palau, Palestine, Panama, Papua New Guinea, Paraguay, Peru, Philippines, Pitcairn, Poland, Portugal, Puerto Rico, Qatar, Romania, Russian Federation, Rwanda, Réunion, Saint Barthélemy, Saint Helena, Saint Kitts and Nevis, Saint Lucia, Saint Martin (French part), Saint Pierre and Miquelon, Saint Vincent and the Grenadines, Samoa, San Marino, Sao Tome and Principe, Saudi Arabia, Senegal, Serbia, Seychelles, Sierra Leone, Singapore, Sint Maarten (Dutch part), Slovakia, Slovenia, Solomon Islands, Somalia, South Africa, South Georgia and the South Sandwich Islands, South Sudan, Spain, Sri Lanka, Sudan, Suriname, Svalbard and Jan Mayen, Swaziland, Sweden, Switzerland, Syria, Taiwan, Tajikistan, Tanzania, Thailand, Timor-Leste, Togo, Tokelau, Tonga, Trinidad and Tobago, Tunisia, Turkey, Turkmenistan, Turks and Caicos Islands, Tuvalu, Uganda, Ukraine, United Arab Emirates, United Kingdom, United States, United States Minor Outlying Islands, Uruguay, Uzbekistan, Vanuatu, Vatican, Venezuela, Vietnam, British Virgin Islands, U.S. Virgin Islands, Wallis and Futuna, Western Sahara, Yemen, Zambia, Zimbabwe, Åland Islands.
Currencies
USD, GBP, EUR, RUB, AUD, SEK, CAD, CHF, DKK, JPY, PLN, CZK, NOK, AED, BYN, CNY, KZT, NZD, UAH, AZN, GEL, KGS, UZS, ZAR, AMD, ARS, BGN, BRL, CLP, EGP, HKD, HRK, HUF, IDR, ILS, INR, ISK, KES, KRW, LKR, MAD, MDL, MKD, MOP, MUR, MXN, MYR, NGN, PEN, PHP, QAR, RON, RSD, SAR, SGD, THB, TJS, TMT, TRY, TWD, UYU, VND, ZWL.
Transaction Limits
Transaction limits differ for each currency and market. If you want to find out more about a particular market or currency, contact your DECTA account manager.
How to Enable Card Payments
Sign up here to create your DECTA account. No additional steps are required to enable card payments.
Payment Flow
Payment flow examples can be found here:
Recurring Payment Scenarios
Additionl Capabilities
Payout Flow
Apple Pay
Description
We support Host2Host integration, thus you as a merchant are responsible for the interactions with the Apple Pay API. Once you have completed those interactions, we will consume the payment data. With Host2Host integration, you are in complete charge of how to integrate Apple Pay into your website or app; therefore, we do not control, nor provide assistance for it. You can find the design guidelines and the information about Apple Pay button usage in the Apple Pay Human Interface Guidelines The information about server requirements for Apple Pay on the web can be found in the Apple Developer Portal.
Please note that your customers will be able to choose Apple Pay as a payment method option only when they:
- Are located in a region where Apple Pay is supported (see the full list here);
- Have an existing card added to their Apple Pay wallet;
- Use Safari browser when paying on the website;
- Use an Apple Pay compatible device.
There are two options for handling Apple Pay payments with DECTA:
- DECTA handles the decryption:
- Provide the encrypted Apple Pay payload to DECTA;
- DECTA will decrypt and process the payment.
- Handle the decryption yourself (only allowed for PCI-compliant merchants):
- Decrypt the Apple Pay payload yourself;
- Send the decrypted data to DECTA for processing.
Before you start enabling this payment method, make sure that your DECTA account manager has given you Apple Pay permission.
Integration Options
- Host2Host
Payment Scenarios
- One-Step Payment
- Two-Step Payment
- Full Refund
- Partial Refund
- Reversal
- Recurring
Additional Capabilities
- Payment Method Saving
- Use of Travel Data
- Use of Account Funding details
- Automatic Billing Updater
Markets
South Africa, Australia, China (mainland), Hong Kong, Japan, Macao, New Zealand, Singapore, Taiwan, Armenia, Austria, Azerbaijan, Belarus, Belgium, Bulgaria, Croatia, Cyprus, Czech Republic, Denmark, Estonia, Faroe Islands, Finland, France, Georgia, Germany, Greece, Greenland, Guernsey, Hungary, Iceland, Ireland, Isle of Man, Italy, Kazakhstan, Jersey, Latvia, Liechtenstein, Lithuania, Luxembourg, Malta, Monaco, Montenegro, Netherlands, Norway, Poland, Portugal, Romania, Russian Federation, San Marino, Serbia, Slovakia, Slovenia, Spain, Sweden, Switzerland, Ukraine, United Kingdom, Vatican, Argentina, Colombia, Costa Rica, Brazil, Mexico, Peru, Bahrain, Israel, Palestine, Qatar, Saudi Arabia, United Arab Emirates, Canada, United States.
Currencies
USD, GBP, EUR, RUB, AUD, SEK, CAD, CHF, DKK, JPY, PLN, CZK, NOK, AED, BYN, CNY, KZT, NZD, UAH, AZN, GEL, KGS, UZS, ZAR, AMD, ARS, BGN, BRL, CLP, EGP, HKD, HRK, HUF, IDR, ILS, INR, ISK, KES, KRW, LKR, MAD, MDL, MKD, MOP, MUR, MXN, MYR, NGN, PEN, PHP, QAR, RON, RSD, SAR, SGD, THB, TJS, TMT, TRY, TWD, UYU, VND, ZWL.
Transaction Limits
Transaction limits differ for each currency and market. If you want to find out more about a particular market or currency, contact your DECTA account manager.
How to Enable Apple Pay
- Log in to your Apple Developer account and follow the instructions to create a merchant identifier and merchant identity certificate (assigned to the identifier);
- Go to your DECTA Gate account, select Settings, then the Payment Methods section and click on the "Configure" button for Apple Pay;
- Click on the “Add new certificate", select the appropriate website, enter the domain name, and then click "Add";
- After adding a new certificate, it will appear in the Apple Pay Certificates section with status pending. In order to activate it, click on the Actions menu and choose to upload a certificate. A new view will be presented where you download the CSR file. Then, go to your Apple Developer account and follow these instructions to create a payment processing certificate.
NB: Make sure you use the same merchant identifier as in the previous steps. When you are asked to upload a Certificate Signing Request, select the CSR you just downloaded from the Merchant Portal. Then, download and save the generated payment processing certificate as a .cer file. Now you can upload the certificate you received from Apple in the Merchant Portal. Once that is done, click “Add”; - You will now see the certificate attached to your application. The status - pending or active - indicates whether the certificate is active. If it is, you are now able to perform Apple Pay transactions with DECTA;
This step is required only if you are integrating Apple Pay with your app. Ignore this step, if you intend to integrate Apple Pay with your website only.
In order to enable Apple Pay for an app, log in to your Apple Developer account and follow these instructions.
Payment Flow
Host2Host
Once you have successfully implemented Apple Pay on your website or app, DECTA Gate can now start consuming the payment data:
You as a merchant create the initial order. Example:
{ //required "client":{ "email": "adam.smith@company.com" }, "products": [ { "quantity": "1", "price": "0.30", "title": "My Product" } ], //optional "currency": "EUR" }As a response from DECTA you will receive a parameter called
api_do_applepayto send encrypted payload received from Apple Pay and allow DECTA to handle decryption.Whenever your customer finishes authorizing the Apple Pay payment, you will receive the Apple Pay payment result that contains Apple Pay payment token. To let DECTA handle token decryption, Apple Pay token can be provided as the request body to DECTA Gate Apple Pay api_do_applepay endpoint. This endpoint is used for completing the Apple Pay transaction. It accepts data from the payment token and then processes the payment. More information on the payment token and its format can be found here.
Send the Apple Pay token you got from the Apple Pay Pay API and provide it in your request to DECTA Gate Apple Pay api_do_applepay endpoint. Example:
{ "data": "...", "version": "...", "signature": "...", "ephemeralPublicKey": "...", "publicKeyHash": "...", "transactionId": "...", "applicationData": "...", "ip_address": "127.0.0.1" }After successfully proceeded payment, the payment status is updated for the merchant by DECTA and the appropriate webhook about the status is sent out.
Once you have successfully implemented Apple Pay on your website or app, DECTA Gate can now start consuming the payment data:
You as a merchant create the initial order. Example:
{ //required "client":{ "email": "adam.smith@company.com" }, "products": [ { "quantity": "1", "price": "0.30", "title": "My Product" } ], //optional "currency": "EUR" }As a response from DECTA you will receive a parameter called
api_do_urlto send decrypted payload data.Whenever your customer finishes authorizing the Apple Pay payment, you will receive the Apple Pay payment result that contains Apple Pay payment token. Now you decrypt the Apple Pay token yourself. More information on the payment token and its format can be found here.
Provide the data from decrypted payload in your request to DECTA Gate api_do_url endpoint. Example:
{ "card_number": "...", "exp_month": "...", "exp_year": "...", "eci": "...", //optional "cavv": "...", "wallet": "applepay", "merchant_url": "..." }After successfully proceeded payment, the payment status is updated for the merchant by DECTA and the appropriate webhook about the status is sent out.
Google Pay™
Description
For Google Pay™ we support Host2Host integration, thus you as a merchant are responsible for the interactions with the Google Pay API. Once you have completed those interactions, we will consume the payment data. Follow the Google Pay guidelines to integrate your web or Android application:
- Web: Google Pay Web developer documentation, Google Pay Web integration checklist, and Google Pay Web brand guidelines;
- Android: Google Pay Android developer documentation, Google Pay Android integration checklist, and Google Pay Android brand guidelines.
Google Pay offers and we support two authentication modes:
PAN_ONLY- the card is stored on file within your customer's Google account and not bound to an Android device. 3DS/Authentication is handled automatically by the DECTA Gate;CRYPTOGRAM_3DS- The card is stored in the Google Pay wallet on an Android device. Transactions include a cryptogram generated by the device, which adds an extra layer of security. These payments are often considered authenticated by issuers but liability shift is not guaranteed and depends on the issuer and card scheme rules.
Supported networks:
We support VISA and Mastercard card networks with the Google Pay API. You can define these values in the allowedCardNetworks property and find the appropriate values in Google Pay Web developer documentation and Google Pay Android developer documentation.
There are two options for handling Google Pay payments with DECTA:
- DECTA handles the decryption:
- Provide the encrypted Google Pay payload to DECTA;
- DECTA will decrypt and process the payment.
- Handle the decryption yourself (only allowed for PCI-compliant merchants):
- Decrypt the Google Pay payload yourself;
- Send the decrypted data to DECTA for processing.
Before you start enabling this payment method, make sure that your DECTA account manager has given you Google Pay permission.
Integration Options
- Host2Host
Payment Scenarios
- One-Step Payment
- Two-Step Payment
- Full Refund
- Partial Refund
- Reversal
- Recurring
Additional Capabilities
- Payment Method Saving
- Use of Travel Data
- Use of Account Funding details
- Automatic Billing Updater
Markets
Afghanistan, Albania, Algeria, Andorra, Angola, Antigua and Barbuda, Argentina, Armenia, Australia, Austria, Azerbaijan, Bahamas, Bahrain, Bangladesh, Barbados, Belarus, Belgium, Belize, Benin, Bhutan, Bolivia, Bosnia and Herzegovina, Botswana, Brazil, Brunei, Bulgaria, Burkina Faso, Burundi, Cambodia, Cameroon, Canada, Cape Verde, Central African Republic, Chad, Chile, Colombia, Comoros, Costa Rica, Côte d'Ivoire, Croatia, Cyprus, Czech Republic, Democratic Republic of the Congo, Denmark, Djibouti, Dominica, Dominican Republic, Ecuador, Egypt, El Salvador, Equatorial Guinea, Eritrea, Estonia, Eswatini, Ethiopia, Fiji, Finland, France, Gabon, Gambia, Georgia, Germany, Ghana, Greece, Grenada, Guatemala, Guinea, Guinea-Bissau, Guyana, Haiti, Holy See, Honduras, Hong Kong, Hungary, Iceland, India, Iraq, Ireland, Israel, Italy, Jamaica, Japan, Jordan, Kazakhstan, Kenya, Kiribati, Kuwait, Kyrgyzstan, Laos, Latvia, Lebanon, Lesotho, Liberia, Libya, Liechtenstein, Lithuania, Luxembourg, Macau, Madagascar, Malawi, Malaysia, Maldives, Mali, Malta, Marshall Islands, Mauritania, Mauritius, Mexico, Micronesia, Moldova, Monaco, Mongolia, Montenegro, Morocco, Mozambique, Myanmar, Namibia, Nauru, Nepal, Netherlands, New Zealand, Nicaragua, Niger, Nigeria, North Macedonia, Norway, Oman, Pakistan, Palau, Palestine, Panama, Papua New Guinea, Paraguay, Peru, Poland, Portugal, Qatar, Republic of the Congo, Romania, Rwanda, Saint Kitts and Nevis, Saint Lucia, Saint Vincent and the Grenadines, Samoa, San Marino, Sao Tome and Principe, Saudi Arabia, Senegal, Sierra Leone, Serbia, Seychelles, Singapore, Slovakia, Slovenia, Solomon Islands, Somalia, South Africa, South Sudan, Spain, Sri Lanka, Sudan, Suriname, Sweden, Switzerland, Taiwan, Tajikistan, Tanzania, Thailand, Timor-Leste, Togo, Tonga, Trinidad and Tobago, Tunisia, Turkey, Turkmenistan, Tuvalu, Uganda, Ukraine, United Arab Emirates, United Kingdom and outlying territories, United States and outlying territories, Uruguay, Uzbekistan, Vanuatu, Venezuela, Vietnam, Yemen, Zambia, Zimbabwe
Currencies
USD, GBP, EUR, RUB, AUD, SEK, CAD, CHF, DKK, JPY, PLN, CZK, NOK, AED, BYN, CNY, KZT, NZD, UAH, AZN, GEL, KGS, UZS, ZAR, AMD, ARS, BGN, BRL, CLP, EGP, HKD, HRK, HUF, IDR, ILS, INR, ISK, KES, KRW, LKR, MAD, MDL, MKD, MOP, MUR, MXN, MYR, NGN, PEN, PHP, QAR, RON, RSD, SAR, SGD, THB, TJS, TMT, TRY, TWD, UYU, VND, ZWL
Transaction Limits
Transaction limits differ for each currency and market. If you want to find out more about a particular market or currency, contact your DECTA account manager.
How to Enable Google Pay
Contact your DECTA account manager to enable this payment method.
Payment Flow
Host2Host
Once you have set up Google Pay for your account, you can start to accept Google Pay payments.
NB: When you submit a payment data request to the Google API, be sure to include the following parameters:
- 'gateway': 'decta'
- gatewayMerchantId': '<your merchant website ID>'
Submit a payment data request to the Google API. Example:
{ "type": "CARD", "parameters": { "allowedAuthMethods": ["PAN_ONLY", "CRYPTOGRAM_3DS"], "allowedCardNetworks": ["MASTERCARD", "VISA"] }, "tokenizationSpecification": { "type": "PAYMENT_GATEWAY", "parameters": { "gateway": "<gateway_name>", "gatewayMerchantId": "<YOUR_MERCHANT_WEBSITE_ID>" } } }If your gateway account is set up to process card authorisation requests with AVS checks, you can request BillingAddressParameters in your Google Pay API request (it is advised to request the FULL version of the billing address). If you do not request a billing address through Google Pay, you still have the option to use the address you have on file.
You as a merchant create the initial order. Example:
{ //required "client":{ "email": "adam.smith@company.com", "address": "Sunny str, 128", // mandatory field for the AVS functionality "zip_code": "12 3456" // mandatory field for the AVS functionality }, "products": [ { "quantity": "1", "price": "0.30", "title": "My Product" } ], //optional "currency": "EUR" }As a response from DECTA you will receive a parameter called
api_do_googlepayto send encrypted payload received from Google Pay and allow DECTA to handle decryption.Make a request to process the Google Pay payment. Send the PaymentData you got from the Google Pay API and provide it in your request to DECTA Gate api_do_googlepay endpoint. Example:
{ "signature": "...", "intermediateSigningKey": { "signedKey": "...", "signatures": [...] }, "protocolVersion": "...", "signedMessage": "...", "ip_address": "127.0.0.1" }Response example in case of
CRYPTOGRAM_3DS:{ "processing_status": "000" }Response example in case of
PAN_ONLY:{ "threed_check_url":"<https://transactions.decta.com/p/a03b5962-1218-4dfd-b78c-1b5ec686ef22/EbbM%252FxU4j8YMDnjAD9qKYTT7%252BcZizmxD51yPZPZj09jTRvePwybnCoOz3Exj%252B%252Bfo8iKX8nP0FdsS1LNBrrXusl%252BPr3rviH38CtLalnRpU38kRRiIU0Qq8TBMQLsXAPreZ8o%252BKYN/3d/>" }Analyze the response:
- In case you receive a
processing_status, wait for a webhook about the final status from the DECTA Gate; - In case you receive a
threed_check_url, redirect the shopper to this link to complete the 3D Secure authentication and wait for a webhook about the final status from the DECTA Gate.
- In case you receive a
Once you have set up Google Pay for your account, you can start to accept Google Pay payments.
NB: When you submit a payment data request to the Google API, be sure to include the following parameters:
- 'gateway': 'decta'
- gatewayMerchantId': '<your merchant website ID>'
Submit a payment data request to the Google API. Example:
{ "type": "CARD", "parameters": { "allowedAuthMethods": ["PAN_ONLY", "CRYPTOGRAM_3DS"], "allowedCardNetworks": ["MASTERCARD", "VISA"] }, "tokenizationSpecification": { "type": "PAYMENT_GATEWAY", "parameters": { "gateway": "<gateway_name>", "gatewayMerchantId": "<YOUR_MERCHANT_WEBSITE_ID>" } } }When you submit a payment data request to the Google API, be sure to include the following parameters:
- 'gateway': '<gateway_name>'
- gatewayMerchantId': '<your merchant website ID>'
If your gateway account is set up to process card authorisation requests with AVS checks, you can request BillingAddressParameters in your Google Pay API request (it is advised to request the FULL version of the billing address). If you do not request a billing address through Google Pay, you still have the option to use the address you have on file.
You as a merchant create the initial order. Example:
{ //required "client":{ "email": "adam.smith@company.com", "address": "Sunny str, 128", // mandatory field for the AVS functionality "zip_code": "12 3456" // mandatory field for the AVS functionality }, "products": [ { "quantity": "1", "price": "0.30", "title": "My Product" } ], //optional "currency": "EUR" }As a response from DECTA you will receive a parameter called
api_do_urlto send decrypted payload data.Make a request to process the Google Pay payment. Send the data from the decrypted payload in your request to DECTA Gate api_do_url endpoint.
Example, if decrypted payload is
CRYPTOGRAM_3DS:{ "card_number": "...", "exp_month": "...", "exp_year": "...", "eci": "...", // optional "cavv": "...", "wallet": "googlepay" }Example, if decrypted payload is
PAN_ONLY:{ "card_number": "...", "exp_month": "...", "exp_year": "...", "wallet": "googlepay" }Note that in case when the decrypted payload is
PAN_ONLY, all of the 3DS authentication options (i.e. Automatic, Partly Automatic, Third Party MPI, and Manual 3DS Handling) are supported.Response example in case of
CRYPTOGRAM_3DS:{ "processing_status": "000" }If the decrypted message contains
PAN_ONLY, the response depends on the 3DS Authentication option (i.e. there response may be either an URL tothreed_check_url, an immediate result withprocessing_status, or an URL to perform the manual 3DS).Analyze the response:
- In case you receive a
processing_status, wait for a webhook about the final status from the DECTA Gate; - In case you receive a
threed_check_url, redirect the shopper to this link to complete the 3D Secure authentication and wait for a webhook about the final status from the DECTA Gate.
- In case you receive a
PayPal
Description
We offer PayPal payments via Host2Host, Full Page, and Payform JS SDK integrations. For a Host2Host integration with PayPal, you as a merchant are responsible for redirecting your customers to the PayPal environment. You are in complete charge of how to integrate PayPal into your website or app. To create an optimal payment experience, make sure your integration meets the PayPal design guidelines. The information about server requirements for PayPal can be found in the PayPal developer section.
For Full Page and Payform JS SDK integrations, we generate a hosted payment page that handles the redirections of your customers to PayPal directly for their credential and payment data collection.
Please note that your customers will be able to choose PayPal as the payment method if they are located in a region where PayPal is supported.
Before you start enabling this payment method, make sure that your DECTA account manager has given you PayPal permission.
Integration Options
- Host2Host
- Full Page
- Payform JS SDK
Payment Scenarios
- One-Step Payment
- Two-Step Payment
- Full Refund
- Partial Refund
Markets
Albania, Algeria, Andorra, Angola, Anguilla, Antigua and Barbuda, Argentina, Armenia, Aruba, Australia, Austria, Azerbaijan, Bahamas, Bahrain, Barbados, Belarus, Belgium, Belize, Benin, Bermuda, Bhutan, Bolivia, Bosnia and Herzegovina, Botswana, Brazil, Brunei, Bulgaria, Burkina Faso, Burundi, Cabo Verde, Cambodia, Cameroon, Canada, Cayman Islands, Chad, Chile, China, Colombia, Comoros, Congo, The Democratic Republic of the Congo, Cook Islands, Costa Rica, Croatia, Cyprus, Czech Republic, Côte d'Ivoire, Denmark, Djibouti, Dominica, Dominican Republic, Ecuador, Egypt, El Salvador, Eritrea, Estonia, Ethiopia, Falkland Islands, Faroe Islands, Fiji, Finland, France, French Guiana, French Polynesia, Gabon, Gambia, Georgia, Germany, Gibraltar, Greece, Greenland, Grenada, Guadeloupe, Guatemala, Guinea, Guinea-Bissau, Guyana, Honduras, Hong Kong, Hungary, Iceland, India, Indonesia, Ireland, Israel, Italy, Jamaica, Japan, Jordan, Kazakhstan, Kenya, Kiribati, South Korea, Kuwait, Kyrgyzstan, Laos, Latvia, Lesotho, Liechtenstein, Lithuania, Luxembourg, Macedonia, Madagascar, Malawi, Malaysia, Maldives, Mali, Malta, Marshall Islands, Martinique, Mauritania, Mauritius, Mayotte, Mexico, Micronesia, Moldova, Monaco, Mongolia, Montenegro, Montserrat, Morocco, Mozambique, Namibia, Nauru, Nepal, Netherlands, Netherlands Antilles, New Caledonia, New Zealand, Nicaragua, Niger, Nigeria, Niue, Norfolk Island, Norway, Oman, Palau, Panama, Papua New Guinea, Paraguay, Peru, Philippines, Pitcairn, Poland, Portugal, Qatar, Romania, Russian Federation, Rwanda, Réunion, Saint Helena, Saint Kitts and Nevis, Saint Lucia, Saint Pierre and Miquelon, Saint Vincent and the Grenadines, Samoa, San Marino, Sao Tome and Principe, Saudi Arabia, Senegal, Serbia, Seychelles, Sierra Leone, Singapore, Slovakia, Slovenia, Solomon Islands, Somalia, South Africa, Spain, Sri Lanka, Suriname, Svalbard and Jan Mayen, Swaziland, Sweden, Switzerland, Taiwan, Tajikistan, Tanzania, Thailand, Togo, Tonga, Trinidad and Tobago, Tunisia, Turkmenistan, Turks and Caicos Islands, Tuvalu, Uganda, Ukraine, United Arab Emirates, United Kingdom, United States, Uruguay, Vanuatu, Vatican, Venezuela, Vietnam, British Virgin Islands, Wallis and Futuna, Yemen, Zambia, Zimbabwe.
Currencies
USD, GBP, EUR, RUB, AUD, SEK, CAD, CHF, DKK, JPY, PLN, CZK, NOK, CNY, NZD, AMD, BRL, HKD, HUF, ILS, MXN, MYR, PHP, SGD, THB, TWD.
Transaction Limits
Transaction limits differ for each currency and market. If you want to find out more about a particular market or currency, contact your DECTA account manager.
How to Enable PayPal
- Log in to your DECTA Gate account, go to Settings, select the Payment Methods section and click on the “Enable” button for PayPal. You will be automatically redirected to the PayPal environment;
- Once you are redirected to the PayPal environment, you will be asked either to log in with your existing PayPal account or register a new one. If you have a personal PayPal account, you can use that one as well in this step, just take into account that later on you will be asked to upgrade it to a business account. Fill out all the required fields and accepts terms and conditions, allowing to connect your DECTA account with your PayPal account. In case you used your personal account, you will receive a verification link to your email for upgrading your account;
- Once the approval from the PayPal side will be received, you will see in your Gate account that PayPal status has been activated. Now you can start accepting PayPal payments.
Payment Flow
Common Order Request Example
Once you have successfully enabled PayPal for your account, you can start to accept PayPal payments. You as a merchant create the initial order. Example:
{
//required
"client":{
"email": "jane.doe@company.com"
},
"products": [
{
"quantity": "1",
"price": "0.30",
"title": "My Product"
}
]
}
As a response from DECTA you will receive a parameter called api_init_paypal.
Full Page
If you are using the DECTA hosted payment page, no technical changes are required from your side. Once you redirect your customer to the appropriate URL, they will be able to choose whether to pay by card or by PayPal. All communication with PayPal during the payment process is handled by DECTA.
Payform JS SDK
If you are using the DECTA Payform JS SDK, no technical changes are required from your side. Customer will be able to choose on payform whether to pay by card or by Volt. All communication with Volt during the payment process is handled by DECTA.
Host2Host
- Create a
POSTrequest to PayPal api_init_paypal endpoint and as a response you will receive a parameterapprove_url; - Redirect your customer to the approve URL received in the previous step;
- The customer can now either authorise the PayPal payment or cancel it;
- If the customer authorises the payment, PayPal will redirect the customer to the return URL;
- DECTA will proceed either to capturing or holding the payment, according to the merchant’s choice;
- After a successfully proceeded payment, your customer will be redirected to the success page.
Note that the payment amount and currency should match the amount and currency in the order.
Volt
Description
We currently offer Volt payments with Host2Host, Full Page, and Payform JS SDK integration options.
For a Host2Host integration with Volt, you as a merchant are responsible for displaying the payment method option on your checkout page and redirecting your customers to the Volt environment. Volt brand logos for your checkout page can be found here.
For Full Page and Payform JS SDK, DECTA offers a hosted payform that directly handles the redirections of your customers to Volt for the credential and payment data collection. Please see our API documentation for more information.
Note that your customers will be able to choose Volt as the payment method only if the currency they are using is EUR.
Before you start enabling this payment method, make sure that your DECTA account manager has given you the Volt permission.
Integration Options
- Host2Host
- Full Page
- Payform JS SDK
Payment Scenarios
- One-Step Payment
Markets
Andorra, Austria, Belgium, Bulgaria, Croatia, Cyprus, Czech Republic, Denmark, Estonia, Finland, France, Germany, Greece, Hungary, Iceland, Ireland, Italy, Latvia, Liechtenstein, Lithuania, Luxembourg, Malta, Monaco, Netherlands, Norway, Poland, Portugal, Romania, San Marino, Slovakia, Slovenia, Spain, Sweden, Switzerland, United Kingdom, Vatican.
Currencies
GBP, EUR, SEK, CHF, DKK, PLN, CZK, NOK, BGN, HRK, HUF, ISK, RON
Transaction Limits
Transaction limits differ for each currency and market. If you want to find out more about a particular market or currency, contact your DECTA account manager.
How to Enable Volt
- Log in to your DECTA Gate account, go to Settings, select the Payment Methods section and click on the “Configure” button for Volt;
- Click on the "Add new brand" and select the brand for which you would like to add Volt payment method;
- Choose the brand and wait for your DECTA account manager to set up and approve your request. Once it is approved, the status next to the chosen brand will change from Pending to Approved.
Payment Flow
Common Order Request Example
Once you have successfully enabled Volt for your account, you can start to accept Volt payments. You as a merchant create the initial order. Example:
{
//required
"client":{
"email": "jane.doe@company.com"
},
"products": [
{
"quantity": "1",
"price": "0.30",
"title": "My Product"
}
],
//optional
"success_redirect": "https://example.com/success",
"failure_redirect": "https://example.com/failure",
"currency": "EUR"
}
As a response from DECTA you will receive a parameter called api_init_volt. Note that:
- The
success_redirectfield is optional: if the value for it is not provided by the merchant, DECTA Gate default value will be used; - The
failure_redirectfield is optional: if the value for it is not provided by the merchant, DECTA Gate default value will be used; - The
currencyfield is optional: if the currency value is not provided in the order body by the merchant, then it will be taken from the terminal settings.
Full Page
If you are using the DECTA hosted payment page, no technical changes are required from your side. After you redirect your customer to the appropriate URL, they will be able to choose whether to pay by card or by Volt. All communication with Volt during the payment process is handled by DECTA.
Payform JS SDK
If you are using the DECTA Payform JS SDK, no technical changes are required from your side. Customer will be able to choose on payform whether to pay by card or by Volt. All communication with Volt during the payment process is handled by DECTA.
Host2Host
Once you have successfully implemented Volt payment buttons on your website or app, you can begin to initiate Volt payments:
- Create a
POSTrequest to Volt api_init_volt endpoint and as a response you will receive a parametervolt_approve_url; - Redirect your customer to the approve URL received in the previous step;
- The customer can now either authorise the Volt payment or cancel it;
- If the customer authorises the payment, then Volt will redirect the customer to the return URL;
- DECTA captures the payment;
- After successfully proceeded payment, the customer is redirected to the success page.
Note that the payment amount and currency should match the amount and currency in the order.
Zimpler
Description
We currently offer Zimpler payments via Host2Host. For a Host2Host integration with Zimpler, you as a merchant are responsible for displaying the payment method option on your checkout page and redirecting your customers to the Zimpler environment.
Before you start enabling this payment method, make sure that your DECTA account manager has given you the Zimpler permission. Zimpler logo files are available upon request from our support team.
Please note that DECTA will delete all KYC data from the payment objects, except zimpler_user_id and country, after 30 days.
Integration Options
- Host2Host
Payment Scenarious
- One-Step Payment
- Payouts
Markets
Estonia, Finland, Netherlands, Sweden
Currencies
EUR, SEK
Transaction Limits
| EUR | SEK | |
|---|---|---|
| Minimum amount per transaction | € 0.3 | SEK 3 |
| Maximum amount per transaction | € 15 000 | SEK 150 000 |
How to Enable Zimpler
- Log in to your DECTA Gate account, go to Settings, select Payment Methods and click on the "Configure” button for Zimpler;
- Click on the Add new brand and select the brand for which you would like to add Zimpler payment method;
- Choose the brand and submit your request. The initial request may take up to one week for your DECTA account manager to approve it with Zimpler;
- Once it is approved, the status next to the chosen brand will change from Pending to Approved.
Payment Flow
Common Order Request Example
Once you have successfully enabled Zimpler for your account, you can begin to initiate Zimpler payments:
You as a merchant create the initial order. Example:
{
//required
"client":{
"email": "jane.doe@company.com",
"country": "EE"
},
"products": [
{
"quantity": "1",
"price": "0.30",
"title": "My Product"
}
],
//optional
"success_redirect": "https://example.com/success",
"failure_redirect": "https://example.com/failure",
"currency": "EUR"
}
As a response from DECTA you will receive a parameter called api_init_zimpler. Note that:
- The
countryfield is mandatory: if the value is not provided for this field, theapi_init_zimplerlink won’t be returned. Thecountryfield can be provided in eitherclientororiginal_clientobject; - The
success_redirectfield is optional: if the value for it is not provided by the merchant, DECTA Gate default value will be used; - The
failure_redirectfield is optional: if the value for it is not provided by the merchant, DECTA Gate default value will be used; - The
currencyfield is optional: if the currency value is not provided in the order body by the merchant, then it will be taken from the terminal settings;
Host2Host
- Create a
POSTrequest toapi_init_zimplerendpoint (see the API documentation here) and as a response you will receive a parameter calledzimpler_approve_url; - Redirect your customer to the approve URL received in the previous step;
- The customer can now either authorise the Zimpler payment or cancel it. If the payment gets cancelled, DECTA will send a webhook about a failed Zimpler payment and the payment status will be changed to Failed;
- If the customer authorises the payment, then Zimpler will redirect the customer to the success URL. As seen above in the order body example, the merchant can provide their own custom success URL to which the customer should be redirected. If it is not provided, then Zimpler will redirect the customer to the DECTA Gate success URL;
- DECTA captures the payment – this is done automatically in the background. In case something goes wrong, the payment status will be changed to Failed. In that case it is advised for the merchant to wait for a webhook from DECTA Gate side to change the status on their side;
- After successfully proceeded payment, the payment status is updated for the merchant by DECTA and an appropriate webhook about the status is sent out.
Payout Flow
Payouts can be made only to those customers from whom you have previously accepted successful incoming payments to your account.
Once your DECTA account manager has enabled the Zimpler Payouts permission and you have an allocated outgoing Zimpler terminal, you can start initiating the first payout:
You as a merchant create the charge (see the API documentation here - section Orders, endpoint:
/orders/init_apm_payout). Example:{ "client": { "first_name": "Joe", "last_name": "Smith", "country": "SE", "birth_date": "2000-01-01" }, "amount": 100, "currency": "EUR" }As a response from DECTA you will receive a parameter called
init_zimpler_payout. Note that:- The
countryfield is mandatory: if the value is not provided for this field, theapi_init_zimplerlink won’t be returned; - The value of the
countryfield must be the same as the one provided in the charge order; - The
currencyfield is optional: if the currency value is not provided in the order body by the merchant, then it will be taken from the terminal settings.
- The
Create a
POSTrequest toapi_zimpler_payoutendpoint (see the API documentation here - section Orders, endpoint:api_do_url_init_zimpler_payout). Example:{ "zimpler_user_id": "123ff1c1-1c11-11a1-ab11-f1fae1a11111", "ip_address": "string" }Note that
zimpler_user_idis a mandatory field and its value can be found in the response of a previously made, successful Zimpler incoming payment from the same customer.- As a response you will receive a parameter
zimpler_approve_urlthat includes a link. That link is merely informative and should not be used for redirection purposes; - Zimpler payouts do not require approval or any involvement of the end-user. The merchant has to wait for the webhook from the DECTA side about the payout status, and it is then up to the merchant to decide where the end-user should be redirected.
Open Banking
Description
We currently offer Open Banking payments with Host2Host, Full Page, and Payform JS SDK integration options. For the Host2Host integration with DECTA, you as a merchant are responsible for displaying the payment method option on your checkout page and redirecting your customers to the DECTA Open Banking environment.
Before you start enabling this payment method, make sure that your DECTA account manager has given you Open Banking permission. DECTA Open Banking logo files are available upon request from our support team.
Open Banking method is one of those methods which may have a delayed confirmation from the payment provider. Depending on the provider, the payment confirmation in some cases can be delayed from a couple of minutes to multiple days. For such cases we advise sending us the in_progress_redirect parameter in the order request, which will be used to redirect your customer back to you in case a confirmation is not received within 3 minutes after returning to the Gateway. Once the Gateway will receive a confirmation from the payment provider, you will receive an appropriate webhook with a new status of the payment. Make sure that the URL you use for such redirects clearly explains to your customers that the payment has been successfully processed but requires additional time for the final confirmation. You should also state that, after receiving the final confirmation, you will notify your customers about its result via different means.
Integration Options
- Host2Host
- Full Page
- Payform JS SDK
Payment Scenarious
- One-Step Payment
Markets
Austria, Bulgaria, Czech Republic, Denmark, Estonia, Finland, France, Germany, Greece, Hungary, Italy, Latvia, Lithuania, The Netherlands, Norway, Poland, Portugal, Romania, Slovakia, Spain, Sweden, United Kingdom
Please refer to you manager about the markets available to you.
Currencies
EUR, GBP
Transaction Limits
Transaction limits may differ for each market. If you want to find out more, contact your DECTA account manager.
How to Enable Open Banking
- Log in to your DECTA Gate account, go to Settings, select Payment Methods and click on the "Configure” button for Open Banking;
- Click on the "Add new brand" and select the brand for which you would like to add DECTA Open Banking payment method;
- Choose the brand and submit your request. The initial request may take up to one week for your DECTA account manager to approve it;
- Once it is approved, the status next to the chosen brand will change from Pending to Approved.
Payment Flow
Common Order Request Example
Once you have successfully enabled Open Banking for your account, you can start to accept Open Banking payments. You as a merchant create the initial order. Example:
{
"client":{
"email": "example@mail.com"
},
"products": [
{
"price": "10",
"title": "My Product"
}
],
//optional
"success_redirect": "https://www.example.com/successful_payment",
"failure_redirect": "https://www.example.com/failed_payment",
"in_progress_redirect": "https://www.example.com/in_progress"
}
As a response from DECTA you will receive a parameter called api_init_openbanking. Note that:
- The
success_redirectfield is optional: if the value for it is not provided by the merchant, DECTA Gate default value will be used; - The
failure_redirectfield is optional: if the value for it is not provided by the merchant, DECTA Gate default value will be used; - The
in_progress_redirectfield is optional: if the value for it is not provided by the merchant, DECTA Gate default value will be used.
Full Page
If you are using the DECTA hosted payment page, no technical changes are required from your side. After you redirect your customer to the appropriate URL, they will be able to choose whether to pay by card or via Open Banking. All communication with Open Banking during the payment process is handled by DECTA.
Payform JS SDK
If you are using the DECTA Payform JS SDK, no technical changes are required from your side. Customer will be able to choose on payform whether to pay by card or via Open Banking. All communication with Open Banking during the payment process is handled by DECTA.
Host2Host
Create a
POSTrequest toapi_init_openbankingendpoint (see the API documentation here). Note that this request can be:- an empty request
containing a common redirect (see step 6 for uses cases):
{ "common_redirect": "https://www.example.com/" }
- As a response you will receive a parameter called
openbanking_approve_url; - Redirect your customer to the approve URL received in the previous step;
- The customer can now either authorise the DECTA Open Banking payment or cancel it;
When the customer has approved or declined the payment:
- The customer will be redirected to the DECTA default success or failure page, if the common redirect is not sent in the step 2;
- The customer will be redirected straight to your common redirect URL, if it is passed in the step 2 (for a full Host2Host experience);
- The customer will be redirected to your success, failure, or in progress page, if success, failure, and in progress redirects is sent in step 1 but the common redirect is not sent in the step 2;
- After successfully proceeded payment, the payment status is updated for the merchant by DECTA and an appropriate webhook about the status is sent out.
Klarna
Description
We offer Klarna payments via Host2Host, Full Page, and Payform JS SDK integrations. For a Host2Host integration with Klarna, you as a merchant are responsible for redirecting your customers to the Klarna environment. You are in complete charge of how to integrate Klarna into your website or app.
For Full Page and Payform JS SDK integrations, we generate a hosted payment page that handles the redirections of your customers to Klarna directly for their credential and payment data collection.
Please note that your customers will be able to choose Klarna as the payment method if they are located in a region where Klarna is supported.
Before you start enabling this payment method, make sure that your DECTA account manager has given you Klarna permission.
A payment can be kept on hold for 28 days - after that, it gets auto-voided.
country field is mandatory for the initial order requests.
Integration Options
- Host2Host
- Full Page
- Payform JS SDK
Payment Scenarious
- Two-Step Payment
- Full Refund
- Partial Refund
Customer Markets
Austria, Belgium, Denmark, Finland, Germany, Netherlands, Poland, Sweden, Switzerland, United Kingdom, Australia, Canada, France, Ireland, Italy, Norway, New Zealand, Portugal, Spain, United States of America, Czech Republic, Greece, Romania
Currencies
CHF, DKK, EUR, GBP, NOK, PLN, SEK, AUD, CAD, USD, CZK, RON, NZD
Transaction Limits
Transaction limits differ for each currency and market. If you want to find out more about a particular market or currency, contact your DECTA account manager.
How to Enable Klarna
- Log in to your DECTA Gate account, go to Settings, select Payment Methods and click on the "Configure” button for Klarna;
- Click on the "Add new brand" and select the brand for which you would like to add Klarna payment method;
- Choose the brand and submit your request. The initial request may take up to one week for your DECTA account manager to approve it;
- Once it is approved, the status next to the chosen brand will change from Pending to Approved.
Payment Flow
Common Order Request Example
Once you have successfully enabled Klarna for your account, you can start to initiate payments. You as a merchant create the initial order. Example:
{
//required
"client":{
"email": "jane.doe@company.com",
"country": "NL"
},
"skip_capture": true,
"products": [
{
"quantity": "1",
"price": "0.30",
"title": "My Product"
}
],
//optional
"success_redirect": "https://example.com/success",
"failure_redirect": "https://example.com/failure"
}
As a response from DECTA, you will receive a parameter called api_init_klarna.
Note that:
- The
countryfield is mandatory: if the value is not provided for this field, theapi_init_klarnalink won’t be returned. Thecountryfield can be provided in eitherclientororiginal_clientobject; - The
success_redirectfield is optional: if the value for it is not provided by the merchant, DECTA Gate default value will be used; - The
failure_redirectfield is optional: if the value for it is not provided by the merchant, DECTA Gate default value will be used; skip_capture: trueis required to make Two-Step Klarna payments.
Full Page
If you are using the DECTA hosted payment page, no technical changes are required from your side. After you redirect your customer to the appropriate URL, they will be able to choose whether to pay by card or via Klarna. All communication with Klarna during the payment process is handled by DECTA.
Payform JS SDK
If you are using the DECTA Payform JS SDK, no technical changes are required from your side. Customer will be able to choose on payform whether to pay by card or via Klarna. All communication with Klarna during the payment process is handled by DECTA.
Host2Host
- Create a POST request to Klarna
api_init_klarnaendpoint and as a response you will receive a parameterklarna_approve_url; - Redirect your customer to the approve URL received in the previous step;
- The customer can now either authorise the Klarna payment or cancel it; (will be clarified)
- When the customer has approved or declined the payment:
- The customer will be redirected to the DECTA default success or failure page, if the common redirect is not sent in the step 2;
- The customer will be redirected to your success, failure, or in progress page, if success, failure, and in progress redirects is sent in order request;
- After a successfully proceeded payment, the payment status is updated for the merchant by DECTA and an appropriate webhook about the status is sent out.
Direct Post
This integration option is not available for Klarna.
Visa Instalments
Description
Visa Installments allow eligible cardholders the flexibility to pay for a purchase in equal payments over a defined period. You can learn more about Visa Instalments.
Before you start enabling this payment method, make sure that your DECTA account manager has given you Visa Instalments permission.
Integration Options
- Host2Host
- Full Page
- Payform JS SDK
Payment Scenarious
- One-Step Payment
- Two-Step Payment
- Full Refund
- Partial Refund
- Reversal
Additional Capabilities
- Use of Travel Data
- Use of Dynamic Descriptor
- Use of Service Location details
- Address Verification System
Customer Markets
United Kingdom
Currencies
GBP
Transaction Limits
| GBP | |
|---|---|
| Minimum amount per transaction | £ 50 |
| Maximum amount per transaction | Contact your account manager regarding the maximum limit |
How to Enable Visa Instalments
Contact your DECTA account manager to enable this payment method.
Payment Flow
Common Order Request Example
Once you have successfully enabled Visa Instalments for your account, you can start to accept Visa Instalment payments. You as a merchant create the initial order. Example:
{
//required
"client":{
"email": "adam.smith@company.com"
},
"products": [
{
"quantity": "1",
"price": "50",
"title": "My Product"
}
],
//optional
"currency": "GBP"
}
As a response from DECTA you will receive a parameter called instalment_plans.
Full Page
If you are using the DECTA hosted payment page, no technical changes are required from your side. After you redirect your customer to the appropriate URL, they will see if their card is eligable for instalments. If it is, then the customer can select either to pay all amount in full or choose a plan and pay in instalments. Payment processing is the same as for regular orders.
Payform JS SDK
If you are using the DECTA Payform JS SDK, no technical changes are required from your side. Once you customer has submitted their card data, they will see if their card is eligable for instalments. If it is, then the customer can select either to pay all amount in full or choose a plan and pay in instalments. Payment processing is the same as for regular orders.
Host2Host
- Check if the card is eligible for Visa Instalments and request Instalment plans by sending Visa card number in the request to DECTA Gate
instalment_plansendpoint.
Request example:
{
"card_number": "411111******1111"
}
Response example if the plans are available:
{
"instalment_request_id": 12,
"instalment_plans": [
{
"id": "string",
"frequency": "string",
"number_of_instalments": 3,
"terms_conditions": [
{
"url": "string",
"version": 4,
"text": "string",
"language": "string"
}
],
"annual_percentage_rate": 3.0,
"total_amount": 353.5,
"total_fee": 3.51,
"amount": 117.83,
"fee": 1.17
}
]
}
Response example if the plans are not avaible:
{
"instalment_request_id": "12345",
"instalment_plans": []
}
- If the plans are available and the cardholder has selected the desired plan, certain fields from the
instalment_plansresponse should be sent inapi_do_urlrequest.
Request example:
{
"cardholder_name": "GATETEST123",
"card_number": "411111******1111",
"exp_month": "05",
"exp_year": "24",
"csc": "***",
"instalment_plan":{
"instalment_request_id": 123, //taken from /instalment_plans response - mandatory for Instalment plans
"id": "...", //taken from /instalment_plans response - mandatory for Instalment plans
"version": 4, //taken from /instalment_plans response - mandatory for Instalment plans
"language": "eng" //taken from /instalment_plans response - mandatory for Instalment plans
}
}
- As a response you will receive either a payment status or a link to the 3DS check.