Earlier quoted context omitted.
To be honest, bitcoind, the original Bitcoin client has a very accessible json-rpc API [0]. This is the same daemon that runs behind the QT front-end of the "official" Bitcoin client. RPC is not my favorite (gotten spoiled by RESTful), but bitcoind's implementation is easy-to-use, and most languages have nice, easy-to-use json-rpc libraries [1]. You run bitcoind as a headless client on your server. It's pretty robust…
That's the kind of set-up that has been hacked to high hell several times. It's not that hard to understand why. Having a computer connected to the net to run bitcoind means that if you get it rooted by any chance, you just lost the entirety of your hot wallet. Please, please stop doing that.
How do you accept bitcoin? Please enlighten us.