<p>There are hundreds of shopping cart solutions available for every platform, and all hosting plans come with several already installed. As a developer I understand that most of these are fairly similar from a user perspective. </p>

<p>But which ones are built with the developer in mind? For example, which ones have a decent API so that my custom code doesn't get mingled with the core code or which ones have a well thought through template system so that I can easily customize it for each new client? </p>

[{'answer_id': 69735, 'author': 'chakrit', 'author_id': 3055, 'author_profile': 'https://Stackoverflow.com/users/3055', 'pm_score': 2, 'selected': False, 'text': '<p>How about <a href="http://zencart.com/" rel="nofollow noreferrer">ZenCart</a>? It\'s open source so you can read and modify the source directly.</p>\n\n<p>There\'s also a decent template system.</p>\n'}, {'answer_id': 69742, 'author': 'X-Cubed', 'author_id': 10808, 'author_profile': 'https://Stackoverflow.com/users/10808', 'pm_score': 0, 'selected': False, 'text': '<p><a href="http://www.oscommerce.com/solutions/oscommerce" rel="nofollow noreferrer">osCommerce</a> seems to be pretty popular, and advertises ease of integration as one of it\'s main features.</p>\n'}, {'answer_id': 69834, 'author': 'rg88', 'author_id': 11252, 'author_profile': 'https://Stackoverflow.com/users/11252', 'pm_score': 3, 'selected': False, 'text': '<p><a href="http://www.magentocommerce.com/" rel="noreferrer">Magento</a> would be a good choice. It is based on the Zend Framework and is massively open and customizable. Something a real programmer (as opposed to a designer/developer) could really work with.</p>\n'}, {'answer_id': 69869, 'author': 'gregmac', 'author_id': 7913, 'author_profile': 'https://Stackoverflow.com/users/7913', 'pm_score': 4, 'selected': True, 'text': '<p>osCommerce is one of those products that was badly designed from the beginning, and becomes basically unmaintainable as time moves forward. Addons are patches, and custom code modifies core. (Unless things have drastically changed since I last looked at it - judging by the version numbers, they have not). </p>\n\n<p>While probably at a bit higher level than you seem to be asking, Drupal is a very attractive platform. It is a CMS at its base, and using <a href="http://drupal.org/project/ecommerce" rel="noreferrer">ecommerce</a> or <a href="http://www.ubercart.org/" rel="noreferrer">Ubercart</a> you can turn it into a store. With modules like <a href="http://drupal.org/project/cck" rel="noreferrer">CCK</a> and <a href="http://drupal.org/project/views" rel="noreferrer">Views</a> you can build very sophisticated ecommerce sites (specialized product types, attributes) with very little coding, plus you get all the CMS tools (editing, access control, etc) for free. If you write your own modules, you can hook into almost anything in Drupal without touching the core code, and you get a ton of flexibility. </p>\n\n<p>Though a lot of developers may not consider it simply because they\'re stuck in this view that they should write something from scratch, Drupal is a really great development platform for this sort of thing. There is definitely a learning curve to it, especially when you need to write modules for it, but the time it takes to learn and implement a site is still probably less than writing a very customized ecommerce site from scratch.</p>\n'}, {'answer_id': 70050, 'author': 'micahwittman', 'author_id': 11181, 'author_profile': 'https://Stackoverflow.com/users/11181', 'pm_score': 0, 'selected': False, 'text': "<p>I would second the Magento suggestion. It has a modern code base and is designed with extensibility in mind. It also has multi-site, multi-language capabilities engineered in from the start. It's open source <em>and</em> seems to have a disciplined development team (with a MySQL AB -like business model) behind it .</p>\n"}, {'answer_id': 70083, 'author': 'Greg', 'author_id': 1916, 'author_profile': 'https://Stackoverflow.com/users/1916', 'pm_score': 3, 'selected': False, 'text': "<p>Magento is pretty good, and really powerful, but getting to grips with how to go about extending/replacing things is pretty tricky. The codebase is massively flexible, and just about anything can be replaced or extended, but there's very little documentation on how to go about doing it. </p>\n\n<p>There are plenty of 3rd-party addons, for different payment-providers and other things, and the built-in download-manager handles the installation of these, as well as upgrades to the core code, really well.</p>\n\n<p>Compared to something like OSCommerce though, it wins hands down.</p>\n"}, {'answer_id': 1242267, 'author': 'SeanDowney', 'author_id': 5261, 'author_profile': 'https://Stackoverflow.com/users/5261', 'pm_score': 3, 'selected': False, 'text': '<p>I\'ve just discovered <a href="http://www.opencart.com" rel="noreferrer">opencart</a> which so far I am impressed with.</p>\n'}, {'answer_id': 2098868, 'author': 'SeanDowney', 'author_id': 5261, 'author_profile': 'https://Stackoverflow.com/users/5261', 'pm_score': 0, 'selected': False, 'text': '<p>Here is a good review of carts:\n<a href="http://php.opensourcecms.com/scripts/show.php?catid=3&amp;cat=eCommerce" rel="nofollow noreferrer">http://php.opensourcecms.com/scripts/show.php?catid=3&amp;cat=eCommerce</a></p>\n\n<p>Although the voting doesn\'t seem to reflect a lot of the feedback from the users, so I would suggest reading the comments to find out pros cons of each</p>\n'}, {'answer_id': 2098934, 'author': 'Amree', 'author_id': 113573, 'author_profile': 'https://Stackoverflow.com/users/113573', 'pm_score': 1, 'selected': False, 'text': '<p>What about <a href="http://www.prestashop.com/" rel="nofollow noreferrer">prestashop</a> ? It\'s based on Smarty and there\'s a detail <a href="http://www.ecartservice.net/17072009/writing-your-own-prestashop-module-part-1/" rel="nofollow noreferrer">explanation</a> on how to write a module.</p>\n'}, {'answer_id': 5982100, 'author': 'Raman Kumar', 'author_id': 751046, 'author_profile': 'https://Stackoverflow.com/users/751046', 'pm_score': 1, 'selected': False, 'text': '<p>I think Megento is the best but it has very long list of fratures and matains many more tables which is some times creating problem. If you have to create very large shop must use megento unless use zen-cart. I have used almost all shopping cart but my first prefreance is megento for large site and zen-cart for alltype of shops.</p>\n'}, {'answer_id': 21125708, 'author': 'Cerberus', 'author_id': 2539478, 'author_profile': 'https://Stackoverflow.com/users/2539478', 'pm_score': 0, 'selected': False, 'text': '<p><a href="https://molt.in" rel="nofollow">Moltin</a> is built with developers in mind and is purely an <a href="http://docs.molt.in" rel="nofollow">API</a>. You can choose the parts of the API you want to integrate with whatever frontend you have. You also get a dashboard to manage your store if you want to use it.</p>\n'}]
['https://Stackoverflow.com/questions/69715', 'https://Stackoverflow.com', 'https://Stackoverflow.com/users/8161/']