2. On the menu…
1. What is Sitecore Commerce Connect?
2. What is InsiteCommerce?
3. The InsiteCommerce Plus Sitecore connector in action.
4. A look behind the scenes.
5. Q&A
3. What is Commerce Connect?
• Framework for wiring up commerce
systems to Sitecore
• Imports products to Sitecore
• Provides APIs for shopping funnel
• Goals and Engagement Plans
• Extensible architecture
• Pipelines
• Domain Objects
• Repositories
Commerce Connect
Insite 4.1-4.x
InsiteCommerce Plus Sitecore
Sitecore 8.X
4. What is Insite Commerce ?
• Deep integration capabilities
• Manage products
• Assign pricing
• Maintain inventory
• Order processing
• Out of the box functionality
• Search
• Frontend
• B2C and B2B ecommerce
5. Insite Commerce .. continued
• Exposes rest APIs to interact
with Insite
• Multisite
• Multi currency
• Multi lingual
• Customer based catalogues
• Customer based pricing
• Power platform for B2B
6. Insite Plus Sitecore Connect
What is it?
• Product
• Connects Sitecore and Insite
• Standardization
• Standard Sitecore APIs used for
information flow
• Development
• No knowledge of underlying Insite
APIs required
• Personalization
• Track user history and personalize
• Marketing
• Monitor goals and Engagement Plans
First Time User – Featured
Products Returning Customer –
Personalized Products based
on history
7. Insite Plus Sitecore Connect… continued
• Easy Integration
• Bring Products into Sitecore
• xDB
• Track user activity, goals
• Time to Market
• Effort required for development
• Unique Insite Features
• Customer Based Catalogues
• Pricing
• Sitecore Commerce Connect 8.0
• Extensible and Robust
8. Insite Plus Sitecore Connect… continued
Search capabilities
• Implement Sitecore search
• Insite search
Mix product content
11. So, how does this all work?
• Pipelines and Service Providers
• Service Providers wrap pipelines
• Pipelines interact with xDB and Sitecore Content
• We implemented commands for talking to Insite 4.x Rest API
• Entities and Repositories
• Entity classes (product, category, etc.) are pure DTOs with no
dependencies on Commerce System or Sitecore.
• Repository classes provide access, mapping methods.
• We extended both to provide some Insite specific features
(Unit of Measure, Category images)
• Product Sync
• Loads “artifacts” first: images, classes, categories, global
attributes
• Then it updates each product
• Insite Styled Variants as a challenge: attributes are contained
in parent item.
12. Pipelines connect shop to Sitecore
Pipelines exist for all user and shopping funnel events,
with processors for all Sitecore communication.
• Reading or saving commerce entities to Sitecore:
• Recording to xDB (Goals, Events, Engagement Automation):
13. Pipelines connect Sitecore to Insite
Sitecore provides stub methods for communication to External Commerce System…
We override these to query the Insite API…
… and write the results to pipeline argument properties.
14. So how is this content stored in Sitecore?
• Commerce entities are defined as entity classes:
• Repository classes map these to Sitecore items:
• Repositories provide abstraction layer between code and persistence (items, user manger, or xDB)
15. Insite IDs are mapped to Sitecore IDs
• MD5 hashing used to turn Insite IDs to Sitecore IDs:
• Item.ID = MD5.ComputeHash(prefix + Insite ID)
• Prefix is defined in repository parameters (e.g. “Product_”).
• Faster than storing ID conversions, and does not use disk.
• Ensures products consistently map to items
16. Repository configuration ties it all together
• A type to manage the collection.
• The branch template for creating items.
• The location of the repository
• The prefix for ID Generation
17. Repositories & entities are extensible
1. Add new base template
2. Override entity class definition in
configuration
3. Extend repository class in
configuration and extend mapping
methods
19. SynchronizeProducts has four steps
• Synchronize artifacts: Categories, classes, manufacturers,
• Load list of products
• Synchronize each product entity individually
• Synchronize each product attribute or relationship
20. Challenge of Styled Variants
• Attributes are loaded before products, but for Insite Styled Variants, attributes are part of
parent product.
• Solution:
• Call mini artifacts pipeline
• Call mini product pipeline
• Return to main product pipeline
21. To learn more…
• Watch the series on YouTube “Master Sitecore” channel
• Follow Kautilya’s blog posts at XCentium.com