Introduction to MDM and PIM systems using Akeneo and Pimcore

How MDM and PIM differ, when a business needs a PIM system, and how Akeneo and Pimcore solve data management tasks.

  • MDM and PIM Systems: What They Are and Why They Matter
  • Basic PIM system capabilities:
  • When Does a Business Need a PIM System
  • Pimcore MDM/PIM system

7.4.2020 MDM and PIM systems help large e-commerce projects and manufacturers save on product data processing. Let's look at what tasks these systems can solve.

MDM and PIM Systems: What They Are and Why They Matter

  1. When a Business Needs Akeneo and Pimcore PIM Systems for Complex Products: Pimcore and Akeneo Features

  2. Reading time: 15 min. "As a company grows, data chaos grows with it.

  3. Sometimes it starts with product information (for example, for retail companies), but it can also start with customer data, with duplicated infrastructure information (for telecom) and so on.

  4. Sooner or later, the question arises of improving data quality, meaning increasing accuracy, removing duplicates, and standardizing data.

  5. At kt.team, we often advise clients on data quality, and it is time to talk about what our retail clients usually start with - a PIM system.

MDM and PIM Systems: What They Are and Why They Matter

A classic MDM system is a system that knows about different data sources and is responsible for data quality, meaning it contains the data "golden record." For example, your points of sale have one set of customer information, the online store has another, and marketing services have a third. An MDM system can standardize all customer addresses and names, identify the same customers recorded in different ways, and eliminate errors using different algorithms.

MDM systems manage different data areas, often called domains, such as the customer domain, the product domain, and so on.

Today, you could say that a PIM system is an MDM system for the "products" domain.

With MDM, a single environment contains change validators, integrations with other systems, and the rules that govern how this information is exported to other systems.

All possible attributes, absolutely everything about each entity - all of it is centralized in MDM.

It is much easier to understand the essence of MDM systems if you use PIM systems as an example.

So next we will talk specifically about them

PIM systems let you centralize all information from operators, photographers, suppliers, as well as various product rules. With PIM systems, you can manage different product presentations on marketplaces and in social networks.

Basic PIM system capabilities:

define all attributes for your products and whether they are required for a channel (for example, an image may be required for the website but not for export to 1C); define product categories across different sources; assess product data quality by completeness and accuracy using both simple validations and complex algorithms; configure workflows for operators responsible for image information. For example, suggest which products they should fill in first.

When launching the autumn-winter collection in August, you can set the highest priority for the "own website" source, then for "marketplace" sources, and after that for the remaining attributes and product categories; keep exports to all third-party sources such as ERP, WMS, and CMS systems, distributors, or even marketplaces (Wildberries, OZON, Yandex Market, etc.) in one place, with some caveats

for pricing; define the workflow for verifying product information (for example, to have a brand manager check the information before publication); for PIM systems with DAM, define the workflow for files linked to a product (that is, images and documents), as well as for image metadata (when the photo was taken, what type of shoot it is, whether the document is a certificate, what its issue date is

and expiration date, etc.); manage the product's marketing presentation (on Instagram the image and description are one thing, on the website another, and in ads for the "mothers" segment a third).

As a rule, such systems are proudly called PXM systems

As a rule, PIM systems also allow you to configure product statuses ("Manager validation"

, "Ready for publication" and so on) and bulk product processing tools (quickly upload something from an XLS file, update a shared attribute for a group of products, etc.). The most advanced PIM systems include DAM systems (or PLM systems), that is, file and image management systems that can have their own attributes. In that case, images that are product attributes can have their own attributes too, such as "Side image" and "Certification".

You do not just assign an image as an attribute; the image itself is stored in a specific directory, can be reused, and can have a separate workflow created for it, such as "under retouching," "outdated," or "needs reshooting."

When Does a Business Need a PIM System

If you have complex product business processes (for example, an in-house photo production team or a large staff maintaining information and content), if you have a lot of product information (manufacturing, brand managers, sales - each generating their own XLS spreadsheets, which are then juggled around), if you have a large number of information systems, or if in current systems such as 1C your operators spend too much time on routine tasks, then you most likely need an MDM/PIM system.

You will be able to simplify all business processes and relieve other sources of unnecessary information. For example, why should 1C store images for the website and the category that website belongs to?

Let's look at the two systems we know best from a development perspective: Akeneo and Pimcore. From a technology stack standpoint, they are very similar: PHP / Symfony 4, MySQL, and Elasticsearch.

But in terms of approach, these are two very different systems.

Pimcore MDM/PIM system

Pimcore is an MDM system

Although PIM is part of its name, in practice it is simply a layout that allows you to work with products.

It also includes CRM, a layout that makes it possible to work with customers, and you can create any other entities needed to solve business tasks.

This does not mean that the PIM functionality there is weak. On the contrary, it is very strong, with support for deduplication as well.

I just want to emphasize that Pimcore was originally designed for more than product information management. That explains both the system's high configuration complexity and its maximum flexibility, both in terms of attributes and the API for these entities.

Akeneo PIM system

Unlike the universal Pimcore, Akeneo is only a PIM system, that is, a specialized tool.

There are two versions of this product: Enterprise and Community. Architecturally, it is one system, one core, with different sets of modules.

The Enterprise version differs in that it includes more modules, and most of them are related to product management in large organizations, where there are many approvals, complex access rights, a deep operator hierarchy, and so on.

There is no powerful attribute hierarchy here like in Pimcore.

Attributes are divided into attributes, attribute groups, and families. There is no way to create an "abstract entity"

, which can be inherited from

For example, there is no way to create "Furniture" with its own attributes and then extend it with "Sofa" and "Table" as attributes of "Furniture".

Main tasks of PIM systems

Allow all stakeholders to make the necessary changes and additions to product data in one area and guarantee access to updated data in other areas. Demo: searching for and adding products in Akeneo PIM.

Resolve conflicts between data that can, in turn, have a significant impact on business operations. This includes source prioritization, rules for handling conflicting data, information standardization algorithms, and so on.

Import data from various sources: CMS, CRM, ERP systems, and specialized software such as CAD (for example, store all documentation, drawings, and product properties in one place).

Export data to different sources while enforcing required attributes. For example, if we want products without images to stay off the website, we configure that in the PIM system. At the same time, we provide the operator with clear product information so they can see which products are not published on the site and why. This also includes exporting feeds for vendors or centrally sending exports to marketplaces such as Wildberries, OZON, Amazon, Yandex Market, AliExpress, and others.

Demo: importing and exporting data in Akeneo PIM.

Ensure content is processed and enriched in the system in line with the company's permissions and roles policy. Any employee with the appropriate access rights can add content, for example a marketer, sales manager, or even a copywriter. Additional product information can include descriptions, images, and video reviews. Text can be automatically translated to other languages within the system, which greatly simplifies adapting data to local requirements.

If we supply goods to Spain, for example, it is better to give Spanish translators access specifically to the Spanish attributes and only for the products being shipped to that country. Demo: roles in Akeneo PIM.

Akeneo and Pimcore for complex composite products

Suppose your business provides mobile services. You have a tariff structure with many nuances for different regions of the country. In some regions, part of the tariff plan is not applicable at all. In this case, pricing is a product attribute (price is not always a product attribute; more often it is a sales channel attribute, but here it is a product attribute). Your product has complex pricing, and you need to know and control all the factors that affect price changes.

Another example: you manufacture sofas. Their upholstery can be made from thousands of materials in different colors and textures. They differ in dimensions, folding mechanism, and armrest material. These differences are not just product attributes; they depend on one another in specific ways: sofas in some price ranges may have upholstery only from certain types of fabric and only a limited number of colors, while some designs have different options.

03

Let's look at how Akeneo and Pimcore help manage data for such complex products. Akeneo supports a flat data model (with nuances: in the Enterprise version, there can be composite attributes, meaning an attribute can contain its own attributes). As a result, these kinds of tasks come down to extending Akeneo with a special configurator - developers write a module to manage a complex hierarchical structure within Akeneo's flat structure.

04

A composite attribute in Akeneo Enterprise and Pimcore means that an attribute contains its own attributes. For example, the "Color" attribute may contain a name, HEX and CMYK codes, and an image, while the "Fabric" attribute may contain the fabric name and its washing/cleaning instructions. In Pimcore, this is handled by the out-of-the-box interface: any class can be extended, and that extension can also be extended. Attributes can be relations, including many-to-many, composite, and computed.

05

The most interesting use cases for understanding how Akeneo and Pimcore work may be the following: a business has some base product with a base price (for example, a base sofa model upholstered in a specific fabric), and when a configuration is added, the price must change automatically (a sofa with different upholstery costs more), and this must happen according to rules (there are several fabric categories, and the price for each next category increases by 100 rubles per linear meter).

06

The attribute configuration interface in Akeneo looks like this: In Pimcore:

Pimcore and Akeneo features

Pimcore is a flexible, convenient, and multifunctional MDM system. Let's look at its capabilities in more detail and discuss which of them are also available in Akeneo.

Data quality / semantics

  1. Both Pimcore and Akeneo support consistency and high quality across different data sets: structured and unstructured, internal and external.

  2. Information can be matched, validated, and standardized so you always have current and accurate data for operations. For example, you can enrich product information using other websites and cloud services. From the perspective of data quality management, Pimcore is more architecturally rich, while Akeneo is more intuitive.

  3. These systems also make it possible to format diverse data sets based on industry standards, business rules, custom tests, metadata, and machine learning.

  4. Data values can be changed in accordance with domain constraints, data integrity constraints, or other business rules.

Assess where AI can deliver impact in your process

Workflow management, validation workflow, and a product status model

Sometimes products need to move through statuses the same way a task tracker moves a task. For example, a product status sequence might be: "New," "Under copywriter review," "Under brand manager review," "Published."

This capability is available in both Akeneo Enterprise and Pimcore.

It is quite possible that while moving a product between statuses, the brand manager will notice an inaccuracy in some attributes.

Then they can leave a comment and send the product back for revision, and the operator will see that changes are needed.

Another option is that you may need to write some kind of validator.

A status can be tied to launching an import or export procedure for this product's data. Pimcore has the concept of validators and operation cancellation rules. For example, you cannot publish a product if its price has not been updated for more than 30 days, and you cannot send a product with the status Locked for validation, and so on.

These validations can be computed (i.e.

including sending a request to an external system to make a decision). In the Pimcore interface, the workflow looks like this:

Digital asset management - DAM (also known as product content management)

Any PIM system, even without DAM, lets you upload images for a product.

However, sometimes you need files to be independent entities in their own right (for example, photographers simply take photos and do not specify a SKU, or we need to reuse one photo across different products). In that case, DAM is needed.

At first it was called PCM, and it seems the name was taken from SAP.

Now it is just DAM

DAM systems store files (images, documents) with their own attributes. Sometimes we need not just to know the product photo, but also to distinguish that it is specifically a side photo.

Not just see that it is a scanned certificate, but also determine when it expires. In other words, the file itself accumulates metadata, and that metadata can be linked to products (for example, you cannot publish a product with an expired certificate).

All of this functionality can be configured in DAM.

Typically, DAM is connected where content is created so that the built-in NFS or another network folder access protocol can be used, and content managers use files from DAM in their products by assigning photos and certificates to specific SKUs.

At the same time, if we need to send all certificates, we can do it with one click, even provide a public download link so we do not have to email gigabytes of files. And only certificates with a current date will be included in the export. DAM is part of both Pimcore and Akeneo (Enterprise only, although any open source DAM can be connected to Community, or you can even build your own if the requirements are modest).

Pimcore also includes basic document handling and image editing features through third-party libraries.

Versioning

shows when, by whom, and exactly how a product was updated (GIT for products). It makes it possible to roll back to a previous version, send a new revision for approval, and simply understand that if one attribute in a product has changed and it matters only for the website, then the update should be exported only to the website, without notifying the others about the changes. These features are available in Akeneo Community as well (although functionality is heavily limited there), as well as in Akeneo Enterprise and Pimcore.

Data quality and attribute completeness

Sometimes you need to know that not all required attributes are filled in across channels (a channel is an information recipient: a website, marketplace, ERP, etc.). Sometimes you need to know this not only by channel, but also by a specific product group. In Akeneo Enterprise, you can monitor data completeness and quality for a group across sources - this is called Teamwork Assistant. For example, the autumn-winter season is coming soon, and we place all products for that season into a separate group.

As a result, we see completeness percentages by channel with a group filter applied, making it easier to track completeness progress.

Importing product data from Excel and other spreadsheets

In addition to configurable import and export profiles, both systems (Akeneo and Pimcore) take a slightly different approach to data. Out of the box, Pimcore allows very flexible work with external tables directly in the interface, for any entities (attributes, products, customers). You can upload any spreadsheet document directly into the interface and specify which fields should be entered where.

Akeneo is designed for working with products and has an information enrichment service, Franklin, as well as fairly simple import and export mechanisms, where you can upload a spreadsheet by configuring an import profile. Franklin collects product information from the internet and intelligently merges it, removing conflicting data.

Providing product information by external users (suppliers, manufacturers)

  1. Sometimes it is necessary to have product information enriched by the manufacturing plant.

  2. Think of a food delivery service with a large number of suppliers, all of whom must provide product information on their own.

  3. Internal users only approve the upload of this information and verify its accuracy. In Akeneo Enterprise, there is a cloud service called Onboarder for this, while in Akeneo Community and Pimcore the only option is to use existing access rights and configure them flexibly so that suppliers still get some access.

  4. Although it is still better to set up data import from their source systems, and most often such an import already exists.

PIM and PXM, or a Few Words About Marketers

  1. PXM (product experience management) is a PIM that can deliver different information to different marketing channels.

  2. If a classic PIM treats product information as a "golden record" (yes, a product may have different localizations - language ones and so on - but it is one set of attributes), PXM treats the product as a set of descriptions for different marketing channels. In simple terms, if you produce water, you need to position it one way for mothers and another way for offices.

  3. The product is the same, but its marketing is different. Akeneo says that its Onboarder and Franklin together with the PIM itself make up PXM.

  4. In practice, both Akeneo and Pimcore provide a similar interface for real marketing work: these are product variations that can be combined either through links (Akeneo and Pimcore) or through inheritance (Pimcore).

EDI and PIM

  1. If you receive EDI messages, for example from a European manufacturer, and want to automatically import them into an information system, you cannot do without development.

  2. There is not much useful information there, but it is quite suitable for the initial population of product information, which will later go through complex enrichment workflows.

  3. The reasons are both the variety of EDI messages and their formats, and the infrequent need for such exchanges. However, in

  4. In CIS, demand for EDI is growing, and major EDI hubs (SBIS / Diadoc / SKB Kontur, etc.) smooth out the variety of formats, so this task turns into integration with a local EDI provider.

MDM, PIM, and the Microservices Approach

An important issue is how products are handled if your company has a microservices ecosystem.

Strictly speaking, without customization you will not be able to manage Akeneo PIM business processes from your BPMS. In Pimcore, things are somewhat simpler thanks to the rich workflow access capabilities through the API.

However, we recommend not integrating such business processes and treating PIM as a closed system with its own business processes. All you can do with such a system from other services is use its API.

Sometimes business processes and products are deeply intertwined

For example, when the product is a mobile operator's tariff plans, which have complex business processes but are tightly intertwined with promotion processes, regional time zones, and billing. In that case, it is better to manage products through Camunda business processes and other interfaces connected to it.

Strictly speaking, the larger and more complex the processes are, the less suitable modular systems are for them, even if they are open source.

Another option is to develop a module for Akeneo or Pimcore so that interfaces and validators come from Camunda or jBPM and are displayed by the PIM system. Of course, this is not cheap to build, but this solution makes it possible to preserve the transparency of business processes from the BPMS while keeping the rich PIM interface.

Conclusion

  1. So, we have looked at the capabilities of Akeneo and Pimcore, along with many of their similarities and differences.

  2. It is worth remembering that Akeneo is still a PIM system focused on products, whereas Pimcore is a broader solution, an MDM system.

  3. As for Akeneo pricing, the Enterprise version costs at least 30,000 euros per year, and customizing the Community edition can sometimes be cheaper.

  4. To learn more about this topic, these materials may be useful to you (all lines are clickable): PIM system: how not to drown in information and keep everything under control; integration with a PIM system; integration with Pimcore; what MDM, PIM, DAM, and PXM systems are; and the following video.

Discuss the article: Introduction to MDM and PIM systems using an example...

Send via: