Sign in
An image of the Stripe logo
Create account
Sign in
Home
Payments
Business operations
Financial services
Developer tools
No-code
All products
Home
Payments
Business operations
Home
Payments
Business operations
Financial services
Developer tools
Support
Overview
Overview
Payment method integration options
Bank debits
Bank redirects
Bancontact
Accept a payment
Save bank details during payment
Set up future payments
BLIK
EPS
FPX
giropay
iDEAL
Przelewy24
Sofort
Bank transfers
Buy now, pay later
Credit transfers (Sources)
Real-time payments
Vouchers
Wallets
Testing
HomePaymentsBank redirectsBancontact

Accept a Bancontact payment

Learn how to accept Bancontact, a common payment method in Belgium.

Stripe automatically presents your customers payment method options by evaluating their currency, payment method restrictions, and other parameters. We recommend that you configure your payment methods from the Stripe Dashboard using the instructions in Accept a payment.

If you want to continue manually configuring the payment methods you present to your customers with Checkout, use this guide (for example, to accept payments in Subscription mode). Otherwise, migrate to the dashboard.

Bancontact is a single use payment method where customers are required to authenticate their payment. Customers pay with Bancontact by redirecting from your website, authorizing the payment, then returning to your website where you get immediate notification on whether the payment succeeded or failed.

Your use of Bancontact must be in accordance with our Bancontact Terms of Service.

Determine compatibility

Supported business locations: Europe, US, CA, NZ, SG, HK, JP, AU, MX

Supported currencies: eur

Presentment currencies: eur

Payment mode: Yes

Setup mode: Yes

Subscription mode: Yes

A Checkout Session must satisfy all of the following conditions to support Bancontact payments:

  • Prices for all line items must be expressed in Euro (currency code eur).

Accept a payment

Build an integration to accept a payment with Checkout before using this guide.

Use this guide to learn how to enable Bancontact—shows the differences between accepting a card payment and using Bancontact.

Enable Bancontact as a payment method

When creating a new Checkout Session, you need to:

  1. Add bancontact to the list of payment_method_types
  2. Make sure all your line_items use the eur currency.
Stripe::Checkout::Session.create({ mode: 'payment', payment_method_types: ['card'], payment_method_types: ['card', 'bancontact'], line_items: [{ price_data: { currency: 'usd', # To accept `bancontact`, all line items must have currency: eur currency: 'eur', product_data: { name: 'T-shirt', }, unit_amount: 2000, }, quantity: 1, }], success_url: 'https://example.com/success', cancel_url: 'https://example.com/cancel', })

Fulfill your orders

After accepting a payment, learn how to fulfill orders.

Test your integration

There are no special test numbers required for Bancontact.

When testing your Checkout integration, select Bancontact as the payment method and click the Pay button.

Handle refunds and disputes

The refund period for Bancontact is up to 180 days after the original payment.

There is no dispute process—customers authenticate with their bank.

See also

  • More about Bancontact
  • After the Payment
  • Customizing Checkout
Was this page helpful?
Questions? Contact us.
Watch our developer tutorials.
Check out our product changelog.
Powered by Markdoc
You can unsubscribe at any time. Read our privacy policy.
On this page
Determine compatibility
Accept a payment
Test your integration
Handle refunds and disputes
See also
Stripe Shell
Test mode
▗▄ ▄▟█ █▀▀ ▗▟████▙▖ ██████ ███▗▟█ ███ ███▗▟██▙▖ ▗▟█████▙▖ ███▖ ▀▀ ███ ███▀▀▀ ███ ███▀ ███ ███ ███ ▝▜████▙▖ ███ ███ ███ ███ ███ █████████ ▄▄ ▝███ ███ ▄ ███ ███ ███▄ ███ ███ ▄▄ ▝▜████▛▘ ▝▜███▛ ███ ███ ███▝▜██▛▘ ▝▜█████▛▘ ███ ▀▘
Welcome to the Stripe Shell! Stripe Shell is a browser-based shell with the Stripe CLI pre-installed. Login to Stripe docs and press Control + Backtick on your keyboard to start managing your Stripe resources in test mode. - View supported commands: - Find webhook events: - Listen for webhook events: - Call Stripe APIs: stripe [api resource] [operation] (e.g. )
The Stripe Shell is best experienced on desktop.
$