Systems have a way of crashing, so make sure vendors offer backup plans and 24-7 customer service. Ask them to agree to pay penalties for failing to perform--including a clause that allows you to break your contract if you're consistently disappointed.
Software providers may boast of extra-tough security, but there's no reason to take them at their word. Negotiate the right to perform your own periodic security audits. Demand to be notified any time the system is breached--even if your own data remains untouched.
Most on-demand software providers set prices based on the number of users, and there's often more wiggle room than you might think. Negotiate those rates up-front so that as you add more users, you pay less for each one.
No two businesses are the same, so before signing a contract make sure your vendor's product is flexible enough to be integrated into your existing applications and databases. If a vendor agrees to add some customized features, make sure it's willing to provide the same levels of customer service.