Sample Sitecore Content Hub to Experience Commerce connector

Abstract

Describes the functionality provided by Plugin.Sample.ContentHub sample plugin.

The Plugin.Sample.ContentHub sample plugin defines a connector that lets you build an integration between Sitecore Experience Commerce (XC) and Sitecore Content Hub.

The Sitecore Content Hub to Experience Commerce connector provides the ability to synchronize updates to products stored in the Content Hub Product Content Management (PCM) to the Commerce Engine. It provides digital merchandisers and marketing content creators the ability to update and maintain their products using Content Hub, and have those updates asynchronously pushed to the Commerce Engine. Synchronized product updates (such as updates to a product description, for example) are visible in the Business Tools, and based on configuration in the storefront.

The Plugin.Sample.ContentHub plugin is provided as a sample within the Sitecore.Commerce.Engine.SDK package, and provides the source code you need to start creating your own integration, to meet specific product schema requirements.

The integration relies on PCM and Sitecore XC sharing a common product and catalog schema definition, where product properties in PCM map to equivalent sellable item properties in the Commerce Engine, so that updates to properties in PCM are synchronized in the Commerce Engine.

Compatibility, scope, and limitations

Important

The Plugin.Sample.ContentHub plugin is compatible and tested with Sitecore Experience Commerce 10.0 and Sitecore Content Hub release 3.2.203. The default configuration for mapping Product entities from Sitecore Content Hub to sellable items in Sitecore XC is based on the ProSaaS template available with Content Hub release 3.2.203 .

To integrate Sitecore Experience Commerce 10.0 with any other version of Sitecore Content Hub, you must create your own plugin extensions for required compatibility.

The following table details functionality that is within the scope of the Plugin.Sample.ContentHub sample plugin out-of-the-box.

In scope

Limitations

One-way, asynchronous data synchronization - from Sitecore Content Hub to Sitecore Experience Commerce.

Data synchronization from Sitecore XC to Content Hub is not supported.

Support for a single Azure Service Bus instance per Commerce minions service role for a given environment.

The Azure Service Bus listener runs as an asynchronous process on the Commerce minions service role. The use of multiple Azure Service Bus instances or multiple Commerce minions roles for scaling data synchronization to the same Commerce catalog is not supported.

PCM product to XC sellable item entity mappings based on matching product identifiers.

Mapping a Content Hub product to any of the following Commerce catalog entities is not supported:

  • Variant of a sellable item.

  • Product bundles.

  • Entity relationships, such as mapping catalog hierarchies/categories.

Data synchronization triggered by product update operations only.

No data synchronization upon product create or delete operations.

Synchronization of Content Hub (CH) localizable product properties.

The updated Content Hub product property must be localizable for the synchronization to update localized versions of the corresponding property in the Commerce Engine.

Out-of-the-box, synchronization of a limited number of product properties (and related image assets) are assumed to exist in both Content Hub and Sitecore XC.

Note

A developer or system integrator can add custom attributes to Content Hub and Sitecore XC as needed, based on the required product schema.

By default, Sitecore XC is configured with the following Content Hub (CH) product attributes to XC sellable item attribute mappings:

  • Product short description (CH) -> Name (XC)

  • Product long description (CH) -> Display name (XC)

Note

The default mapping of PCM Product attributes are based on the product definitions in the ProSaaS template available with Content Hub release 3.2.203)

Synchronization of updates to image assets (in DAM) that are associated with a product.

Synchronization of other types of digital assets is not supported.

The version of the XC sellable item affected by the synchronization is a function of the IgnorePublishedPolicy policy in the environment configuration. For example, if the policy is used in the environment configuration, then the latest version of the sellable item in Sitecore XC is synchronized to reflect the updated Content Hub product property.

Catalog entity versioning or approval workflows for entity versions in XC Business Tools are not supported.