Comparison of BV Commerce 5 SP 3.2 (“BVC”, known as Merchant Tribe), AspDotNetStoreFront Multi-Store 188.8.131.52 (“SF”) and Kentico CMS 5.0 eCommerce (“Kentico”)
Pull Digital’s Lead Developer recently completed an eCommerce website based on AspDotNetStoreFront 184.108.40.206 Multi-Store edition. Prior to that he worked with BV Commerce 5 SP 3.2, a U.S. based package (old), and Kentico CMS 5.0 eCommerce module (old) before joining Pull Digital. Having experienced three different eCommerce platforms and a variety of development challenges intertwined with business-technological considerations, he has an appreciation of eCommerce development as reflected by the post below.
Similar features across all platforms
SF, BVC and Kentico have the operational essentials for setting up and running a Web store. Each client’s business is different as is their online vision. For this reason and others, all three platforms are designed to be customised (extended), although as one gets stuck in, the differences between all three start to show. It is quite a task to research the competitive market of ready-to-go ecommerce Web applications to find the most suitable one from a feature set, licence fee, support and productivity point of view (time to market). Usually, though, there isn't an exact fit. Customisation is often called for in a project. Depending on the situation, publicly available add-ons/plugins may meet specialist needs. If not, custom development may be the only option. In this regard, finding a set of customisable platforms with smart, time-aware approaches to custom development practice for the project's purpose is a desirable must (an imperfect research task).
SF, BVC and Kentico are made in such a way that they can be modified for meeting the functionality/design requirements of the client’s vision, although in certain cases there can be special considerations. Full source code can be purchased, giving control over the entire application.
All three platforms can have additional features/functionality added by way of add-ons/plugins. There are many 3rd
party companies producing solutions for specific needs which are not catered for out-of-the-box. Where there isn’t a suitable solution with this approach, a solution partner company like ourselves can be contacted.
Reason for choosing SF on a project
A client wanted to operate several stores and administer them all from the same place (simplicity). SF multi-store option was chosen for this purpose. One administration area, but allowing for more than one store, each having its own product set and style under a seperate domain.
BV Commerce: provided with licence
SF: provided with licence purchase but subject to restrictions, which include only supporting out-of-the-box features.
Kentico: 12 months with licence purchase and held in high regard worldwide.
General development experience
In certain places, SF is a more challenging platform to work with than BVC and Kentico in this author’s opinion. If you are accustomed to making .aspx pages, drag 'n dropping server controls onto them, then authoring code for server side events, it is possible that for certain development tasks with the SF platform you may not be able to develop this way.
Programming and the database: Apart from notable syntactical differences in the programming API and notable differences in coding technique between the three platforms, all have similarities, such as, for the database, tables for storage of orders, products, categories, etc. On at least one platform, the programming API didn't meet every bespoke need and so code was authored to do the job. All platforms come with full source code - for a fee - so that literally any customisation can be implemented. Customisation of vendor supplied code should always be done with appropriate care, especially so where the code isn't documented and use of various Visual Studio 2010 tools provides indication of system-wide code dependency – leading one to get an initial idea of modification implications.
Content and controls: Category and product pages and certain emails are rendered using a concept called "XmlPackage", an XML file that combines a database query with XSLT instructions to produce HTML. A downside is that if you want to put a button on the page you have author the HTML and devise a non-standard way of detecting that it has been clicked. You do not have a button clicked event to work with in the traditional ASP.NET sense. If you have a complex data presentation to display with the need for server side interactions and possibly 3rd party data source involvement, the XmlPackage method may prove to be complex and time consuming - possibly unviable.
On the other hand….A clear advantage of XmlPackages comes in where the client likes the idea of changing the product or category presentation without having to involve the development company. The development company can make a number of XmlPackages, each representing a style of product/category presentation and provide these at launch. If the client should decide they wish to switch to a different presentation from the current one, they need only change the XmlPackage (done by way of a drop down in the admin section). In other software systems, the development company might have to be contracted to develop a solution, which can entail authoring code.
SF: Full support for standard Web page SEO fields Title, Description, and Keywords (no SEO friendly Urls).
BV: Full support for standard Web page SEO fields Title, Description, and Keywords
Kentico: Full support for standard Web page SEO fields Title, Description, and Keywords
Migrating data can be done with all platforms, but various technical considerations go with each. There are certain things to keep in mind with SF that aren't necessary with BVC. BVC and SF support remote access to the database in the form of a Web Service, with SF giving more control than BVC. With Kentico, it's necessary to add functionality to the provided “empty” Web Service. With remote access to the platform’s API in place, one can perform basic tasks like creating a product using data from a data source that can be accessed via standard .NET technologies. For example a data source can be an Excel file, relational database or Web service.
Payment gateway for SagePay and support for 3D-Secure
BVC: No support for 3D-Secure out of the box, but a plug-in can be purchased.
Kentico: Same as BVC.
SF: Built in 3D-Secure support.
It is beyond the scope of this blog post to act as a consultancy service, making a detailed comparison of all three platforms. Fancy being here a few hours?
All three platforms have their attractions and in terms of their out-of-the-box functionality, meet the needs of many projects. On customisation: each can involve different technical considerations and approaches to solution design.
We use SF for all projects calling for specialist eCommerce functionality as it has met requirements to date, although we recognise that other options are available.
Merchant Tribe (previously known as BV Commerce): http://merchanttribe.com/features/list
Kentico CMS eCommerce module, version 6.0: http://www.kentico.com/Product/E-commerce
AspDotNetStoreFront Multi-Store (newer version): http://www.aspdotnetstorefront.com/t-requirements_matrix.aspx