I think you can run a full node on a VPS. Some people run it on a desktop computer, (that then has some server software that does the call back to your URL.) Sort of like your own private bitcoin monitor.
It really depends on your use case: a simple service or low volume merchant, then you can go with those public services. But if you're running some type of game or exchange or business, then you will have to include a full node as one of the expenses.
I've been running a full node and sending the results to a shared hosting server and just posted the link to the Gituhub repository where I posted the code.
Before the VPS I was able to do the same thing on my laptop using a service at
https://ngrok.com/ which let me send the results to the shared server. Ngrok establishes a tunnel between the laptop and the shared hosting account.
If you install Apache, MySql, PHP and Curl on your laptop then the files at Github would do the same from your laptop. Here is the link to the forum post where I posted a request for peer review of the code:
https://bitcointalk.org/index.php?topic=837672.0The reason I run my own node is so that I can handle a Bitcoin payment in steps depending on how many confirmations it has gotten. For example, I can credit their account immediately at 0 confirms, flag it for other processing at 1 confirm and finalize the processing by moving to cold storage at 3 confirms (or whatever arrangement and treatment you want to do).