Author

Topic: customer experience for purchases with Bitcoin (Read 2502 times)

newbie
Activity: 12
Merit: 0
September 27, 2022, 04:07:23 AM
#12
A client recently approved me to add Bitcoin as a payment method to his online store.  It's not a paid gig, just a hobby project and the client's willing to support Bitcoin by accepting payment if I contribute the code.  Anyway, his servers will be running a Bitcoin node and handling payments locally, so I won't be using MyBitcoin's SCI in this project.  I'm currently sketching out the customer experience.  I imagine it going something like this:

  • Customer chooses Bitcoin payment on the shopping cart confirmation page
  • Site presents the BTC price and a shipping address form
  • Customer fills in his shipping address and submits the form
  • Site presents a Bitcoin address to which to send payment
  • This page shows a throbber saying "Awaiting payment..."
  • As soon as the payment arrives, the throbber disappears
  • The customer is taken to a "Thank You" page with his order number and details about order tracking

Are there shopping sites with a better flow than this?  Is there a way you've always wanted to see Bitcoin shopping operate that I might be able to implement here?

Thanks in advance for any feedback.
The most convenient design for paying with Bitcoin was when I walked into an antiques store  Grin Just transfer by wallet) But I hope that soon there will be more online stores that accept BTC
administrator
Activity: 5222
Merit: 13032
As I understand the protocol, transactions are broadcast through the network without regard for transaction fees.

This was changed in 0.3.19. Transactions are no longer relayed if they don't have enough fee according to the client doing the relaying.

Clients older than 0.3.17 will actually send transactions that will be rejected for relaying by new clients. So if you're sending big transactions, make sure you're using the latest version...
newbie
Activity: 37
Merit: 0
A wiki, a knowledge base or at least a documentation page would make MyBitcoin SCI much easier to set up and more popular.
legendary
Activity: 1708
Merit: 1010
What about buyers who don't pay transaction fees. Any risk that they might get held up for too long at the throbber?

As I understand the protocol, transactions are broadcast through the network without regard for transaction fees.

correct

Quote
I assume customers would still get a quick throbber response even without a transaction fee.

It is possible for a client to check that a transaction is valid independently, but it's  impossible to eliminate the risks of a double spend without waiting for comfirmations.  It's possible to reduce such risks without the blockchain, however, by scanning the transaction queue for attempted double spends for a couple seconds before approving the transaction; but the clients can't yet do this, AFAIK.
vip
Activity: 447
Merit: 258
What about buyers who don't pay transaction fees. Any risk that they might get held up for too long at the throbber?

As I understand the protocol, transactions are broadcast through the network without regard for transaction fees.  The fees are only considered when transactions are bundled into blocks.  The wiki article about transaction fees doesn't say explicitly, though.  I assume customers would still get a quick throbber response even without a transaction fee.
sr. member
Activity: 322
Merit: 250
I won't make customers wait around for confirmation blocks to build up.
That makes more sense. What about buyers who don't pay transaction fees. Any risk that they might get held up for too long at the throbber?
vip
Activity: 447
Merit: 258
Perhaps instead of a throbber, the customer could just get an e-mail upon confirmation of the transaction, signifying the commencement of the product delivery. Why sit around waiting at a confirmation screen?

In my tests, transactions usually come through the Bitcoin network in less than 10 seconds.  Does that seem too long to wait? I won't make customers wait around for confirmation blocks to build up.  When shipping physical goods, there's plenty of time for that to happen while packing the order.  If there's a double-spend, the order can be canceled before it's shipped.

The throbber seemed like a faster way to provide initial payment feedback than just an email.  I imagine it like the brief screens you see when paying with a credit card: "Processing your payment..."  There will also be a payment received email, which this particular client already sends out for all orders, regardless of payment method.
vip
Activity: 447
Merit: 258
Why reinvent the wheel? Mybitcoin's SCI does all of that.

Good question.  Short answer: one learns a lot by reinventing wheels.  I definitely don't want to discredit MyBitcoin, which is an excellent service.  I may even use it on future projects.  However, for the first project, I'd rather code against bitcoind's JSON interface directly.  It leaves all components of transaction processing under my control where I'm more likely to learn about Bitcoin and how the client and the network work.
legendary
Activity: 1596
Merit: 1100
+1 on mybitcoin SCI.

The documentation is non-existent, but it works reliably, and works in the expected manner (like other SCI's such as Liberty Reserve or Pecunix).
sr. member
Activity: 322
Merit: 250
Perhaps instead of a throbber, the customer could just get an e-mail upon confirmation of the transaction, signifying the commencement of the product delivery. Why sit around waiting at a confirmation screen?
hero member
Activity: 490
Merit: 511
My avatar pic says it all
Why reinvent the wheel? Mybitcoin's SCI does all of that. I'd just use the local bitcoind to receive the forwarded coins from Mybitcoin.

In fact, that's exactly how I handle commerce on my sites. It works flawlessly.
vip
Activity: 447
Merit: 258
A client recently approved me to add Bitcoin as a payment method to his online store.  It's not a paid gig, just a hobby project and the client's willing to support Bitcoin by accepting payment if I contribute the code.  Anyway, his servers will be running a Bitcoin node and handling payments locally, so I won't be using MyBitcoin's SCI in this project.  I'm currently sketching out the customer experience.  I imagine it going something like this:

  • Customer chooses Bitcoin payment on the shopping cart confirmation page
  • Site presents the BTC price and a shipping address form
  • Customer fills in his shipping address and submits the form
  • Site presents a Bitcoin address to which to send payment
  • This page shows a throbber saying "Awaiting payment..."
  • As soon as the payment arrives, the throbber disappears
  • The customer is taken to a "Thank You" page with his order number and details about order tracking

Are there shopping sites with a better flow than this?  Is there a way you've always wanted to see Bitcoin shopping operate that I might be able to implement here?

Thanks in advance for any feedback.
Jump to: