4

I am looking at building an application using Bitcoins, and being a newbie the only real resources I have found regarding how to interact with the network is to issue RPC commands to the bitcoin-qt client running as a service.

I've played with this a bit and I am curious if there are other clients that do the same thing? Or is this client the only game in town?

2

You have many options but Bitcoind is a popular one due to its initial ease.

  • Use Bitcoind
  • Use an API such as Coinbase or Blockchain.info be careful as these can be slow and not as secure.
  • Use one of the many libraries made for various languages. Bitcoinj for Java, Libbitcoin for C++, Gocoin for Golang, and for other languages like Python and Javascript you can always find tools in a github search. This is the search for Python libraries in python.
1

No, it's an important part, but it's not the only option. And it depends entirely on what type of application you want to build and where you are located geographically.

  • If you want a lot of flexibility but don't want to run your own Bitcoind, look into Blockchain's wallet API.
  • If you are in the US and you want to accept Bitcoin, Coinbase has a rich API as well. BitPay has an API also, although I'm less familiar with it.
  • Other sites exist that let you get quotes, inspect blocks, transactions, etc. through REST-formed requests.

Running bitcoind exacts a certain toll for hosting fees as well as managing security. It's what I've chosen for my business, but it's not the only approach for everyone.

0

While @ChrisW's answer is good for situations where you need basic functionality, you have to remember that you'd be relying on third-parties. Which means when they go down, also your application goes down.

It depends on what you need to do, but if you're just looking to send and receive bitcoins and checking balances there's for example bitcoinj which is a Java implementation that you could use within your application without having to rely on a full-node (bitcoind).

This would be a lot faster and easier in my opinion if you're just building a wallet application for example, because it's not a full node and doesn't require you to download the entire block chain, but just the headers.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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