RFC-8905: The 'payto' URI Scheme for Payments (2020)
datatracker.ietf.org
datatracker.ietf.org
Details: https://en.wikipedia.org/wiki/EPC_QR_code
Would be nice for something more generic to take off, though.
NFC payment terminals can work while the user's device is offline, like rural areas with poor cellular coverage. Not to mention tap-and-pay cards that don't even need a battery.
(Note: The few cases in the US I've seen QR code based payments, it's been for things like Alipay at a traditional point of sale terminal - which would also have a traditional card terminal with NFC reader. I could see QR codes being useful in other contexts, like paying a paper bill that came in the mail.)
It is very convenient.
I find Apple Pay integration to be deeper and so I find it more convenient to access. However I haven’t used a Google phone in a while so maybe the situation has been improved.
If you want someone to use a feature that you made, you need to put it out there. Everywhere.
Shameless plug:
solves this problem, using QR Codes.
QR code payment systems don't require me to buy into the entire integrated Apple hardware/software ecosystem just to make payments.
If you mean “NFC payments in general”, that’s a different question.
Your comment suggests you think it is, at worst, an acceptable cost for the convenience of Apple Pay over other alternatives. I’m saying that, for some of us, it is not.
Some huge proportion of payments in China are already done with QR codes (WeChat/AliPay).
From the consumer side basically any phone that can (1) run apps (2) communicate with the internet and (3) has a camera supports payments this way. You may recognize that as "every single smartphone". A $100 little 2" Unihertz Jelly Pro supprots it. A $30 old used phone off of Aliexpress supports it.
From the merchant end, there's no extra hardware requirements. Literally just print a QR code and stick it on the counter and you're ready to accept payments. (E.g., https://sampi.co/wechat-pay/) Some of the smaller shops just have you show them your screen showing the payment being sent. Others will keep a phone or other device on hand to confirm the payment was received on their end.
Half of the value of a payment system is in it being ubiquitous. The onboarding experience with QR codes is so hilariously simple and accessible that it's much easier to get that market penetration.
My favorite so far has been many restaurants giving a bill with a QR code that opens up a website that allows for in browser Apple Pay.
Seems not to be separate from QR codes to me, but I still like the Apple Pay portion and total integration
Are you referring to the browser thing? Or the NFC thing which isn't used in this payment flow?
I'm hoping this is sarcasm and I missed the joke.
I really hope I didn't get the joke.
I had an "idea" of having something like this in the past, to save having to manually type bank account numbers into a thing (and risk typos...), instead you just scan a QR code with the data already embedded and it's good to go.
The only thing that nagged me in the back of my head was how do you verify that the QR code hasn't been tampered with? I mean you could say the same about just plain text and someone replacing the bank account details (replacing with their own), or sticking an imposter QR code over the top and hoping people don't notice.
Does this EPC code account for tampering/misuse?
I guess you'd expect the bank to double check the payee name + bank account number and reject anything that does not match.
You always have to bullshit check the data anyway.
Payee name + bank account number are _not_ checked in Austria. I guess this is similar to other EU countries, as @kiwijamo also suggested.
It is important to note also that this is an Independent Submission, Informational in nature only. Despite being published through IETF and having an RFC number, it’s probably fair to consider it as little more than a blog post, as regards authority.
But since Stripe is way ahead here they might end up the de-facto standard anyway.
In theory, different mail programs might do different things with a mailto: URI, or expect different things to be in a mailto: URI — but by registering an association with the mailto: scheme, they're claiming to do something useful with a mailto: URI if passed one.
It will be the same problem here. It's safer not to use a payto scheme if it is the difference between a future customer being unable to buy your services because they haven't yet got the latest associations installed.
Notably, payto does not seem to be on the allowlist for registerProtocolHandler.
[1]: https://developer.mozilla.org/en-US/docs/Web/API/Navigator/r...
Imagine "digital wallet" apps, that would register themselves for the payto: scheme at the OS level — just like web browser apps are registered openers for the http: scheme, or like email client apps are registered openers for the mailto: scheme.
(I mean, you don't actually have to imagine them, they already exist. Apple Wallet is a "digital wallet app" on iOS. Native-app crypto wallets are "digital wallet apps." Paypal's mobile app is a "digital wallet app." None of them register for payto:, but they all could.)
Now imagine that, like web browsers or email clients, every OS default-installed its own minimal first-party wallet app, so that it had something to fire up in response to a click on a payto: link, if you didn't have any other piece of software installed. Think "Outlook Express."
Like with web browsers or email clients, you could install your own wallet apps, and then choose which one to make the default for the payto: scheme.
There could be single-service wallet apps (created by your bank; by Visa/Mastercard/etc.; by Paypal/Venmo/etc.), and multi-service wallet apps (created by bigcorps and ISVs); just like there are single-service email apps (the "native Gmail client" kind of apps), and multi-service email apps.
If you had multiple equal-priority scheme associations for payto:, your OS would pop a menu to ask you which app you want to use to open the link, just like it pops a menu when you go to open a file and there isn't a clear default association.
The apps themselves would be free to ask more questions (or not) upon being intent-opened. If you click a mailto: link, then some email apps, when configured with multiple accounts, ask you which account you want to send the email as; others don't, but instead just let you switch the "From" field between your accounts, and do all the book-keeping to move the draft email between services, etc., in response. Same idea here.
My current bank has OCR reading of invoices built in to their app but that feels like a bit of a hack.
Which In turn makes my think about if the Swedish postgiro/bankgiro payment system would work with this type of link.
But the bit-length of the QR-code is probably bigger than what humans would accept so putting the information into alphanumerics might not be practical.
The proposal should be inclusive of all cryptocurrencies.
PayPal and invoice generators are more likely. Also content donation links like Coil or BAT. Things that don't need a synchronous confirmation for the result in order to ship you stuff.
We have cryptocoins and national standards that any software could support, for example.
I can see it growing all sorts of new fields though, and being used maliciously. I guess security considerations are largely out of scope for the rfc though.
I wonder how such a thing might play with things like OpenBanking payment services...