What does the software or service do well? Hands down authorize.net is the easiest way to accept payments on the web. My company uses it for dozens of clients who don't sell on the web, but do accept payments for client services.
What does the software or service not do well? The integration with PayPal and other merchant credit card services is not easy to perform using WordPress, but requires a lot of trial and error.
What do you wish you had known about the software or service before using? I wish I had known that it takes time to get the payment gateway working for PayPal/Authorize.net.