So I just went to a lot of effort to get
Armory to handle "bitcoin:" URLs, and getting it to register itself as the default handler for "bitcoin:" links in both Windows and Linux (or requesting permission from the user to change it if another app is set). It was a lot of work but totally worth the effort in my opinion.
Because these clickable URL's an awesome improvement to Bitcoin on the internet!
But twice now I've purchased something online, and been met with payment sites that could trivially support them but don't! CoinDL and Bit-pay. This is not meant to be a complaint as much as a request: this is super-easy to support and is awesomely useful!
Consider
CoinDL, which is a service for downloading music for Bitcoins. The user clicks on the track they want and a payment box pops up. If they put a bitcoin URL on there, the user simply clicks on it and Bitcoin-Qt/Multibit/Armory pops up with data pre-filled in. "Address", "Amount" both filled in,
and " - : . Now all they do is confirm and click send! (and probably type in an encryption passphrase). No copy&paste necessary, at all. Period.
Not only is it a super-smooth experience for the user, but the user ends up with a well-documented transaction history of their music purchases along with dates and prices. The merchant is better equipped to give a meaningful tx-comment anyway: they can trivially put the Order# and purchase information into the message field of the URL so the user ends up with all of it documented for zero effort. Worst case the user doesn't like it and change it before they hit send...
Here is the
Bitcoin URI Spec and below is a simple example of how you would include it (using my donation address, of course!)
...which looks like:
Donate 1.0 BTC to the Armory Project!Messages and labels in the URL can be universally encoded using the
percent encoding scheme. It consists of taking the message you want to put into the URL, and replacing all spaces with "%20", all exclamation points with %21, etc. It's all on that link.
Just do it!
EDIT: I posted a
walk-thru of the technical details for supporting URLs, which addresses both merchants and registering your application with the OS. I posted what I've learned over the past two weeks, and wouldn't mind some feedback if folks have experience with the OS-registration stuff (specifically, Unity or KDE-based Linux systems, and Mac/OSX in general)