FIO QR Codes

“Report: 85% of users paid by scanning QR codes in 2020”

“The survey found 98 percent of respondents considered mobile payment as the most commonly used payment method, up 5 percentage points from a year earlier. The proportion of people who paid by scanning QR codes reached 85 percent, up 6 percentage points from 2019.”

“In China, 50% of users scan QR Codes several times a week. (Packaging Insights, 2019)”

Alipay, WeChat, Paytm, iDEAL (Netherlands), Bancontact (Belgium), Cielo (Brazil), UnionPay (UAE)

QR Codes are a thing.

Where does the FIO Protocol fit into this reality?

Does it make sense to have a push which includes both QR codes and human readable FIO Addresses like this?

This is a place holder document to begin this discussion. It’ll start by reading through existing standards mentioned here: https://www.emvco.com/emv-technologies/qrcodes/

Takeaway: I’m not good at reading standards. I’m also not sure how well this binary data format applies to non-card based, cryptocurrency payment transactions which don’t have the same data elements or requirements like an acquirer.

When I look cryptocurrency QR code generators like https://www.qr-code-generator.com/ I see this as the payload:

1 ethereum:lukestokes.eth?amount=1&message=hello

Should we follow a similar, simple approach?

From BIP21:

1 2 3 4 5 6 7 8 9 bitcoinurn = "bitcoin:" bitcoinaddress [ "?" bitcoinparams ] bitcoinaddress = *base58 bitcoinparams = bitcoinparam [ "&" bitcoinparams ] bitcoinparam = [ amountparam / labelparam / messageparam / otherparam / reqparam ] amountparam = "amount=" *digit [ "." *digit ] labelparam = "label=" *qchar messageparam = "message=" *qchar otherparam = qchar *qchar [ "=" *qchar ] reqparam = "req-" qchar *qchar [ "=" *qchar ]

Would it make sense for us to introduce a “fio:” or “fioprotocol:” prefix to let an application know they are to interact with the FIO chain to do a look up on the fio address and from that, construct a resulting standard url?

Should we have a service endpoint which does this automatically?

Example:

1 https://lookup.fioprotocol.io/?fioaddress=luke@stokes&chain_id=BTC&token_code=BTC&amount=1&message=hello

This could be a new endpoint in the API (so all BPs would be running it) which converts this information and redirects to a standard “ethereum:” or “bitcoin:” uri according to the existing specifications.

 

Other points of reference:

https://en.bitcoin.it/wiki/BIP_0021 (URI Scheme)

https://eips.ethereum.org/EIPS/eip-681 (EIP-681: URL Format for Transaction Requests)

https://www.bitcoinqrcodemaker.com/

https://www.qrcode.com/en/about/standards.html