We use Authorize.NET for a lot of our internal stuff and once you get the merchant account setup, it is very cost effective and easy to use. We have never been big fans of PayPal for a number of reasons. There is also a company called PayMeNow that we have created an interface for in our medical software that supports companies other than medical.http://www.paymenow.com/
We ended up using another company as our recommended credit card processing company (MedPayOnline) for our medical product, but I think that PayMeNow would be a good solution for you because they will handle the merchant account, etc. whereas Authorize.NET doesn't.