Integration

For a Bancontact transaction, the merchant starts by sending the request to a BPE transaction gateway. The gateway processes the request and sends a response to the merchant. If the request is sent to a gateway without a customer redirect, the response will contain a redirect URL to which the customer must be redirected. If in the original request, the customer was already redirected to the public gateway, the customer is automatically redirected to this page by the transaction gateway.

Once the customer reaches this page, they can enter their card details. If the card is not secured with a 3D Secure code, the payment is processed immediately, and the customer will be redirected back to the merchant website along with the result. If the card is secured with a 3D Secure code, the customer is redirected to the 3D Secure page for their specific card. After completing the process on this page, the customer returns to the BPE transaction gateway, and the Payment Engine will process the credit card payment. The customer is then redirected back to the merchant website along with the payment result. Additionally, the Payment Engine will also perform a Transaction Push, updating the status of the payment.

Service Codes and Actions

The service code for Bancontact is: bancontactmrcash.

The Bancontact service supports the following actions: Pay, Refund, Authenticate, PayOneClick, and PayRecurrent. All actions can be used with the channel 'Web'.

Wallet-Initiated Payments

When eligible for Wallet Initiated Payments, it is possible to use the PayOneClick and PayRecurrent actions. This is possible after an initial successful Bancontact transaction, where the Bancontact token is saved. For this, the optional service parameter "savetoken" needs to be set to true on the original Bancontact transaction.

Recurring Direct Debits

It is also possible to use a Bancontact transaction as a reference transaction for recurring SEPA Direct Debit transactions. To do this, add the basic parameter "StartRecurrent" with the value "True" to your Bancontact API request. Once successful, you can perform a recurring SEPA direct debit transaction. Please see the SEPA Direct Debit section for an explanation of the "PayRecurrent" request.

Bancontact App

When Buckaroo is your Bancontact acquirer, the customer can finish a Bancontact transaction with the Bancontact app. The "pay with Bancontact app" button will appear automatically when the customer is redirected to the Buckaroo checkout, below the fields where the customer can enter their card data. When a customer clicks on this button, they will either see a QR code to scan with the Bancontact app or, when on a mobile device, they will be redirected directly to the Bancontact app to finish the transaction.

It is also possible to show this button (and display the QR code or redirect to the Bancontact app) on your webshop checkout. To do this, you need to implement our Client SDK and initiate a server-side Pay request. With the "Key" given in the Pay response, you can call the Client SDK like this:

$(document).ready(function() { BuckarooSdk.BancontactMobile.initiate("#bancontactMobileButton", "TransactionKey"); });

Where #bancontactMobileButton is the ID of the location where you want to show the button.

Click here for more information about our Client SDK.

App or Card on Your Own Webshop Checkout

It is also possible to let the consumer choose between paying with the Bancontact App or Bancontact Card on your webshop checkout. All you have to do is send a Pay request to our Transaction API. Then, send a GET request to:

https://checkout.buckaroo.nl/api/BancontactMobile/GetCodeUrl?transactionKey=TRANSACTIONKEY

where TRANSACTIONKEY is the retrieved transaction key from the Pay request. The response contains the data you need to show the QR code. When the consumer pays with the Bancontact App, no further action is required. When the consumer pays with their Bancontact Card, you need to send the encrypted card data in a CompletePayment request to our DataRequest API to complete the payment.

New URL Feature for Bancontact App2App Payments

A new feature for BC App2App payments allows merchants to send an IntentURL as the return URL. This way, the Merchant IntentURL will be passed through to Bancontact instead of the Buckaroo checkout return URL. This URL enables the Merchant to return the consumer to the Merchant App after the payment is completed through the Bancontact App.

This feature does not conflict with merchants using both App2App and browser-based transactions. Buckaroo provides two URLs: one for the Bancontact App and another for a browser-based payment (e.g., a QR code displayed in the browser). The Merchant implementation can choose the appropriate URL per transaction channel. This feature needs to be activated by Buckaroo in the Merchant Account.

How to Test Bancontact

You can find everything on test transactions in this article: Test transaction.