Currently
BIP0021 - URI Scheme allows a merchant to request payment from a customer.
However, I'm looking for the opposite - a merchant to request an
address from a customer, eg an exchange requesting a withdrawal address. As far as I understand, the only way for the customer to supply a withdrawal address is to copy and paste into a form supplied by the merchant.
I'm interested in the customer being able to click a button and being asked by their wallet to confirm 'do you want to receive X bitcoins into this wallet' and when they press 'yes' an address from that wallet is automatically supplied to the vendor (eliminating the need for the customer to copy/paste their address).
- Is there an existing scheme to request bitcoin addresses from wallets?
- If not, are there any existing documents exploring how such a scheme may work?
BIP70 supports the wallet returning a "refund address" along with the signed transaction to the vendor.
I would assume it would be possible for the flow to work like this:
1. User clicks BIP70 enabled link.
2. Site sends signed request to a null output. "00" or something arbitrary.
3. This value should indicate that the wallet client just return an empty reply (no transaction) with just a return address.
It's primitive, but rather than try to create a new BIP, using existing BIPs that can provide the functionality would be easier.