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

Paiements par prélèvement SEPA avec Sources

Utilisez l'API Sources pour accepter les paiements par prélèvement SEPA, un moyen de paiement bancaire très répandu en Europe.

Avertissement

L’API Sources est obsolète, et nous prévoyons de ne plus prendre en charge les moyens de paiement locaux. Si votre intégration de prélèvement automatique SEPA utilise l’API Sources, vous devez migrer vers l’API Payment Methods.

Pour en savoir plus sur l’intégration du prélèvement automatique SEPA avec les API actuelles, consultez notre article sur les Paiements par prélèvement automatique SEPA.

Les utilisateurs de Stripe en Europe et aux États-Unis peuvent utiliser Sources, un chemin d’intégration unique pour créer des paiements à l’aide de n’importe quel moyen pris en charge, pour accepter des paiements par prélèvement automatique SEPA effectués par des clients de pays de l’espace unique de paiement en euros (SEPA).

Au cours du processus de paiement, votre intégration recueille l’IBAN du compte bancaire de votre client libellé en euros. Pour que vous effectuiez un prélèvement SEPA, le titulaire du compte bancaire doit accepter un mandat (autorisation de prélèvement) qui vous permet de débiter son compte. S’ensuit la création d’un objet Source que votre intégration utilise pour effectuer une demande de paiement et effectuer le paiement.

Dans le cadre de l’API Sources, un prélèvement automatique SEPA est un moyen de paiement de type « pull », réutilisable et asynchrone. Autrement dit, vous prenez vous-même l’initiative de prélever le montant du compte du client. Le succès ou l’échec du paiement est confirmé dans un délai pouvant aller jusqu’à 14 jours ouvrables.

Mise en garde

Les prélèvements automatiques SEPA sont plafonnés à 10 000 EUR par transaction. Les nouveaux utilisateurs sont soumis à un plafond supplémentaire de 10 000 EUR par semaine, qui augmente rapidement au fur et à mesure que vous traitez des paiements par prélèvement automatique SEPA. Pour augmenter vos plafonds, veuillez contacter le service Support.

Prérequis : Collecter l’acceptation des mandats

Avant qu’une source puisse être créée, votre client doit accepter le mandat de prélèvement SEPA. Le consentement du client vous autorise à encaisser le paiement en débitant le montant indiqué de son compte bancaire par prélèvement SEPA.

Traduction des mandats

Le texte des mandats peut également être téléchargé dans d’autres langues depuis le site du Conseil européen des paiements.

When your customer confirms the payment they’re making, they’re also accepting a mandate. Their acceptance authorizes you to collect payments for the specified amount from their bank account through SEPA Direct Debit. You must display the following standard authorization text, replacing Rocketship Inc. with your company name, close to the payment confirmation button so that your customer can read and accept it.

Mise en garde

En fournissant votre IBAN et en confirmant ce paiement, vous autorisez (A) Rocketship Inc. et Stripe, notre prestataire de services de paiement, à envoyer des instructions à votre banque pour débiter votre compte, et (B) votre banque à débiter votre compte conformément à ces instructions. Vous bénéficiez d’un droit à remboursement par votre banque selon les conditions décrites dans la convention que vous avez passée avec elle. Toute demande de remboursement doit être présentée dans les 8 semaines suivant la date de débit de votre compte.

Les détails du mandat accepté sont générés dans le cadre de la création de l’objet Source. Une URL permettant d’afficher le mandat est renvoyée dans la valeur sepa_debit[mandate_url]. Comme il s’agit du mandat que le client a implicitement signé en acceptant les conditions susmentionnées, il convient de le lui communiquer, soit sur la page de confirmation du paiement, soit par e-mail.

Créer un objet Source

Les informations de compte bancaire sont des données sensibles par nature. Pour sécuriser la collecte des coordonnées IBAN de votre client et la création d’une source, utilisez Stripe.js et l’Element IBAN. Cette méthode empêche que les informations de compte bancaire du client ne transitent par votre serveur, et limite la quantité de données sensibles à traiter de manière sécurisée.

Suivez le Guide de démarrage rapide du composant Element IBAN pour créer un formulaire de paiement, collecter les coordonnées IBAN de vos clients et créer une source. Après avoir créé un objet Source, vous pouvez passer à l’étape suivante pour débiter la source.

Création d’une source personnalisée côté client

Si vous choisissez de gérer vous-même les numéros de compte bancaire, vous pouvez créer votre propre formulaire et appeler stripe.createSource de la manière indiquée dans la documentation de Stripe.js. Dans ce cas, veillez à recueillir les informations suivantes auprès de votre clientèle :

ParamètreValeur
typesepa_debit
currencyeur (les comptes bancaires utilisés pour les prélèvements automatiques SEPA doivent toujours être établis en euros)
sepa_debit[iban]Le numéro IBAN du compte bancaire à débiter, collecté par le composant IBAN Element. Pour les intégrations personnalisées, vous devez récupérer ce numéro vous-même et l’inclure lors de l’appel à stripe.createSource.
owner[name]Le nom complet du titulaire du compte.
owner[address]Adresse du titulaire du compte. Uniquement obligatoire pour les IBAN avec les codes pays suivants : AD, PF, TF, GI, GB, GG, VA, IM, JE, MC, NC, BL, PM, SM, CH, WF. Sous-champs requis : country et line1. Pour prendre connaissance de la liste complète des sous-champs de l’adresse, reportez-vous à la documentation de référence de l’API Sources.

Création d’une source côté serveur

Utilisez Stripe.js pour créer une source de prélèvement SEPA. Cette étape est facultative, mais si vous choisissez d’y renoncer et transmettez les informations directement à Stripe lors de la création d’un objet Source, vous devez prendre toutes les mesures qui conviennent pour protéger les données bancaires sensibles qui transitent par vos serveurs.

Command Line
cURL
curl https://api.stripe.com/v1/sources \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d type=sepa_debit \ -d "sepa_debit[iban]"=DE89370400440532013000 \ -d currency=eur \ -d "owner[name]"="Jenny Rosen" \ -d "owner[address][city]"=Frankfurt \ -d "owner[address][country]"=DE \ -d "owner[address][line1]"="Genslerstraße 24" \ -d "owner[address][postal_code]"=15230 \ -d "owner[address][state]"=Brandenburg

Remarque

L’adresse du titulaire n’est obligatoire que pour les IBAN avec les codes pays suivants : AD, PF, TF, GI, GB, GG, VA, IM, JE, MC, NC, BL, PM, SM, CH, WF.

En utilisant l’une ou l’autre méthode, Stripe renvoie un objet Source contenant les informations pertinentes pour le moyen de paiement utilisé. Les informations propres au prélèvement SEPA sont fournies dans le sous-hachage sepa_debit.

{ "id": "src_18HgGjHNCLa1Vra6Y9TIP6tU", "object": "source", "amount": null, "client_secret": "src_client_secret_XcBmS94nTg5o0xc9MSliSlDW", "created": 1464803577, "currency": "eur", "flow": "none", "livemode": false, "owner": {

Comme les paiements par prélèvement automatique SEPA constituent un moyen de paiement de type « pull », il n’y a pas de mouvement de fonds pendant la création d’une source. Ce n’est qu’au moment où une demande de paiement réussit que le compte bancaire du client est débité et que vous recevez les fonds.

Création d’une source dans les applications mobiles

Si vous développez une application iOS ou Android, vous pouvez implémenter des sources à l’aide de nos SDK mobiles. Pour en savoir plus, consultez notre documentation sur les sources pour iOS ou Android.

Codes d’erreur

La création d’une source pour les paiements par prélèvement automatique SEPA peut renvoyer l’une des erreurs suivantes :

ErreurDescription
payment_method_not_availableLe moyen de paiement n’est pas disponible actuellement. Il convient d’inviter votre client à choisir un autre moyen de paiement pour continuer.
processing_errorUne erreur inattendue empêchant la création de la source s’est produite. Essayez à nouveau de procéder à la création de la source.
invalid_bank_account_ibanL’IBAN fourni semble incorrect. Demandez au client de vérifier ses informations et de réessayer.
invalid_owner_nameLe nom du titulaire n’est pas valide. Il doit comporter au moins trois caractères.

Débiter la source

Contrairement à la plupart des autres moyens de paiement, les paiements par prélèvement SEPA ne nécessitent aucune intervention du client une fois que la source a été créée. Dès que le client a fourni ses coordonnées IBAN et qu’il a accepté le mandat, aucune autre action n’est requise et la source obtenue affiche directement l’état chargeable.

Avant de créer une demande pour effectuer le paiement, vous devez d’abord rattacher la source à un objet Customer en vue de sa réutilisation ultérieure.

Rattachement de la source à un objet Customer

Si vous souhaitez pouvoir réutiliser la source pour des paiements ultérieurs (par exemple, avec un produit Billing), vous devez la rattacher à un objet Customer.

Command Line
cURL
curl https://api.stripe.com/v1/customers \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ --data-urlencode email="paying.user@example.com" \ -d source=src_18eYalAHEMiOZZp1l9ZTjSU0

Pour savoir comment rattacher une source à un objet Customer nouveau ou existant ainsi que sur les interactions entre ces deux types d’objets, reportez-vous à notre guide Sources et clients.

Soumission d’une demande de paiement

Une fois le rattachement effectué, vous pouvez utiliser l’ID de l’objet Source avec l’ID de l’objet Customer pour effectuer une demande de paiement et finaliser le règlement.

Command Line
curl
curl https://api.stripe.com/v1/charges \ -u
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:
\ -d amount="1099" \ -d currency="eur" \ -d customer=cus_AFGbOSiITuJVDs \ -d source=src_18eYalAHEMiOZZp1l9ZTjSU0

L’objet Charge obtenu est créé avec l’état pending. À ce stade, le paiement est en cours.

By default, your account’s statement descriptor appears on customer statements whenever you create a SEPA Direct Debit payment. If you need to provide a custom description for a payment, include the statement_descriptor parameter when making a charge request. Statement descriptors are limited to 22 characters and can’t use the special characters <, >, ', or ".

Confirmer la réussite du paiement

Utilisation des webhooks

Votre intégration doit utiliser des webhooks afin que vous puissiez recevoir des notifications de changement d’état concernant les objets Source et Charge.

Les prélèvements automatiques SEPA sont des moyens de paiement asynchrones, ce qui signifie que les fonds ne sont pas immédiatement disponibles. Un paiement créé pour une source de prélèvement SEPA peut rester en attente jusqu’à 14 jours ouvrables après sa création. Toutefois, le délai moyen est d’environ cinq jours ouvrables. Une fois le paiement confirmé, son état est mis à jour et passe à succeeded.

Les événements suivants sont envoyés lorsque l’objet Charge change d’état :

ÉvénementDescription
charge.succeededL’opération a abouti et le paiement a été mené à bien.
charge.failedL’opération a échoué et le paiement n’a pas pu être réalisé.

Après avoir confirmé la réussite du paiement, informez-en votre client en lui validant sa commande. Pour plus d’informations sur la meilleure façon d’intégrer des moyens de paiement à l’aide de webhooks, reportez-vous à nos bonnes pratiques.

Un paiement est considéré comme ayant abouti lorsque nous recevons les fonds de la part de la banque du client. Toutefois, cela se produit souvent avant que la banque n’ait débité le compte bancaire du client. En cas de problème de prélèvement sur le compte bancaire du client après la réussite d’un paiement, les fonds sont récupérés dans le cadre d’un litige.

Tester les prélèvements automatiques SEPA

Vous pouvez mimer un paiement qui réussit ou échoue. Pour cela, créez d’abord une source de test avec l’un des numéros de compte IBAN suivants. Utilisez la source qui en résulte pour créer un paiement de test qui réussit ou échoue.

Numéro de compteDescription
AT611904300234573201L’état du paiement passe de pending à succeeded.
AT861904300235473202L’état du paiement passe de pending à failed.
AT591904300235473203L’état du paiement passe de pending à succeeded, mais un litige est créé immédiatement.

Gérer les échecs de paiement

Si un paiement n’est pas confirmé, son état passe automatiquement de pending à failed. En cas d’échec d’un paiement, informez votre client dès la réception de l’événement charge.failed. Lorsque vous utilisez un prélèvement automatique SEPA, il est préférable de ne pas traiter les commandes avant la réception du webhook charge.succeeded.

En cas d’échec d’un prélèvement SEPA, si nous avons des raisons de croire que les paiements suivants échoueront également, nous actualisons la source en lui attribuant l’état failed.

Remarque

Les paiements par prélèvement SEPA peuvent échouer en cas de dépassement de vos limites de traitement par période glissante. Si le débit de la source échoue avec le code d’erreur charge_exceeds_source_limit, vous pouvez retenter le paiement ultérieurement. Veuillez nous contacter si vous souhaitez bénéficier de limites de traitement supérieures.

Envoyer des notifications aux clients pour les paiements récurrents

Le recueil de règles du prélèvement automatique SEPA stipule que vous devez informer vos clients chaque fois qu’un prélèvement doit être effectué sur leur compte. Vous pouvez envoyer ces notifications séparément ou avec d’autres documents (par exemple, une facture).

Ces notifications doivent être envoyées au moins 14 jours calendaires avant la création d’un paiement. Vous pouvez les envoyer à une date plus rapprochée de celle du paiement, à condition que votre mandat indique clairement quand le client peut s’attendre à être débité. Le mandat fourni par Stripe précise que l’envoi peut avoir lieu jusqu’à deux jours calendaires avant les futurs paiements, ce qui vous permet d’envoyer les notifications au moment de la création des paiements. Pour les paiements récurrents d’un même montant (par exemple, dans le cadre d’un abonnement à tarif fixe), vous pouvez indiquer plusieurs prélèvements à venir avec les dates correspondantes dans un même avis.

La notification adressée à votre client doit inclure les informations suivantes :

  • Les 4 derniers chiffres du compte bancaire du débiteur
  • La référence du mandat (sepa_debit[mandate_reference] sur l’objet Source)
  • Le montant du prélèvement
  • Votre identifiant de créancier SEPA
  • Vos coordonnées

Utilisation de webhooks et d’e-mails automatisés

Les objets Source fournissent des outils pour vous aider à notifier votre clientèle en toute conformité. Lors de la création d’une source, il est possible de spécifier un paramètre mandate[notification_method]. Les valeurs admises sont les suivantes :

ValeurDescription
emailLorsque vous créez des paiements, nous envoyons automatiquement une notification par e-mail à vos clients.
manualLorsque vous créez des paiements, Stripe émet un webhook source.mandate_notification avec toutes les informations nécessaires pour générer une notification conforme. À réception de ce webhook, vous devez envoyer une notification à votre client sur le canal de votre choix.
noneAucune des options précédentes, vous choisissez de générer des notifications de prélèvement entièrement en dehors de Stripe.

Par défaut, le paramètre mandate[notification_method] a la valeur aucune lors de la création de la source, mais il peut être mis à jour ultérieurement.

Obtention d’un identifiant de créancier pour les entreprises de l’UE uniquement

Remarque

Cette section concerne uniquement les entreprises de l’UE.

Pour les entreprises de l’UE, votre identifiant de créancier SEPA est associé à chaque instruction de paiement par prélèvement SEPA et identifie l’entreprise qui effectue le paiement. Bien que les entreprises puissent avoir plusieurs identifiants de créanciers, chaque identifiant de créancier est unique et permet à vos clients d’identifier facilement les prélèvements réalisés sur leur compte. Ceci peut contribuer à réduire le risque de contestation de paiements. Certains prestataires de services de paiement ne vous demandent pas de fournir votre propre identifiant de créancier SEPA. Stripe demande un identifiant de créancier SEPA pour améliorer la sécurité de vos clients.

Vous pouvez demander un identifiant de créancier SEPA auprès d’une institution financière de votre pays de résidence ou du pays où votre entreprise est domiciliée. Il s’agit habituellement de la banque qui détient votre compte. La procédure se déroule généralement en ligne et peut parfois prendre plusieurs jours. Dans certains cas, votre banque peut effectuer des actions supplémentaires avant de vous délivrer un identifiant de créancier. Lorsque vous contactez votre banque pour qu’elle vous fournisse votre identifiant de créancier, n’hésitez pas à clarifier l’objet de votre demande : vous ne leur demandez pas de traiter vos prélèvements automatiques SEPA.

Si vous avez des difficultés à obtenir votre identifiant de créancier, contactez-nous.

Paiements contestés

Informations supplémentaires

Pour en savoir plus sur la procédure de litige relative au prélèvement automatique SEPA, consultez le recueil de règles du prélèvement automatique SEPA.

Le prélèvement SEPA prévoit une procédure de litige permettant aux titulaires de comptes bancaires de contester des paiements effectués. Il convient dans ce contexte de vous interroger sur les meilleurs choix pour votre entreprise et sur votre façon de gérer les paiements par prélèvement SEPA.

Pendant une période de huit semaines après que son compte a été débité, un titulaire de compte peut contester un paiement par l’intermédiaire de sa banque sans avoir à avancer de motif. Toute contestation intervenant pendant cette période est automatiquement honorée.

Après la période de huit semaines suivant la création du paiement, et jusqu’à 13 mois, un client ne peut contester un paiement auprès de sa banque que si le débit est considéré comme non autorisé. Dans ce cas, nous fournissons automatiquement à la banque le mandat que le client a approuvé. Cela ne garantit pas l’annulation de la contestation ; la banque peut toujours décider que le débit n’était pas autorisé et que le client a droit à un remboursement.

Un litige peut également survenir si la banque de votre client n’est pas en mesure de débiter son compte en raison d’un problème (par exemple, si le compte est bloqué ou n’est pas suffisamment approvisionné), alors qu’elle a déjà versé les fonds pour honorer le paiement. Dans ce cas, la banque réclame les fonds sous la forme d’un litige.

Dès lors qu’un litige est créé, un événement de webhook charge.dispute.created est envoyé et Stripe déduit le montant du litige et les frais connexes de votre solde Stripe. Les frais de litige varient en fonction de la devise de règlement par défaut de votre compte :

Devise de règlementFrais de litige
CHF10,00 Fr
DKK75,00 kr
EUR7,50 €
GBP7,00 £
NOK75,00 kr
SEK75,00 kr
USD10,00 $

Contrairement aux litiges portant sur des transactions par carte bancaire, les litiges portant sur un prélèvement automatique SEPA sont tous définitifs et n’offrent aucune voie de recours. Dès lors qu’un client a contesté un paiement, vous devez vous rapprocher de lui si vous souhaitez régler la situation. Si vous parvenez à un accord et que votre client accepte de vous restituer les fonds, il doit alors effectuer un nouveau paiement.

En général, chaque litige est accompagné du motif de son existence, mais cela peut varier d’un pays à l’autre. Par exemple, les paiements contestés en Allemagne ne fournissent pas d’informations supplémentaires pour des raisons de confidentialité.

Remboursements

Création de remboursements partiels

Les remboursements partiels ne sont pas pris en charge par le Dashboard pour les paiements par prélèvement automatique SEPA. Pour créer un remboursement partiel pour un paiement de ce type, utilisez l’API.

Les demandes de remboursement des paiements par prélèvement automatique SEPA peuvent intervenir uniquement dans les 180 jours qui suivent la date du prélèvement initial. Passé ce délai, le remboursement n’est plus possible. De la même façon que pour les paiements par prélèvement automatique SEPA, les remboursements nécessitent eux aussi un délai supplémentaire pour être traités (généralement entre 3 et 4 jours ouvrables). Si vous débitez accidentellement votre client, veillez à le contacter immédiatement pour éviter une contestation du paiement.

Un remboursement ne peut être traité qu’une fois le processus de paiement achevé. Si vous créez un remboursement total ou partiel sur un paiement qui n’a pas encore été mené à bien, le remboursement ne sera engagé qu’une fois l’objet Charge passé à l’état succeeded. Si l’objet Charge passe à l’état failed, le remboursement complet ou partiel sera marqué comme annulé, étant donné que les fonds n’auront en définitive jamais quitté le compte bancaire du client.

SEPA does not explicitly label refunds when the funds are deposited back to the customer’s account. Instead, they’re processed as a credit and include a visible reference to the original payment’s statement descriptor.

En raison de l’allongement des délais de règlement et des modalités de traitement par les banques des transactions par prélèvement automatique SEPA, il existe un risque de confusion entre vous, votre client, la banque de votre client et Stripe. Par exemple, votre client peut contacter à la fois sa banque et vous-même pour contester un paiement. Si vous remboursez votre client de manière proactive alors que sa banque a également lancé une procédure de litige, il est possible que le client reçoive deux virements pour la même transaction.

Lorsque vous émettez un remboursement, il est important d’informer votre client que le montant peut prendre jusqu’à 5 jours ouvrés pour être crédité sur son compte bancaire.

Voir aussi

  • Autres moyens de paiement pris en charge
  • Documentation de l’API Sources
  • Bonnes pratiques
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