SlideShare a Scribd company logo
1DC SITECORE USER GROUP
Sitecore Commerce
Catalog Management at
Scale
DC SITECORE USER GROUP
SEPTEMBER 6, 2017
2DC SITECORE USER GROUP
• Email:
dean_thrasher@epam.com
• Blog:
https://deanthrasher.com/
• Twitter:
@dthrasher
• LinkedIn:
https://www.linkedin.com/in/deanthrasher
• Co-organizer of the DC Sitecore User Group
https://www.meetup.com/DC-Sitecore-User-Group/
• Sitecore enthusiast since 2010
ABOUT DEAN THRASHER
3DC SITECORE USER GROUP
AGENDA
Sitecore Commerce Landscape1
Types of Commerce Operations2
Product Catalog Sync3
Decisions, Decisions!4
SCpbMD Example (Microsoft Dynamics 365)5
4DC SITECORE USER GROUP
IF I ONLY HAD A WHITEBOARD…
5DC SITECORE USER GROUP
• Legacy commerce / shopping cart implementations
– Active Commerce
– uCommerce
– Insite
– Others / custom implementations
• First-party Sitecore implementation
– Sitecore Commerce (completely rebuilt version of Microsoft Commerce Server)
• Third-party Sitecore implementations
– Dynamics AX / D365 (joint development by Microsoft and Sitecore)
– Hybris (integration built by EPAM, announced at Symposium 2016)
SITECORE COMMERCE LANDSCAPE
6DC SITECORE USER GROUP
THREE KINDS OF COMMERCE OPERATIONS
Product Catalog
• Add Products
• Update Products
• Delete Products
• …
Cart and Checkout
• Add/Remove from Cart
• Select Payment Type
• Provide Billing Address
• Provide Shipping Address
• Apply Coupon/Discount
• …
User Account
• Register
• Sign in
• Maintain Profile
• View Order History
• …
7DC SITECORE USER GROUP
• Most large retailers have a specialized CMS for managing products called a Product Information
Management system (PIM)
• Data from the PIM is used by a variety of other enterprise systems, including the ERP / Accounting
system and the ecommerce website
• Historically, it was common to separate the “content” side of a website from the “commerce” side
• Sitecore’s approach is to import and cache the product catalog(s) stored in the PIM so that products
can be mixed with non-product content
PRODUCT CATALOG SYNC
8DC SITECORE USER GROUP
• Push vs. pull
• Sync intervals
• Full vs. incremental sync
• Copy vs. transform
• Who writes what when?
DECISIONS, DECISIONS!
9DC SITECORE USER GROUP
D365 EXAMPLE
SITECORE COMMERCE CATALOG MANAGEMENT
10DC SITECORE USER GROUP
D365 INTEGRATION
11DC SITECORE USER GROUP
• The Data Exchange Framework models and runs
synchronization processes
• Sitecore uses it to run the catalog sync process
with AX / D365
• It reads from the web APIs from those systems,
then generates an XML file to import into the
Sitecore Commerce Database
DATA EXCHANGE FRAMEWORK
12DC SITECORE USER GROUP
D365 CATALOG DATA SYNC
AX
Online Channel
Database
Retail
Server
API
Sitecore
Commerce
Product
Catalog
Distribute
Publish
Transform
Import
Catalog.xml
Fetch
Access
Access
Invokes
13DC SITECORE USER GROUP
• By maintain its own copy of the product catalog in
a known format, Sitecore insulates your website
from changes to your catalog system
• This allows you to version your Sitecore CMS and
website independently of the product information
management (PIM) system
• It adds flexibility at the expense of complexity
ADAPTER PATTERN
14DC SITECORE USER GROUP
• The Sitecore Commerce database is a known schema, so Sitecore
provides a data provider implementation to make those items
appear like “normal” Sitecore items
• Since product items are not stored in the master or web
databases, they do not participate in publishing in the same way
that regular content does
• Data providers operate at a very low level within Sitecore. They
aren’t documented very well and rely on dark magic.
• Write one at your own risk!
DATA PROVIDER
15DC SITECORE USER GROUP
• The data provider doesn’t make the product catalog appear within
your site directly. Instead, wildcard items are used to point a part
of the Sitecore content tree at the product catalog.
• At scale, you’ll probably want to use a bucket-like experience to
bring the catalog into Sitecore, then modify your
WildcardItemResolver to bring in the products and categories as
needed.
WILDCARD ITEMS
16DC SITECORE USER GROUP
• Product catalog data can be immediately live or
can use the Commerce Server Staging service to
perform a “switch-on-rebuild” operation
• Once catalog data is live, changes need to be
reindexed in your search engine
PUBLISHING AND INDEXING
17DC SITECORE USER GROUP
QUESTIONS?
SITECORE COMMERCE CATALOG MANAGEMENT
18DC SITECORE USER GROUP
APPENDIX
SITECORE COMMERCE CATALOG MANAGEMENT
19DC SITECORE USER GROUP
• If the PIM pushes updates to the CMS, the
information will be available to customers faster,
BUT…
• If the CMS asks for product catalog information the
two systems are less tightly coupled, especially if
the CMS maintains its own product cache
Sitecore uses a pull mechanism for product catalog
sync operations
PUSH VS. PULL
20DC SITECORE USER GROUP
• How often do you perform an update?
• Are there any operations that require real-time or
near-real time calls?
– Product availability
– Amount in stock
– Price and promotion changes
Sitecore uses a scheduled job to for product sync – at
an interval you determine – coupled with real-time
operations for sensitive or rapidly changing data
SYNC INTERVALS
21DC SITECORE USER GROUP
• You’ll need to benchmark your systems to
determine which is faster
• But you’ll need to support both, if only to
update products or prices in emergency
situations
Sitecore supports both methods*
*assuming your PIM supports both methods
FULL VS. INCREMENTAL SYNC
22DC SITECORE USER GROUP
• Since information coming from the PIM has gone
through its own review and approval process, you
could simply display it as-is…
• Or you could change or transform it, at the cost of
additional complexity
Sitecore provides a lot of flexibility to transform
product catalog data. Use it wisely!
COPY VS. TRANSFORM
23DC SITECORE USER GROUP
• Ideally, the CMS would have read-only copies of
product catalog data, BUT…
• …You might want to enrich PIM data with additional
information only needed by the website, AND…
• …Mistakes happen, and sometimes you need to
correct information right away
• …So it’s often valuable to allow the CMS to override
or temporarily modify values
• Avoid bi-directional sync if you can!
This one’s up to you…
WHO WRITES WHAT WHEN?

More Related Content

What's hot

Sitecore xPlatform - Introduction
Sitecore xPlatform - IntroductionSitecore xPlatform - Introduction
Sitecore xPlatform - Introduction
Thomas Eldblom
 
SharePoint Development Workshop
SharePoint Development WorkshopSharePoint Development Workshop
SharePoint Development Workshop
MJ Ferdous
 
Trendspot ANZ 2014 - Federated Experience Manager - Thomas Eldblom
Trendspot ANZ 2014 - Federated Experience Manager - Thomas EldblomTrendspot ANZ 2014 - Federated Experience Manager - Thomas Eldblom
Trendspot ANZ 2014 - Federated Experience Manager - Thomas Eldblom
Thomas Eldblom
 
SharePointFest 2013 Washington DC - WF 204 - Build scalable SharePoint 2013 S...
SharePointFest 2013 Washington DC - WF 204 - Build scalable SharePoint 2013 S...SharePointFest 2013 Washington DC - WF 204 - Build scalable SharePoint 2013 S...
SharePointFest 2013 Washington DC - WF 204 - Build scalable SharePoint 2013 S...
Brian Culver
 
SharePoint Saturday Utah 2015 - SP2013 Search Driven Sites
SharePoint Saturday Utah 2015 - SP2013 Search Driven SitesSharePoint Saturday Utah 2015 - SP2013 Search Driven Sites
SharePoint Saturday Utah 2015 - SP2013 Search Driven Sites
Brian Culver
 
WF 103 - Build scalable SharePoint 2013 Staged Workflows to run locally and i...
WF 103 - Build scalable SharePoint 2013 Staged Workflows to run locally and i...WF 103 - Build scalable SharePoint 2013 Staged Workflows to run locally and i...
WF 103 - Build scalable SharePoint 2013 Staged Workflows to run locally and i...
Brian Culver
 
Extending Sitecore Commerce Connect
Extending Sitecore Commerce ConnectExtending Sitecore Commerce Connect
Extending Sitecore Commerce Connect
Kautilya Prasad
 
SharePoint Saturday Kansas 2015 - Building Killer Office365 Public Sites
SharePoint Saturday Kansas 2015 - Building Killer Office365 Public SitesSharePoint Saturday Kansas 2015 - Building Killer Office365 Public Sites
SharePoint Saturday Kansas 2015 - Building Killer Office365 Public Sites
Brian Culver
 
PowerShell Introduction to Administering SharePoint On-Premises & O365
PowerShell Introduction to Administering SharePoint On-Premises & O365PowerShell Introduction to Administering SharePoint On-Premises & O365
PowerShell Introduction to Administering SharePoint On-Premises & O365
Michael Greene
 
SRC 204 - Build a SharePoint 2013 Search Driven Application!
SRC 204 - Build a SharePoint 2013 Search Driven Application!SRC 204 - Build a SharePoint 2013 Search Driven Application!
SRC 204 - Build a SharePoint 2013 Search Driven Application!
Brian Culver
 
Tutorial: Building Business Solutions: InfoPath & Workflows by Jennifer Mason...
Tutorial: Building Business Solutions: InfoPath & Workflows by Jennifer Mason...Tutorial: Building Business Solutions: InfoPath & Workflows by Jennifer Mason...
Tutorial: Building Business Solutions: InfoPath & Workflows by Jennifer Mason...
SPTechCon
 
Know every customer, own every experience, david sigerson, senior business op...
Know every customer, own every experience, david sigerson, senior business op...Know every customer, own every experience, david sigerson, senior business op...
Know every customer, own every experience, david sigerson, senior business op...
e3
 
Hvordan realisere samhandlingspotensialet i Office 365
Hvordan realisere samhandlingspotensialet i Office 365Hvordan realisere samhandlingspotensialet i Office 365
Hvordan realisere samhandlingspotensialet i Office 365
Avanade Norway
 
Creating Workflows in Project Online
Creating Workflows in Project OnlineCreating Workflows in Project Online
Creating Workflows in Project Online
SPC Adriatics
 
Developing for SharePoint Online
Developing for SharePoint OnlineDeveloping for SharePoint Online
Developing for SharePoint Online
Ari Bakker
 
Deploying and Using the B2B Portal by Doug Johnson
Deploying and Using the B2B Portal by Doug JohnsonDeploying and Using the B2B Portal by Doug Johnson
Deploying and Using the B2B Portal by Doug Johnson
Acumatica Cloud ERP
 
SPSBNE - Advanced InfoPath and Nintex Workflow Techniques
SPSBNE - Advanced InfoPath and Nintex Workflow TechniquesSPSBNE - Advanced InfoPath and Nintex Workflow Techniques
SPSBNE - Advanced InfoPath and Nintex Workflow Techniques
23_kev
 
How To Make a Website Using Joomla
How To Make a Website Using JoomlaHow To Make a Website Using Joomla
How To Make a Website Using Joomla
Sparx IT Solutions Pvt Ltd
 
Anatomy of an Intranet (SPSATL 2014)
Anatomy of an Intranet (SPSATL 2014)Anatomy of an Intranet (SPSATL 2014)
Anatomy of an Intranet (SPSATL 2014)
Michael Greene
 
SharePoint 2016 Search
SharePoint 2016 SearchSharePoint 2016 Search
SharePoint 2016 Search
Mike Maadarani
 

What's hot (20)

Sitecore xPlatform - Introduction
Sitecore xPlatform - IntroductionSitecore xPlatform - Introduction
Sitecore xPlatform - Introduction
 
SharePoint Development Workshop
SharePoint Development WorkshopSharePoint Development Workshop
SharePoint Development Workshop
 
Trendspot ANZ 2014 - Federated Experience Manager - Thomas Eldblom
Trendspot ANZ 2014 - Federated Experience Manager - Thomas EldblomTrendspot ANZ 2014 - Federated Experience Manager - Thomas Eldblom
Trendspot ANZ 2014 - Federated Experience Manager - Thomas Eldblom
 
SharePointFest 2013 Washington DC - WF 204 - Build scalable SharePoint 2013 S...
SharePointFest 2013 Washington DC - WF 204 - Build scalable SharePoint 2013 S...SharePointFest 2013 Washington DC - WF 204 - Build scalable SharePoint 2013 S...
SharePointFest 2013 Washington DC - WF 204 - Build scalable SharePoint 2013 S...
 
SharePoint Saturday Utah 2015 - SP2013 Search Driven Sites
SharePoint Saturday Utah 2015 - SP2013 Search Driven SitesSharePoint Saturday Utah 2015 - SP2013 Search Driven Sites
SharePoint Saturday Utah 2015 - SP2013 Search Driven Sites
 
WF 103 - Build scalable SharePoint 2013 Staged Workflows to run locally and i...
WF 103 - Build scalable SharePoint 2013 Staged Workflows to run locally and i...WF 103 - Build scalable SharePoint 2013 Staged Workflows to run locally and i...
WF 103 - Build scalable SharePoint 2013 Staged Workflows to run locally and i...
 
Extending Sitecore Commerce Connect
Extending Sitecore Commerce ConnectExtending Sitecore Commerce Connect
Extending Sitecore Commerce Connect
 
SharePoint Saturday Kansas 2015 - Building Killer Office365 Public Sites
SharePoint Saturday Kansas 2015 - Building Killer Office365 Public SitesSharePoint Saturday Kansas 2015 - Building Killer Office365 Public Sites
SharePoint Saturday Kansas 2015 - Building Killer Office365 Public Sites
 
PowerShell Introduction to Administering SharePoint On-Premises & O365
PowerShell Introduction to Administering SharePoint On-Premises & O365PowerShell Introduction to Administering SharePoint On-Premises & O365
PowerShell Introduction to Administering SharePoint On-Premises & O365
 
SRC 204 - Build a SharePoint 2013 Search Driven Application!
SRC 204 - Build a SharePoint 2013 Search Driven Application!SRC 204 - Build a SharePoint 2013 Search Driven Application!
SRC 204 - Build a SharePoint 2013 Search Driven Application!
 
Tutorial: Building Business Solutions: InfoPath & Workflows by Jennifer Mason...
Tutorial: Building Business Solutions: InfoPath & Workflows by Jennifer Mason...Tutorial: Building Business Solutions: InfoPath & Workflows by Jennifer Mason...
Tutorial: Building Business Solutions: InfoPath & Workflows by Jennifer Mason...
 
Know every customer, own every experience, david sigerson, senior business op...
Know every customer, own every experience, david sigerson, senior business op...Know every customer, own every experience, david sigerson, senior business op...
Know every customer, own every experience, david sigerson, senior business op...
 
Hvordan realisere samhandlingspotensialet i Office 365
Hvordan realisere samhandlingspotensialet i Office 365Hvordan realisere samhandlingspotensialet i Office 365
Hvordan realisere samhandlingspotensialet i Office 365
 
Creating Workflows in Project Online
Creating Workflows in Project OnlineCreating Workflows in Project Online
Creating Workflows in Project Online
 
Developing for SharePoint Online
Developing for SharePoint OnlineDeveloping for SharePoint Online
Developing for SharePoint Online
 
Deploying and Using the B2B Portal by Doug Johnson
Deploying and Using the B2B Portal by Doug JohnsonDeploying and Using the B2B Portal by Doug Johnson
Deploying and Using the B2B Portal by Doug Johnson
 
SPSBNE - Advanced InfoPath and Nintex Workflow Techniques
SPSBNE - Advanced InfoPath and Nintex Workflow TechniquesSPSBNE - Advanced InfoPath and Nintex Workflow Techniques
SPSBNE - Advanced InfoPath and Nintex Workflow Techniques
 
How To Make a Website Using Joomla
How To Make a Website Using JoomlaHow To Make a Website Using Joomla
How To Make a Website Using Joomla
 
Anatomy of an Intranet (SPSATL 2014)
Anatomy of an Intranet (SPSATL 2014)Anatomy of an Intranet (SPSATL 2014)
Anatomy of an Intranet (SPSATL 2014)
 
SharePoint 2016 Search
SharePoint 2016 SearchSharePoint 2016 Search
SharePoint 2016 Search
 

Similar to Sitecore Commerce Catalog Management at Scale

Sug bangalore - sitecore commerce introduction
Sug bangalore - sitecore commerce introductionSug bangalore - sitecore commerce introduction
Sug bangalore - sitecore commerce introduction
Anindita Bhattacharya
 
Introducing Sitecore - The Experience Platform
Introducing Sitecore - The Experience PlatformIntroducing Sitecore - The Experience Platform
Introducing Sitecore - The Experience Platform
Adrian IORGU
 
Analytics at Carbonite: presentation to Snowplow Meetup Boston April 2016
Analytics at Carbonite: presentation to Snowplow Meetup Boston April 2016Analytics at Carbonite: presentation to Snowplow Meetup Boston April 2016
Analytics at Carbonite: presentation to Snowplow Meetup Boston April 2016
yalisassoon
 
Making ultra fast ultra scalable solutions with sitecore 8
Making ultra fast ultra scalable solutions with sitecore 8Making ultra fast ultra scalable solutions with sitecore 8
Making ultra fast ultra scalable solutions with sitecore 8
Mark van Aalst
 
Customer Webinar: Scaling and Optimizing a Large e-Commerce Drupal Solution
Customer Webinar: Scaling and Optimizing a Large e-Commerce Drupal SolutionCustomer Webinar: Scaling and Optimizing a Large e-Commerce Drupal Solution
Customer Webinar: Scaling and Optimizing a Large e-Commerce Drupal Solution
SearchStax
 
What's new in Sitecore 9.3
What's new in Sitecore 9.3What's new in Sitecore 9.3
What's new in Sitecore 9.3
Pieter Brinkman
 
The Sitecore Marketing Technology Ecosystem
The Sitecore Marketing Technology EcosystemThe Sitecore Marketing Technology Ecosystem
The Sitecore Marketing Technology Ecosystem
edynamic
 
High-level Guide: Upgrading to SharePoint 2013
High-level Guide: Upgrading to SharePoint 2013High-level Guide: Upgrading to SharePoint 2013
High-level Guide: Upgrading to SharePoint 2013
C5 Insight
 
Extending Sitecore Commerce Connect
Extending Sitecore Commerce ConnectExtending Sitecore Commerce Connect
Extending Sitecore Commerce Connect
Kautilya Prasad
 
Sitecore9 key features by jitendra soni - Presented in Sitecore User Group UK
Sitecore9 key features by jitendra soni - Presented in Sitecore User Group UKSitecore9 key features by jitendra soni - Presented in Sitecore User Group UK
Sitecore9 key features by jitendra soni - Presented in Sitecore User Group UK
Jitendra Soni
 
Building high performance and scalable share point applications
Building high performance and scalable share point applicationsBuilding high performance and scalable share point applications
Building high performance and scalable share point applications
Talbott Crowell
 
Fried toronto sps14 91 wcm intranet
Fried toronto sps14 91 wcm intranetFried toronto sps14 91 wcm intranet
Fried toronto sps14 91 wcm intranet
Jeff Fried
 
Nsc 2013 06-17 - random rants on 2013
Nsc 2013 06-17 - random rants on 2013Nsc 2013 06-17 - random rants on 2013
Nsc 2013 06-17 - random rants on 2013
Mikael Svenson
 
Plan, prepare & overall process of upgrade and migrate to SharePoint 2013
Plan, prepare & overall process of upgrade and migrate to SharePoint 2013Plan, prepare & overall process of upgrade and migrate to SharePoint 2013
Plan, prepare & overall process of upgrade and migrate to SharePoint 2013
Kashish Sukhija
 
SUG Bangalore - Kick Off Session
SUG Bangalore - Kick Off SessionSUG Bangalore - Kick Off Session
SUG Bangalore - Kick Off Session
Anindita Bhattacharya
 
BikersPlanet.pptx
BikersPlanet.pptxBikersPlanet.pptx
BikersPlanet.pptx
PareshsinhUmeshsinhC
 
Customer engagement solution architecture and Dynamics 365 Portals
Customer engagement solution architecture and Dynamics 365 PortalsCustomer engagement solution architecture and Dynamics 365 Portals
Customer engagement solution architecture and Dynamics 365 Portals
Digital Illustrated
 
Sitecore 9.2 new features for SUGMEA - Presented by Naresh Geepalem of Horizo...
Sitecore 9.2 new features for SUGMEA - Presented by Naresh Geepalem of Horizo...Sitecore 9.2 new features for SUGMEA - Presented by Naresh Geepalem of Horizo...
Sitecore 9.2 new features for SUGMEA - Presented by Naresh Geepalem of Horizo...
dharmeshharji
 
Biotechne + Searchstax webinar presentation
Biotechne + Searchstax webinar presentationBiotechne + Searchstax webinar presentation
Biotechne + Searchstax webinar presentation
Ben Bradley
 
Integrate Applications into IBM Connections Cloud and On Premises (AD 1632)
Integrate Applications into IBM Connections Cloud and On Premises (AD 1632)Integrate Applications into IBM Connections Cloud and On Premises (AD 1632)
Integrate Applications into IBM Connections Cloud and On Premises (AD 1632)
TIMETOACT GROUP
 

Similar to Sitecore Commerce Catalog Management at Scale (20)

Sug bangalore - sitecore commerce introduction
Sug bangalore - sitecore commerce introductionSug bangalore - sitecore commerce introduction
Sug bangalore - sitecore commerce introduction
 
Introducing Sitecore - The Experience Platform
Introducing Sitecore - The Experience PlatformIntroducing Sitecore - The Experience Platform
Introducing Sitecore - The Experience Platform
 
Analytics at Carbonite: presentation to Snowplow Meetup Boston April 2016
Analytics at Carbonite: presentation to Snowplow Meetup Boston April 2016Analytics at Carbonite: presentation to Snowplow Meetup Boston April 2016
Analytics at Carbonite: presentation to Snowplow Meetup Boston April 2016
 
Making ultra fast ultra scalable solutions with sitecore 8
Making ultra fast ultra scalable solutions with sitecore 8Making ultra fast ultra scalable solutions with sitecore 8
Making ultra fast ultra scalable solutions with sitecore 8
 
Customer Webinar: Scaling and Optimizing a Large e-Commerce Drupal Solution
Customer Webinar: Scaling and Optimizing a Large e-Commerce Drupal SolutionCustomer Webinar: Scaling and Optimizing a Large e-Commerce Drupal Solution
Customer Webinar: Scaling and Optimizing a Large e-Commerce Drupal Solution
 
What's new in Sitecore 9.3
What's new in Sitecore 9.3What's new in Sitecore 9.3
What's new in Sitecore 9.3
 
The Sitecore Marketing Technology Ecosystem
The Sitecore Marketing Technology EcosystemThe Sitecore Marketing Technology Ecosystem
The Sitecore Marketing Technology Ecosystem
 
High-level Guide: Upgrading to SharePoint 2013
High-level Guide: Upgrading to SharePoint 2013High-level Guide: Upgrading to SharePoint 2013
High-level Guide: Upgrading to SharePoint 2013
 
Extending Sitecore Commerce Connect
Extending Sitecore Commerce ConnectExtending Sitecore Commerce Connect
Extending Sitecore Commerce Connect
 
Sitecore9 key features by jitendra soni - Presented in Sitecore User Group UK
Sitecore9 key features by jitendra soni - Presented in Sitecore User Group UKSitecore9 key features by jitendra soni - Presented in Sitecore User Group UK
Sitecore9 key features by jitendra soni - Presented in Sitecore User Group UK
 
Building high performance and scalable share point applications
Building high performance and scalable share point applicationsBuilding high performance and scalable share point applications
Building high performance and scalable share point applications
 
Fried toronto sps14 91 wcm intranet
Fried toronto sps14 91 wcm intranetFried toronto sps14 91 wcm intranet
Fried toronto sps14 91 wcm intranet
 
Nsc 2013 06-17 - random rants on 2013
Nsc 2013 06-17 - random rants on 2013Nsc 2013 06-17 - random rants on 2013
Nsc 2013 06-17 - random rants on 2013
 
Plan, prepare & overall process of upgrade and migrate to SharePoint 2013
Plan, prepare & overall process of upgrade and migrate to SharePoint 2013Plan, prepare & overall process of upgrade and migrate to SharePoint 2013
Plan, prepare & overall process of upgrade and migrate to SharePoint 2013
 
SUG Bangalore - Kick Off Session
SUG Bangalore - Kick Off SessionSUG Bangalore - Kick Off Session
SUG Bangalore - Kick Off Session
 
BikersPlanet.pptx
BikersPlanet.pptxBikersPlanet.pptx
BikersPlanet.pptx
 
Customer engagement solution architecture and Dynamics 365 Portals
Customer engagement solution architecture and Dynamics 365 PortalsCustomer engagement solution architecture and Dynamics 365 Portals
Customer engagement solution architecture and Dynamics 365 Portals
 
Sitecore 9.2 new features for SUGMEA - Presented by Naresh Geepalem of Horizo...
Sitecore 9.2 new features for SUGMEA - Presented by Naresh Geepalem of Horizo...Sitecore 9.2 new features for SUGMEA - Presented by Naresh Geepalem of Horizo...
Sitecore 9.2 new features for SUGMEA - Presented by Naresh Geepalem of Horizo...
 
Biotechne + Searchstax webinar presentation
Biotechne + Searchstax webinar presentationBiotechne + Searchstax webinar presentation
Biotechne + Searchstax webinar presentation
 
Integrate Applications into IBM Connections Cloud and On Premises (AD 1632)
Integrate Applications into IBM Connections Cloud and On Premises (AD 1632)Integrate Applications into IBM Connections Cloud and On Premises (AD 1632)
Integrate Applications into IBM Connections Cloud and On Premises (AD 1632)
 

Recently uploaded

Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectors
Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectorsConnector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectors
Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectors
DianaGray10
 
GraphRAG for LifeSciences Hands-On with the Clinical Knowledge Graph
GraphRAG for LifeSciences Hands-On with the Clinical Knowledge GraphGraphRAG for LifeSciences Hands-On with the Clinical Knowledge Graph
GraphRAG for LifeSciences Hands-On with the Clinical Knowledge Graph
Neo4j
 
Christine's Product Research Presentation.pptx
Christine's Product Research Presentation.pptxChristine's Product Research Presentation.pptx
Christine's Product Research Presentation.pptx
christinelarrosa
 
Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024
Jason Packer
 
Dandelion Hashtable: beyond billion requests per second on a commodity server
Dandelion Hashtable: beyond billion requests per second on a commodity serverDandelion Hashtable: beyond billion requests per second on a commodity server
Dandelion Hashtable: beyond billion requests per second on a commodity server
Antonios Katsarakis
 
Taking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdfTaking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdf
ssuserfac0301
 
Crafting Excellence: A Comprehensive Guide to iOS Mobile App Development Serv...
Crafting Excellence: A Comprehensive Guide to iOS Mobile App Development Serv...Crafting Excellence: A Comprehensive Guide to iOS Mobile App Development Serv...
Crafting Excellence: A Comprehensive Guide to iOS Mobile App Development Serv...
Pitangent Analytics & Technology Solutions Pvt. Ltd
 
LF Energy Webinar: Carbon Data Specifications: Mechanisms to Improve Data Acc...
LF Energy Webinar: Carbon Data Specifications: Mechanisms to Improve Data Acc...LF Energy Webinar: Carbon Data Specifications: Mechanisms to Improve Data Acc...
LF Energy Webinar: Carbon Data Specifications: Mechanisms to Improve Data Acc...
DanBrown980551
 
Biomedical Knowledge Graphs for Data Scientists and Bioinformaticians
Biomedical Knowledge Graphs for Data Scientists and BioinformaticiansBiomedical Knowledge Graphs for Data Scientists and Bioinformaticians
Biomedical Knowledge Graphs for Data Scientists and Bioinformaticians
Neo4j
 
zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...
zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...
zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...
Alex Pruden
 
"$10 thousand per minute of downtime: architecture, queues, streaming and fin...
"$10 thousand per minute of downtime: architecture, queues, streaming and fin..."$10 thousand per minute of downtime: architecture, queues, streaming and fin...
"$10 thousand per minute of downtime: architecture, queues, streaming and fin...
Fwdays
 
Apps Break Data
Apps Break DataApps Break Data
Apps Break Data
Ivo Velitchkov
 
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
saastr
 
Fueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte WebinarFueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte Webinar
Zilliz
 
Northern Engraving | Nameplate Manufacturing Process - 2024
Northern Engraving | Nameplate Manufacturing Process - 2024Northern Engraving | Nameplate Manufacturing Process - 2024
Northern Engraving | Nameplate Manufacturing Process - 2024
Northern Engraving
 
The Microsoft 365 Migration Tutorial For Beginner.pptx
The Microsoft 365 Migration Tutorial For Beginner.pptxThe Microsoft 365 Migration Tutorial For Beginner.pptx
The Microsoft 365 Migration Tutorial For Beginner.pptx
operationspcvita
 
Session 1 - Intro to Robotic Process Automation.pdf
Session 1 - Intro to Robotic Process Automation.pdfSession 1 - Intro to Robotic Process Automation.pdf
Session 1 - Intro to Robotic Process Automation.pdf
UiPathCommunity
 
Must Know Postgres Extension for DBA and Developer during Migration
Must Know Postgres Extension for DBA and Developer during MigrationMust Know Postgres Extension for DBA and Developer during Migration
Must Know Postgres Extension for DBA and Developer during Migration
Mydbops
 
Introduction of Cybersecurity with OSS at Code Europe 2024
Introduction of Cybersecurity with OSS  at Code Europe 2024Introduction of Cybersecurity with OSS  at Code Europe 2024
Introduction of Cybersecurity with OSS at Code Europe 2024
Hiroshi SHIBATA
 
Demystifying Knowledge Management through Storytelling
Demystifying Knowledge Management through StorytellingDemystifying Knowledge Management through Storytelling
Demystifying Knowledge Management through Storytelling
Enterprise Knowledge
 

Recently uploaded (20)

Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectors
Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectorsConnector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectors
Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectors
 
GraphRAG for LifeSciences Hands-On with the Clinical Knowledge Graph
GraphRAG for LifeSciences Hands-On with the Clinical Knowledge GraphGraphRAG for LifeSciences Hands-On with the Clinical Knowledge Graph
GraphRAG for LifeSciences Hands-On with the Clinical Knowledge Graph
 
Christine's Product Research Presentation.pptx
Christine's Product Research Presentation.pptxChristine's Product Research Presentation.pptx
Christine's Product Research Presentation.pptx
 
Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024
 
Dandelion Hashtable: beyond billion requests per second on a commodity server
Dandelion Hashtable: beyond billion requests per second on a commodity serverDandelion Hashtable: beyond billion requests per second on a commodity server
Dandelion Hashtable: beyond billion requests per second on a commodity server
 
Taking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdfTaking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdf
 
Crafting Excellence: A Comprehensive Guide to iOS Mobile App Development Serv...
Crafting Excellence: A Comprehensive Guide to iOS Mobile App Development Serv...Crafting Excellence: A Comprehensive Guide to iOS Mobile App Development Serv...
Crafting Excellence: A Comprehensive Guide to iOS Mobile App Development Serv...
 
LF Energy Webinar: Carbon Data Specifications: Mechanisms to Improve Data Acc...
LF Energy Webinar: Carbon Data Specifications: Mechanisms to Improve Data Acc...LF Energy Webinar: Carbon Data Specifications: Mechanisms to Improve Data Acc...
LF Energy Webinar: Carbon Data Specifications: Mechanisms to Improve Data Acc...
 
Biomedical Knowledge Graphs for Data Scientists and Bioinformaticians
Biomedical Knowledge Graphs for Data Scientists and BioinformaticiansBiomedical Knowledge Graphs for Data Scientists and Bioinformaticians
Biomedical Knowledge Graphs for Data Scientists and Bioinformaticians
 
zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...
zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...
zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...
 
"$10 thousand per minute of downtime: architecture, queues, streaming and fin...
"$10 thousand per minute of downtime: architecture, queues, streaming and fin..."$10 thousand per minute of downtime: architecture, queues, streaming and fin...
"$10 thousand per minute of downtime: architecture, queues, streaming and fin...
 
Apps Break Data
Apps Break DataApps Break Data
Apps Break Data
 
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
 
Fueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte WebinarFueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte Webinar
 
Northern Engraving | Nameplate Manufacturing Process - 2024
Northern Engraving | Nameplate Manufacturing Process - 2024Northern Engraving | Nameplate Manufacturing Process - 2024
Northern Engraving | Nameplate Manufacturing Process - 2024
 
The Microsoft 365 Migration Tutorial For Beginner.pptx
The Microsoft 365 Migration Tutorial For Beginner.pptxThe Microsoft 365 Migration Tutorial For Beginner.pptx
The Microsoft 365 Migration Tutorial For Beginner.pptx
 
Session 1 - Intro to Robotic Process Automation.pdf
Session 1 - Intro to Robotic Process Automation.pdfSession 1 - Intro to Robotic Process Automation.pdf
Session 1 - Intro to Robotic Process Automation.pdf
 
Must Know Postgres Extension for DBA and Developer during Migration
Must Know Postgres Extension for DBA and Developer during MigrationMust Know Postgres Extension for DBA and Developer during Migration
Must Know Postgres Extension for DBA and Developer during Migration
 
Introduction of Cybersecurity with OSS at Code Europe 2024
Introduction of Cybersecurity with OSS  at Code Europe 2024Introduction of Cybersecurity with OSS  at Code Europe 2024
Introduction of Cybersecurity with OSS at Code Europe 2024
 
Demystifying Knowledge Management through Storytelling
Demystifying Knowledge Management through StorytellingDemystifying Knowledge Management through Storytelling
Demystifying Knowledge Management through Storytelling
 

Sitecore Commerce Catalog Management at Scale

  • 1. 1DC SITECORE USER GROUP Sitecore Commerce Catalog Management at Scale DC SITECORE USER GROUP SEPTEMBER 6, 2017
  • 2. 2DC SITECORE USER GROUP • Email: dean_thrasher@epam.com • Blog: https://deanthrasher.com/ • Twitter: @dthrasher • LinkedIn: https://www.linkedin.com/in/deanthrasher • Co-organizer of the DC Sitecore User Group https://www.meetup.com/DC-Sitecore-User-Group/ • Sitecore enthusiast since 2010 ABOUT DEAN THRASHER
  • 3. 3DC SITECORE USER GROUP AGENDA Sitecore Commerce Landscape1 Types of Commerce Operations2 Product Catalog Sync3 Decisions, Decisions!4 SCpbMD Example (Microsoft Dynamics 365)5
  • 4. 4DC SITECORE USER GROUP IF I ONLY HAD A WHITEBOARD…
  • 5. 5DC SITECORE USER GROUP • Legacy commerce / shopping cart implementations – Active Commerce – uCommerce – Insite – Others / custom implementations • First-party Sitecore implementation – Sitecore Commerce (completely rebuilt version of Microsoft Commerce Server) • Third-party Sitecore implementations – Dynamics AX / D365 (joint development by Microsoft and Sitecore) – Hybris (integration built by EPAM, announced at Symposium 2016) SITECORE COMMERCE LANDSCAPE
  • 6. 6DC SITECORE USER GROUP THREE KINDS OF COMMERCE OPERATIONS Product Catalog • Add Products • Update Products • Delete Products • … Cart and Checkout • Add/Remove from Cart • Select Payment Type • Provide Billing Address • Provide Shipping Address • Apply Coupon/Discount • … User Account • Register • Sign in • Maintain Profile • View Order History • …
  • 7. 7DC SITECORE USER GROUP • Most large retailers have a specialized CMS for managing products called a Product Information Management system (PIM) • Data from the PIM is used by a variety of other enterprise systems, including the ERP / Accounting system and the ecommerce website • Historically, it was common to separate the “content” side of a website from the “commerce” side • Sitecore’s approach is to import and cache the product catalog(s) stored in the PIM so that products can be mixed with non-product content PRODUCT CATALOG SYNC
  • 8. 8DC SITECORE USER GROUP • Push vs. pull • Sync intervals • Full vs. incremental sync • Copy vs. transform • Who writes what when? DECISIONS, DECISIONS!
  • 9. 9DC SITECORE USER GROUP D365 EXAMPLE SITECORE COMMERCE CATALOG MANAGEMENT
  • 10. 10DC SITECORE USER GROUP D365 INTEGRATION
  • 11. 11DC SITECORE USER GROUP • The Data Exchange Framework models and runs synchronization processes • Sitecore uses it to run the catalog sync process with AX / D365 • It reads from the web APIs from those systems, then generates an XML file to import into the Sitecore Commerce Database DATA EXCHANGE FRAMEWORK
  • 12. 12DC SITECORE USER GROUP D365 CATALOG DATA SYNC AX Online Channel Database Retail Server API Sitecore Commerce Product Catalog Distribute Publish Transform Import Catalog.xml Fetch Access Access Invokes
  • 13. 13DC SITECORE USER GROUP • By maintain its own copy of the product catalog in a known format, Sitecore insulates your website from changes to your catalog system • This allows you to version your Sitecore CMS and website independently of the product information management (PIM) system • It adds flexibility at the expense of complexity ADAPTER PATTERN
  • 14. 14DC SITECORE USER GROUP • The Sitecore Commerce database is a known schema, so Sitecore provides a data provider implementation to make those items appear like “normal” Sitecore items • Since product items are not stored in the master or web databases, they do not participate in publishing in the same way that regular content does • Data providers operate at a very low level within Sitecore. They aren’t documented very well and rely on dark magic. • Write one at your own risk! DATA PROVIDER
  • 15. 15DC SITECORE USER GROUP • The data provider doesn’t make the product catalog appear within your site directly. Instead, wildcard items are used to point a part of the Sitecore content tree at the product catalog. • At scale, you’ll probably want to use a bucket-like experience to bring the catalog into Sitecore, then modify your WildcardItemResolver to bring in the products and categories as needed. WILDCARD ITEMS
  • 16. 16DC SITECORE USER GROUP • Product catalog data can be immediately live or can use the Commerce Server Staging service to perform a “switch-on-rebuild” operation • Once catalog data is live, changes need to be reindexed in your search engine PUBLISHING AND INDEXING
  • 17. 17DC SITECORE USER GROUP QUESTIONS? SITECORE COMMERCE CATALOG MANAGEMENT
  • 18. 18DC SITECORE USER GROUP APPENDIX SITECORE COMMERCE CATALOG MANAGEMENT
  • 19. 19DC SITECORE USER GROUP • If the PIM pushes updates to the CMS, the information will be available to customers faster, BUT… • If the CMS asks for product catalog information the two systems are less tightly coupled, especially if the CMS maintains its own product cache Sitecore uses a pull mechanism for product catalog sync operations PUSH VS. PULL
  • 20. 20DC SITECORE USER GROUP • How often do you perform an update? • Are there any operations that require real-time or near-real time calls? – Product availability – Amount in stock – Price and promotion changes Sitecore uses a scheduled job to for product sync – at an interval you determine – coupled with real-time operations for sensitive or rapidly changing data SYNC INTERVALS
  • 21. 21DC SITECORE USER GROUP • You’ll need to benchmark your systems to determine which is faster • But you’ll need to support both, if only to update products or prices in emergency situations Sitecore supports both methods* *assuming your PIM supports both methods FULL VS. INCREMENTAL SYNC
  • 22. 22DC SITECORE USER GROUP • Since information coming from the PIM has gone through its own review and approval process, you could simply display it as-is… • Or you could change or transform it, at the cost of additional complexity Sitecore provides a lot of flexibility to transform product catalog data. Use it wisely! COPY VS. TRANSFORM
  • 23. 23DC SITECORE USER GROUP • Ideally, the CMS would have read-only copies of product catalog data, BUT… • …You might want to enrich PIM data with additional information only needed by the website, AND… • …Mistakes happen, and sometimes you need to correct information right away • …So it’s often valuable to allow the CMS to override or temporarily modify values • Avoid bi-directional sync if you can! This one’s up to you… WHO WRITES WHAT WHEN?