Feature
|
E-commerce
|
Ubercart
|
Create Products
|
The E-commerce module allows defining different types of products that can be assigned to single or multiple content types. Additionally, it allows specifying whether anonymous users are allowed to buy the product or not.
|
Ubercart leverages the Drupal content type capabilities to create a new product type just by creating a new content type. Several options can be configured for each content type and for each node.
|
Product Catalog
|
The integration of Views with the E-commerce module allows site developers to create a catalog of products.
|
Ubercart provides a built-in catalog feature that displays the products in a hierarchical way. Ubercart has also been integrated with Views as well which allows you to create a catalog of products for users.
|
Invoices/Order Management
|
The E-commerce module manages user’s orders through receipts which are created once the order is placed. Invoices are automatically generated.
|
The Ubercart has a full featured orders management function which allows site administrators to view edit and create orders
|
Shopping cart
|
Both modules provide a block and page to display the current items and their quantity in the user’s shopping cart. This feature is very similar for both modules
|
Site Subscriptions
|
E-commerce module is more flexible when creating site subscriptions. It can be implemented by granting roles through the Rules module which is a powerful module that also allows handling several conditions and actions when a transaction is completed.
|
Site subscriptions can be done by adding the grant role feature which is tied to the product. This is a more straightforward way for the site builder but it lacks the power and flexibility of the Rules module, it also assumes that the order state must be “completed” to grant the role.
|
Product Fees
|
Product fees are known as charges in the E-commerce module. The module allows setting different charges to transactions or products by performing a calculation over the different values involved in the transactions including adjustments and discounts.
|
Ubercart allows setting fixed fees and taxes to products according to locations and some other variables. It is not as flexible as the E-commerce module but will be sufficient for most of the cases
|
Recurring Fees
|
There is no straightforward way to set up recurring payments here. According to the module page it is possible to set up recurring payments but it does not specify how in any place of the documentation.
|
There is another contributed module that handles recurring fees, these fees are attached to each product as attribute and the time start and time interval of the fees can be specified.
|
Addresses
|
E-commerce provides out-of-the-box fields to input billing and shipping addresses but it does not provide any front-end or server validation of state or zip code values
|
Ubercart provides a more complete solution that provides validation of the address before submitting the order. It also saves user addresses so it can be automatically selected when purchasing another product. Both modules should integrate the addresses functionality of a more generic module that can handle addresses in a more generic and better way such as the Location module.
|
Shippable Items
|
When defining the product type, site builders can specify if the product is shippable or not. Out-of-the-box the module creates two types of products: a generic product which is not shippable and another shippable product type. When purchasing a shippable product the corresponding rules and settings for shippable products applies such as input the shipping address.
|
When creating a product, this module allows defining if the product is shippable or not. There are several settings that can be configured for shippable items. Also it contains several sub-modules that integrate with fulfillment services such as UPS to process and track products delivery.
|
Customer Notifications
|
Several notifications options are handled through the Rules module. An e-mail notification can be sent to the customer every time the status of the order is updated.
|
The module provides several notification options through a module called conditional actions, which pretty much replicates what the Rules module does. This feature should be changed to leverage the Rules module capabilities which at the moment is far more flexible than the Conditional Actions
|
Inventory Management
|
An inventory can be set up to track availability of products by adding a specific attribute to a content type belonging to the set of products that are part of the inventory.
|
A similar feature is provided by this module through the Stock module which allows tracking the stock levels of the products.
|
Payment Gateways
|
The E-commerce module provides out-of-the-box a payment gateway to connect to the PayPal service for payments. There are some additional payment gateways for the E-commerce module such as Authorize.net but they had to be downloaded separately.
|
This module provides a wide set of payment gateways for the following services: 2Checkout, Authorize.net, Cybersource, Google Checkout, and Paypal. It also contains a Payment Method Pack that allows performing payments through checks/money orders or COD. In addition, a generic credit card module can be used by developers to ease the implementation any gateway that requires credit card payments.
|
Configurable Workflow
|
This module allows configuring different states of the order for different workflow purposes. The Rules module can be used as well to trigger different actions when transaction changes from one state to another.
|
Different workflow states can be enabled or disabled through this module. In addition, actions on states can be set by using conditional actions.
|
Reports
|
E-commerce provides basic reporting capabilities by displaying the receipts data and a list of transactions being placed.
|
Ubercart provides several reports features with statistical data. It also includes integration with Google Analytics which can help to keep track of customer’s interests
|
API
|
The API provided by this module is very straightforward and flexible and allows customizing almost every aspect of the e-commerce features.
|
The API of this module is also powerful but is not very straightforward in some cases. It can be difficult to customize, especially when trying to change a form that is presented to the customer.
|
Documentation
|
There is a lack of documentation for this module. There is not enough information provided on the project website.
|
There is a lot of documentation, tutorials, manuals and several blog posts in both, the Drupal site and the project main website.
|