L'état d'un PaymentIntent qui n'est pas confirmé en raison de l'authentification forte du client (SCA) devient « requires_payment_method », alors que pour qu'une confirmation manuelle soit effectuée, son état doit être « requires_action ».
Option 1
Créez un nouveau PaymentIntent avec le même client et le même moyen de paiement.
-
Tentez de le confirmer en définissant le paramètre « off_session » sur
false
.Si l'état du PaymentIntent est « requires_action », la confirmation devrait échouer.
Utilisez ce nouveau PaymentIntent pour effectuer la confirmation manuellement.
Option 2
Utilisez un appel à l'API pour mettre à jour le PaymentIntent et définir le paramètre payment_method sur l'ID du moyen de paiement qui a échoué.
-
Tentez de le confirmer en définissant le paramètre « off_session » sur
false
.Si l'état du PaymentIntent est « requires_action », la confirmation devrait échouer.
Effectuez la confirmation manuellement avec le PaymentIntent.
Informations complémentaires
La méthode
stripe.handleCardPayment
utilisée pour la confirmation manuelle ne fonctionne que si l'état du PaymentIntent est « requires_action », vous devez donc faire passer le PaymentIntent à cet état.