Open Source E-Commerce Storefront Solutions Comparison for ASP.NET and PHP
I’m doing a side project that involves setting up a merchant e-commerce site. What I have come to quickly realize is that there are a ton of e-commerce shopping cart solutions out there! With a small budget for the project, I was looking for something that was open source.
I’ve written this article about two that grabbed my attention, and why I ended up going with a paid solution. This is in no way a complete analysis so if you are looking for more e-commerce solutions, PayPal has a great list (all PayPal enabled of course), and 411ASP.NET has a list specific to .NET.
I should mention that the majority of this write-up contains personal notes, but hopefully they are helpful to those interested (as I did do a fair amount of research). Again, the first two solutions I looked at are currently FREE and open source. The third costs $500 (Standard version), which comes with the full source code upon purchase, but isn’t open source.
Getting Started
Here are the solutions I looked at:
dashCommerce is the successor to Commerce Starter Kit, and is freely available on CodePlex. This is great for those ASP.NET developers used to working with it that wish to contribute. However, it seems to be a one man show right now as far as development. We’ll see if it can indeed keep pace with the market.
Magento Commerce is an open source PHP e-commerce solution led by Los Angelos based E-Commerce firm Varien. The solution stakes claim to unprecedented flexibility and control. You can jump into learning right away as they have a bunch of tutorial screencasts on their site.
Znode Storefront is an ASP.NET 2.0 solution that “specializes in secure, scalable e-commerce solutions driven by customer needs.”
Below are my notes on some parts I was most interested in. I have provided additional information in a tabular grid below as well.
Development Status
- Magento was recently launched in Beta and it is not recommended to use in a production environment. A functional version is in the works and Varien is shooting for Q1 2008.
- dashCommerce has just released version 2.2 and has sites in a product environment. Major changes are in order for the next version (3.0) which is slated tentatively for December 2007 / Q1 2008.
- Znode Storefront has sites and can be used in the production environment.
Community Following
- Magento seems to have the largest community following of the three. They have a Wiki section and allow the community to contribute. Continued development is by Varien.
- dashCommerce has a decent community following, but it currently seems somewhat disorganized. Community can contribute via CodePlex. Continued development is by Chris Cevyas.
- Znode, not being open source like the others, does not appear to have much of an active community. However, they seem to be dedicated to continued improvement of their product (see roadmap).
User Interface / CSS
- Magento. I’m a sucker for good lucks and that’s exactly what Magento is: Good Looking! Utilizing Scriptlicious, AJAX, and tagging it has Web 2.0 written all over it. It comes with a wide array of features “out of the box.”
- Znode has a structured CSS and Master Page system setup that seems ideal for customization. The admin area allows editing of CSS via a form Textbox similar to working in the popular WordPress blogging software. It boasts further AJAX UI in future versions.
- dashCommerce seems to be the most messy to tailor via CSS. This should be changing in their next release, version 3.0.
SEO
- Metadata – Magento and Znode both allow webmasters to edit metadata.
- Url Optimization – This is also an important factor in SEO and in human readability. Magento had the best SEO Url out of the bunch. Here are some sample product urls you could expect to see:
dashCommerce Url
/product/894c4c71-9776-4331-b1d4-c675f525beeba.aspx
Magento Url
/product/view/s/olympus-stylus-750-7-1mp-digital-camera/id/46/category/12/
Znode Url
/storeproduct302.aspx
I also noticed in Znode that Store Categories were referred to in two separate manners. I’m not sure the reasoning, but I know that isn’t a good idea for search engines and duplicate content. Example for category “81” (Exotic Fruit) in the demo site:
/category.aspx?cid=81
/storecategory81.aspx
Couponing System
- Magento has the most advanced coupon system. Aside from percentage off or dollars off coupons, it also allows for conditional based coupons to be created. Very nice.
- Znode Storefront allows for dollars off or percentage off coupons.
- dashCommerce currently only has dollars off coupons. However, the code allows developers to add their own promotional classes, but documentation is slim to none.
The Comparison Grid
| dashCommerce | Znode | Magento | ||
| Language | ASP.NET C# /VB | ASP.NET C# | PHP | |
| Open Source | Open Source | Full Source | Open Source | |
| Cost | FREE |
$500 |
FREE | |
| Version |
2.2 |
4.2 |
Beta 0.6 | |
| Shipping APIs | ||||
| UPS API | X | X | X | |
| USPS API | X | o | X | |
| FedEx API | o | o | X | |
| Tax APIs | ||||
| StrikeIron | X | o | o | |
| Product Imaging | ||||
| Batch Resizer | o | X | ? | |
| Auto Resizer | o | X | ? | |
| Analytics | ||||
| o | X | o | ||
| Development | ||||
| ASP.NET 2.0 | X | X | NA | |
| Master Pages | X | X | NA | |
| Structured CSS | o | X | X | |
| Documentation | ? | X | X | |
| Full Source Code | X | X* | X | |
| SEO | ||||
| Custom Product Metadata | ? | X | X | |
| Custom Product URL | o | o | X | |
| Payment Systems | ||||
| Google Checkout | o | ** | o | |
| PayPal | X | X | X | |
| Authorize.NET | X | X | X | |
| Other Gateways | o | ~17 | ~1 | |
| Installation | ||||
| MSI Install | o | X** | NA | |
| Web Install | X | o | X | |
| Live Demo | o | Here | Here | |
| * Limited / ** In Beta |
Final Words
At 500 bucks for the Standard version this is the solution I ended up choosing for the project. I felt the most comfortable (maybe because I was paying for it!) with the software. Here are some key reasons:![]()
- I needed the Admin area to be easy enough to teach the client.
- The template it comes with is nice enough where not a lot of customization is needed.
- The images are automatically resized for the Admin.
David was excellent in giving me responses to all the questions I had. I’ll likely be following up with some of the Q&A he provided for me. (Note: If you are looking to get Znode Storefront and need web hosting, DiscountASP.net has plans and you get 20% off your Znode Storefront purchase.)
What’s the catch?
Installation was fairly straight forward, however it did require me to open up SQL Server and run a SQL script to do the installation. This should be changing in the future releases.
Magento seems to be very easy to build on. They’ve got a good comunity and lots of documentation already. Although they only have a few payment systems, they got a nice writeup on creating new Payment Modules. Through this process I did the least amount of testing with Magento, so I can’t say too much more about it. This was because it is PHP based and since it isn’t available for production environments yet it wasn’t a likely choice to begin with.
However, I would definitely keep an eye on this going into 2008. It looked pretty enough on the outside to make me consider moving from ASP.NET to PHP for the project. If this project was six months down the road I may have chosen this solution. If I was a competitor I would look at all the things they are doing right and take notes.
What’s the catch?
I can’t say much as I didn’t go through the install process. I will say that it is confusing as you can download the software, yet it’s mentioned only a few places that you should not run the software in a “production environment.” See the forums for more information.
dashCommerce
After switching from Commerce Starter Kit to dashCommerce I did see some improvements. However, both the backend and the front-end would require too much time to clean up and customize. I felt better off waiting to see what comes of future versions.
What’s the catch?
Installation was generally pretty smooth, but it gets buggy if you enter the wrong information for SQL Server and try to go to previous. At one point it would just bring me back to the first page of the install. I had to switch browsers and start the install over. Later, I realized I just had to clear cookies to get it to stop looping.
-
http://www.magentocommerce.com Roy
-
ldersh
-
http://www.secretprices.com/ Marc Mezzacca
-
http://www.esectorsolutions.com Sergey Kapustin
-
http://www.magentocommerce.com Michael
-
http://letstalkecommerce.com Starr
-
http://www.magento.cn magento
-
hassan
-
m@t
-
http://freemind.net jim
-
http://www.gamediva.com PixeSlave
-
anon
-
http://www.magento.cn magento
-
http://internetconsultantsgroup.co.uk/improve_website_conversions.html Mark.Jones
-
http://blog.techdivision.com/magento--revolution-im-ecommerce/ TechDivision
-
Marek
-
http://www.jadasite.com Phil
-
http://www.nopCommerce.com Sergei
-
http://justinhester.yolasite.com/ Joshua Odonnell