L'état d'un PaymentIntent hors session qui n'est pas confirmé en raison de l'authentification forte du client (SCA) devient « requires_payment_method », alors que pour effectuer une confirmation manuelle l'état d'un PaymentIntent doit être « requires_action ».
Créez un nouveau PaymentIntent avec le même client et le même moyen de paiement.
Tentez de confirmer le PaymentIntent 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.
Utilisez un appel d'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 confirmer le PaymentIntent 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.
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 à « requires_action ».