uCommerce and Sitecore an Introduction

uCommerce is a platform for building e-commerce solutions.  It removes a lot of the headache and repetitive development effort involved in getting an e-commerce solution up and running.  uCommerce is built using a framework first approach, which comprises of a number of really well designed functional areas known as foundations.  These foundations are the building blocks for your online store.

Catalog Foundation – allows you to easily manage everything related your product catalogs. Features include:
  • Multiple catalogs for managing separate brands.
  • Products can exist in multiple stores, catalogs and categories.
  • You can have create as many categories as you need.
  • Create Product definitions gives you control over the information stored against products and supports multi-lingual.
  • Create product variants.
  • Create product relations to improve cross-sell and up-sell.
  • Provides its own fast product search so administrators can quickly find and update products.
Transaction Foundation – when a customer adds an item has been added to his or her basket the Transaction foundation kicks in and manages the persistence of the basket and the entire checkout process.
  • Provides an extensible framework for payment gateway integration.
  • Easily search for orders which can be viewed and modified through the backend.
  • Order history available for customers.
  • Multiple shipping methods and shipping price configuration.
  • Extendable checkout and order processing.
  • Customizable back office workflow, for sending customer emails etc during order processing.
uCommerce Marketing FoundationMarketing Foundation – enables you to create and manage marketing campaigns, create and send vouchers, Setup discounts etc. The intuitive Advertise, Act, Award interface gives marketers the ability to easily setup up campaigns without having a dependency on a developer or technical resource.
Social Commerce – has changed the way we shop today. We like to know and value what other people have to say about products and use this valuable information to help us make a purchase.  Ucommerce allows users to easily review and rate your products and add comments.  This information can be easily moderated and shared with potential customers.
Search Foundation – allows customers to quickly find products using uCommerce multi-faceted search.  Administrators can easily add new facets as when required without any technical knowledge or getting hung up on configuration setup. uCommerce makes use RavenDB for indexing the product catalogs which provides fast search capabilities.

Sitecore

uCommerce adminuCommerce is not a standalone application it requires a CMS to deliver and serve up the content to the end user.  This is where Sitecore comes in. The uCommerce shell has been been tightly integrated with Sitecore to provide the best user experience possible for your administrators.  In fact it’s so well integrated with the Sitecore UI that your administrators won’t realise they are interacting with another system.
sitecore content tree
Also when Products are added to uCommerce they also appear in the Sitecore tree. So adminstrators have the option of using the native Sitecore interface or uCommerce to manage their product details.

Installation

Simply download uCommerce install package and install using the Sitecore Installation Wizard.

Developing with uCommerce

In the same way Sitecore provides a framework for building great websites, uCommerce is similar, it does not come with a ready made online store out of the box, like some there e-commerce platforms do. Instead it provides a comprehensive set of API’s, allowing you to build a best of breed e-commerce solution, that is really only limited by your own creativeness.
The API are categorised as either:
  • Libraries – provide access to functionality on the front end for example , product search, add product to basket etc.
  • Context Classes – provide access to the current context for example current store, current catalog or current basket.
blog_ucommerceintro_apiMost of the common functionality you’ll need to build a basic store, can be found in the following top level libraries:
  • CatalogLibrary
  • MarketLibrary
  • PriceCalculation
  • SearchLibrary
  • TransactionLibrary

If you explore the UCommerce.dll using DotPeek or Reflector you will find these libraries located within the UCommerce.Api namespace.

If you cannot find the functionality you are looking in these libraries you can always access lower level libraries.  I also recommend checking out the online Api reference documentation.

Demo Store

uCommerce online demo store
uCommerce demo store – Avenue Clothing

To help you get up and running quickly, uCommerce have developed a demo store this is downloaded and installed as a separate package.  The demo store is a good starting point, to help you understand how to setup a basic store in uCommerce.  They have also made the source code available on BitBucket.  This is really useful in helping you understand, how the various uCommerce libraries and context classes are structured and how they can be utilised to build a basic ecommerce store.  The demo store is also available online, this is really handy if you want to give a quick demo to a potential client.  You can access the Sitecore client using the default username and password.  I’m fairly certain the online demo gets cleared down every night.

Extendability

One of the great things about uCommerce is it’s framework first approach which makes it totally extendible.  uCommerce utilises Castle Windsor for resolving its components, by following a few basic rules you can override it’s components with your own.  So if something doesn’t function how you need it too, you can simply swap it out for your own component, whether is a basket behaviour, shipping workflow or a pricing calculation.

Integration

The uCommerce team have developed their own integration platform called uConnector. This enables uCommerce to interact with other systems.  It is optimised for getting information in or out of the uCommerce platform quickly and efficiently.  It comes with standard integration to Excel and .csv, which could be used for the initial load of products.  It can also be extended to interact with other data stores,such as your warehouse fulfillment system.

Payment Providers

uCommerce comes out of the box with integration to a long list of established payment providers.  You just need to add some configuration and you can be up and running, accepting credit card payments, on your e-commerce site.  If your provider isn’t available, uCommerce can be easily extended to include your specific provider.

Useful Resources

Leave a comment