I am currently accepting bitcoins as payment at my hotel, but I am uncertain about the payment address(es).

I prefer to avoid payment service such as BitPay and Coinbase to mention a few.

At this moment, the idea is that when a client books a room online he receives an invoice in US$ amounts by email with the payment options. In order to confirm his booking, he can then decide to pay in cash, credit/debit cards or bitcoins and replies by email or in person. In case of bitcoins, I, as the merchant, will send him an email (or inform at the reception) with the conversion rate US$/BTC and ask the client to transfer x BTC to my address.

My preference is just to show my payment address or QR code on my website, but I would like to know the following:

  • Can I use the same payment address (how long?) or is it really important to create a new address for each client?
  • What best practises would you recommend for a legal and transparent merchant?

5 Answers 5


Creating a new address for every transaction (not just every single client) will allow you to maximize your payment tracking capabilities.

In case you have a single address for all of your payments it's really hard to track who sent you what. This will start changing from 0.9 on, but for now we have to stick to what is already implemented.

Having one address per customer will allow you to track payments although it's a bit of a challenge to get a customer's equity for a given period of time, as you will have to take into account your outgoing transactions as well, if any. In this case, of course, a customer must have a user account in your online booking system and you must then persist the user account model in a way that its unique identifier (be it the user's email address or account id) will have a 1-to-1 relationship in your DB.

  • 2
    Can you clarify what you mean by "this will start changing from 0.9"? Jan 12, 2014 at 0:32
  • 1
    @LucaMatteis please take a look at BIP 70.
    – user11221
    Jan 12, 2014 at 2:03
  • This BIP 70 describes a protocol for communication between a merchant and their customer, enabling both a better customer experience and better security against man-in-the-middle attacks on the payment process. => This is what I was looking for but wanting that version to be released now. Any idea when? @George please update answer with BIP70 / vers. 0.9 (include sources) and I will tag it as answered. Thx! Jan 12, 2014 at 12:51
  • 1
    @JonathanRogiest unless something changes on the way BIPs 70-72 will be included in the next major release (0.9). Please take a look here: bitcoinfoundation.org/blog/?p=290 and here: bitcointalk.org/index.php?topic=300809.0;all for the latest updates on these improvements.
    – user11221
    Jan 12, 2014 at 14:07

Suppose you go with just using one address. Now suppose there comes a day when two different customers make reservations that have the same price. But you only get one payment to your address. Both customers claim to have paid. What will you do?


@JonathanRogiest you can download it today and compile it..

you can play with it here.. looks neat.



Making a new address for each transaction will allow you to follow each and every transaction made to your hotel. If you used the same address for all the transactions everything will all go to the same wallet. While if you made new wallets (if you used blockchain.info you can see that you can make new wallets or addresses within your account) you would be able to see who booked and for how much. At the end it all depends how you like it.


if you are collecting the payment with them face to face then a single address is fine. it is good because you can just print out the qr code and let them scan it.

If you are not collecting face to face then having multiple addresses is good.

Also if you want to code a price into the address then having multiple addresses is good too.

Bitpay, coinbase all help you do that. for something really easy check out easybitz they have the quickest way.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.