Product Content Hub: A Beginner’s Guide to New SaaS PIM from SAP
Product data is a core of e-commerce and integral part of the customer experience and customer journey. The well-organized product data drives customer acquisition, sales and eventually results in the increasing lifetime value of a customer.
SAP has recently announced a new SaaS offering, SAP Product Content Hub, a cloud-based solution for product and information management (PIM). The new product relies on the SaaS model only.
In this article, I’m basically just going to give a little bit of an introduction to what SAP Product Content Hub is as well as shed some light on what is under the hood in terms of architecture and customizability.
PIM: Making the Most Of Product Data
So just to start, let’s begin with a quick overview and key concepts of product management architectures. Such an introduction will help those who are not familiar with product management software better understand the positioning and architecture of Product Content Hub.
There are various tools available to help us with product management, and those are called Product Content Management (PCM) or Product Information Management (PIM) system. These terms are often used interchangeably, but it is generally held that PCM comprises the ability to manage the product content like the product title and description, and PIM provides a wider set of features including distributing the product data into a variety of retail and marketplace channels.
With the PIM, you can manage all your product data at once from a single interface. SKU, product references, images and videos, translations, localizations, datasheets. The system takes care to propagate the changes over the specialized systems inside or outside your perimeter. The product information can be delivered to all sorts of stakeholders, from internal business operations to suppliers, manufacturers, wholesalers, and customers.
SAP pitches the SAP Product Content Hub as a standalone (but SaaS) product intended to help companies to centralize and harmonize all the technical and marketing information of their catalogs and consistently deliver it across different channels.
Architecture and Capabilities
By and large, SAP Product Content Hub consists of two major SaaS components: PIM component and Cloud Data Feed Management/Data Syndication.
- PIM Component (SaaS) which runs on the SAP cloud automation infrastructure and based on the Commerce Cloud Platform. Product Content Management Backoffice, a core of the solution, is very similar to the one used in SAP Commerce Cloud. Essentially, SAP Commerce Cloud and SAP Product Content Hub share the same components and underlying platform, integration interfaces and UI/UX concepts.
- Cloud Data Feed Management and Data Syndication service (SaaS) which is provided by Productsup and runs on the Productsup’s infrastructure. The Cloud PCM Service is a SaaS product management solution functionally and architecturally similar to the Product Content Management Backoffice used in the SAP Commerce Cloud.
Capabilities of the system can be broadly outlined in the following large categories:
Product Data Management
Product Data Model Management
Users and Workflows
Data Feed Management
Managing Product Data
- Managing Product Information. You can create, update and compare product item instances, import and export the product details in bulk from/to Excel format. The integrated and configurable product data validation helps to ensure that every data value is correct and accurate. You can also export product information into an Excel file for offline editing, which can then be re-imported into the system.
- Managing Product Catalogs. You can administer catalogs, catalog versions to set up structures for e.g. different countries, special catalogs, part catalogs, and temporary versions using the same concepts and functionality as provided by the SAP Commerce Cloud platform.
- Managing Product Categories. You can define categories to organize products by type.
- Synchronization. You can maintain staged and online catalogs and copy (synchronize) products from staged to online when they are ready for being published.
- Importing Media using Excel. You can upload the zipped set of media files and the Excel file saying what media file should be associated with what product/product attribute.
Managing Product Data Model
- Classification system. You can use category-related flexible product attributes. Each category feature assigned to a category in a catalog structure is inherited by all sub-categories.
- Dynamic Product Data Modeling. You can manage product attributes and product types by setting up product super/sub-type hierarchies with attribute inheritance during runtime.
Users and Workflows
- Workflows. Using Collaboration Center, you can create workflows and assign tasks to speed up the work process and ensure that no steps are missed.
- User Roles and Permission Management. You can manage user, user groups, user roles, restrict visibility and adjust rights based on business object types and related attributes, control user’s ability to read, copy, write, or delete items, as well as set restrictions for multiple languages.
Feed Management and Data Syndication
Productsup. A major component of the solution is Productsup, a leading cloud-based solution for intuitive and powerful product data management and feed optimization. With 1500+ channels available, Productsup offers a large assortment of integrations for feed management and product content syndication. The systems are seamlessly integrated and have even shared similar UI/UX patterns, design, and structure.
Data Management Cockpits
Backoffice allows access to actions according to the defined user roles. Depending on the role of the user, an access can include different Perspectives based on account permissions. These perspectives are also called «Cockpits» both in SAP Commerce Cloud and SAP Product Content Hub.
There are three available cockpits in the SAP Product Content Hub:
- Administration Cockpit for Product, Catalog, Catalog Version, Categories, Media, User, Usergroups, and Workflow management. For Product and Category management, the interfaces are not feature-rich and as it is in a product-centric view, Product Cockpit
- Product Cockpit for product data management, data modeling, excel import/export
- Integration Cockpit for OData API management and monitoring
Additionally, Productsup provides the Data Feed Manager perspective, for data feed/data flow management, data transformation and normalization rule management.
Product Content Hub vs SAP Commerce PCM
In the past, SAP had a standalone, on-premise offering called SAP Product Content Management (PCM). Internally, it was SAP Commerce Cloud with a license targeted at Product Content Management only. It is no longer available in this form, but that offering is very familiar to the community. The natural question is what the difference is between the Commerce PCM and SAP Product Content Hub.
Although SAP Product Content Hub is built on many functional components of SAP Product Content Management. it makes them look like ’twins’, but in fact they are not 100% comparable. SAP Product Content Hub offers exclusive features such as integration between Productsup and Dynamic Data modeling, Media Control (support of Private/Public Media) and delivery. This is followed by different integration and customization concepts.
Implementation partners and customers as well extensibility and customization concepts are different in SAP Commerce Cloud and SAP Product Content Hub. The customization approach is based on service oriented architecture supposed to be implemented as KYMA / SAP Cloud Platform Extension Factory extensions. You can publish a webservice on the cluster, and connect the webservice to SAP Product Content Hub. This mechanism is still young, but evolving, and customization capabilities are limited but promising.
Dynamic Product Data Modeling
This feature is the most distinguishing and highlighting feature of the Product Management Backoffice making the Commerce Cloud’s out-of-the-box PCM flexible enough for being used with the SaaS model.
In SAP Commerce Cloud, Product Data modeling is tightly coupled with the code. You need to rebuild, retest and redeploy the system if you need to add an essential attribute to a product type.
In SAP Product Content Hub, such an approach is not an option because the solution is proposed as a service. Instead, you can model your data in a dynamic way by creating types, subtypes, and attributes at runtime without recompiling and restarting the server.
The system supports all basic types (Boolean, Double, Integer, Long, String, Date), predefined and custom item types as well as the predefined and custom item collections. The localized flag makes the atomic attribute language-dependent. You can create a collection of localized items but not a localized collection of items. The attributes and types can be marked as exportable. The attribute can be marked as optional or mandatory during import.
As it is in the Commerce Cloud type system, the subtype inherits all attributes of its supertype. You can create multi-level product type hierarchies.
You can also add custom configuration and define which attributes are visible in the backoffice UI as well as configure the editors and sections for them. You can configure attribute labels, rendering the attribute value, attribute’s tabs and sections, wizard steps, and attributes, as well as list view, compare view and summary view configuration. Generally, these are the same mechanisms as used by SAP Commerce Cloud Product Backoffice except that in SAP Product Content Hub the XML configuration is data-driven and editable from the backoffice opposite to Commerce Cloud’s way, where XML files are used for the purpose.
Some of the parameters in the XML UI configuration allow the use of Spring Expression Language (SpEL). Using SpEL, you can add dynamic behavior to the backoffice product data editing process.
SAP Product Content Hub supports only Product sub types today, but SAP is planning to extend Dynamic Data Modeling Capabilities to non-Product Sub types as part of the development roadmap. This feature will allow the management of any item type that is related to a product and maintain complex product data models.
Currently, the data modeling tool doesn’t support relations. If you decide to maintain two-directional product references, such as a list of compatible products, the only option you currently have is using collections of items. Collections are not designed for such a task. Technically, you can implement it via collections, but such a model will be hard to maintain, data quality error-prone, and non-performant. According to the roadmap, the complex data types (including relations) will be available in the next versions.
Managing Product Information, Catalogs, and Categories
The product management capabilities and interfaces are pretty much the same as SAP Commerce Cloud provides with its Product Content Management Backoffice. There are some minor differences due to the SaaS nature of the offering.
You can create catalogs and catalog versions. For the catalog version, you can specify what product types and languages need to be exported to ProductsUp with the catalog version. This setting will work as a filter. You can also mark the catalog version as non-exportable.
All created catalog versions are automatically exported as a «site» in ProductsUp. A site is basically an import feed from which the user can create different export feeds for all the marketing channels.
The catalog synchronization management is exactly the same as in SAP Commerce Cloud. You can create a synchronization rule. You can specify the synchronization source and target catalogs, synchronization languages, and a list of included and excluded properties.
SAP Product Content Hub supports exporting/importing data in bulk (bulk data) from/to the database. You can export the whole catalog or its part, the whole attribute set or a subset to an Excel file, enrich the product data in Excel, and then bulk import that data into the SAP Product Content Hub database.
The bulk operations, as well as a bulk import/export mechanism, are incredibly useful and «a must» for any PCM solution. However, without undo/rollback functionality, one mistake may cause massive data loss or data corruption, so this feature is for experienced users. The process is not configurable and fully automatic.
Digital Assets / Media Management
Media Management in SAP Product Content Hub is based on the same concepts as one in Commerce Cloud. Some features, such as rendition managements and media formats are simplified and streamlined. Pre-defined image rendition groups, gallery images, thumbnails, logos and other complex stuff designed many years ago for use mainly with SAP Commerce/Hybris Storefront Accelerator powered website are not part of Product Media Management.
The SAP Product Content Hub Media Management optimized features include
Bulk creation of medias (manual, ZIP Upload or via O-Data API),
Publishing control (private or public medias),
Assignment of medias to product media attributes (manual and bulk)
Delivery the binary files (via URL access)
For advanced Media Management features SAP recommends integrating with a Digital Asset Management System (DAM). SAP offers SAP Digital Asset Management by OpenText and also works with its broader ecosystem of ISVvendors to provide other alternatives (e.g. Celum DAM).
Prices, Discounts, Inventory
Prices, discounts, stock information, and stock information are fetched from other systems. The reason is that all this information is often updated in a high frequency that makes it inconvenient to use it in SAP Product Content Hub and may become a bottleneck in the workflow and integrations. The best practice is aggregating product master data, prices, discounts and stock information in the downstream systems.
Currently customer reviews, testimonials, and other user-generated content are not part of SAP Product Content Hub. The current vision is that user-generated content should be managed separately and aggregated with the product master data in the downstream systems.
Product Variants and Bundles
Product Variants and Product Bundles are currently not supported by SAP Product Content Hub, but these features are already on the roadmap to be released in 2020 (I should add a disclaimer that mentioned release date may change).
The classification system helps to organize product content into hierarchies independently from product catalogs. This mechanism is used to handle hundreds of product attributes organized into overlapping groups often associated with product categories. For example, a list of product attributes for the digital cameras are different from the product attributes for refrigerators, but both lists may share some common attributes such as weight or dimensions. However, both weight and dimensions are not relevant for digital products and services which may be part of the same catalog. The classification system helps to organize this chaos. The system contains classifying categories that hold various information levels pertaining to products organized in a tree-like structure.
SAP Product Content Hub supports different Classifications when syndicating data to a certain channel. In the enrichment phase, a customer can extend any category with features and set up their own (customer-specific) classification system that can be mapped to other classification systems using the Data Feed Manager functionality.
You can assign a list of features to a category. All products assigned to this category will have the controls for these features in the Product Edit Details Form. You can assign a product to more than one category having features assigned. In this case, the form will have a superset of the features. The system support string, number, boolean, value list, date, and reference feature types. You can use a reference type for a feature to link with the item of standard or custom type.
Users and Workflows
Collaboration Center, a new backoffice tool for managing workflows and collaboration, was initially released in SAP Commerce 6.5, and SAP Product Content Hub inherited it in full. The users are able to administer business workflows, add and manage attachments, assign users to workflows, and work on tasks within a workflow. The workflows are also data driven and manageable via Backoffice.
The system currently supports one environment, Production. The staging environment is to be supported in the next versions.
The SAP Product Content Hub comes with pre-built integration with
Productsup (built-in adapter)
SAP S/4 HANA (SAP Cloud Platform Integration)
SAP Commerce Cloud (ImpEx-over-REST, OData push, datahubadapter, y2ysync)
Another SAP Product Content Hub (via OData push)
The integration strategy is focused on the following integration mechanisms:
SAP Cloud Platform Integration
SAP Cloud Platform Extension Factory / Kyma
ProductsUp as a middleware
OData or Open Data Protocol is a REST-based open protocol based on technologies such as HTTP, Atom XML, and JSON. Unlike older API interfaces, OData configuration and interfaces are data-driven and decoupled from the functionality the integration objects are involved in. It means that OData will provide highly tailored integration interfaces even for custom objects created with Dynamic Product Data Modeling.
These OData interfaces are backed by the integration subsystem called Integration Objects. It was specifically designed to solve the ordering of integrations via a fully transactional API.
You can create a listener service for outbound events. When products change or get updated in SAP Product Content Hub, the SAP Product Content Hub will send events to SAP Cloud Platform Extension Factory to allow for custom behaviours to be implemented.
Likewise, you can trigger the specific SAP Product Content Hub functionality by sending an inbound event. If other systems trigger events in SAP Cloud Platform Extension Factory, the lambda functions in SAP Cloud Platform Extension Factory will allow for calls to API’s in SAP Product Content Hub to update product information.
Productsup as Integration Hub
Through the OEM agreement, SAP Product Content Hub integrates with a market-leading product data feed management tool called Productsup which provides strong product data syndication capabilities. Specifically, Productsup allows you to publish your product data to multiple channels automatically performing data transformation specific for each channel.
Productsup is bundled with SAP Product Content Hub, and is considered as part of SAP Product Content Hub offering. It is not an optional component, and the service is included into the SAP Product Content Hub subscription.
Productsup can map, validate, load, and publish data from and to SAP Product Content Hub. It serves as middleware between the data sources and data consumers. In the default configuration, there is only one data source, Product Content Hub, and a huge library of data targets, such as Google Shopping or Facebook Dynamic Ads. For data sources and targets there are adapters provided by Productsup and 3rd party developers.
The architecture of Productsup kind of reminds me of Datahub, but equipped with visual and flexible configuration management and a huge number of pre-built integration templates.
Productsup powers SAP Product Content Hub with the following features:
- Data load/import. With Productsup, you’re able to pull data from partner systems and aggregate it in one format. You can use an adapter/extension from the library, configure it, and define how often you want your products to be automatically updated
- Data transformation (source-target attribute mapping). You can easily map your data drag-n-drop and specify data services to enrich the data, add custom fields if needed. You can split and merge product variants, generate unique IDs, check the image urls, extract data from the webpages.
- Image/Video Designer. You can create compelling ad images/videos populated with product attributes (text or images) according to the predefined template.
- Data syndication. You can aggregate the product attributes from the different inbound channels.
- AI Category and field mapping, product image recognition, and automated text generation. Productsup uses supervised, unsupervised and reinforcement learning to train their AI.
The «out-of-the-box» configuration includes the one-way data flow, from SAP Product Content Hub, where content is created and enriched, to Productsup, where it is transformed and pushed to the configured marketing channels, such as Google Shopping or Facebook Dynamic Ads.
As any SaaS solution, SAP Product Content Hub is built with the standardized software stack having a limited number of customization points. Such setup creates certain constraints you need to keep in mind.
First, unlike SAP Commerce Cloud, SAP Product Content Hub doesn’t provide extensive software development kit (SDK) and therefore both the business logic and user interfaces of SAP Product Content Hub are not extensible in the same manner as SAP Commerce Cloud despite the fact that both products share the same code and architecture; however, user-defined product attributes may be added and some limited UI tweaks can be done as well. These limited customization options are enough for most needs.