Bloquer une somme d'argent sur un moyen de paiement
Séparez l'autorisation et la capture du paiement pour créer immédiatement le paiement et ne capturer les fonds qu'ultérieurement.
Lorsque vous créez un paiement, vous pouvez bloquer une somme sur un moyen de paiement admissible pour mettre ces fonds en réserve et les capturer plus tard. Par exemple, les hôtels autorisent souvent l’intégralité du paiement avant l’arrivée du client, puis capturent l’argent au moment du départ du client. On parle parfois de capture manuelle.
Autoriser un paiement permet d’en garantir le montant en retenant les fonds correspondant sur le moyen de paiement du client. Si vous utilisez l’API, l’attribut payment_method_details.card.capture_before du paiement précise la date de fin de l’autorisation.
Vous devez capturer les fonds avant l’expiration de l’autorisation. Si celle-ci expire avant la capture des fonds, la mise en réserve des fonds est levée et le paiement passe à l’état canceled
. En savoir plus sur les états des paiements asynchrones.
Durée de validité de l’autorisation
Les tableaux suivants présentent les délais de validité de l’autorisation des différents types de transaction.
Transactions sans présentation de la carte bancaire
Marque de la carte bancaire | Délai de validité de l’autorisation d’une transaction initiée par le marchand | Délai de validité de l’autorisation d’une transaction initiée par le client |
---|---|---|
Visa | 5 jours* | 7 jours |
Mastercard | 7 jours | 7 jours |
American Express | 7 jours | 7 jours |
Discover | 7 jours | 7 jours |
Transactions avec présentation de la carte bancaire (paiements par TPE)
Marque de la carte bancaire | Durée de validité de l’autorisation |
---|---|
Visa | 5 jours* |
Mastercard | 2 jours |
American Express | 2 jours |
Discover | 2 jours |
Délai d’autorisation de 30 jours au Japon
Si votre compte est établi au Japon, les transactions en JPY effectuées par Visa, Mastercard, JCB, Diners Club et Discover peuvent faire l’objet d’une retenue pendant 30 jours maximum. Les transactions non libellées en JPY et celles d’American Express expirent au bout du délai standard de 7 jours.
Note
Depuis le 14 avril 2024, Visa a raccourci le délai d’autorisation des transactions en ligne initiées par le marchand de 7 à 5 jours. Visa a également allongé le délai d’autorisation des transactions par TPE (Terminal) de 2 à 5 jours.
Limites des moyens de paiement
Avant de passer à l’implémentation, sachez que la séparation entre l’autorisation et la capture est soumise aux limites suivantes.
Seuls certains moyens de paiement prennent en charge les fonctionnalités d’autorisation et de capture distinctes. C’est notamment le cas des cartes, d’Affirm, d’Afterpay, de Cash App Pay, de Klarna et de PayPal. En revanche, ACH et iDEAL, entre autres, ne les prennent pas en charge. En savoir plus sur la prise en charge des fonctionnalités des moyens de paiement.
Les tableaux ci-dessus ne sont pas exhaustifs, d’autres moyens de paiement ont des règles et des délais d’autorisation différentes :
- Paiements par carte : le montant est généralement bloqué pendant sept jours pour les paiements en ligne et deux jours pour les paiements Terminal (en fonction du type de transaction et du réseau de cartes). Vous pouvez demander une autorisation prolongée pour certaines autorisations en ligne ainsi que certaines autorisations de paiement Terminal admissibles à des délais prolongés. Les réseaux de cartes peuvent également restreindre les autorisations de 1 USD si vous n’avez pas l’intention de les capturer.
- Affirm : si Affirm exige un acompte pour des montants de commande très élevés, cet acompte est facturé lors de l’autorisation et est remboursé si le paiement n’est pas capturé. Vous disposez ensuite de 30 jours pour capturer le solde du paiement.
- Afterpay/Clearpay : lors de l’autorisation, le client paie le premier versement échelonné. Afterpay rembourse le paiement s’il n’est pas capturé. Vous disposez alors de 13 jours pour capturer le solde du paiement.
- Cash App Pay : les autorisations valides doivent être capturées sous sept jours pour finaliser un paiement.
- Klarna : vous devez capturer le paiement au plus tard avant minuit le 28e jour calendaire qui suit la demande de paiement, sinon l’autorisation expire. Par exemple, vous devez capturer une demande de paiement effectuée le 01/10/2020 à 14 h 00 UTC au plus tard le 29/10/2020 à 00 h 00.
- PayPal : le montant est bloqué pendant 10 jours. Stripe tente automatiquement de prolonger le blocage de 10 jours supplémentaires, pour une durée totale de 20 jours. Votre préférence de règlement peut avoir une incidence sur la période d’autorisation. Pour en savoir plus, consultez la section dédiée à l’autorisation et la capture distinctes.
Utiliser le Dashboard pour autoriser et capturer
Vous pouvez autoriser un paiement et capturer les fonds séparément sans écrire une seule ligne de code.
- Dans le Dashboard, créez un nouveau paiement. Sélectionnez ponctuel.
- Lorsque vous saisissez ou sélectionnez le moyen de paiement, sélectionnez Autres options puis Capturer les fonds plus tard.
Le paiement apparaît sur votre page de paiement comme Non capturé.
Pour capturer les fonds, accédez à la page des détails du paiement et cliquez sur Capturer.
Indiquer à Stripe d’autoriser uniquement
Pour indiquer que vous souhaitez séparer l’autorisation de la capture, définissez capture_method sur manual
lors de la création du PaymentIntent. Ce paramètre indique à Stripe d’autoriser le montant mais de ne pas le capturer sur le moyen de paiement du client.
Avec l’approche ci-dessus, vous indiquez à Stripe que vous pouvez uniquement utiliser la « capture ultérieure » pour un PaymentIntent avec des moyens de paiement admissibles. Par exemple, vous ne pouvez pas accepter les paiements par carte ni par prélèvement automatique SEPA (lequel ne prend pas en charge la capture ultérieure) pour un seul PaymentIntent. Pour accepter des moyens de paiement qui ne prennent peut-être pas tous en charge la capture ultérieure, vous pouvez configurer cette fonctionnalité pour chaque moyen de paiement en définissant capture_
sur l’objet payment_
.
Par exemple, en configurant payment_
, vous ne mettez en attente que les paiements par carte. Vous pouvez gérer les moyens de paiement à partir du Dashboard. Stripe gère la logique d’affichage dynamique des moyens de paiement admissibles les plus pertinents pour chaque client en fonction d’éléments tels que le montant de la transaction, la devise et le tunnel de paiement.
{ % codegen-snippet path=“/v1/payment_intents” method=“POST” args={ “amount”: 1099, “currency”: $merchant.currency, “automatic_payment_methods”: { “enabled”: true }, “payment_method_options”: { “card”: { “capture_method”: “manual” } } } /%}
Vous pouvez aussi répertorier card
et sepa_
à l’aide du paramètre de sélection du type de moyen de paiement comme dans l’exemple ci-dessous.
Avant de passer à la capture, joignez un moyen de paiement comportant des informations de carte au PaymentIntent et autorisez la carte en confirmant le PaymentIntent. Pour cela, définissez les champs payment_
et confirm
du PaymentIntent.
Autorisations prolongées
En règle générale, une autorisation de paiement par carte en ligne est valable 7 jours. Pour prolonger la période de validité, vous pouvez bloquer une somme sur une carte de paiement en ligne pour une période prolongée.
Capturer les fonds
Lorsque le moyen de paiement est autorisé, l’état du PaymentIntent passe à requires_
. Pour capturer les fonds autorisés, effectuez une demande de capture du PaymentIntent. Le montant total autorisé est capturé par défaut. Pour capturer un montant inférieur ou (pour certains paiements par carte en ligne) supérieur à ce qui a été autorisé, transmettez l’option amount_to_capture. Une capture partielle libère automatiquement le montant restant. Si vous tentez de capturer un montant supérieur au montant initial d’un paiement par carte en ligne, reportez-vous à la documentation relative aux surcaptures pour en savoir plus.
L’exemple suivant montre comment capturer 7,50 USD sur le paiement autorisé de 10,99 USD :
Bien que certains paiements par carte soient admissibles à la capture multiple, pour la plupart des paiements, vous ne pouvez effectuer qu’une capture par paiement autorisé. Si vous capturez un montant partiel, vous ne pouvez pas réaliser une deuxième capture pour la différence. Envisagez plutôt d’enregistrer les informations de paiement du client afin de créer ultérieurement des paiements selon vos besoins.
Les relevés de carte bancaire de certains émetteurs et certaines interfaces de moyens de paiement ne permettent pas de distinguer les autorisations et les paiements capturés (réglés), ce qui peut parfois induire les clients en erreur.
Par ailleurs, lorsqu’un client finalise le processus de paiement sur un PaymentIntent par une capture manuelle, l’événement payment_
est déclenché. Vous pouvez consulter la propriété amount_capturable du PaymentIntent pour connaître le montant total du PaymentIntent pouvant être capturé.
Annuler l’autorisation
Si vous devez annuler une autorisation, vous pouvez annuler le PaymentIntent correspondant.