-
Notifications
You must be signed in to change notification settings - Fork 168
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Payments which aren't redirected still need to be captured on SCA. #157
Comments
@jeremyquinton please see: https://stripe.com/docs/api/payment_intents/create#create_payment_intent-capture_method
If you want to automatically capture PaymentIntent then you should use Omnipay PurchaseRequest instead of AuthorizeRequest - see: https://github.com/thephpleague/omnipay-stripe/blob/master/src/Message/PaymentIntents/PurchaseRequest.php#L36
I too was confused by this - thats why i did workaround as discussed here: #152 (comment) |
@domis86 thanks for your feedback. Changing the AuthoriseRequest to PurchaseRequest made no difference to me. I did the following which works for now.
|
@jeremyquinton are you using omnipay-common to use stripe or directly ? I found using omnipay stripe you really cant use intentGateway ? |
@domis86 @jeremyquinton - Can you please help how this is implemented? How the payment methods are set? and how to redirect it to 3D secure stripe? Omnipay stripe is having paymentIntents but unable to use it as @ujwaldhakal said. |
I'm using the latest stripe API and version 3.1 of this library.
Short version (tested on a live transaction as well as test transaction)
The documentation states
If you don't set the confirm parameter to true, you will have to manually confirm the payment intent as shown below.
This is in misleading because if you are not redirected and have set confirm to true you have to use the below code to confirm the payment.
The code below in the $response->isSuccessful() does not work if you are not redirected it only works if you are redirected.
If I use the test card number below (recommended by Stripe to kick in SCA flow)
4000 0000 0000 3063
isRedirect() is true and then I can use the code below to confirm the transaction
If I use 4242 4242 4242 4242 in test or a real card number in live mode
$response->isSuccessful() is set true however calling the code below does not work.
I had to use capture instead .
This feels like an odd fringe case that is not handled by the new library. If you aren't redirected you have to use capture instead of confirm.
I will see if I can write test case and code to handle this fringe case.
The text was updated successfully, but these errors were encountered: