Capturer un montant supérieur au montant autorisé d'un paiement
Utilisez la surcapture pour capturer un montant supérieur au montant autorisé pour un PaymentIntent.
La surcapture vous permet de capturer un montant supérieur au montant autorisé pour un paiement par carte. Contrairement aux autorisations complémentaires, la surcapture n’entraîne pas d’autorisations supplémentaires auprès des réseaux de cartes. Lorsque vous surcapturez un PaymentIntent, votre client ne verra pas les mises à jour immédiates sur son relevé de carte. Une fois que le montant capturé est réglé, l’autorisation initiale en attente est mise à jour avec le montant final capturé.
Disponibilité
Lorsque vous utilisez la surcapture, tenez compte des restrictions suivantes :
- Disponible uniquement avec Visa, Mastercard, American Express et Discover.
- Uniquement admissible pour les paiements par carte en ligne. Pour les paiements par carte à partir d’un TPE, consultez la page Collecter des pourboires.
- Les marques de carte bancaire limitent le montant que vous pouvez surcapturer (qui est généralement un pourcentage calculé à partir du montant autorisé) et imposent des contraintes supplémentaires, comme le pays, le type de carte et les restrictions qui s’appliquent à la catégorie de marchand (voir ci-dessous).
- mode est défini sur
payment
et capture_method est défini surmanual
pour la CheckoutSession
Fonctionnalité IC+
Nous proposons la surcapture aux utilisateurs utilisant la tarification IC+. Si vous bénéficiez de la tarification Stripe standard et souhaitez accéder à cette fonctionnalité, consultez la page support.stripe.com.
Disponibilité par réseau de cartes, pays de marchand et catégorie de marchand
Marque de la carte | Pays du marchand | Catégorie de marchand | Limite en pourcentage |
---|---|---|---|
Visa* | International | Taxis et limousines ; restaurants et autres lieux de restauration ; bars et autres lieux de consommation (boissons alcoolisées) ; établissements de restauration rapide ; instituts de beauté et salons de coiffure ; spas de santé et de beauté | +20 % |
International | Location de voitures | La plus grande des deux valeurs suivantes : 15 % ou 75 USD (ou l’équivalent en devise locale) | |
International | Hébergement ; bateaux de croisière | +15 % | |
International** | Toutes les autres catégories de marchand | +15 % | |
Mastercard | US*** | Restaurants et autres lieux de restauration ; établissements de restauration rapide | +30 % |
American Express | International**** | Restaurants et autres lieux de restauration ; bars et autres lieux de consommation (boissons alcoolisées) ; établissements de restauration rapide | +30 % |
International | Taxis et limousines ; instituts de beauté et salons de coiffure ; spas de santé et de beauté | +20 % | |
International | Hébergement ; location de voitures ; location de camions et de remorques utilitaires ; location de camping-cars et de véhicules de loisirs ; supermarchés ; magasins | +15 % | |
Discover | International | Taxis et limousines ; restaurants et autres lieux de restauration ; bars et autres lieux de consommation (boissons alcoolisées) ; établissements de restauration rapide ; instituts de beauté et salons de coiffure ; spas de santé et de beauté | +20 % |
International | Hébergement ; location de voitures | +15 % |
** Pour les transactions effectuées par le titulaire de la carte
*** La carte bancaire doit également être émise aux États-Unis
****La limite en pourcentage pour les paiements par carte de débit et prépayée s’élève à 20 %
Réseaux avec prise en charge limitée (bêta)
Surcapture avec authentification forte du client (SCA)
Si vous et le titulaire de la carte vous trouvez dans un pays soumis aux exigences de l’authentification forte du client (SCA), gardez à l’esprit les limitations liées à la disponibilité de la surcapture.
- En vertu des exigences de la SCA, vous devez généralement authentifier un montant supérieur ou égal au montant capturé. Pour cette raison, vous devez authentifier et autoriser le montant estimé le plus élevé que vous prévoyez de capturer, plutôt que d’utiliser la surcapture comme indiqué ailleurs sur cette page. Par la suite, vous pouvez capturer jusqu’à la totalité du montant authentifié, en fonction du montant total des biens ou services fournis. Si vous estimez nécessaire de capturer un montant supérieur au montant initialement autorisé et authentifié, vous devez annuler le paiement d’origine et en créer un nouveau avec le montant correct. Il existe toutefois quelques exceptions à cette exigence (voir ci-dessous).
- Il existe un certain nombre de cas de transactions exemptées de la SCA dans lesquels la surcapture peut être autorisée. Par exemple, les transactions initiées par le marchand pour lesquelles le client n’est pas physiquement présent lors du paiement sont potentiellement exemptées. Consultez la page Transactions initiées par le marchand (TIM) : dans quel cas une transaction est-elle une TIM ?.
Vous devez vous familiariser avec la documentation complète pour bien comprendre les exigences en matière de surcapture et de SCA. Consultez notre guide sur la SCA pour en savoir plus.
Vous pouvez utiliser le champ custom_text lorsque vous créez une nouvelle CheckoutSession pour afficher du texte supplémentaire sur la page de paiement afin de respecter les exigences de conformité.
Conformité
Lorsque vous utilisez la surcapture, vous êtes responsable du respect de l’ensemble des lois, réglementations et règles de réseau en vigueur. Veillez à consulter les règles de réseau des réseaux de cartes avec lesquels vous prévoyez d’utiliser cette fonctionnalité pour vous assurer que vos ventes sont conformes aux règles applicables, qui varient d’un réseau à l’autre. Par exemple, certains réseaux de cartes n’autorisent pas la surcapture pour les transactions dont le montant final doit être connu au moment de l’autorisation.
Les informations fournies sur cette page traitant de votre conformité à ces exigences le sont uniquement à titre indicatif, et ne constituent en rien des conseils juridiques, fiscaux, comptables ou autres. Si vous ne savez pas quelles obligations vous devez respecter, consultez un professionnel.
Créer une session 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>Buy cool new product</title> </head> <body> <!-- Use action="/create-checkout-session.php" if your server is PHP based. --> <form action="/create-checkout-session" method="POST"> <button type="submit">Checkout</button> </form> </body> </html>
Une session Checkout est la représentation programmatique de ce que votre client voit lorsqu’il est redirigé vers le formulaire de paiement. Vous pouvez la configurer à l’aide d’options telles que :
- Les postes à facturer
- Les devises à utiliser
Vous devez indiquer dans success_
l’URL d’une page de votre site Web sur laquelle Checkout renvoie votre client une fois son paiement réalisé. Vous pouvez également indiquer dans cancel_
l’URL de la page de votre site Web vers laquelle Checkout renvoie votre client s’il met fin au processus de paiement avant de finaliser l’achat.
Remarque
Par défaut, les sessions Checkout expirent 24 heures après leur création.
Après avoir créé une session Checkout, redirigez votre client vers l’URL renvoyée dans la réponse.
Pour activer la fonctionnalité de surcapture, définissez request_overcapture sur if_
.
Une fois que votre client a effectué le paiement, consultez le champ overcapture.status de l’objet latest_charge du PaymentIntent pour déterminer si la surcapture est disponible pour le paiement selon la disponibilité. S’il est défini sur available
, le champ maximum_amount_capturable indique le montant maximum qui peut être capturé pour le PaymentIntent. S’il est défini sur unavailable
, le maximum_amount_capturable correspond au montant autorisé.
// PaymentIntent response { "id": "pi_xxx", "object": "payment_intent", "amount": 1000, "amount_capturable": 1000, "amount_received": 0, "status": "requires_capture", ... // if latest_charge is expanded "latest_charge": { "id": "ch_xxx", "object": "charge", "payment_method_details": { "card": { "amount_authorized": 1000 "overcapture": { "status": "available", // or "unavailable" "maximum_amount_capturable": 1200 } } } ... } ... }
Capturer le PaymentIntent
Pour capturer plus que le montant actuellement autorisé sur un PaymentIntent, utilisez l’endpoint capture et fournissez un amount_to_capture jusqu’au maximum_amount_capturable.
Si vous devez capturer un montant supérieur au maximum_
, effectuez une autorisation complémentaire pour augmenter le montant autorisé, le cas échéant.
Si la surcapture aboutit, les champs amount_capturable et amount_received sont mis à jour en conséquence dans la réponse de capture du PaymentIntent. Lorsqu’il est renvoyé, le PaymentIntent capturé affiche un montant mis à jour pour indiquer la valeur monétaire totale transférée dans le cadre de ce paiement. Utilisez le champ amount_authorized sur le paiement associé pour indiquer le montant initial autorisé, afin de vous assurer que la surcapture aboutira.
// PaymentIntent response { "id": "pi_xxx", "object": "payment_intent", "amount": 1200, "amount_capturable": 0, "amount_received": 1200, "status": "succeeded", ... // if latest_charge is expanded "latest_charge": { "id": "ch_xxx", "object": "charge", "payment_method_details": { "card": { "amount_authorized": 1000, "overcapture": { "maximum_amount_capturable": 1200, "status": "available" // or "unavailable" } } } ... } ... }
Tester votre intégration
Utilisez les cartes de test Stripe ci-dessous avec n’importe quel CVC et une date d’expiration postérieure à la date du jour test pour demander et effectuer des surcaptures pendant le test. Si la surcapture est disponible pour les paiements d’un réseau donné pendant les tests, elle est également disponible pour les paiements réels.
Marque de la carte | Numéro | Moyen de paiement |
---|---|---|
Visa | pm_ | |
Mastercard | pm_ | |
Amex | pm_ | |
Discover | pm_ |