FoxyCart (www.foxycart.com) is what I use for all my site’s e-commerce now. I build all my sites now on MODx and use only FoxyCart for my e-commerce. One of the designers of FoxyCart designed it to fit like a glove with MODx. It fulfills most of your requirements above.
You have to think a bit differently using it...it’s not a separate shopping cart...it’s all set up in MODx...everything is controlled in MODx (which you set up yourself) for your client. It passes the values over to FoxyCart to handle the transaction. I like FoxyCart so much b/c you only have to use the template you designed in MODx and paste it in FoxyCart...in other words, you don’t have to redesign a template for FoxyCart. It’s like this: I set up a Document which has T.V.’s in it so your client can enter product price, code, weight, etc. When the visitor visits the site, they’ll see that information and when they click on the buy button, FoxyCart passes that information over to the server where FoxyCart is hosted and it will handle the transaction...that’s the simplified version.
I consider myself someone of a newbie in the grand scheme of things and FoxyCart wasn’t that difficult to learn...there’s really not too much to do...you don’t have to recreate everything to make it work.
You do pay a monthly fee of $15/month, but if you do the math, you’ll be paying roughly the same amount for a secure certificate, etc. Plus your client will be able to easily maintain the shopping cart themselves thus saving them money.
Here’s an example site I just built using FoxyCart:
http://www.bosufitness.com
Here’s an example page on the site using FoxyCart:
http://www.bosufitness.com/qh-bola
Just hit the "Buy Now" button and you’ll see the process.
Foxy Cart also handles paid membership for this site (all handled through MODx of course).
I’ve got about 5 sites I’m designing right now using it. If you have any questions, feel free to e-mail me.
And by the way, yes, it fulfills all your requirements you state.