Public API to verify transactions to a unique address as they occur?
Yes you can.


If you're using a third party service to store your coins, they usually allow you to add a callback address when generating a new address, where they trigger a POST request to your server with a JSON object containing transaction details. Here are some examples:


Coinbase's API: https://developers.coinbase.com/api#callbacks
Blockchain.info's API: https://blockchain.info/api/api_receive

If you're rolling your own addresses, you can use some block explorers to notify you of new transactions to existing addresses. One I know of is Chain.com's notification system. I haven't used this, but Chain is quite a developer friendly service.


Personally, I've only used Coinbase's API, and It worked quite well for me. I trust Coinbase to take care of my coins better than myself, but if you're more paranoid and better at security than I am, use Chain.

IMHO I don't recommend Blockchain.info for anything. Their service really isn't that polished from all I've seen, and I just get a bad vibe from them. Coinbase has very nice support and a developer community where you can talk about all the problems you face.