flutter_stripe
flutter_stripe copied to clipboard
Closing the 3DS popup on Android results in error for the succeeding call with same card.
Describe the bug
On Android, when calling the confirmPayment
method for a 3DS card the popup is shown correctly the first time. When clicking away this popup (By clicking the "close" button) the next call to confirmPayment
results in an error.
To Reproduce Steps to reproduce the behavior:
- When using this card: 4000002760003184 (Always authenticate)
- Calling
confirmPayment
- Clicking "Close" on the 3Ds popup
- The popup shows for a brief moment but closes instantly.
- Calling
confirmPayment
again with the samepaymentIntentClientSecret
results in the following error:
We are unable to authenticate your payment method. Please choose a different payment method and try again.
Expected behavior
Successive calls to confirmPayment
should open the same popup and await user response.
Smartphone / tablet
- Device: Pixel 3a
- OS: Android 14
- Package version: 10.0.0
- Flutter version 3.16.9
I'm not sure what exactly happens to you at Step 3 and Step 4 - can you provide a video? Also it's quite likely that the Payment Intent cannot be reused again
We managed to fix this by removing the confirmPayment
call and correctly handling the handleNextAction
.