About
Bancontact is a widely used payment method in Belgium. The Bancontact and Payconiq brands both belong to the same group, and the mobile app available to end users is the same: Payconiq by Bancontact. This article concerns the Bancontact pay-in flow, which allows users to complete the payment by scanning a QR code, or by using a Bancontact-branded card (that is not saved). Mangopay offers two other flows from the Bancontact Payconiq Group:- Direct card pay-in – A payment with a Bancontact-branded card that is tokenized like any other card brand.
- Payconiq pay-in – A payment using the Payconiq by Bancontact app to scan a QR code to complete payment (see Payconiq guide).
Region | Belgium |
---|---|
Currencies | EUR |
Refunds | Yes, within 180 days |
Disputes | Yes |
Preauthorization | No |
Recurring payments | Planned |
How it works
The Bancontact pay-in flow provides the following checkout experience:1
User chooses payment method
On your app or website, the user selects Bancontact as the payment method
2
Payment initiation
You create the payment request by calling POST Create a Bancontact PayIn, specifying the
ReturnURL
.If the ReturnURL
redirects to your app, rather than a website, you need to also set the PaymentFlow
to APP
.3
Redirection
On a web browser, you redirect the user to a hosted payment page via the In an app-to-app flow, you redirect the user to their Payconiq by Bancontact app via the
RedirectURL
in the API response.On the webpage, the user can:- Enter their Bancontact card number, or
- Scan a QR code with a Belgian banking app (that supports QR code scan) or the Payconiq by Bancontact app. The QR-code flow is available for transactions up to €1,500. Above this amount, the user is only presented with the card option.
Note – Card must be branded BancontactThe Bancontact pay-in flow only accepts Bancontact cards, which are always co-branded with Visa, Mastercard, or Maestro.Cards that don’t carry the Bancontact name, but are only branded Maestro for example, can’t be used on Bancontact pay-ins.
DeepLinkURL
in the API response, where they confirm and authenticate the payment.4
Return
After payment, the user is returned on your specified
ReturnURL
:- To a website if
PaymentFlow
isWEB
(default value) - To a mobile app if the
PaymentFlow
isAPP
5
Outcome
The transaction is complete when the pay-in status changes from
CREATED
to SUCCEEDED
or FAILED
, indicating the outcome.Hooks
You should also set up hook notifications for the relevant event types:- PAYIN_NORMAL_SUCCEEDED
- PAYIN_NORMAL_FAILED
Legacy integrations
The Bancontact PayIn replaces Mangopay’s legacy Bancontact integration, which is the Web Card PayIn withCardType
value BCMC
. The web card flow continues to be supported, and no change is required from platforms.
The Direct Card PayIn flow for Bancontact cards remains available.
The new Bancontact pay-in flow provides options to the user that are not available in the legacy flow:
- Scanning the QR code
- Opening the Payconiq by Bancontact app via the
DeepLinkURL