It's a good question. You can buy or rent a variety of tools to do this, they all have their strengths and weaknesses. Or you can roll your own using open source components.
We did the latter except for the accounting software and couldn't be happier. If I was manufacturing widgets this wouldn't be the case, but as a small company that constantly comes up with new service models/product offerings the ability to be able to modify our cloud based tools to fit new business - as opposed to trying to force fit operational requirements into someone else's idea of how things should work - is well worth the effort.