Two Popular .NET eCommerce Platforms: Virto Commerce vs. nopCommerce — Meet the In-depth Review

Virto Commerce
11 min readJul 6, 2022

--

Two Popular .NET eCommerce Platforms: Virto Commerce vs. nopCommerce — Meet the In-depth Review

As two of the most popular .NET ecommerce platforms, Virto Commerce and nopCommerce offer a lot of similarities. Both platforms are highly customizable and offer a wide range of features. However, there are some key differences between the two that make them better suited for different types of businesses.

Virto Commerce is a B2B platform that is designed for enterprise-level businesses. It offers a wide range of features, including a powerful catalog management system, B2B pricing capabilities, and support for multiple languages and currencies. Virto Commerce is highly scalable, so it can grow with your business.

nopCommerce, on the other hand, is a more basic platform that is suitable for small to medium-sized businesses (SMBs). NopCommerce has gone through several positionsing in the market during the lastthroughout a dozen years, including as an open-source ecommerce engine, an an open-source CMS shopping cart software, and lastly, an ASP.NET Core ecommerce platform based on Microsoft technologies. So, let’s veeraway from the usual text feed, and immediately tell you which platform is right for you. Since you’ll probably want the details, so I recommend reading this entire blog post.

If you’re running an SMB, then nopCommerce is a great option. If you’re looking for a robust platform that wil scale with your business, then Virto Commerce is the way to go.

nopCommerce Background

nopCommerce began as a project on the .NET framework and ASP.NET projects platform, sponsored by Microsoft’s CodePlex initiative. For those who aren’t familiar with it may not be aware that CodePlex (2006–2017), it was the predecessor of GitHub, today the largest web service for hosting IT projects and collaborative development. nopCommerce has gone through several positions in the market over the last decade: an open-source ecommerce engine, an open-source CMS shopping cart software, and lastly, an ASP.NET Core ecommerce platform based on Microsoft technologies.

In 2011, version 2.0 was released, which was ported to ASP.NET MVC 3 and utilized Razor syntax for views. Then in 2013, version 3.0 was published, followed by further versions as Microsoft updated platforms. The nopCommerce project’s move to .NET 6 took place in February 2022.

Virtoway Background

Virto’s first version came out in 2011. As of right now; there are several versions available, including for SaaS, on-premises, and cloud-ready ecommerce applications. In addition to the classic Virto Commerce .NET-based platform, which may be installed locally or in the cloud, the SaaS version, Virto Commerce Cloud, and specialized Virto Marketplace versions have been accessible since 2022. You may use Virto Marketplace to start an industry portal or vendor portal as well as convert your existing online store into a marketplace.

For entrepreneurs who want to focus on their business and avoid being sidetracked by technical difficulties, the new Virto Start version is accessible, which comes with comprehensive support from Virto Professional Services for both installation and configuration requirements.

Since May 2022, the Virto Start version has been an option available to Virto customers.

Technology Stacks for Virto and nopCommerce

Presently in 2022, both the Virto and Nop platforms are based on .NET 6 software, which is promptly updated when new versions of .NET, released by Microsoft. However, since Virto is a headless and Nop is a monolithic architecture, their technology stack are different.

Virto Commerce Technology Stack

Virto Commerce is open source, truly headless, and has an API-first modular architecture — a highly scalable, high-performance, cloud-native ecommerce platform with rich possibilities for extensions.

The following technologies are used in the development of Virto Commerce:

Back end:

  • .NET Core 6.0 and as a base web API platform
  • EF Core as primary ORM
  • ASP.NET Core Identity for authentication and authorization
  • OpenIddict as OpenID Connect server and for OAuth 2.0 protocol implementation
  • GraphQL
  • SignalR Core for push notifications
  • HangFire for running background tasks
  • Redis as cache backplane on scale-out

Front end:

  • ASP.NET Core 6.0
  • Vue 3.0 — Progressive Java Script framework
  • Tailwind CSS — As main CSS framework for presentation
  • Typescript — All components and composables have type definitions, so IDE can help you build clean working code
  • Vite — Script and CSS bundler

The framework’s architecture makes it easy to incorporate best-in-breed modules into existing ecommerce solutions as system components. The platform may also be used as an application framework for the creation of more complex ecommerce initiatives. With its modular design and flexible horizontal scalability, the Virto platform can be utilized in B2B projects with a large number of users.

nopCommerce Technology Stack

nopCommerce is free, open-source ecommerce software with both a catalog front end and a back-end database administration tool. nopCommerce has a fully configurable shopping cart that’s reliable, secure, and adaptable. It provides a wealth of pre-made extensions available through Nop Marketplace plug-ins to help you customize the appearance of your online store.

The following technologies are within nopCommerce’s Technology Stack:

  • Web platform: ASP.NET Core 6.0 (2022)
  • Admin: Razor, Kendo UI, jQuery
  • Storefront: Razor + custom themes
  • ORM: Linq2db
  • Supported databases: Microsoft SQL Server, MySQL Server, PostgreSQL
  • Caching: Redis

The following business models are supported in nopCommerce, which focuses primarily on B2C operations, although there are some extensions for B2B as well.

eCommerce Features

nopCommerce Feature List

nopCommerce is a .NET ecommerce platform primarily focusing on B2C businesses to create online stores. It offers a rich set of features, including multi-store management, multi-vendor support, and drop shipping.

Below is the feature list provided on the vendor website:

  • Multi-store. Allows as many stores as you want. All stores are managed from a single admin panel. Since all stores share a single database, you can easily transfer data between them.
  • Multi-vendor. Creates a marketplace to allow other merchants to sell products on your website.
  • Multilingual. Supports up to 300 language packs, as well as languages written and read from right to left (RTL), e.g., Hebrew, Arabic, Persian.
  • Multicurrency. Facilitates international sales.
  • Multiple payment methods. Integrates with dozens of payment methods and gateways.
  • Drop shipping. Assigns each product in your store to a specific vendor. When a customer orders the product, the vendor receives an email and ships the order on your behalf.
  • ACL (access control list). Controls permissions assigned to each product, category, vendor, etc.
  • Product attributes, recurring. Tracks SKUs (stock keeping unit), size, weight, color, price, etc.
  • Rental products. Permits customers to rent products and subscribe to products.
  • Discounts, coupons, and gift card support. Includes an integrated reward points program.
  • CMS support. Supports creation of blogs, forums, custom pages, etc. Enjoy responsive web design of the administration panel and the storefront.
  • SEO. Comes with XML and HTML sitemap support, Twitter and Open Graph (Facebook) Meta tags support, breadcrumbs support, URL canonicalization, SEO-friendly URLs, etc.

Virto Commerce Feature List

Rather than reviewing what multicurrency, multivendor, and multilingualism are again, let’s delve into the rich feature list for Virto from a technological point of view. Then your IT team will know exactly what the Virto platform provides, so you can build your online business.

Below is the tech feature list for Virto Commerce:

  • Enterprise-oriented. Ready for all types of ecommerce, regardless of the size of the business.
  • Open source/transparency. Includes transparent code and development processes, an open-product community hosted on GitHub.
  • Headless. Content presentation layer separated from the business logic and functional layer
  • API-driven. All methods are available via REST API.
  • Modularity. Virto Commerce has a truly modular architecture. This approach achieves all the benefits of an agile development process in a multi-dev team environment. This makes feature development and the delivery process much faster, reduces the overall complexity of the system, and, as a result, lowers the cost of ownership.
  • Modern. Uses a current technology stack of ASP.NET Core, EF Core, HTML 5, Elastic Search, Angular, Bootstrap 4.0, and Progressive Web App (PWA).
  • Cloud-oriented. Originally designed and optimized to run in the MS Azure cloud; seamlessly integrates with native cloud services provided by the MS Azure ecosystem.
  • Scalable. By design, supports vertical and horizontal scalability.
  • Extendable. Custom solution development accomplished without the need for modification of the source code of the platform. There are several extensibility levels, such as the replacement of existing modules and subsystems or the extension of existing functionality. Many subsystems, such as catalog management, order management, and others, have a very flexible structure that allows implementation of a broad variety of business requirements.
  • Evolutionary. Designed for evolution with independent feature development and frequent small releases, no monolithic solution; strongly developed CI/CD processes.
  • Seamless integration. Allows a new module, feature of an application, or hardware to be added or integrated without resulting in any discernable errors or complications.

Virto Commerce offers a wide range of features, including multi-store management, multi-vendor support, and drop shipping. Virto Commerce is also an enterprise-level B2B platform, which makes it a good choice for businesses that need robust ecommerce capabilities.

Architectural Features

nopCommerce architectural features

The nopCommerce project is a classic monolith, with all platform components, such as the admin, front end, and API services, being contained in a single application and part of the same component. There’s also an ecosystem of add-ons and plug-ins that lets you expand nopCommerce’s basic features without having to rebuild it. Plug-ins can now be used to extend the quantity of business logic and user interface elements accessible to users.

  • Nop.Core, Nop.Data, Nop.Service is a layer of business logic containing levels of data access, database operation, implementation of basic domain services, security, caching, etc.
  • Nop.Web.Framework is a library of visual components, building blocks on which the presentation part is built.
  • Nop.Web is an ASP.NET Core application, the front end of an online store, i.e., user interface.
  • Nop.Admin is an administrative panel for working with store data and orders and configuring and viewing user activities.

nopCommerce plug-ins function as extensions to the platform’s fundamental functions created by third-party developers or the NopCommerce staff. These plug-ins are distributed through the platform’s own marketplace.

With nopCommerce plug-ins and widgets, you may extend particular elements of the business logic, front-end user interface, and administrative portion. This can be done using WidgetZones, which are distinct regions of the user interface where plug-ins can be downloaded. It is worth noting that not all of the system can be modified with plug-ins and widgets.

Plug-ins can also be used to deliver the custom implementation of .NET components that extend or override default nopCommerce install via registration in the DI container (ServiceCollection).

Virto Commerce Architectural Features and Conceptual Overview

Virto Commerce design has three application layers that are separated from each other:

  • Storefront (front end)
  • Admins (SPA) applications
  • Platform runtime (back end)

This architecture easily enables connecting a storefront application with the back-end application. The separation of application levels brings three main benefits:

  • Performance. Front-end applications in Virto Commerce use a special xAPI service layer that serves as a back end for several front-end types. This feature improves the processing of all incoming customer requests.
  • Scalability. Because front ends and back ends have their own apps, storages, and deployments, scaling is straightforward. Virto Commerce can be expanded horizontally by adding more instances with extra storage without affecting the back-end application or business logic. Data from different domains may be kept in separate databases, such as catalogs and orders.
  • Security. Back-end software is assumed to be behind a firewall, making Virto Commerce even more secure for different ecommerce platforms.

The following diagram shows the conceptual parts of the application and their data exchange:

  • Storefront: Includes a stateless front-end presentation layer for customers connected to the xAPI (GraphQL) layer hosted by platform runtime. This layer consists of: Default VC-theme-B2B-vue theme, which exists out of the box (also might be multiple themes).
  • An ASP.NET Core storefront application hosts the themes.
  • Admins (SPA) applications is a set of applications that contains all back-office presentation logic and uses REST API hosted by platform runtime.
  • Has a platform manager UI, default back-office admin user interface
  • Features a set of specialized UIs like a marketplace vendor portal
  • xAPI and REST API provide resources for customer interaction based on GraphQL and Open API standards.
  • Modules represent a set of custom extensions loaded to the platform runtime that extends the base functionality with new ones. The modules are divided into two groups:
  • Core modules developed and maintained by the Virto team.
  • Custom modules developed by third-party vendors or partners.

Virto Commerce uses modular programming and packaging strategies for organizing functionalities into independent software packages called modules.

The module structure is loosely coupled with other modules and represents a delivery unit of required features that has its own delivery and release cycle.

In-Depth Look at the Advantages of Virto Commerce and nopCommerce

Let’s discuss the fundamental pros and cons of implementing Virto Commerce compared to nopCommerce. A blog on the Virto website discusses additional comparison factors, including APIs, caching, customization, default themes, performance graphs, and many other factors. For a more detailed review, look at our blog, The Most In-Depth Review of Top 2 .NET eCommerce Platforms: Virto Commerce vs. nopCommerce.

Virto Commerce is a modular .NET open-source cross-OS ecommerce platform designed for long-term, well-supported B2B enterprise projects. The platform is especially intended for medium to large organizations in the process of going digital or replatforming their ecommerce solution. The Virto Marketplace version allows us to convert any existing ecommerce site into a feature-rich industry or private marketplace solution with any number of third-party sellers.

Among ecommerce vendors, no one except Virto Commerce offers its partners’ and clients’ development teams such a harmonious and logically understandable architecture as Virto Atomic Architecture™.

nopCommerce is also an open-source platform, which allows companies to run their applications on different Windows/Linux platforms. It facilitates rapid development and enables users to understand the logic of the platform or make changes to the project without depending on the vendor team. The free basic version attracts many small businesses starting ecommerce projects.

The technology stack of nopCommerce is based on ASP.NET Core 6.0, and the vendor provides regular updates at the pace of the Microsoft .NET roadmap. Architecturally, nopCommerce is a monolithic solution with a focus on native MS technologies, an almost homogeneous ASP.NET stack of technologies, which does not require developers to have versatile knowledge of other frameworks and platforms. It has a low entry threshold for technical teams, a plug-in-based extension model, and a large number of ready-made plug-ins and widgets (WordPress-like extension model).

Summary

Virto Commerce and nopCommerce are two different classes of ecommerce systems, although both are open source, cross-platform, and based on Microsoft .NET technologies. nopCommerce is a good choice for lightweight B2C businesses in the SMB sector and rapid online trading development, because it offers a wider range of design themes than Virto Commerce.

Virto Commerce, on the other hand, is an ideal platform for B2B solutions, mostly in enterprise and mid-sized business segments. The wide range of B2B business scenarios and integration capabilities allow for the smooth integration of Virto Commerce into a company, such as a manufacturer, distributor, or a retail chain’s back-office IT infrastructure.

Author: Eugeney Tatarincev
Platform architect

--

--

Virto Commerce
Virto Commerce

Written by Virto Commerce

Digital commerce software | the most scalable & customizable B2B open source .NET ecommerce platform

Responses (1)