Are you familiar with "bitcoind" (vs Bitcoin-Qt)? We have a "daemon" version of Armory as well:
armoryd.py which behave almost identically to bitcoind, but gives you access to watching-only wallets, better transaction ledgers, etc.
The link above points to the armoryd.py on the master branch, which is currently pretty bare. However, you can easily run it in offline mode and having it load and distribute addresses from a watching-only wallet. If you put it in online mode, you will also be able to access transaction history and verify payments. But it will crash every few days (because that's what 0.88.1 did).
In a couple weeks, that script (on the master branch) will be updated with a much-improved version. We've actually already finished most of it, but will need to merge in some other changes that aren't ready for this release. This version will implement most of the same functionality as bitcoind.
Either way, you should familiarize yourself with how bitcoind works, and then you will be able to access armoryd.py exactly the same way. Even better, you could make a modification of armoryd.py which has your application built into it. This is much more preferable than starting from scratch, because armoryd.py already has all the networking hooks, event loops, wallet load ops, etc integrated and working. You would simply need to add code to the methods that process new transactions, etc.
Can discuss at greater length after this release it out. But if you are unfamiliar with bitcoind, you should do some research on that and how to use it and integrate it into web services. Doing so will give you a non-deterministic, full wallet. If you have that working, switching to armoryd.py for deterministic, watching-only will be trivial (when it's ready). Or if you really just need a process that can read a watching-only wallet and get addresses on demand (but without transaction history), I can post a small python fragment that does that.