Configurer de futurs paiements Klarna
Découvrez comment enregistrer des informations Klarna pour débiter vos clients ultérieurement.
Vous pouvez enregistrer Klarna comme moyen de paiement d’un client et facturer les paiements futurs pour prendre en charge :
- le paiement automatique des abonnements, avec ou sans essai gratuit.
- Enregistrer Klarna dans un portefeuille électronique pour simplifier les futurs achats à la demande sans nécessiter une réauthentification du client.
Les options de paiement, les durées d’abonnement et les pays acheteurs suivants prennent en charge les paiements récurrents avec Klarna :
Options de paiement | Cas d’usage pris en charge | Pays acheteurs pris en charge |
---|---|---|
Payer la totalité |
| AT, BE, CA, CH, DE, DK, ES, FI, FR, IE, IT, GR, NL, NO, PL, PT, SE, UK, US |
l’option de paiement différé |
| DE, SE, US |
Payer en 3 ou 4 fois |
| AT, CA, CH, DE, DK, ES, FI, FR, IE, IT, GR, NL, NO, PL, PT, UK, US |
Choisissez votre type d’intégration de paiement ci-dessous pour enregistrer Klarna comme moyen de paiement. Si vous utilisez Stripe Billing, consultez Klarna pour les abonnements.
Utilisez Stripe Checkout pour recueillir à l’avance des informations de paiement Klarna en vue d’un paiement dont la date et le montant seront déterminés ultérieurement. Utilisez cette fonction pour :
- Enregistrement des moyens de paiement dans un portefeuille pour faciliter les achats ultérieurs.
- Encaissement de suppléments de facturation après la fourniture d’un service.
- Démarrer une période d’essai gratuit dans le cadre d’un abonnement.
Configurer StripeCô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 :
Créer ou récupérer un objet Customer avant la configurationCôté serveur
Pour réutiliser un moyen de paiement Klarna en vue de paiements futurs, vous devez l’associer à un objet Customer.
Créez un objet Customer lorsque votre client crée un compte auprès votre entreprise. En associant l’ID de l’objet Customer à votre propre représentation interne de ce client, vous pourrez par la suite récupérer et utiliser les informations du moyen de paiement enregistré. Si votre client n’a pas créé de compte, vous pouvez tout de même lui créer un objet Customer, puis l’associer à votre représentation interne de ce compte du client par la suite.
Créer une session CheckoutCôté clientCôté serveur
Pour que vous puissiez accepter des paiements Klarna, votre client doit préalablement vous autoriser à utiliser son compte Klarna en vue de paiement ultérieurs via Stripe Checkout.
Ajoutez sur 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>
Après avoir créé la session de paiement, redirigez votre client vers l’URL renvoyée dans la réponse.
Gérer la redirection au retour de CheckoutCôté clientCôté serveur
Lorsque votre client fournit les détails de son moyen de paiement, il est redirigé vers la success_
, une page de votre site Web qui l’informe qu’il a correctement enregistré son moyen de paiement. Mettez l’ID de session à disposition sur votre page de confirmation en incluant le modèle de variable {CHECKOUT_
dans la success_
, comme illustré ci-dessus.
Si lors d’une session Checkout, votre client clique sur votre logo sans fournir les données de son moyen de paiement, Checkout le redirige vers votre site Web sur la page cancel_
. Cette page est généralement celle que le client a consultée sur votre site avant d’être redirigé vers Stripe Checkout.
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
Récupérer le moyen de paiementCôté serveur
Une fois que le client a soumis ses informations de paiement, récupérez l’objet PaymentMethod. Un PaymentMethod stocke les informations Klarna account du client pour ses paiements ultérieurs. Vous pouvez récupérer cet objet de manière synchrone en utilisant la success_
ou de manière asynchrone au moyen de webhooks.
La décision de récupérer l’objet PaymentMethod de manière synchrone ou asynchrone dépend de votre tolérance aux abandons de paiement. En effet, 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). L’utilisation de webhooks vous permet d’éviter que votre intégration ne subisse ce type d’abandon.
Gérer les événements post-configurationCôté serveur
Utilisez une méthode telle que les webhooks pour confirmer que le client a autorisé le contrat de facturation. Ne comptez pas sur votre client pour revenir à la page d’état du paiement.
Lorsqu’un client autorise le contrat de facturation, Stripe émet un événement webhook payment_intent.succeeded ou setup_intent.succeeded et l’état de l’Intent passe à succeeded
. Enregistrez l’ID payment_method qui en résulte pour effectuer ultérieurement des paiements à l’aide du PaymentMethod enregistré.
Si un client n’autorise pas correctement le contrat de facturation, Stripe émet un événement de webhook payment_intent.payment_failed ou de setup_intent.setup_failed et l’état de l’Intent repasse à requires_
.
Tester votre intégration
Lorsque vous testez votre intégration Checkout, sélectionnez le moyen de paiement Klarna et cliquez sur le bouton Enregistrer. Dans un environnement de test, vous pouvez ensuite simuler différents résultats dans la redirection de Klarna.
Nous avons réuni ci-dessous des données de test pour les pays pris en charge. Dans un environnement de test, Klarna s’appuie sur l’adresse e-mail fournie pour approuver ou refuser une transaction.
Authentification à deux facteurs
Tout numéro à six chiffres forme un code d’authentification à deux facteurs valide. Utilisez 999999
pour que l’authentification échoue.
Mode de remboursement
Dans le flux Klarna, vous pouvez utiliser les valeurs de test suivantes pour essayer divers types de remboursements :
Type | Valeur |
---|---|
Prélèvement automatique | DE11520513735120710131 |
Virement bancaire | Banque de démonstration |
Carte bancaire |
|
Carte de débit |
|