Significant Merchant Improvements Planned for Bitcoin v0.9

  165 Flares Twitter 72   "”> Facebook 63   Google+ 27   LinkedIn 3   Email —   Email” friend< a>”> 165 Flares ×

It is no secret that bitcoin usability has room for improvement. Fortunately, a new feature planned for the bitcoin v0.9 release will significantly increase merchant and customer usability in four key areas: ease of payment, recurring payments, dispute resolution, and immediate-feedback transactions. The key improvement is a new type of payment messages where a merchant can send a signed request (PaymentRequest) specifying the amount to be paid and a description of the transaction. The customer can then send payment to the merchant and receive an acknowledgement (PaymentACK) of the transaction with a message from the merchant. Before discussing the advantages of the implementation, it’s important to understand a few key aspects of the changes.

Technical Changes

Signed Transactions

It is currently common practice is to generate new bitcoin receiving addresses for each customer to ensure funds can be associated with each individual’s account. However, this raises issues for merchant-initiated transactions since the recipient of the request must verify the authenticity of the requester. To solve this problem 0.9 will use X.509 certificates to sign the payment request. X.509 certificates are frequently used to sign website sessions and are issued by a central authority to a specific party. Payment requests can be signed by holders of these certificates to prove the authenticity of the request.

X.509 was chosen over some alternative certificates for two reasons. First, they are simple and fairly easy to manage, exempt from unnecessary features of some of the other existing payment standards. Second, most sites will have already used X.509 certificates for their website, so they will already have them available and experience implementing them.

Additional Fields: User-friendly Description and Refund Address

Once PaymentRequests become popular, users will likely have to filter through many requests, even by the same issuer, to identify a specific transaction. The 0.9 implementation plans to allow a description field, such as “VPN service for March,” to identify the transaction in more detail.

Additionally, people may be paying out of hosted wallets, such as an account on an exchange, that do not provide a reliable address in the event of a refund. If a refund was sent back to the issuing address, it is likely the hosting service will not be able to associate the incoming payment with the intended recipient. The ability to provide a refund address will allow a refund transaction to be sent to a different address than the coins were sent from, alleviating this concern.

Concerns

There are two concerns with the new implementation. One of the primary appeals of bitcoin for many users is the decentralization of the network. X.509 certificates are issued by central authorities, so trust in their signatures is derived from the issuers’ credibility. While this risk is not likely to be prevalent in transactions, it does increase vulnerability so large transactions would be better off not using this payment method. Additionally, it is difficult to check for revoked certificates. There would likely be false-positive rejections if the Online Certificate Checking Protocol (OCSP) were offline or overwhelmed.

Significant Improvements

Ease of Use

There are many use cases for this new implementation that will significantly improve the usability of bitcoin without requiring the involvement of 3rd party features. Manually entering strings of digits accurate up to eight decimal places leaves room for human error. Using PaymentRequest, merchants can send the exact transaction amount to a customer, to which the customer simply responds with an acknowledgement and knows the correct payment amount was sent without having to copy or enter payment amounts themselves.

Recurring Payments

Recurring payments in 0.9, although only a request and not a direct charge, will be significantly easier to implement. Subscription services have been hesitant to implement bitcoin as a payment feature because of the lack of ability to bill customers at regular intervals.

There are two methods that could leverage these changes to maintain subscription payments. If a request is sent several days before payment is due, users will be reminded to pay the service and process the transaction manually. Additionally, wallet programs could be developed that automatically pay a request with pre-approved criteria, such as being from a specified merchant and/or below a certain value threshold. Automatic billing could then be implemented with the customer’s consent.

Dispute Resolution

Dispute resolution will also be made far clearer. After the transaction is completed, the customer will now have a signed receipt. It will be trivial to prove payment to a merchant’s using the PaymentRequest, transaction ID, and PaymentACK. In the context of a mediator while using an escrow service, both parties will have clear evidence of how the transaction completed so escrow funds could be released.

Additionally, if a customer sends payments and the merchant does not uphold their end of the transaction, a publicly visible receipt is available for proof. Merchants will find themselves beholden to fulfilling their end of an agreement in order to manage reputation in a world with extensive public communication via forums and social media.

Immediate feedback

Satoshi Dice and other related services have been blamed with unnecessarily inflating the size of the block chain. These services use small transactions to send messages for merchant communication. Using a message embedded in PaymentACK, sites can notify users of a win or loss without sending an additional transaction as confirmation over the block chain. Winning proceeds will be sent to a refund address, and losses will simply receive the PaymentACK message stating there was a loss. While this will not reduce the block chain overhead as much as the bitcoinj implementation, its benefits will be immediately noticed upon implementation by these services.

The bitcoin community owes thanks to the Core Development Team that is dedicating significant time to improving usability for the entire bitcoin system. As the bitcoin infrastructure continues to become more robust with a larger number of sophisticated exchanges and merchant services, improvements in the usability of the protocol itself will add significant stickiness to the bitcoin network.

  165 Flares Twitter 72   "”> Facebook 63   Google+ 27   LinkedIn 3   Email —   Email” friend< a>”> 165 Flares ×

About the author  ⁄ Phillip Archer

14 Comments

  • Reply
    FDaJKddcek
    July 5, 2013

    Recurring Payments:
    The beauty of recurring credit card payments is the the merchant can ping and charge your card instantly and notify you AFTER the fact. This allows the merchant to continue to legally charge your card months and even years after you’ve stopped using the service. With a bitcoin recurring payment, If I’ve not used a service and get a ping from the merchant to “top up” my account I’m not going to respond and just re-activate my account when I need the service again.

  • Reply
    Joe
    July 5, 2013

    I’m a little worried about the message field. Is that plaintext and kept forever in the block chain?

    A bit back, people including Gavin, were all concerned (rightfully so) about a link to kiddy pr*n that some jerk put in the block chain via numerous payments with payment amounts that translated into text and then into a link to some of that crap. But with a plaintext message, now malicious actors could add something slanderous or otherwise that lasts in the blockchain forever.

    Maybe I’m misunderstand it. But, IMO the block chain should be prunable of everything that isn’t an address or an amount.

    • Reply
      July 5, 2013

      The messages in PaymentRequest/PaymentACK messages are not stored in the blockchain, they are sent directly between the merchant and customer via http/https.

      • Reply
        Joe
        July 13, 2013

        Cool. Thanks for the response Gavin!

  • Reply
    July 5, 2013

    In my software, I am specifically building a system to use the BTC blockchain to replace certificate authorities.

    Now I find out that the BTC blockchain is trying to INTEGRATE certificate authorities??

    If they want x509, they should use self-signed certs and post the cert hash at a blockchain address (as a memo) — USE the blockchain to ELIMINATE cert authorities.

    • Reply
      Joe
      July 13, 2013

      Your solution sounds interesting. Centralized cert authorities are a bad thing for numerous reasons (Moxie Marlinspike made a good video about this for others who are curious https://www.youtube.com/watch?v=Z7Wl2FW2TcA).

      You’re system sounds interesting, I admit I don’t fully understand it. Have you looked at Moxie’s convergence.io? It’s an improved PKI infrastructure that more decentralized/federated. Either your system or his, depending on whichever fits best, sounds much preferable than using the current centralized PKI system. Bitcoin has the power to drive convergence.io to mainstream browser integration too if the devs wanted to use it, which would be good for the whole internet.

  • Reply
    July 5, 2013

    these upgrades are ok but still lite years behind my website platform, what are words compared to pictures….lol, that messaging is long, drawn out back and forth. On my site we see you then the money moves, that simple.

    • Reply
      Bob
      July 7, 2013

      Why isn’t everyone using your site then?

      • Reply
        July 7, 2013

        lol, do you have a serious question!, that ones not making much sense to me.

        • Reply
          Bob
          July 8, 2013

          I did ask you a question, but you seem to think your unnamed site is light* years ahead of the competition. I’d like to know why you think that is so.

          • July 8, 2013

            Im not sure what part isn’t clear, maybe an analogy will help us communicate more clearly. Lets say that the current bit coin tech is the equivalent of a pornographic screen play which is a bunch of letter and numbers, & then Celebrity Green Room is the actual live video of the porn, so which one do you want, the screen play or the video visual which is the whole point of the production anyway!? Pics are worth a thousand words, video is @ least a million words ; ). The platform cant be hacked and it cant be stopped, works without the internet, all money is insured by platform. Nothing to hide, Truth in your face

  • Reply
    Paul
    July 8, 2013

    Glad to see the core development team focusing on non-blockchain solutions. When something is best done outside the blockchain, that is how it should be done.

    Both micropayments and now this x509 based transaction functionality do both eventually resolve to a transaction on the blockchain about bitcoin value changing ownership, but they do so in a way that does not add information to the blockchain unrelated specifically to a bitcoin value ownership change.

  • Reply
    Mark
    July 8, 2013

    The advantage, from the payers perspective that paypal has over cards is that my address is just sent automatically.

    That would be an advantage if I could bitcoin pay and give my address for delivery at the same time.

  • Reply
    Tyler
    July 25, 2013

    I realise I am late to the party, but what is the source of this information?

Leave a Comment

74 Flares Twitter 47 Facebook 17 Google+ 8 LinkedIn 2 Email -- 74 Flares ×