Sitecore
Sitecore 9 - xConnect and Headless
October 17, 2017 Dalibor Kovač

Today (October 17th 2017) Sitecore has released the new major version of their web experience platform - Sitecore 9.0. The new version brings many enhancements and new features. This blog post will focus on two of them: the xConnect module and improved support for “headless” implementations.

 

xConnect 

Sitecore xDB, which was introduced in Sitecore 7.5, is a scalable and extensible database for collecting all sorts of data about users’ interactions with the website. That data can then be used by marketers to drive, personalize and improve the user experience.

So far, Sitecore has been using MongoDB and SQL Server for implementing xDB, but version 9 adds support for Microsoft’s CosmosDB and SQL Azure database.

The bigger news is the introduction of a new xConnect module which brings the ability to incorporate data from non-traditional data sources like:

  • Fit devices
  • Smart watches
  • IOT devices
  • Physical store visits
  • Call center interactions
  • And any other data source

Regardless of the origin and format of the incoming data, xConnect can be the single unified API for getting such data into or out of xDB.

Let’s take physical store visits for example. A retail chain might already have a customer loyalty program which they use to identify and log their registered customers’ purchases in physical stores. That data can now be fed into xDB easier by using xConnect.

If we expand on that example a bit we might envision a more high-tech scenario where you combine the existing loyalty program with in-store video system and real time facial recognition software to match faces with customer numbers. That way, the next time your customer walks into one of your shops your system can detect that and capture the event in your xDB even if the customer doesn’t buy anything in that visit.

Beside being the new way of getting data into or out of xDB, xConnect coupled with 3rd party machine learning tools or BI solutions can enable marketers to discover more about their data without needing help from a developer.

xConnect also brings new CRM Connectors for Salesforce and Microsoft Dynamics CRM. These connectors facilitate the interchange of data between xDB and CRM, giving the marketers the ability to get a more complete picture in both systems.

 

 

Headless 

“Headless” CMS implementation has been a buzzword for quite some time now. It’s the scenario where a content management system is used only for storing content, and the presentation layer (the front-end) is managed by a separate application that reads data from the CMS and displays it on the website.

As many of you probably know, Sitecore is much more than just a CMS. It’s a platform that combines CMS, analytics, marketing and presentation. But if you look into the past, it hasn’t always been like that. The first versions of Sitecore didn’t have presentation capabilities. That was introduced later, so we can say that Sitecore actually originated as a headless CMS. But even when Sitecore started serving the presentation layer, it maintained a clear separation of content and its presentation.

Some of the elements required for headless implementation have already been core to Sitecore for many years: Sitecore API and Sitecore Services Client (SSC). Sitecore 9 brings improvements to that and it also introduces the new Javascript Services (JSS) module.

Sitecore JSS provides a toolkit for front-end developers, enabling them to request content with minimal Sitecore experience. Front-end developers can use whatever platform, technology and frameworks they wish for developing the website. This approach allows Sitecore customers and partners to better leverage Javascript developers and to have more options for bringing projects to life on different devices and platforms.

A headless approach has some general drawbacks, the biggest being that the presentation layer is not integrated inside your CMS, which makes collecting user interactions more challenging. And, some features like personalizations or A/B testing do not work out-of-the-box.

The new JSS module in Sitecore 9 aims to solve some of these problems. In headless implementations of Sitecore 9 we will be able to have a reference to an external Javascript application, which will enable marketers to do their content editing in familiar WYSIWYG fashion. So, new Sitecore 9 is really trying to provide the best of both worlds

Sitecore promises that, in time, JSS is also going to allow marketers to personalize the experience as they would with the native Sitecore website.

Dalibor Kovač
Solution Architecture & Development