#yalcin-3DS-ios-webview
1 messages · Page 1 of 1 (latest)
Hello 👋
So if I understand it correctly, some 3DS redirects open in safari and some don't?
Yes
I expect them to open in lightbox popup, but they open on device native browser
I use WKWebView on ios in order load web app
but it works fine on desktop browsers and mobile browsers
it happens only on IOS webview
Yeah in-app webviews are always tricky.
Let me check if there are any alternatives here
payment intent object returns next action as follows
"next_action": {
"type": "use_stripe_sdk",
"use_stripe_sdk": {
"type": "stripe_3ds2_fingerprint",
"merchant": "XXXXXXXX",
"three_d_secure_2_source": "XXXXXXXXXX",
"directory_server_name": "visa",
"server_transaction_id": "XXXXXXXX",
"three_ds_method_url": "https://secure4.arcot.com/content-server/api/tds2/txn/browser/v1/tds-method",
"three_ds_optimizations": "k",
In order to fix, right now i need to check domain and let webview continue
if WebUtilities.urlIs3dSecureLink(url: urlStr) {
decisionHandler(.allow);
return;
}
and add this domain into info.plist file under NSAppTransportSecurity>NSExceptionDomain
<dict>
<key>NSAllowsArbitraryLoads</key>
<true/>
<key>NSExceptionDomains</key>
<dict>
<key>arcot.com</key>
<dict>
<key>NSIncludesSubdomains</key>
<true/>
<key>NSThirdPartyExceptionRequiresForwardSecrecy</key>
<false/>
</dict>
hmm yeah creating an exception list for all the 3DS providers would be pretty in-efficient because it can change later down the line too
yes, i was looking for a proper solution for that
but even if you have list of domains, that would be usefull for us
Also, just to clarify is this behavior with window opening in the Safari App or in-app webview?
our web app runs on IOS WKWebView. All card details e.g. gets filled on WKWebView. But if there is a 3d secure check, it takes out user from the app and opens native browser with the 3d secure link.
As you can guess, WKWebView and native browser are not sharing any information between them. So there is no cookie, session data e.g. on native browser. So it opens white page and stops.
I see. Is there a way to add something to app's config that prevents the native safari app from opening and just use WKWebView?
We have to redirect some of the URL requests out of the app.
It won't be a solution in our case
I think finding solution for this issue will take some time, Should we create a support ticket and follow it from that ticket?
Yes that'd be great! Thank you for your patience