#kylewhittington-webviews

1 messages · Page 1 of 1 (latest)

brave lagoon
#

Hi there! Thanks for the details. Give me a moment to investigate.

#

What browser are you encountering this on?

#

And is it specific to a certain browser (I assume not based on what you stated).

idle shadow
#

It's whatever iOS is using to open an external browser -- I'd assume it's Safari.

brave lagoon
#

Gotcha.

idle shadow
#

No, we don't see any errors. Stripe finishes up and redirects back to our app -- ie. https://myapp.com/order-complete. But that stays in the browser, rather than triggering to open up the iOS app again. So the user stays in the browser that was opened to handle the checkout flow, rather than, what we would expect, which is that the user sees the redirect handled by the iOS app (opened in the app).

brave lagoon
#

Okay thanks. I'm not the most experienced with iOS webapps and deep linking, let me ask a colleague for some insight.

idle shadow
#

So if you do this on the web, of course, it works as there's no need for apps to be involved. If you do this on Android, we have it set up with intents so that when Stripe redirects, it then correctly triggers the app to respond and open up, and we can handle the inbound. iOS just doesn't seem to like (or allow) the redirect to open the app back up.

#

Thanks, that would be much appreciated!

brave lagoon
#

Just quick clarifier... you state that on Android you have it "set up with intents" -- does this indicate you aren't using Stripe Checkout here but your own custom form with Elements and PaymentIntents?

#

Or is it same integration on both?

idle shadow
#

No, sorry, intents is an Android term for handling inbound requests to the app -- it's not Stripe related.

brave lagoon
#

Ah thanks.

#

Okay give me a moment

idle shadow
#

Thanks!

brave lagoon
#

Okay so there actually is an extra step for deep linking on iOS that Android takes care of natively. We discuss this here in our docs: https://stripe.com/docs/payments/accept-a-payment?platform=ios&ui=payment-sheet#ios-set-up-return-url. That doc is specifically for Payment Sheet, but the same idea applies regardless of using Stripe Checkout. You stated your universal links are working so I would think you may need to set up your app delegate? Can you confirm whether your set up looks like that in the docs?

idle shadow
#

On the right path, for sure -- but I think we do already have the equivalent of that in place. This is further complicated by the fact that our app is built in Xamarin iOS -- which is usually fine as we can do the same things as on native, but hard to compare code as it would be slightly different implementation. Universal links are definitely working on the device in that if we tap a URL that starts with our app's domain, then iOS opens the app... it's just weird that it doesn't respond to the redirect. Based upon the Stripe code you've sent it looks like it does handle it (or it's at least been considered) so maybe we need to keep digging and see if it's Xamarin that's not responding in the right way.

#

This isn't specifically a Stripe problem -- as it's largely about iOS -- but I thought given anyone doing Stripe Checkout and needing Apple Pay / Google Pay, in their app, they would need to do this sort of thing.