Skip to content
Create account
or
Sign in
The Stripe Docs logo
/
Ask AI
Create account
Sign in
Get started
Payments
Revenue
Platforms and marketplaces
Money management
Developer tools
Overview
About Stripe payments
Upgrade your integration
Payments analytics
Online payments
OverviewFind your use caseManaged Payments
Use Payment Links
Build a checkout page
Build an advanced integration
Build an in-app integration
Payment Methods
Add payment methods
Manage payment methods
Faster checkout with Link
Payment interfaces
Payment Links
Checkout
Web Elements
In-app Elements
Payment scenarios
Custom payment flows
Flexible acquiring
Orchestration
In-person payments
Terminal
    Overview
    Accept in-person payments
    Integration design
    Select your reader
    Design an integration
    Quickstart
    Example applications
    Testing
    Terminal setup
    Set up your integration
    Connect to a reader
    Accepting a payment
    Collect card payments
    Additional payment methods
    Accept offline payments
    Mail order and telephone order payments
    Regional considerations
    During checkout
    Collect tips
    Collect and save payment details for future use
    Flexible authorisations
    After checkout
    Refund transactions
    Provide receipts
    Customize checkout
    Cart display
    Collect on-screen inputs
    Collect swiped data
    Collect tapped data for NFC instruments
    Apps on devices
    Manage readers
    Order, return, replace readers
    Register readers
    Manage locations and zones
    Configure readers
    Monitor Readers
    Encryption
    References
    API references
    Mobile readers
    Smart readers
    SDK migration guide
    Deployment checklist
    Stripe Terminal reader product sheets
Other Stripe products
Financial Connections
Crypto
Climate
HomePaymentsTerminal

Regional considerations

Learn about regional considerations for integrating Terminal in different countries.

Copy page

​​For the most part, you’ll be able to use a single Terminal integration in all supported countries. However, due to local payment methods or regulations there are some country-specific requirements. After going through the sample integration, use this guide to learn about country-specific requirements for Terminal.

Note

To process Terminal payments, both the Stripe account receiving the funds and the location associated with the reader must be in the same country, accepting local currency only.

Country

Availability

Refer to the following table to understand which readers and SDK platforms you can use in each country.

CountriesAndroid**iOS**JavaScriptServer-Driven
United States
Stripe Reader M2
Bluetooth or USB
Stripe Reader S700
Smart
BBPOS WisePOS E
Smart
Tap to Pay
Embedded
Stripe Reader M2
Bluetooth
Stripe Reader S700
Smart
BBPOS WisePOS E
Smart
Tap to Pay
Embedded
Stripe Reader S700
Smart
BBPOS WisePOS E
Smart
Stripe Reader S700
Smart
BBPOS WisePOS E
Smart
Canada
Italy
Netherlands
BBPOS WisePad 3
Bluetooth or USB
Stripe Reader S700
Smart
BBPOS WisePOS E
Smart
Tap to Pay*
Embedded
BBPOS WisePad 3
Bluetooth
Stripe Reader S700
Smart
BBPOS WisePOS E
Smart
Tap to Pay
Embedded
Stripe Reader S700
Smart
BBPOS WisePOS E
Smart
BBPOS WisePOS E
Smart
Australia
Ireland
New Zealand
United Kingdom
BBPOS WisePad 3
Bluetooth or USB
Stripe Reader S700
Smart
BBPOS WisePOS E
Smart
Tap to Pay
Embedded
BBPOS WisePad 3
Bluetooth
Stripe Reader S700
Smart
BBPOS WisePOS E
Smart
Tap to Pay
Embedded
Stripe Reader S700
Smart
BBPOS WisePOS E
Smart
BBPOS WisePOS E
Smart
Singapore
BBPOS WisePad 3
Bluetooth or USB
Stripe Reader S700
Smart
BBPOS WisePOS E
Smart
Tap to Pay
Embedded
BBPOS WisePad 3
Bluetooth
Stripe Reader S700
Smart
BBPOS WisePOS E
Smart
Stripe Reader S700
Smart
BBPOS WisePOS E
Smart
BBPOS WisePOS E
Smart
France
Germany
BBPOS WisePad 3
Bluetooth or USB
Stripe Reader S700
Smart
Tap to Pay*
Embedded
BBPOS WisePad 3
Bluetooth
Stripe Reader S700
Smart
Tap to Pay*
Embedded
Stripe Reader S700
Smart
Austria
Belgium
Czech Republic
Denmark
Finland
Luxembourg
Poland+
Portugal
Sweden
Switzerland
BBPOS WisePad 3
Bluetooth or USB
Stripe Reader S700
Smart
BBPOS WisePOS E
Smart
Tap to Pay*
Embedded
BBPOS WisePad 3
Bluetooth
Stripe Reader S700
Smart
BBPOS WisePOS E
Smart
Tap to Pay*
Embedded
Stripe Reader S700
Smart
BBPOS WisePOS E
Smart
BBPOS WisePOS E
Smart
Malaysia
Norway
Spain
BBPOS WisePad 3
Bluetooth or USB
Stripe Reader S700
Smart
BBPOS WisePOS E
Smart
Tap to Pay*
Embedded
BBPOS WisePad 3
Bluetooth
Stripe Reader S700
Smart
BBPOS WisePOS E
Smart
Stripe Reader S700
Smart
BBPOS WisePOS E
Smart
BBPOS WisePOS E
Smart
+Terminal is currently in beta in this country.
*This Terminal integration shape is currently in beta.
**Compatibility for this mobile SDK also applies when used with React Native.

Integrate Terminal in France

Stripe supports Visa, Mastercard, American Express, and Discover payments in France. All transactions must be made in euros (EUR). To accept Terminal charges in France, either your platform account or connected account must be in France.

Reader software version

BBPOS WisePad 3 readers operating in France must use the reader software version 4.01.00.48_FR_v8_511001 or later. Read about BBPOS WisePad 3 software updates for details.

Cartes Bancaires payments Public preview

Cartes Bancaires is the interbank network that handles routing of debit payments in France. Consumer debit cards in France are branded with a Cartes Bancaires logo and might also be co-badged with Visa or Mastercard. You can process these cards using either Cartes Bancaires or the international network. If you are interested in processing transactions over Cartes Bancaires on your Stripe Terminal, please email us at terminal-cb-beta@stripe.com.

Enable Cartes Bancaires

French Stripe accounts can process Cartes Bancaires payments after providing their business tax ID in the Dashboard settings.

If you are a Connect platform, and your connected accounts don’t have access to the full Stripe Dashboard (includes Express and Custom accounts) you must request the cartes_bancaires_payments capability on behalf of your connected accounts.

Integration requirements

To accept Cartes Bancaires payments, you must use the BBPOS WisePad 3 or Stripe Reader S700 reader.

If you use the BBPOS WisePad 3 reader, you must use the following minimum Terminal SDK versions:

  • iOS SDK 3.2.0: Released on 17 November 2023
  • Android SDK 3.2.0: Released on 17 November 2023
  • React Native SDK v0.0.1-beta.14: Released on 6 December 2023

If you use the Terminal JavaScript SDK or server-driven integration, you don’t need to make any changes.

The BBPOS WisePOS E reader doesn’t support the Cartes Bancaires network, and processes transactions from co-badged cards through only the international network.

Routing co-badged debit cards

Co-badged Cartes Bancaires cards support both Cartes Bancaires and international card networks. If your integration supports Cartes Bancaires, you can choose to process the payment directly through Cartes Bancaires or through the international network.

When you create a PaymentIntent, specify your choice in the requested_priority of the payment_method_options.card_present.routing attribute. SetupIntents, which collect card details without charging the card, always process using the international network.

RoutingSettingResult
Cartes BancairesSet requested_priority to domestic.
  • Co-badged Cartes Bancaires cards prioritise the Cartes Bancaires network.
    • All other cards process normally.
International networksSet requested_priority to international.
  • Co-badged Cartes Bancaires cards prioritise the international network.
    • All other cards process normally.

Stripe Terminal provides default support for compliance with customer card brand choice. Customers who insert a co-badged Cartes Bancaires card into a supported device can override your priority selection and choose their preferred network routing option, as shown in the following image.

An application selection screen showing two card brands, one with Cartes Bancaires and the other Visa, on the WisePad 3 device.

BBPOS WisePad 3

An application selection screen showing two card brands, one with Cartes Bancaires and the other Visa, on the Stripe S700 device.

Stripe S700

Refund a Cartes Bancaires payment

You can refund Cartes Bancaires payments through the API or Dashboard. Refunds don’t require the cardholder to present their card again at the point of sale.

Identify the network

To identify which network a payment was processed on, inspect the network value of the Charge object associated with a successful PaymentIntent.

{ "id": "ch_1Ff52K2eZvKYlo2CWe10i0s7", "object": "charge", ... "payment_method_details": { "card_present": { "brand": "visa", ... "network": "cartes_bancaires" }, "type": "card_present" } }

Provide receipts

For Cartes Bancaires payments, Stripe includes additional metadata in the pre-built receipts. For custom receipts, the following required fields are available in the PaymentIntent as soon as the payment is confirmed.

FieldDescription
transaction_trace_numberThe transaction number generated by the acceptance system.
siret_numberThe système d’identification du répertoire des établissements (establishment directory identification system) code assigned to the business.
bank_codeThe code for the bank that issued the card.
acceptor_identifierThe acceptor identifier.
acceptance_system_terminal_application_identifierThe identifier for the terminal application used to process the transaction.
card_acceptor_logical_numberThe logical number of the card acceptance point.
system_acceptor_logical_numberThe logical number of the acceptance system.

Use locations

Create Locations for your business with addresses in France and associate your readers to them. This will ensure that they automatically download the configuration needed to properly process charges in France. A valid address for a Location in France must contain the line1, city, postal_code, and country properties.

Command Line
curl
curl https://api.stripe.com/v1/terminal/locations \ -u
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:
\ -d "display_name"="HQ" \ -d "address[line1]"="19 Rue de Vienne" \ -d "address[city]"="Paris" \ -d "address[country]"="FR" \ -d "address[postal_code]"="75008" \

Translation

Language regulations require that services, including point-of-sale services, be provided in French unless English has been agreed upon by the cardholder and their card issuer. Terminal is built to help you comply with these requirements if they apply to your business.

Default reader language

The BBPOS WisePOS E and Stripe Reader S700 support changing reader language in the Settings panel. Swipe right across the screen to access the Settings panel, and select your language.

The BBPOS WisePad 3 supports changing reader language directly in the reader interface. After you have registered your reader to a Location with an address in France, the reader installs a language pack relevant for your region if one isn’t already in place. To view available language options and to select a language, click the Power / Settings button and scroll down using the arrow keys until you reach the language selection menu. Highlight your desired language and press the green Enter key.

Other translations

If you’re required to provide services in or would like to translate text into French in addition to English, ensure that any of your custom reader screens and receipts display the appropriate translations.

Strong Customer Authentication

Strong Customer Authentication (SCA) is a European regulatory requirement to reduce fraud and make payments more secure. SCA is or will be required for customer-initiated electronic payments within the European Economic Area (EEA). For more information about this European regulation, you can read Stripe’s PSD2: SCA guide.

Transactions below 50 euros (or the local currency equivalent) are considered low value and may be exempted from SCA. However, banks need to request authentication if the low value exemption has been used five times since the cardholder’s last successful authentication or if the sum of previously exempted payments exceeds 150 euros (or the local currency equivalent).

In France, all transactions authenticated with a PIN satisfy the SCA requirements. The card represents the first authentication element of the transaction (possession) and the PIN represents the second (knowledge). Some contactless cards may support PIN validation with a single tap; however, others may require initiating an authenticated Chip and PIN contact transaction to comply with the SCA requirements.

If a contactless transaction isn’t eligible for an SCA exemption, the reader prompts the customer to enter their PIN or insert their card for a chip-and-PIN transaction.

You will see two charges associated with SCA-authenticated transactions. The first will be a soft-declined charge with an error message online_or_offline_pin_required or offline_pin_required, depending on the card’s capabilities. The second will be the authorized or hard-declined charge.

Was this page helpful?
YesNo
Need help? Contact Support.
Join our early access programme.
Check out our changelog.
Questions? Contact Sales.
LLM? Read llms.txt.
Powered by Markdoc