Bitcoin Forum

Bitcoin => Development & Technical Discussion => Topic started by: himtech on April 09, 2015, 06:48:22 AM



Title: Is there a payment protocol that can include a physical address?
Post by: himtech on April 09, 2015, 06:48:22 AM
I think online shopping is clunky-

  • search for items
  • add wanted items to cart
  • start checkout process
  • create account
  • enter address
  • enter payment info
  • verify order total
  • submit order
  • go play video games

Why do you even need a cart in cyberspace? Why do you need an account for every place you shop? That seems dumb to me, but it's the norm. I think bitcoin can make this process better-

  • search for items
  • look at item you want
  • pay for item with bitcoin QR code
  • go play video games

The merchant could be running some crypto commerce software that is set up for this sort of thing. For each item the buyer wants, the buyer makes a payment. The commerce software would hold off sending a task to the picking/shipping department until a timeout has elapsed. The timeout would be set to an average online shopper's session. In other words, the commerce software wouldn't ship the product until the buyer is done shopping. The items from the buyer's individual purchases would be gathered and shipped in one box, if possible.

Now, this simple shopper process requires some things. If the item is a physical item, you have to let the merchant know your physical shipping address. To tell the vendor this without any extra effort from the buyer, I'm wondering. Is there a bitcoin payment protocol that allows for a physical address to be sent along with the payment?

I think I already know the answer, "no", since some of the really nice BIP payment request protocols I've read about aren't even implemented in many wallets yet. However, I'm wondering if this has been thought of by any bitcoin devs. Future plans, perhaps?


Title: Re: Is there a payment protocol that can include a physical address?
Post by: domob on April 09, 2015, 07:45:47 AM
Your idea sounds nice - I think to recall that there was already a project two (?) years ago that sold e-books in this way.  (Just a web page with QR codes, and when a payment was received, it would automatically send the corresponding file to the user.)  Not sure what became of it.


Title: Re: Is there a payment protocol that can include a physical address?
Post by: hhanh00 on April 09, 2015, 08:47:01 AM
Satoshi box?


Title: Re: Is there a payment protocol that can include a physical address?
Post by: develCuy on April 09, 2015, 08:57:10 AM
How about let users register to the merchant, put their mailing info (like amazon) and then apply your idea?


Title: Re: Is there a payment protocol that can include a physical address?
Post by: laurentmt on April 09, 2015, 02:33:53 PM
The Payment Protocol (BIP70 (https://github.com/bitcoin/bips/blob/master/bip-0070.mediawiki)) can be extended with additional fields. This mechanism could be used to send customer information with the payment.

WRT digital goods which don't require personal information (movies, games, ...), we have a draft proposal (https://github.com/bitid/bitid/blob/master/bip70_extension.md) for an extension of BIP70 with the BitId authentication protocol (https://www.youtube.com/watch?v=3eepEWTnRTc).

Main benefits: Better privacy & security. No more need to put at risk your personal information on a server (name, email, password, credit card info...) when you want to consume a digital product.


Title: Re: Is there a payment protocol that can include a physical address?
Post by: himtech on April 09, 2015, 08:35:49 PM
Thanks all!

domob- yeah, contagion! Their simple process is what got me thinking this way. Their site seems to be down.

hhanh00- Satoshi box, cool! I'm going to try that out.

develCuy- Yeah that may be the best way to do it at the moment.

laurentmt- Yay, BIP70 seems to be what I'm looking for. Wow, hadn't heard of BitId, I like that. I guess I have some reading to do!


Title: Re: Is there a payment protocol that can include a physical address?
Post by: tacotime on April 09, 2015, 09:30:01 PM
You can use stealth addresses to send the payment to a specific vendor with a stealth address, providing the extra data to recover the private key on a separate channel e.g. email. You can encrypt information like post address to the recipient using the ECDH shared secret and a symmetric key cipher.

So basically, the receiver posts
[recipient_email_address]&[stealth_address]

Sender sends this information to the receiver's e-mail address:
[shared_secret] (for encryption and recovery of private key)

then this other encrypted information in the e-mail:
[requested_items]
[txid_for_payment]
[where_to_ship_to]

Sender uses the derived pubkeyhash as an address and sends their funds there on BTC mainnet, receiver gets e-mail, decrypts all relevant information, recovers privkey for the address yet sent to.

I've been meaning to implement this (and indeed I've started a bit), but I've had other things to work on lately.