Why Drupal Commerce?

User login

Drupal Commerce is a collection of modules that lets you expand into the world of selling online. It uses the strength of other modules such as Views and Rules, and it provides a flexible framework which can be used to build complicated business solutions.

Drupal Commerce provides a truly flexible, solid foundation for building even very complex business applications. Some of the reasons it stands out as an excellent and secure solution are the following:

It works on top of Drupal CMS
Drupal Commerce is a solution that works on top of Drupal CMS, and therefore it offers Content Management and eCommerce in one package. It takes advantage of all the power and flexibility Drupal has to offer, and there is no need to spend time and money in order to integrate between two different systems. This also means that it is much easier to manage and maintain, as everything is under one roof. In addition, since it is a frameworks that sits on top of Drupal, it can upgrade any already existing Drupal website into an eCommerce platform. 

Open Source
Unlike other soultions, there are no paid plugins or modules in Drupal community. Drupal Commerce is free software.

Drupal Commerce is highly extensible and it lets developers to code additional functionality and customizations.

Easy to expand internationally
It provides native support for languanges, currencies and taxes.

Easy to integrate with exterenal systems
Drupal ships with a built in RESTful API, which makes it easy to integrate third party solutions with Drupal. Drupal Commerce can make use of the RESTful API to easily connect with other systems. For example, Drupal Commerce could connect to a thrid party system in order to import products, update stock values and perform various automations.

Granular User and Role management
Drupal makes it easy to control access to functionality the website offers, based on a user's role. Since everything works under one roof, it's easy to control the features that are offered to the users. Since there is no bridge between a CMS and an eCommerce website, users have one account for everything. And for example, this account can easily be upgraded by purchasing a 'premium' role, and therefore gaining special access and priviledges.

Drupal Commerce is using Drupal entities in order to introduce some very basic concepts for eCommerce: Product, Order, Customer Profile, Line Item and Payment Transaction to the platform.

Is the item for sale.

Line Items
Products might need to be customizable, and clients will need to choose specific properties before adding it to their carts. When people order a T-Shirt, they will need to choose Color and Size. These product attributes are also called Product Variations. A Line Item represents a product with the chose options of its variations. It is the line item that will be added to the cart. 

Payment Gateways
Payment gateways provide the way to accept payments online, usually by integrating a third party service with Drupal Commerce in order to process payments. Some payment gateways are Stripe, PayPal, Payoneer etc.

At the very least an Order include the products and their variations that have been included in one sale, the client's addresses, the status (e.g. if it is on checkout or complete) and  the payment option the client has chosen.

Drupal Commerce