We have been using the payment service provided by blockchain.info https://blockchain.info/api/api_receive

It allows us to generate a unique address for each payment and forward Bitcoins received by these addresses to a forwarding address. From what I understand, bc.info pays the transaction fee for the forwarding transaction for us.

We want to use our own wallet. I have two questions:

1) How does bc.info handle this cost? Am I missing something? Are they really paying 0.0001 BTc for each payment their clients receive?

2) Is there a way to forward payments without paying fees?

  • If the 0.0001 BTC fee is significant for you, chances are you are looking at Bitcoin for micropayments. Bitcoin wasn't designed for micropayments, and attempting to use it for micropayments will bring angst in the future when even a fee paid incurs significant delays. Commented Sep 14, 2013 at 5:12
  • WRT 1: The transaction fee comes out of the coins that they forward.
    – Nick ODell
    Commented Aug 6, 2015 at 0:35

4 Answers 4

  1. The fee for each transaction can be calculated using estimatefee API call. And yes, blockchain.info have to incorporate fee in every transaction, 0.0001 BTC being the minimum. One of the reasons attributed for the necessary fee deduction is the quick inclusion of the transaction in the next few blocks. You can try creating a transaction with the outputs spending all of the inputs and not paying any tx fees. The client will throw an error stating insufficient priority.

  2. Yes you can, but then are conditions apply. You can check out this link to clear things a bit more.


I'm not completely sure how the implementation for Blockchain.info works as I have not tried it myself, but from my understanding what you want is to use a single private key with a corresponding public key that allows you to generate new addresses for every payment you receive, without the need to store more than one private key.

This can be achieved using HD wallets which was introduced with BIP32 that the link you have included refers to.

In simple words this features allows you to take a private key and apply a mathematical function to the private key to generate a new private key (with a corresponding public key and address). This allows you to use the first private key to spend all transactions received to address of the public key of the newly generated private key.

This function can also be applied to extended public keys, and therefore generate a new public key that can be spent using the private key of the public key that the newly generated public key was generated from. This means that you never have to expose the private key to generate new addresses, that it can be used to spend received transactions for.

This might be what Blockchain.info does, which in reality means that they do not forward the payment from the newly generated address. This means that you can receive payments to multiple addresses, without needing to spend fees to use one single private key to spend them.

You can read more about this under the section HD Wallets in chapter 4 in Mastering Bitcoin by Andreas Antonopoulos, or under the section HD Wallet (BIP 32) in the book Programming The Blockchain in C#, which are both open source and can be found free online.


1) I suppose they don't have to pay it, since they receive lot of bitcoins, so it's up to them what bitcoins to choose. Fee depends on transaction amount and time since including an amount in block, so thay can have much old money.
2) Yes. You can wait some time in order to send it without fee (days or weeks), send raw transactions or use modified client from Shadow Of Harbinger

  • What is the point of the modified client? The github shows no details, except that it is not the latest version and therefor may have issues.
    – Drazisil
    Commented Sep 4, 2015 at 20:20

Use Coinbase's "pay with bitcoin" button or iframe. It also generates a new address for each payment but its free and very very simple.

  • I think this conflicts "we want to use our own wallet" part Commented Sep 9, 2014 at 11:23

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.