Just run bitcoind on your server and then connect via API to it, here is the reference:
There are also ready (open source) libs in several languages, which you can integrate in your own apps.
As I said in the comment above, you're talking about a service to manage actual money. Please don't offer this service to other people until you're sure it's working properly and it doesn't have security flaws.
You should try to make your wallet work with the Bitcoin Testnet first. The Testnet is a clone of the Bitcoin network that gets reset every once in ...
The obvious solution would be to require payments to have an OP_RETURN output with an email address encrypted to you. This isn't simple and there isn't a wallet out there that supports something like that, but it's technically feasible.
For the 1 address problem, you can use a deterministic wallet, which can generate as many addresses as you need. You can ...