Understanding ‘Product Catalog Management’ with PIMCORE: An Ecommerce Developer’s Perspective
Being an ecommerce website developer, we are sure you understand how critical is a robust Product Information Module (PIM) for a successfully delivery. It has power to ensure no sleepless nights (literally), when the release date is nearby!
In this hyper-competitive market, Ecommerce websites are ought to offer a large number of SKUs’ (products) to their customers.
For an ecommerce developer, this translates into humungous amount of data with very minutely defined attributes along with tagged media/digital assets and product description.
This is just the tip of the iceberg! Ecommerce website development team also needs to ensure that all the product information is also made available at several customer touch points.
Having realized that a Production Information Module is indeed a protagonist in this ‘Game of Thorn-less Delivery’, we decided to have a rendezvous with our PIMCORE development team.
We learnt from our Magento Ecommerce team that PIMCORE is a robust catalog management platform that has proved to deliver very good ROI for some of our Magento projects for highly admired Retail Brands from India.
So how exactly does PIMCORE help in product catalog management? What are the steps involved in integration of PIMCORE with Magento? Which best practices should be followed?
This blog is our quest to find all these answers.
“If you are new to PIMCORE and wish to have a brief introduction to the basics, this previous blog of ours might be of great help.”
Why PIMCORE is Mr. Bond of Mission ‘Ecommerce Catalog Management’
Name is ‘Core’….’PIMCORE’. We were wondering why our Magento Ecommerce team so impressed with PIMCORE?
They gave us the following solid reasons, just to get us started:
- PIMCORE is distributed as a PHP application that can be installed on the servers. This offers the benefit of storing all the digital assets in backend servers locally. This mean you don’t need third party Digital Asset Management systems.
- Multiple inventories and stores can be created and mapped to the products. This helps in displaying the same product at different prices for different stores (as per the pricing policy or latest promotions offered by stores based on the store location/geography).
Fair enough! The reasons behind the soft-corner for PIMCORE are indeed compelling, but how easy or difficult it is to manage an Ecommerce Catalog using PIMCORE?
Hearing this, several enthusiastic Magento PIMCORE developers from Embitel jumped onto the bandwagon and poured their heart-out for their beloved PIMCORE.
To be precise (and more comprehendible), they shared with us the following details
How Ecommerce Catalog Management Magic Happens with PIMCORE
- Products and Category Creation: This is the first step towards management of the catalog with PIMCORE. One creates the products and categories as objects and then attributes such as description, product-specific attributes (nutritional value, washing instructions etc.), and special prices are configured.
- Product Import: Product Import, as the name suggests, is getting the product list migrated to PIMCORE from different sources.
If there is a product list already created in CSV format, it can be imported to PIMCORE as well. PIMCORE provides a CSV admin interface for this purpose.
Using command line is one other option available for import to PIMCORE.
After the products are imported, the attributes like descriptions and images are added.
- Store and Inventory Creation: At times, Store and Inventory creation can be the first step, followed by product and category creation.
In this step, first, the store is created.
PIMCORE supports multiple stores that can be created and mapped with the product. As store is also an object in PIMCORE, one can define its attributes according to the requirements. These stores can then be mapped with the products.
From stores, we move to the inventory. Unlike store, which is independent of the associated product, inventory is more of variant-based. Variants are nothing but the products that are associated to a base product. Blue T-shirt will be a variant of the product T-shirt.
Also, in a multiple store scenario, the inventories are available store-wise. In such cases, each store will have different inventories. This helps in mapping the products to different stores at different prices and under different offers.
This becomes possible because one product can be mapped to different inventories with variable prices. The store with which the inventory is associated will fetch the price from it and display it to the users. This dynamism is one of the USPs of PIMCORE that sets it apart in catalog management.
- Workflow Management: Workflow management is among the most critical tasks that PIMCORE helps you perform. It is quite helpful in maintaining and improving the quality of data that is stored with PIMCORE.
To get a better idea, we can consider an example such as Workflow for products. Let’s consider the following steps as a sample workflow.
Step 1: Product is added with the all the necessary details by one team member.
Step 2: Post this a short description and a special instruction is added by a different team member.
Step 3: Digital assets like multiple images, videos, PDFs are then added separately.
Step 4: Finally, the Project Manager or Project Lead approves the products, after a review and gives us a thumbs-up to the publishing team.
Workflows like these can be created using workflow management module of the PIMCORE.
PIMCORe comes with the configuration file that is available at /app/config/pimcore/workflowmanagement.example.php location. This file enables the development team to manage the workflow configuration.
The workflow management module also comes with several Events that let the developers define their own logic for the workflow.
The following are some examples of these events:
PIMCORE community has also developed a plugin called Workflow GUI. This helps in creating and managing the workflow using a graphical interface.
After listening to all this, we realized that ‘Object Oriented’ approach of PIMCORE is the secret sauce of the PIMCORE product.
So yes, we all agreed that PIMCORE is really the messiah we all our searching for. What Next? Well, one needs to integrate PIMCORE with Magento. How does that happen?
Here’s what our development team had to tell about the points on which Magento and PIMCORE interact.
PIMCORE is a standalone application, fully capable of managing an ecommerce website. However, its true potential can be realized when integrated with Magento.
Let’s see on which points this integration happens.
The points of PIMCORE Magento integration are essentially the components of Magento that would be made available to PIMCORE.
- Products: The products stored in Magento can be made available in PIMCORE. The APIs available with PIMCORE may be used for this purpose.
- Price and inventory APIs: Any extra attributes of the products in Magento like price, inventory information can be retrieved from Magento to PIMCORE
- Data Assets: There are scenarios where the media assets for the products including the images, videos etc. are hosted separately as a Data Asset Management (DAM) Module. In such cases, both PIMCORE and Magento can access this data using relevant APIs.
Addition of images and other digital assets are optional. One may choose to add the images with the product itself or have a separate digital asset management (DAM) created.
After the products and categories are created, they are mapped with each other. Additionally, if one has already created different stores, the products will be mapped with the stores using the store ID.
Application Programming Interfaces (APIs): The Backbone of PIMCORE
One of the reasons for the wide-spread popularity of PIMCORE is its API-driven architecture. PIMCORE supports Rest APIs as default. With such APIs, the communication between the web-based application and servers consumes less bandwidth and is more flexible.
The developers can create several custom APIs as well to fetch data from PIMCORE and display it on the web or mobile app. The output of these APIs are in JSON format which can be parsed by the web browsers as well as mobile apps.
A Few Examples of PIMCORE APIs:
- Full Product List APIs: To get the entire product list from PIMCORE server.
- Specific Product APIs: APIs to get specific products from PIMCORE.
- Price and Inventory APIs: List of price and inventory mapped to the product.
- Store Information APIs: To show which product the store is mapped with
- PIMCORE Feature Set for Efficient Catalog Management
Now we knew why PIMCORE could be so easily used with ecommerce platforms like Magento. Actually, it was the APIs that called the shots.
Just when we thought we had figured out how PIMCORE makes product catalog management a cakewalk, we were introduced to some more amazing PIMCORE features.
PIMCORE Features That Make It a Preferred Catalog Management Solution
PIMCORE takes an API-driven approach which makes it a widely accepted and supported PIM/DAM platform. Here are a few features of PIMCORE that ensures efficient catalog management.
Version management: Every content that you create in PIMCORE is a version. Whether it is objects, digital assets or documents, there are all versions. Every change made to these elements will create a new version.
This makes it very easy to restore any version if needed. The version history makes it possible to choose the desired version and publish it.
PIMCORE also allows for turning off the versioning for a particular process. This features comes in handy when working 3rd party systems for imports and synchronization.
PIMCORE Backend UI where versions are listed
Scheduling: The element types in PIMCORE, documents, assets and objects implement a scheduler. It gives the ability to create tasks including publish, un-publish, delete and publish version.
As the name clearly suggests scheduler lets you choose the date and time for an action to be performed on a particular element. In the PIMCORE backend UI, you can look for the calendar icon (see in the image below). Here, the task can be added with date and time. The scheduler will then perform the task at the date and time chosen by you.
This helps the ecommerce company manage the products efficiently and somewhat automatically.
Phew! One doesn’t even need to be present there to make things happen. Schedule it and it will be done at the time of your choice!
Tasks like publishing/un-publishing can be scheduled here
Notes and Events: There are a few changes or events on the elements that are independent of versioning. These changes are logged by Notes and Events module of PIMCORE.
Creating Notes and Events Using API
This is how the entry will look like
This is not be confused with versioning. Some changes to the elements made by the marketers or changes happening during imports/sync do not have a direct impact on the data. However, they are important enough to be recorded. For all such changes, Notes and Events are used.
Properties: The PIMCORE elements may have their own custom properties. For instance, the document may need to show the sidebar, use additional style sheets or hide the navigation panel. These properties can be specified using this Properties feature.
When you have multiple editors on a PIMCORE installation, predefined properties are helpful. Using the feature, default value of each property can be defined. The productivity of the editors increase manifold as a result.
Defining Custom Properties of the elements from PIMCORE Backend UI
Tags: If you need to create additional classifications for any of the objects (stores, products, inventory etc.) you will need this module. Creating extra taxonomies for the objects makes it easy to filter them. These tags also act as an additional search criteria to an application.
The ecommerce development team touched upon almost every topic to give a detailed insight into PIMCORE capabilities as a PIM/DAM solution.
The blog also introduced the services and feature set of PIMCORE that have been designed to de-clutter and centralize the product information.
Hope the blog quells a lot of doubts about PIMCORE. We will be back with more such insightful blogs on PIMCORE. Watch out for this space!