[HN Gopher] Tell HN: Apple Pay works in non-Safari browsers in i...
       ___________________________________________________________________
        
       Tell HN: Apple Pay works in non-Safari browsers in iOS 16 Beta 3
        
       I was just poking around on a Shopify store on my Firefox browser
       and saw Apple Pay button showed up, first thought it's a front-end
       bug on the website but tapped on it and the widget slid up and you
       can legibly make the purchase!  Tried on Chrome too and it worked
       there too!  Tried a few other website and can confirm it works
       everywhere Apple Pay is offered. is it a feature? bug?  Wanna try
       it yourself? you can check this Stripe test page
       https://stripe.com/docs/stripe-js/elements/payment-request-b...
       Haven't installed Beta 4 yet to see if it is still working.
        
       Author : san_amiro
       Score  : 100 points
       Date   : 2022-07-29 18:34 UTC (4 hours ago)
        
       | samwillis wrote:
       | This is good news, I hope they make it available in all "In App
       | Browsers" (IABs) too, along with all saved payment cards in your
       | key chain.
       | 
       | As a data point from an online retailer, we kept seeing a
       | significantly high (I think it was something ridiculous like 30%)
       | drop out at the check out payment screen for all
       | Facebook/Instagram ad customers.
       | 
       | What was happening was they were clicking on ads, coming to our
       | site, going to purchase and then when they reached payment didn't
       | have access to Apple Pay or there saved card details. The in app
       | browsers have an "open in Safari" button, they were clicking that
       | - so they could use their prefers payment method - and loosing
       | their session and shopping cart. It was catastrophic!
       | 
       | We ultimate fixed the issue with a warning message to customers
       | who are within an IAB.
       | 
       | IABs are bad for advertisers, they only serve to keep users
       | within the social media app.
       | 
       | Anyone with the Beta, I would love to know if either Apple Pay or
       | key chain saved cards are available now in social media IABs.
        
         | solarkraft wrote:
         | > The in app browsers have an "open in Safari" button, they
         | were clicking that - so they could use their prefers payment
         | method - and loosing their session and shopping cart. It was
         | catastrophic!
         | 
         | This is one of the few instances in which Android went to some
         | lengths to provide a good UX. An IAB can transition into the
         | real thing without even re-rendering or blinking - and it has
         | all the user data of the main browser.
        
           | jefftk wrote:
           | That's not quite right. A real in-app browser on Android,
           | like Facebook's, has fully independent state. But Android
           | also supports a feature called Custom Tabs, where you can
           | have something that looks an acts a lot like an in-app
           | browser but is actually your default browser under the hood.
           | The embedding app gives up some control over it, and can't
           | for example, inject custom JavaScript, but in exchange it
           | shares state with the default browser.
           | 
           | More: https://developer.chrome.com/docs/android/custom-tabs/
        
       | tomxor wrote:
       | No it doesn't, because there is no such thing as a non-safari
       | browser on iOS.
       | 
       | Firefox, Chrome, anything Apple will allow is just Safari in a
       | different costume.
        
         | freediver wrote:
         | Except they use their own browser features, sync, telemetry,
         | privacy practices, business model etc...
        
         | madeofpalk wrote:
         | Brave and Edge is not Chrome.
        
           | tomxor wrote:
           | it doesn't matter what it's called, the underlying engine of
           | any "browser" app on iOS is apple webkit. Because you aren't
           | allowed browser engines on iOS, Apple rules, it's all a bunch
           | of skins.
        
           | jefftk wrote:
           | Brave and Edge can compile the Chromium code base with any
           | changes they want, including adding or removing features. On
           | iOS that is not something alternative browsers are able to
           | do.
        
       | solarkraft wrote:
       | As far as I know there are no non-Safari browsers on iOS yet.
        
         | freediver wrote:
         | Every non-Safari browesr on iOS is a non-Safari browser :) You
         | probably meant no non-WebKit browsers on iOS.
        
       | freediver wrote:
       | Has anyone ever managed to get Apple Pay working in non-Safari
       | app on macOS?
        
         | nickshearer wrote:
         | It's supported on macOS - I know of a couple of desktop apps
         | that use it. If you were running a Catalyst app on Mac that
         | used Apple Pay it would work also. If you run into trouble you
         | find me on Twitter (@nickjshearer) or the Apple Dev Forums.
        
           | [deleted]
        
       | n8cpdx wrote:
       | Do you know if extensions work, too? That was the big thing
       | keeping me off Firefox on iOS, and thus, Firefox on Mac.
       | 
       | I want something that syncs to all my devices and supports
       | extensions on all my devices.
       | 
       | TBH not allowing safari extensions to work in non-safari browsers
       | felt almost anticompetitive, but I do recognize that there are
       | some UI challenges to solve. Apple Pay was the other big feature
       | I was missing out on.
        
         | resfirestar wrote:
         | I have the beta on an iPad and no sign of extensions. Another
         | pain point for me is that the system password manager doesn't
         | work as well as it does with Safari (and sometimes not at all),
         | and that does not seem to have improved either.
        
       | [deleted]
        
       | sandstrom wrote:
       | Probably preparations due to the upcoming EU framework.
       | 
       | As a short summary, here are some of the new EU requirements on
       | gatekeepers such as Apple.
       | 
       | Gatekeepers must:
       | 
       | - Allow users to install apps from third-party app stores and
       | sideload directly from the internet.
       | 
       | - Allow developers to offer third-party payment systems in apps
       | and promote offers outside the gatekeeper's platforms.
       | 
       | - Allow developers to integrate their apps and digital services
       | directly with those belonging to a gatekeeper. This includes
       | making messaging, voice-calling, and video-calling services
       | interoperable with third-party services upon request.
       | 
       | - Give developers access to any hardware feature, such as "near-
       | field communication technology, secure elements and processors,
       | authentication mechanisms, and the software used to control those
       | technologies."
       | 
       | - Ensure that all apps are uninstallable and give users the
       | ability to unsubscribe from core platform services under similar
       | conditions to subscription.
       | 
       | - Give users the option to change the default voice assistant to
       | a third-party option.
       | 
       | - Share data and metrics with developers and competitors,
       | including marketing and advertising performance data.
       | 
       | Gatekeepers may no longer:
       | 
       | - Pre-install certain software applications and require users to
       | use any important default software services such as web browsers.
       | 
       | - Require app developers to use certain services or frameworks,
       | including browser engines, payment systems, and identity
       | providers, to be listed in app stores.
       | 
       | - Give their own products, apps, or services preferential
       | treatment or rank them higher than those of others.
       | 
       | - Reuse private data collected during a service for the purposes
       | of another service.
       | 
       | - Establish unfair conditions for business users.
        
         | thehappypm wrote:
         | I hate that you cant sideload today but its gonna lead to tons
         | of malware
        
           | donmcronald wrote:
           | Alternatively we may end up with better app stores with far
           | less malware and trash. As much as apple enthusiasts like to
           | claim the app store is as good as it can get, there's a ton
           | of room for improvement IMO. Just getting rid of the games
           | that prey on children and addiction would be a good start.
        
             | GeekyBear wrote:
             | It's about 100% more likely that it's going lead to every
             | company that chafes under Apple's current "you have to ask
             | permission before you can do that" rules to begin to only
             | offer their apps outside the App Store.
             | 
             | Remember the original Android permission model of "an app
             | gets every permission it wants or you can't install it"?
             | That's where this is heading.
        
               | jefftk wrote:
               | I would think a permissions model is something that Apple
               | would still be able to design and enforce through their
               | control of the operating system?
        
             | reaperducer wrote:
             | It sounds like you envision a world of many different
             | walled gardens, instead of the single Apple-policed walled
             | garden.
             | 
             | I can see how that would be attractive in some ways. On the
             | other hand, parent's aren't necessarily smarter than anyone
             | else.
             | 
             | "Install this rando app store and get 12C/ off your next
             | gas fill-up!"
        
               | stefan_ wrote:
               | Remember Facebook offering people a few bucks to MITM
               | their entire phone? Oh wait, that was on the official App
               | store! And they didn't even ban them!
        
             | KerrAvon wrote:
             | Children and addiction are your two problems with the App
             | Store? How exactly do think a third-party free-for-all set
             | of app stores is going to do better?
        
         | amelius wrote:
         | Where will that leave US users?
        
           | KerrAvon wrote:
           | My guess would be paying higher prices to pick up the slack
           | for the missing EU users when the "gatekeepers" abandon or
           | greatly shrink operations in the EU after evaluating the cost
           | of compliance.
        
             | KerrAvon wrote:
             | On the plus side, big opportunity for EU consumers to
             | become familiar with Chinese phones and operating systems.
        
               | baal80spam wrote:
               | > On the plus side
               | 
               | I'm an European and I really don't consider this a plus.
        
         | cgb223 wrote:
         | Does this mean I can finally have a browser running its own
         | rendering engine that supports its own extensions in iOS?
        
         | smoldesu wrote:
         | This is really awesome. I'm sure there will be anecdotal
         | refutations of this legislation on HN, but this is a great list
         | of consumer rights to start with. Almost gives me a little bit
         | of hope for a future of technology that isn't controlled by 3
         | or 4 companies.
        
         | zaptrem wrote:
         | - Give developers access to any hardware feature, such as
         | "near-field communication technology, secure elements and
         | processors, authentication mechanisms, and the software used to
         | control those technologies."
         | 
         | Here comes the Meta App Store to bypass all iOS privacy
         | protections :(
         | 
         | I really like the idea of an eject button to run arbitrary code
         | and operating systems on my pocket computer, but 99% of the
         | time I want it to "just work." If I valued the former over the
         | latter I would have bought an Android phone.
        
           | mmh0000 wrote:
           | A better way to think of it, is:
           | 
           | Here comes F-Droid to further enhance iOS with privacy
           | respecting applications
        
           | root_axis wrote:
           | Why would you download the Meta App store to begin with?
        
             | wyager wrote:
             | Because the next time there's a virus going around, they're
             | going to put the vaccine passport app you need to go to the
             | store or take a train in the Meta app store.
        
               | root_axis wrote:
               | You're suggesting the government would distribute their
               | vaccine passport app exclusively through Meta? Why would
               | they do that?
        
               | idontpost wrote:
               | Corruption.
               | 
               | It's still a nonsensical fear, but that would be the
               | reason.
        
               | jefftk wrote:
               | Very happy to bet against you on that ;) Android has
               | multiple app stores, but the kind of app you're
               | describing doesn't require installing an alternative one.
        
         | pharmakom wrote:
         | Proper Firefox HERE WE COME!!!!
        
         | eps wrote:
         | > _- Allow users to install apps from third-party app stores
         | and sideload directly from the internet._
         | 
         | Any provisions to allow sideloading _unsigned_ apps?
         | 
         | Because if you can sideload, but it still needs to be signed by
         | Apple, the whole thing is largely moot.
        
           | cassianoleal wrote:
           | Not entirely moot. This would be more or less equivalent to
           | macOS's "Allow apps downloaded from App Store and identified
           | developers". This allows people to publish software without
           | abiding by the App Store's rules and review process, as well
           | as the 30% cut on sales.
           | 
           | Perhaps it doesn't go as far as you'd like but it's not moot
           | either.
        
         | jeshin wrote:
         | i hadn't heard about this, that certainly sounds pretty good
        
       | jkingsman wrote:
       | This is not a new API AFAIK. The Payment API[0] has been around
       | for a while. MDN's got the full skinny [1].
       | 
       | [0]: https://webkit.org/blog/8182/introducing-the-payment-
       | request...
       | 
       | [1]: https://developer.mozilla.org/en-
       | US/docs/Web/API/Payment_Req...
        
         | 8191 wrote:
         | I have 15.6 stable installed and when opening the Stripe test
         | page I receive an error in Firefox ("Either your browser does
         | not support the Payment Request API, or you do not have a saved
         | payment method.")
        
           | altairprime wrote:
           | iOS 16 beta apparently provides the framework updates
           | necessary for third-party iOS App Store browsers to use it.
           | So you won't be able to use it on 15.X unless they backport,
           | which is unlikely.
        
             | ceejayoz wrote:
             | Stripe's demo doesn't work on desktop Firefox, either.
             | 
             | > Either your browser does not support the Payment Request
             | API, or you do not have a saved payment method. To try out
             | the Payment Request Button live demo, switch to one of the
             | supported browsers below, and make sure you have a saved
             | payment method.
        
               | altairprime wrote:
               | Desktop Firefox doesn't use the Apple WebKit engine on
               | the backend, so that's up to the Firefox Desktop team to
               | implement on their own (and tie into the OS native if
               | available, which I suspect depends on you running the
               | latest macOS beta, assuming they're working on it yet).
               | 
               | EDIT: Which they're not, per above.
        
               | nickshearer wrote:
               | Firefox doesn't implement Payment Request, so no Payment
               | Request based payment methods would work.
        
               | ceejayoz wrote:
               | It's implemented but off by default; there's a
               | `dom.payments.request.enabled` feature flag, but it
               | doesn't make the Stripe demo work.
        
         | lwansbrough wrote:
         | The API isn't new but being able to use it in 3rd party
         | browsers on iOS is.
        
         | hk1337 wrote:
         | Is this intended for actual non-Safari browsers like actual
         | Chrome or Firefox on iOS or just what there is now where Chrome
         | and Firefox on top of the same WebKit engine as Safari?
        
           | MBCook wrote:
           | Everything is still Safari underneath. That's probably never
           | changing as long as Apple has a say (that new EU law may
           | force it).
           | 
           | But this would mean you could use ApplePay from the current
           | FireFox app.
        
             | freediver wrote:
             | You mean everything is WebKit underneath. Safari and Chrome
             | on iOS are very different browsers.
        
             | pmontra wrote:
             | Letting all browsers with a Safari engine use all the
             | features of Safari-Safari fed be a way to nudge users to
             | keep using Safari browsers instead of other browser
             | engines, when that EU law forces Apple to open up the
             | platform. The other browsers could be forever behind is iOS
             | features. However that's going to make the browser
             | experience closer to native.
        
               | jefftk wrote:
               | I'm glad Apple is opening up features for other browsers
               | to use on iOS, but I don't understand how this nudges
               | users? As soon as it is permitted, Firefox, Chrome, etc
               | will switch from their WebKit based implementations to
               | using their own engines.
        
       | ceejayoz wrote:
       | Non-Safari browsers on iOS are still Safari's rendering engine,
       | aren't they?
       | 
       | I just wish it'd work on Firefox on my Mac. If not that, I'd love
       | a popup that told me the page supports Apple Pay, so I can
       | checkout with Safari instead.
        
         | PascLeRasc wrote:
         | I have a Firefox extension that does this, but it only works on
         | some sites and it's very much not complete.
         | https://github.com/mike-u/firefox-apple-pay
        
           | ceejayoz wrote:
           | "SO post trying to accomplish this" is mine, lol.
        
             | PascLeRasc wrote:
             | Well hey, thanks for doing half the work for me.
        
       | candiddevmike wrote:
       | Please let this mean Apple will embrace TWAs in the app store
        
       | hcarrega wrote:
       | just test with orion browser on iphone 13 with ios16beta4 and
       | works
        
       | dawiddr wrote:
       | Apple Pay has been supported in WebKit's web view (which every
       | browser uses) for a while now, but with some conditions. The
       | biggest obstacle was that an app couldn't inject any JavaScript
       | code of its own into websites. I wonder if they removed this
       | safeguard.
        
         | freediver wrote:
         | It does not seem to be the case on macOS.
        
         | jefftk wrote:
         | They must have removed that: if you're building your own
         | browser you definitely want to be able to inject JavaScript
         | code, because one of your few options for differentiating
         | yourself on iOS is supporting browser features that Apple
         | hasn't prioritized implementing yet. Both Chrome and Firefox do
         | this by injecting polyfills.
        
       | turtleman1338 wrote:
       | "non-Safari browsers" I thought all iOS browsers are technically
       | Safari based?
        
       ___________________________________________________________________
       (page generated 2022-07-29 23:01 UTC)