| Property | Details |
|---|---|
| Markets (consumer) | BE |
| Consumer currencies | EUR |
| Authentication methods | REDIRECT |
| Authentication timeout | Subject to channel rules |
| Minimum payment amount | Subject to channel rules |
| Maximum payment amount | Subject to channel rules |
| Payment instrument | BANK_REDIRECT / DEBIT_CARD |
| One-time payment | Yes |
| Recurring payments | No |
| Separate captures | No |
| Refund | Full · Partial |
| Refund validity | Subject to channel rules |
| Disputes | No standard chargeback flow |
| Supported products | Checkout Session · Hosted Checkout · Embedded Checkout · API |
next_action.redirect.url.return_url.return_url must be provided when creating or confirming the PaymentIntent.auto_capture to true or omit it to use the default value.payment_method_data.bancontact object currently does not require any Bancontact-specific business parameters. The optional extra_params object is reserved for extended channel parameters and should only be provided when instructed by UseePay.confirm to true.currency to EURpayment_method_data.type to bancontactbilling.address.country to BEconfirm to truereturn_url to the merchant result page{
"merchant_order_id": "order_bancontact_001",
"amount": 1000,
"currency": "EUR",
"confirm": true,
"auto_capture": true,
"return_url": "https://merchant.example.com/payment/return",
"payment_method_data": {
"type": "bancontact",
"billing": {
"first_name": "John",
"last_name": "Doe",
"email": "john.doe@example.com",
"address": {
"country": "BE"
}
},
"bancontact": {}
}
}requires_customer_action.{
"id": "1012611020000000001",
"code": "0000",
"message": "Approved or completed successfully",
"amount": 1000,
"currency": "EUR",
"status": "requires_customer_action",
"confirm": true,
"orderType": "sale",
"mode": "payment",
"sale": true,
"merchant_no": "500000000000000",
"app_id": "merchant.example.com",
"merchant_order_id": "order_bancontact_001",
"refunded_amount": 0,
"next_action": {
"type": "redirect",
"redirect": {
"method": "GET",
"url": "https://payment.example.com/bancontact/authorize",
"content_type": null,
"app_url": null,
"package_name": null
}
},
"return_url": "https://merchant.example.com/payment/return",
"auto_capture": true,
"payment_attempt": {
"payment_method_details": {
"type": "bancontact"
}
}
}status is requires_customer_action, redirect the customer to:next_action.redirect.urlreturn_url.succeeded.| Status | Description | Merchant Action |
|---|---|---|
requires_customer_action | Customer authorization is still required | Redirect the customer |
pending | The payment is pending the final result from the payment provider | Wait for the webhook notification |
succeeded | Payment completed successfully | Fulfill the order |
failed | Payment failed | Display the failure and allow retry |
canceled | Payment was canceled | Close or recreate the payment |
Always use the PaymentIntent status or webhook event as the source of truth. Do not rely only on the browser redirect result.