This post is about various options on how to integrate Sitecore and Demandware – a situation that we at Alpha Solutions has worked with – both as part of architectural boards as well as hands-on projects.
Sitecore was born in the WCMS area and has since focused on creating user experiences through personalization and “intelligence” – in Sitecore’ own words:
“The Sitecore Experience Platform was built from the ground up as a single, connected solution to deliver flexible and predictive customer experience management. Seamlessly combining web content management with customer intelligence, it empowers marketers to understand the context of how customers are interacting with their brand. The result? Real engagement that earns customers for life.”
Demandware (now Salesforce Commerce Cloud)
“The Salesforce Commerce Cloud (formerly Demandware) unifies the customer experience and streamlines commerce operations from purchase to fulfillment to post-sale service. Through maximized agility and innovation across channels, the cloud enables you to keep up with the rapidly changing retail industry.”
Background and agenda
The intention with this post is to share and discuss some of the ideas on how to integrate Sitecore and Demandware. As of now – Sitecore is focusing a lot on getting more of commerce business. With the acquirement of CommerceServer.NET back in late 2013, and a new tight integrated version expected to be announced by EOY 2016 – focus seems clear. On the Demandware side – they are moving to include more of the features that Sitecore includes – personalization and CMS features. So looking ahead – we see that they will be more and more comparable for clients (not for architects and developers for sure).
Note: Keep in mind that most obvious situation for this situation – is that the client is already running ecommerce on Demandware, and either needs to ecommerce-enable their brand and social oriented web properties – or simply need to fill in some gaps in Demandware typically related to CMS features around workflow, and content management. So the option is rarely to re-do the commerce engine, fulfillment etc. that is already in place.
Integration between Sitecore and Demandware can be established in a number more or less obvious ways. But to our experience – the most important criteria for the chosen integration strategy are based on the answer to the following questions:
- What is your current strategy on ecommerce, Brand, Content and Social orientation – and how do you see that change looking ahead?
- What is your budget for project and maintenance?
- What is your strategy on the traditional channel conflicts and new channels opening up?
- Short or longer timeline for the project implementation?
No two situations are the same, but the answers to the above questions will tell you where to focus and help you between the various integration options we will discuss below:
The Experience Commerce option
Sitecore runs the frontend – Demandware handle merchandizing, basket and checkout
Demandware’s OCAPI (Open Commerce API) let developers build shopping widgets external of the native Demandware Commerce platform by allowing outside web applications and enterprise software to interface with all shopping functionality. By using Sitecore Commerce Connect and Demandware OCAPI we establish the needed integration. Whether to sue Commerce Connect or using custom integration is an architectural decision by the client. We would recommend it.
So where are the challenges and considerations?
- Product and catalog synchronization
The Catalogue exists in Demandware, but you need to present the categories and products in Sitecore. You also need to consider how search should work, having both products and content in Sitecore.
One option is to perform synchronization create a solution based on search – Solr or Sitecore Search Solutions would be obvious candidates for that.
Another option will be to rely heavily on Demandware OCAPI to present all products and categories – and create a mixed search experience (products from DW and content from Sitecore)
- Merchandizing features and campaigns exposed on Sitecore frontend
Merchandizing takes place in DW and there might be situation where that has to be exposed on the frontend – that is Sitecore. You might have to do custom work to be able to do that – so analyze your needs within merchandizing and commerce campaigns up front.
- PCI and security
Demandware is PCI compliant. If the full checkout and payment is integrated to Sitecore this might create some challenges regarding PCI compliance.
The ecommerce model – with a spice of experience
Demandware runs the frontend – Sitecore used for content specific areas
In this model Sitecore is used to spice up an existing commerce solutions running on Demandware. The Federated Experience Manager (Sitecore FXM) would a way to add content to existing pages running on Demandware. FXM will even make it possible to base the content pushed on personalization from the analytics that Sitecore gathers from the Demandware site. The Sitecore content will not be part of any searches though.
Another option – or parallel option – will be to use Sitecore as a way to build pages in Sitecore and to “push” them to Demandware. Sitecore will for this purely be used as a neat way for the content editors to build up pages in the Experience Editor. This solves the things that the editors needs in the Demandware – giving a 100% WYSIWYG view of the pages while editing. From a technically perspective the content are on publish from Sitecore uploaded to Demandware (as DW Content Assets, images etc.). This means that Demandware will be serving the pages utilizing DWs CDN etc.
Custom components can be built for Sitecore that integrations to DW for showing product carrousels etc. inside the content pages. Examples of this is running on production to create blog-like universes
Magasin – one examples are this http://www.magasin.dk/ajour – content and articles created in Sitecore – but served by Demandware. Notice that Demandware products is presented within the articles.
The hybrid model
Sitecore runs the frontend until checkout – Demandware handle the rest of the flow.
The hybrid model is the technically the simplest integration. Sitecore runs the frontend until the users clicks “checkout”. The checkout redirects the user to the checkout funnel running directly on Demandware.
There is still a number of challenges like the search, product and catalog synchronization. Also, basket visibility on the Sitecore frontend as well as the redirect. Still, this option is the simplest with the least possible technical implementation project.
In this post we have presented a number of options to integrate Sitecore and Demandware. The offset for this was for clients that most like is already running on Demandware for their ecommerce – but need to created better experiences through personalization and targeted content.
There are even more options “out there” for integration between Sitecore and Demandware – options that I have not included in this post. I believe that the options above pretty much define the options, and again: No two projects with these kind for integrations are alike.