You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
On our native iOS App, we trigger Stripe Payment actions using STPPaymentHandler.shared().handleNextAction(forPayment: paymentIntentClientSecret, with: authenticationContext, returnURL: returnURL, completion: completion)
When trying to pay with card 4000002500003155, the result is a .threeDS2Redirect with a hook.stripe.com fallback URL from APIRequest<STP3DS2AuthenticateResponse>.
The return URL is registered in Info.plist and tested. It is passed along successfully to APIRequest<STP3DS2AuthenticateResponse> on if let returnURLString = returnURLString { params["fallback_return_url"] = returnURLString }
But still, when the SafariWebView opens, and we authenticate, the Webview never closes and the text "You may now close this window" sits there.
Another successful test that the returnUrl works, is that I opened regular Safari while having the in-app safari webview from Stripe opened, once I executed "myapp://stripe-payment", the App opened and the line StripeAPI.handleURLCallback(with: url) from AppDelegate kicked in.
Code to reproduce
I posted most of the snippets above, but the App triggers Stripe using STPPaymentHandler.shared().handleNextAction(forPayment: paymentIntentClientSecret, with: authenticationContext, returnURL: returnURL, completion: completion)
with a valid intent + valid returnURL
iOS version
iOS 18
Installation method
Cocoapods
SDK version
23.27.0
Other information
The text was updated successfully, but these errors were encountered:
Hi @RaphJustPark, thanks for filing this! It seems like iOS might be using a different callback to ask your app to open the URL. Does your app have a SceneDelegate? This is common if you created it on/after iOS 13.
Summary
On our native iOS App, we trigger Stripe Payment actions using
STPPaymentHandler.shared().handleNextAction(forPayment: paymentIntentClientSecret, with: authenticationContext, returnURL: returnURL, completion: completion)
When trying to pay with card 4000002500003155, the result is a .threeDS2Redirect with a hook.stripe.com fallback URL from
APIRequest<STP3DS2AuthenticateResponse>
.The return URL is registered in Info.plist and tested. It is passed along successfully to
APIRequest<STP3DS2AuthenticateResponse>
onif let returnURLString = returnURLString { params["fallback_return_url"] = returnURLString }
But still, when the SafariWebView opens, and we authenticate, the Webview never closes and the text "You may now close this window" sits there.
Another successful test that the returnUrl works, is that I opened regular Safari while having the in-app safari webview from Stripe opened, once I executed "myapp://stripe-payment", the App opened and the line
StripeAPI.handleURLCallback(with: url)
from AppDelegate kicked in.Code to reproduce
I posted most of the snippets above, but the App triggers Stripe using
STPPaymentHandler.shared().handleNextAction(forPayment: paymentIntentClientSecret, with: authenticationContext, returnURL: returnURL, completion: completion)
with a valid intent + valid returnURL
iOS version
iOS 18
Installation method
Cocoapods
SDK version
23.27.0
Other information
The text was updated successfully, but these errors were encountered: