Accéder directement au contenu
Créez un compte
ou
connecter-vous
Logo de la documentation Stripe
/
Demander à l'assistant IA
Créez un compte
Connectez-vous
Démarrer
Paiements
Automatisation des opérations financières
Plateformes et places de marché
Gestion de fonds
Outils de développement
Démarrer
Paiements
Automatisation des opérations financières
Démarrer
Paiements
Automatisation des opérations financières
Plateformes et places de marché
Gestion de fonds
Aperçu
À propos des paiements Stripe
Mettre votre intégration à niveau
Analyses des paiements
Paiements en ligne
PrésentationTrouver votre cas d'usageManaged Payments
Utiliser Payment Links
Créer une page de paiement
Développer une intégration avancée
Développer une intégration dans l'application
Moyens de paiement
Ajouter des moyens de paiement
    Présentation
    Options d'intégration des moyens de paiement
    Gérer les moyens de paiement par défaut dans le Dashboard
    Types de moyens de paiement
    Cartes bancaires
    Prélèvements bancaires
    Virements avec redirection bancaire
      Bancontact
        Accepter un paiement
        Enregistrer les coordonnées bancaires lors du paiement
        Configurer des paiements futurs
      BLIK
      EPS
      FPX
      iDEAL
      Przelewy24
      Sofort
      TWINT
    Virements bancaires
    Virements (Sources)
    Achetez maintenant, payez plus tard
    Paiements en temps réel
    Coupons
    Portefeuilles
    Activer des moyens de paiement locaux par pays
    Moyens de paiement personnalisés
Gérer les moyens de paiement
Paiement accéléré avec Link
Interfaces de paiement
Payment Links
Checkout
Web Elements
Elements intégrés à l'application
Scénarios de paiement
Tunnels de paiement personnalisés
Acquisition flexible
Orchestration
Paiements par TPE
Terminal
Autres produits Stripe
Financial Connections
Cryptomonnaies
Climate
AccueilPaiementsAdd payment methodsBank redirectsBancontact

Enregistrer des coordonnées bancaires lors d'un paiement Bancontact

Découvrez comment enregistrer le numéro IBAN de votre client lors d'un paiement Bancontact.

Copier la page

Mise en garde

Nous vous recommandons de suivre les instructions de notre guide Enregistrer les coordonnées bancaires lors du paiement. Si vous avez déjà intégré Elements, reportez-vous à notre Guide de migration du Payment Element.

Prélèvement automatique SEPA

Pour intégrer sans Bancontact, consultez la page Accepter les paiements par prélèvement automatique SEPA.

Bancontact est un moyen de paiement belge à usage unique qui nécessite l’authentification du paiement par le client. Pour effectuer un paiement avec Bancontact, les clients quittent votre site Web, autorisent le paiement, puis reviennent vers votre site. Vous recevez alors une notification immédiate indiquant si le paiement a abouti ou échoué.

Vous pouvez également utiliser Bancontact pour enregistrer les coordonnées bancaires IBAN de votre client dans un objet PaymentMethod de type prélèvement automatique SEPA. Vous pouvez ensuite utiliser ce PaymentMethod prélèvement automatique SEPA pour accepter des paiements ou configurer un abonnement. Cela permet de simplifier le processus de paiement pour votre client, qui n’aura plus à ressaisir son IBAN. Vous recevez également son nom vérifié et son IBAN validé.

Mise en garde

Pour utiliser Bancontact afin de configurer des paiements par prélèvement automatique SEPA, vous devez activer les prélèvements automatiques SEPA dans le Dashboard. Vous devez également respecter les Conditions d’utilisation du service Bancontact et les Conditions d’utilisation du prélèvement automatique SEPA.

Accepter un paiement Bancontact consiste à créer un objet PaymentIntent pour suivre un paiement, recueillir les informations de moyen de paiement et la confirmation du mandat, puis envoyer le paiement à Stripe pour traitement. Stripe utilise le PaymentIntent pour suivre et gérer les états successifs du paiement jusqu’à sa réussite. Pour créer les futurs paiements, utilisez l’ID du PaymentMethod Prélèvement automatique SEPA recueilli lors de votre PaymentIntent Bancontact initial.

Configurer Stripe
Côté serveur

Pour commencer, vous devez créer un compte Stripe. Inscrivez-vous maintenant.

Utilisez nos bibliothèques officielles pour accéder à l’API Stripe depuis votre application :

Command Line
Ruby
# Available as a gem sudo gem install stripe
Gemfile
Ruby
# If you use bundler, you can add this line to your Gemfile gem 'stripe'

Créer un objet Customer
Côté serveur

Créez un objet Customer lorsqu’un client crée un compte auprès de votre entreprise et associez-le à votre représentation interne de son compte. Vous pourrez ainsi récupérer et utiliser ultérieurement les informations enregistrées sur son moyen de paiement.

Command Line
cURL
curl -X POST https://api.stripe.com/v1/customers \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"

Créer un PaymentIntent
Côté serveur

Créez un PaymentIntent sur votre serveur et précisez le montant à collecter et la devise dans les paramètres amount et eur, l’identifiant du client, et le paramètre off_session (hors session) comme argument pour la configuration de l’utilisation future. Si vous avez déjà une intégration Payment Intents, ajoutez bancontact à la liste des types de moyens de paiement.

Command Line
cURL
curl https://api.stripe.com/v1/payment_intents \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d amount=1099 \ -d currency=eur \ -d "payment_method_types[]"=bancontact \ -d customer={{CUSTOMER_ID}} \ -d setup_future_usage=off_session

Récupérer la clé secrète du client

Le PaymentIntent contient une clé secrète à utiliser côté client pour finaliser le processus de paiement en toute sécurité. Vous pouvez adopter différentes approches pour transmettre cette clé secrète côté client.

Récupérez la clé secrète du client à partir d’un endpoint sur votre serveur, à l’aide de la fonction fetch du navigateur. Cette approche est recommandée si votre côté client est une application d’une seule page, en particulier si elle repose sur un framework front-end moderne tel que React. Créez l’endpoint de serveur qui gère la clé secrète du client :

main.rb
Ruby
get '/secret' do intent = # ... Create or retrieve the PaymentIntent {client_secret: intent.client_secret}.to_json end

Récupérez ensuite la clé secrète du client à l’aide JavaScript côté client :

(async () => { const response = await fetch('/secret'); const {client_secret: clientSecret} = await response.json(); // Render the form using the clientSecret })();

Collecter les informations du moyen de paiement et obtenir un accusé de réception du mandat
Côté client

Créez un formulaire de paiement côté client pour collecter les informations de facturation du client.

​​Pour traiter des paiements par prélèvement SEPA, vous devez faire accepter le mandat par votre client. Affichez le texte d’autorisation standard suivant afin que votre client puisse signer le mandat de manière tacite.

Remplacez Rocket Rides par le nom de votre entreprise.

Authorization text template

By providing your payment information and confirming this payment, you authorise (A) and Stripe, our payment service provider, to send instructions to your bank to debit your account and (B) your bank to debit your account in accordance with those instructions. As part of your rights, you are entitled to a refund from your bank under the terms and conditions of your agreement with your bank. A refund must be claimed within 8 weeks starting from the date on which your account was debited. Your rights are explained in a statement that you can obtain from your bank. You agree to receive notifications for future debits up to 2 days before they occur.

Copier

​​La configuration d’un moyen de paiement ou la confirmation d’un PaymentIntent vaut acceptation du mandat. Le client ayant tacitement signé le mandat, vous devez communiquer ces conditions dans votre formulaire ou par e-mail.

ChampValeur
nameNom et prénom du client.
emailL’adresse e-mail du client.
checkout.html
<form id="payment-form"> <div class="form-row"> <label for="name"> Name </label> <input id="name" name="name" required> </div> <div class="form-row"> <label for="email"> Email </label> <input id="email" name="email" required> </div> <button id="submit-button">Pay with Bancontact</button> <!-- Display mandate acceptance text. --> <div id="mandate-acceptance"> By providing your payment information and confirming this payment, you authorise (A) Rocket Rides and Stripe, our payment service provider, to send instructions to your bank to debit your account and (B) your bank to debit your account in accordance with those instructions. As part of your rights, you are entitled to a refund from your bank under the terms and conditions of your agreement with your bank. A refund must be claimed within 8 weeks starting from the date on which your account was debited. Your rights are explained in a statement that you can obtain from your bank. You agree to receive notifications for future debits up to 2 days before they occur. </div> <!-- Used to display form errors. --> <div id="error-message" role="alert"></div> </form>

Soumettre le paiement à Stripe
Côté client

Créez un paiement côté client avec la clé secrète du client du PaymentIntent. La clé secrète du client est distincte de vos clés API qui authentifient les requêtes à l’API Stripe. Celle-ci doit être utilisée avec prudence, car elle peut finaliser le paiement. Elle ne doit être ni enregistrée, ni intégrée dans des URL, ni dévoilée à d’autres personnes que votre client.

Appelez stripe.confirmBancontactPayment pour rediriger votre client vers le site Web ou l’application de Bancontact afin d’effectuer le paiement. Ajoutez une URL return_url pour rediriger votre client une fois le paiement effectué. Vous devez également fournir le nom complet et l’adresse e-mail du client dans billing_details.

client.js
var stripe = Stripe(
'pk_test_TYooMQauvdEDq54NiTphI7jx'
); var accountholderName = document.getElementById('name'); var accountholderEmail = document.getElementById('email'); // Redirects away from the client const {error} = await stripe.confirmBancontactPayment( '{{PAYMENT_INTENT_CLIENT_SECRET}}', { payment_method: { billing_details: { name: accountholderName.value, email: accountholderEmail.value, }, }, return_url: 'https://example.com/checkout/complete', } ); if (error) { // Inform the customer that there was an error. }

Lorsque votre client effectue un paiement, Stripe le redirige vers l’URL return_url et inclut les paramètres de requête d’URL suivants. La page de redirection peut utiliser ces paramètres pour récupérer l’état du PaymentIntent et ainsi afficher l’état du paiement pour le client.

Lorsque vous spécifiez une URL return_url, vous pouvez également ajouter vos propres paramètres de requête à utiliser sur la page de redirection.

ParamètreDescription
payment_intentIdentifiant unique du PaymentIntent.
payment_intent_client_secretThe client secret of the PaymentIntent object. For subscription integrations, this client_secret is also exposed on the Invoice object through confirmation_secret

Lorsque le client est redirigé vers votre site, vous pouvez utiliser le payment_intent_client_secret pour interroger le PaymentIntent et communiquer l’état de la transaction à votre client.

Débiter le PaymentMethod Prélèvement automatique SEPA plus tard

Lorsque vous devez à nouveau débiter votre client, créez un nouveau PaymentIntent. Pour obtenir l’ID du moyen de paiement Prélèvement automatique SEPA, récupérez le PaymentIntent précédent et développez le champ latest_charge où vous trouverez l’ID generated_sepa_debit dans payment_method_details.

Command Line
cURL
curl -G https://api.stripe.com/v1/payment_intents/{{PAYMENT_INTENT_ID}} \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d "expand[]"=latest_charge

L’ID du moyen de paiement de type prélèvement SEPA est l’identifiant generated_sepa_debit figurant sous payment_method_details dans la réponse.

{ "latest_charge": { "payment_method_details": { "bancontact": { "bank_code": "VAPE", "bank_name": "VAN DE PUT & CO", "bics": "VAPEBE22", "iban_last4": "7061", "generated_sepa_debit": "pm_1GrddXGf98efjktuBIi3ag7aJQ", "preferred_language": "en", "verified_name": "Jenny Rosen" }, "type": "bancontact" }, }, "payment_method_options": { "bancontact": {}

Créez un PaymentIntent en utilisant les identifiants du prélèvement SEPA et du client.

Command Line
cURL
curl https://api.stripe.com/v1/payment_intents \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d "payment_method_types[]"=sepa_debit \ -d amount=1099 \ -d currency=eur \ -d customer=
{{CUSTOMER_ID}}
\ -d payment_method={{SEPA_DEBIT_PAYMENT_METHOD_ID}} \ -d confirm=true

Tester votre intégration

Configurez le paramètre payment_method.billing_details.email sur l’une des valeurs suivantes afin de tester les changements d’état du PaymentIntent. Au début de l’adresse e-mail, vous pouvez inclure votre propre texte suivi d’un tiret bas. Par exemple, test_1_generatedSepaDebitIntentsFail@example.com donne lieu à un PaymentMethod de prélèvement automatique SEPA qui échoue systématiquement en cas d’utilisation avec un PaymentIntent.

Adresse e-mailDescription
generatedSepaDebitIntentsSucceed@example.comL’état du PaymentIntent passe de processing à succeeded.
generatedSepaDebitIntentsSucceedDelayed@example.comThe PaymentIntent status transitions from processing to succeeded after at least three minutes.
generatedSepaDebitIntentsFail@example.comL’état du PaymentIntent passe de processing à requires_payment_method.
generatedSepaDebitIntentsFailDelayed@example.comThe PaymentIntent status transitions from processing to requires_payment_method after at least three minutes.
generatedSepaDebitIntentsSucceedDisputed@example.comL’état du PaymentIntent passe de processing à succeeded, mais un litige est créé immédiatement.

FacultatifGérer les événements post-paiement

FacultatifGérer la redirection de Bancontact manuellement

Voir aussi

  • Accepter un prélèvement automatique SEPA
  • Configurer un abonnement avec prélèvement automatique SEPA dans l’Union Européenne
Cette page vous a-t-elle été utile ?
OuiNon
Besoin d'aide ? Contactez le service Support.
Rejoignez notre programme d'accès anticipé.
Consultez notre log des modifications.
Des questions ? Contactez l'équipe commerciale.
LLM ? Lire llms.txt.
Propulsé par Markdoc