Configurer un abonnement avec iDEAL et par prélèvement automatique SEPA
Découvrez comment créer et facturer un abonnement avec iDEAL et le prélèvement automatique SEPA.
iDEAL est un moyen de paiement à usage unique qui nécessite l’authentification de chaque paiement par le client. Une fois le paiement authentifié par votre client, Stripe enregistre l’IBAN de votre client dans un paiement par prélèvement SEPA. Vous pouvez alors utiliser ce paiement par prélèvement SEPA pour accepter des paiements ultérieurs.
Grâce à cette intégration, Stripe prélève le premier paiement de l’abonnement via iDEAL afin de collecter les coordonnées bancaires de votre client. Si vous proposez un essai gratuit, Stripe prélève 1 EUR à votre client via iDEAL afin de collecter ses coordonnées bancaires, puis le rembourse immédiatement.
Vous ne pouvez créer des abonnements iDEAL qu’en utilisant Checkout. Une session de paiement représente les informations de l’intention d’achat de votre client. Vous créez une session de paiement lorsque votre client souhaite lancer un abonnement. Après avoir redirigé votre client vers une session de paiement, Stripe présente un formulaire de paiement où votre client peut terminer son achat. Une fois que votre client a effectué un achat, il est redirigé vers votre site.
Configurer StripeCôté serveur
Installez le client Stripe de votre choix :
Installez l’interface de ligne de commande de Stripe (facultatif). Elle vous permet de tester vos webhooks et de créer vos produits et tarifs.
À partir de la ligne de commande, utilisez un script d’installation ou téléchargez et extrayez un fichier d’archive versionné pour votre système d’exploitation afin d’installer la CLI.
Afin d’exécuter l’interface de ligne de commande Stripe, vous devez également l’associer à votre compte Stripe. Exécutez stripe login et suivez les invites. Pour plus d’informations, consultez la page de documentation relative à la CLI Stripe.
Créer le modèle tarifaireDashboardCLI Stripe
Les modèles de tarification récurrents représentent les produits ou services que vous vendez, leur coût, la devise que vous acceptez pour les paiements et la période de service pour les abonnements. Pour élaborer le modèle de tarification, créez des produits (ce que vous vendez) et des prix (combien et à quelle fréquence facturer vos produits).
Cet exemple utilise une tarification forfaitaire avec deux options de niveau de service différentes : basique et premium. Pour chaque option de niveau de service, vous devez créer un produit et un prix récurrent. Pour ajouter des frais uniques, tels que des frais d’installation, créez un troisième produit avec un prix unique.
Chaque produit est facturé à intervalles mensuels. Le prix du produit basique est de 5 EUR. Le prix du produit premium est de 15 EUR. Voir le guide des tarifs forfaitaires pour un exemple à trois niveaux.
Pour les autres modèles tarifaires, consultez ces exemples de facturation.
Créer une session CheckoutCôté clientCôté serveur
Ajoutez à votre site web un bouton de paiement qui appelle un endpoint côté serveur afin de créer une session Checkout.
<html> <head> <title>Checkout</title> </head> <body> <form action="/create-checkout-session" method="POST"> <button type="submit">Checkout</button> </form> </body> </html>
Créez une session à l’aide de l’ID d’un tarif existant. Assurez-vous que le mode est défini sur subscription et veillez à transmettre au moins un tarif récurrent. Vous pouvez également ajouter des tarifs ponctuels en plus des tarifs récurrents. Une fois la session Checkout créée, redirigez votre client vers l’URL renvoyée dans la réponse.
Lorsque vous créez une session, vous pouvez spécifier des payment_ ou laisser Stripe choisir automatiquement des moyens de paiement en fonction des paramètres de votre Dashboard. Si vous ne spécifiez pas de payment_, vous devez activer les paiements iDEAL récurrents dans le Dashboard. Cela active les prélèvements automatiques SEPA uniquement pour les paiements iDEAL récurrents, et non pas comme moyen de paiement à part entière.
Une fois le paiement effectué, votre client est redirigé vers l’URL success_. Il s’agit d’une page de votre site Web indiquant au client que le paiement a réussi. Mettez l’ID de session à disposition sur votre page de confirmation de paiement en incluant la variable de modèle {CHECKOUT_ dans l’URL success_, comme illustré ci-dessus.
Lorsque votre client clique sur votre logo dans une session Checkout sans effectuer de paiement, Checkout le redirige vers le site Web que le client consultait avant d’être redirigé vers Checkout.
Par défaut, les sessions Checkout expirent 24 heures après leur création.
Mise en garde
Ne vous fiez pas uniquement à la redirection vers le success_ pour détecter l’initiation du paiement, sachant que :
- Des utilisateurs malveillants pourraient accéder directement au
success_sans payer et obtenir l’accès à vos biens ou à vos services.url - Il peut arriver que le client n’aboutisse pas au
success_à l’issue de son paiement. Il peut par exemple lui arriver de fermer l’onglet de son navigateur avant que la redirection n’intervienne.url
Confirmer que le paiement a abouti
Une fois que votre client a mené à bien son paiement, Stripe le redirige vers l’URL que vous avez spécifiée dans le paramètre success_. Il s’agit en général d’une page de votre site Web qui l’informe que son paiement a abouti.
Utilisez le Dashboard, un webhook personnalisé ou un plugin tiers pour recevoir des événements après le paiement comme envoyer une confirmation de commande par e-mail à votre client, enregistrer la vente dans une base de données ou lancer un workflow de livraison.
Vous pouvez utiliser des plugins comme Zapier pour automatiser la mise à jour de vos systèmes d’exécution des achats avec les informations provenant des paiements Stripe.
Voici quelques exemples d’automatisation prise en charge par les plugins :
- Mise à jour des feuilles de calcul utilisées pour le suivi de commandes suite à des paiements ayant abouti
- Mise à jour des systèmes de gestion d’inventaire suite à des paiements ayant abouti
- Déclenchement de notifications aux équipes internes du service client en utilisant des applications de messagerie ou de chat
Tester l'intégration
À l’aide de vos clés API de test, sélectionnez une banque dans la liste. Après confirmation, nous vous redirigeons vers une page de test où vous pourrez valider ou faire échouer le paiement.
- Cliquez sur Autorisation du paiement test pour tester le cas où la configuration réussit.
- Cliquez sur Échec du paiement test pour tester le cas où le client ne parvient pas à s’authentifier.
FacultatifCréer une période d'essai pour votre abonnement
Les périodes d’essai gratuit permettent à vos clients d’accéder à votre produit gratuitement pour une durée limitée. Ajoutez une période d’essai à votre abonnement en configurant le paramètre subscription_ ou subscription_ à la création de la session Checkout. Votre client ne sera pas débité tant que la période d’essai ne sera pas terminée. Par exemple, pour ajouter une période d’essai gratuit de 7 jours au début de l’abonnement, assignez la valeur 7 au paramètre subscription_.
