Development Proposal: Three clicks to pay in Steemit

in #bitcoin7 years ago (edited)

URL Codes for Steem: Pay in Three clicks

Let's Give Steem users the ability to pay with three clicks. Why do we need click to pay feature for paying? There are several reasons. For one thing, although the feature that allows you to pay to a name makes sending payments to a given user makes getting the destination easy to get right, presently merchants also require a unique memo field. Why? If a user using say Steemfiles.com orders socks in one order and starts another session and orders a hat and then makes only a single payment, the software needs to know what the money is for when it is received. Indeed a server may have dozens of users accessing the site at the same time. Without a memo, normally we wouldn't know whether the payment was for one of the orders made from one browser or from another browser in some other country. There may be two people who have not bothered logging in, buying different products at the same time. The website needs to know where to upload the file to. Should it upload to the user in Africa or the one in Asia? By challenging the user with a unique memo we know which order each payment is for.The use of unique memos ensures the user of the web-browser is indeed the person sending the funds.

When the user pays, this user must set the currency; and enter the user id of the merchant, the amount, and the memo. Here the user must switch back and forth between wallet and website with some combination of copy and paste and manually typing in this information. It sounds cumbersome only because it is. To avoid switching from merchant website browser tab to wallet a user might introduce typographical errors and send the wrong amount, the wrong currency or even worse to the wrong user.

If the user only needed to copy and paste a single string, or better yet just point and click, this user wouldn't be mistyping destinations or amounts. Since the user will already probably need to copy and paste the normally hard to remember memo, changing this to a single string wold be a big improvement. I am thinking the form should look like the following:

steem:leprechaun?quantity=10&currency=SBD&r=https%3A%2F%2Fsteemfiles.com&memo=the%20memo

Existing browsers already use strings of this form (URLs) to open software for opening links in a browser, for opening email clients, and finally for opening bitcoin wallets with the address and amount already filled in. Yes, old bitcoin has a leg up on us in this regard. It's time steem had this ease of use as well. The user must have the 'steem:' part registered to some program. As a URL, just by clicking a link could fill in all of the fields in an appropriate website or program. Then the user just needs to click "ACCEPT" and then normally a confirmation box afterward and the payment is sent.

Related Bitcoin information

There is a description of this kind of thing already for bitcoin here:
https://github.com/bitcoin/bips/blob/master/bip-0021.mediawiki

I would want to keep everything from BIP-21 with the following modifications:

  • the string begins with the blockchain name 'steem' or 'golos'
  • the last specified parameter is member is always 'memo' if specified at all and the memo may contain encoded characters for '?' or '&' unlike the rest of the string.
  • The currency parameter is mandatory. Examples for currency are 'STEEM' and 'SBD'.

Bitcoin clients

Bitcoin-Qt supports the old version of Bitcoin URIs (ie without the req- prefix), with Windows and KDE integration as of commit 70f55355e29c8e45b607e782c5d76609d23cc858.

Libraries

Javascript - https://github.com/bitcoinjs/bip21
Java - https://github.com/SandroMachado/BitcoinPaymentURI
Swift - https://github.com/SandroMachado/BitcoinPaymentURISwift

QR Codes

You can even use QR codes in combination. Scan this QR code and open your wallet with everything already filled in.

qr.png

In addition, by turning this into a QR code a user could pay from a smart phones and pay websites and make donations from paper pictures posted outside. It would also make keeping the active key only on one device more convenient.


Dash XjzjT4mr4f7T3E8G9jQQzozTgA2J1ehMkV
LTC LLXj1ZPQPaBA1LFtoU1Gkvu5ZrxYzeLGKt
BitcoinCash 1KVqnW7wZwn2cWbrXmSxsrzqYVC5Wj836u
Bitcoin 1Q1WX5gVPKxJKoQXF6pNNZmstWLR87ityw (too expensive to use for tips)



Sort:  

Really well thought through and explained in simple to understand terms. Thanks for the follow I have reciprocated.

informative content, it is amazing ...
thank you friends have been willing to follow me, and vice versa I will follow you back. good luck @leprechaun

Hello I liked your information is important your contribution thanks for sharing

Coin Marketplace

STEEM 0.19
TRX 0.12
JST 0.027
BTC 60771.43
ETH 3271.80
USDT 1.00
SBD 2.44