Bitcoin Forum

Bitcoin => Development & Technical Discussion => Topic started by: grau on July 28, 2013, 02:45:08 PM



Title: BOP Payment processor protocol
Post by: grau on July 28, 2013, 02:45:08 PM
May I draw your attention to the payment processor protocol BOP is about to roll out: http://bitsofproof.com/?page_id=467

Its goal is to facilitate payment settlement from customer to merchant without the technology provider (BOP) taking possession of the funds at any stage of the process. So it is not a payment processor.

The basic idea is simple:

1. Merchant provides a BIP32 master public key to BOP
2. Merchant asks BOP to create payment request
3. BOP draws a random sequence number it uses to derive the key out of the Merchant's Master Public
4. BOP presents customer the address of the key, that is actually an address of the Merchant.
5. Customer pays to the address
6. Merchant pays BOP the processing provision.
7. BOP reveals random sequence number it used
8. Merchant takes funds by creating private key for the sequence.

I am thankful for review and comments.

The solution will go limited beta on 10. August, and publicly available on 27. August with other tools at the Berlin Bitcoin Exchange.


Title: Re: BOP Payment processor protocol
Post by: yu77889 on July 28, 2013, 03:11:57 PM
This looks like a great services.

How does BOP take its fee in item number 6 of the flow? Does it have the private key of merchant from the original transaction?


Title: Re: BOP Payment processor protocol
Post by: grau on July 28, 2013, 03:15:38 PM
This looks like a great services.

How does BOP take its fee in item number 6 of the flow? Does it have the private key of merchant from the original transaction?
No, BOP does not have the private key of the Merchant.

It uses the Merchants BIP32 Master Public to derive an address of the Merchant.
The Merchant just does not know which of the billions derivable from the Master Public BOP used to create the address for the customer to pay to.
Once Merchant paid provision, BOP reveals the random draw and Merchant can claim the fund himself.

BOP is not in position to take the funds at any time.


Title: Re: BOP Payment processor protocol
Post by: grau on July 28, 2013, 03:23:19 PM
How does BOP take its fee in item number 6 of the flow?
BOP uses its own service to send Payment Request to Merchant for the provision.


Title: Re: BOP Payment processor protocol
Post by: justusranvier on July 28, 2013, 03:51:45 PM
1. Merchant provides a BIP32 master public key to BOP
Does this mean any extended public key?


Title: Re: BOP Payment processor protocol
Post by: grau on July 28, 2013, 03:52:47 PM
1. Merchant provides a BIP32 master public key to BOP
Does this mean any extended public key?
Yes any BIP32 extended public key the Merchant want us to use. His key.


Title: Re: BOP Payment processor protocol
Post by: grau on July 28, 2013, 07:18:51 PM
I should have been more specific of the address derivation. It is the address of the key (using BIP32 notation)

masterPublic/request_sequence/random_sequence


Title: Re: BOP Payment processor protocol
Post by: yu77889 on July 29, 2013, 04:13:57 AM
How does BOP take its fee in item number 6 of the flow?
BOP uses its own service to send Payment Request to Merchant for the provision.

That's a great idea.  Will it be possible to accumulate paid customer transactions so that the payment request to the merchant for the processing fee satisfy a batch of customer payments?  Or is a batch something we implement against the BOP API?

Finally, is BOP going to produce email communication requests to both customer and merchant or do we developers do this?


Title: Re: BOP Payment processor protocol
Post by: grau on July 29, 2013, 05:56:27 AM
How does BOP take its fee in item number 6 of the flow?
BOP uses its own service to send Payment Request to Merchant for the provision.

That's a great idea.  Will it be possible to accumulate paid customer transactions so that the payment request to the merchant for the processing fee satisfy a batch of customer payments?  Or is a batch something we implement against the BOP API?

Finally, is BOP going to produce email communication requests to both customer and merchant or do we developers do this?
What I described is the workings of the protocol, and gave you the link to its lowest level API. BOP has and continues to extend tooling around this making the use of it convenient and seamless for Merchants and Customer.

Suggestions are welcome. You may join the beta program, please write to sales@bitsofproof.com