Los PaymentIntents fuera de la sesión en los que haya fallado la confirmación debido a los requisitos de autenticación reforzada de clientes (SCA) tienen el estado «requires_payment_method» y, para completar el flujo de confirmación manual, es necesario que el PaymentIntent tenga el estado «requires_action».
Opción 1
Crea un nuevo PaymentIntent con el mismo cliente y método de pago.
-
Intenta confirmarlo con «off_session» establecido en
false
.La confirmación debería fallar si el PaymentIntent tiene el estado «requires_action».
Usa este nuevo PaymentIntent para completar la confirmación manual.
Opción 2
Usa una llamada a la API de actualización de PaymentIntent para establecer payment_method con el mismo identificador del método de pago que ha fallado.
-
Intenta confirmarlo con «off_session» establecido en
false
.La confirmación debería fallar si el PaymentIntent tiene el estado «requires_action».
Termina la confirmación manual con el PaymentIntent.
Información adicional
El método
stripe.handleCardPayment
usado en la confirmación manual solo funciona con el estado «requires_action», por lo que tendrás que cambiar el PaymentIntent a «requires_action».