It's really going to depend on a lot of things. A good thing to do would be to draw up a list of what you want the platform to accomplish and then start triaging from there. In my mind these are the important questions:
-
Open Source or For Pay? I'm not especially impressed with a lot of the OSS solutions out there (e.g. osCommerce) but the advantage they do have is that the developer base is enormous. This in part depends on the IT resources within your organization. If you don't have dedicated developers it'd probably be better to go with an open source app (e.g. osCommerce) and run with hired guns. You will take a hit in terms of flexibility, configurability, and so on, and likely in the long run end up paying more for add ons, extra development, maintenance, etc. than you may have by in-housing.
-
Scope of features: What do you want it to do? If it's just connect to payment gateways and receive money then there's several free/low cost solutions out there. But what about order tracking? Auto-emailing on confirmation? Harvesting and sending tracking numbers? Inventory integration? Logistics? Accounting tie-in so you can determine margin and ROI? You need to figure out what you want this application to do. The tighter the scope, the easier it is. Related to this is, how many SKUs? How many categories? Do you need Search?
-
SEOability: Several of these platforms offer some kind of SEO integration, with the most basic being control over meta tags/on page elements to reduce duplicate content penalties.Others go whole hog and offer what are essentially complete CMS packages that allow granular control over every page. You need to determine A)what your SEO strategy is and B)your resourcing to support it. There's not much point splashing out cash on an advanced total CMS integrated system if you only have one overworked intern who will be creating content for it.
This wikipedia page is pretty good for breaking down the major features and what's offered:
http://en.wikipedia.org/wiki/Comparison_of_shopping_cart_software
Brief impressions on what I've worked on in the past:
Magento: Very good feature wise, but not newbie-friendly (e.g. you'll need a dedicated developer/contractor). Pricey. Scales up for large very well, large developer pool.
AbleCommerce: Terrible. .NET based. We call it 'baby's first shopping cart' and it shows. Every client I've had that started on AbleCommerce outgrew it in one quarter.
osCommerce: Mediocre. Tons of developers and plug-ins but the can end up being completely unmanageable if not grown properly. PHP based and all the security problems that come with that, and open source code. Last year there was an exploit that was used to attack literally millions of sites because people weren't updating their installations.
Speaking personally I prefer hand-rolled solutions, but we've made so many over the years it's almost second nature.