Guide - Intershop Commerce Platform - Customization Options

Introduction

The Intershop Commerce Platform is designed to be adaptable to the specific needs of your organization and your customers. It is a combination of Software as a Service (SaaS) and Platform as a Service (PaaS) that can be customized by an Intershop implementation partner or Intershop Professional Services.

However, this model also brings some restrictions regarding possible customizations compared to the classic on-premises model. This guide explains the recommended ways to customize the Intershop Commerce Platform. It is targeted to developers and architects who want to extend and modify Intershop functionalities.

Important Note

The best customization? No customization!

Intershop is a feature-rich product that already contains a lot of configuration options. So please always check first if you can stick to the standard. Check the back office, the Knowledge Base and contact Intershop Support. If a customization is really necessary, it still makes sense to contact Intershop. If your feature wish is standard-worthy, it is also an option that Intershop builds it as part of the standard product.

Glossary

Term

Description

CAPI

The cartridge API (CAPI) is the API for implementing, enhancing or customizing functionality within an Intershop Commerce Management application server. The CAPI consists of Java interfaces and classes which are contained in cartridges.

ICM

Intershop Commerce Management

IOM

Intershop Order Management

ISML

Intershop Markup Language

PWA

Progressive Web App

References

Big Picture

The architecture of the Intershop Commerce Platform follows the composable commerce principles. It consists of loosely coupled apps and services (aka Packaged Business Capabilities) connected through APIs. Examples are Intershop Commerce Management, Intershop Order Managment, Intershop Search and Recommendations (SPARQUE.AI), Customer Engagement Center, and AI/BI Data Hub.

As a customer-facing touchpoint, the Intershop Progressive Web App (PWA) is already provided, but any other touchpoint (Voice, IoT, Mixed Reality) can also be connected using the Intershop REST API.

Additionally, integration of backend systems like ERP and CRM is very typical and several integration options exist, such as the Intershop Integration Hub.

Continuous Updates/Upgrades

The components of the Intershop Commerce Platform get continuously improved. The goal is to deploy updates and upgrades as soon as possible to keep client installations on the most current version of the different apps and services. To allow a smooth update process, Intershop keeps the APIs stable and also supports older versions of APIs (see Cookbook - REST API Versioning).

For implementation partners, this means that it is necessary to carefully follow the customization rules described in this document in order to minimize necessary update efforts.

Also see Concept - Continuous Releases.

Frontend Customizations

The Intershop Commerce Platform already includes a ready-to-use frontend blueprint. It is a Progressive Web App (PWA) based on Angular. However, you can also use any other frontend technology like React, Vue.js or Frontastic. The frontend is decoupled and only uses the Intershop REST API.

Frontend technologies

The Intershop Progressive Web App

The Intershop PWA is provided as source code. This means that anything can be customized. The customer or implementation partner basically owns a copy of the PWA and is responsible for it. Intershop guarantees that this project version of the PWA will also run with newer versions of Intershop because Intershop keeps the REST APIs stable and also supports older versions of the REST APIs.

Also see:

Hosting and operation of the server side rendering (SSR) part of the Intershop PWA is also provided as a service by Intershop.

The Classic inSPIRED Storefront

Alternatively to the PWA, the classic inSPIRED responsive storefront based on pipelines and ISML can still be used when migrating on-premises to the Intershop Commerce Platform. It will be maintained on a functional "as-is" basis. That is, no functional enhancements will be made, only bug fixing of critical and serious issues. Technical enhancements and 3rd party updates are are subject to restriction in terms of commensurability and are decided on a case-by-case basis.

Usage of the PWA is strongly recommended.

Additional Touch Points

Additional customer-focused touchpoints (Voice, IoT, Mixed Reality) can be connected easily using the Intershop inbound REST API, see Overview - Intershop REST API Documentation

The following example shows how to connect Microsoft Cortana:

https://tech.intershop.com/headless-with-intershop/

Integration of Backend Systems

Intershop Integration Hub

The Intershop Integration Hub is a cloud-based low-code integration platform provided as a service (iPaaS). It allows the integration of typical systems of record such as CRM, PIM, or ERP without the need for deep customization within ICM or IOM.

Intershop Commerce Management

File-Based Interfaces

XML Import/Export and Product Data Feeds

File-based interfaces are a simple and robust method of asynchronous data exchange. Systems integrated in this way are decoupled from each other, and file formats can be transformed with relative ease using external ETL tools. If a file fails to import or export, or if a system is unavailable, the process can easily be repeated.

File-based interfaces are particularly good for transferring large quantities of data, a task for which REST APIs are often not well suited. Therefore, the question of data volume should be considered when choosing the integration method.

Intershop Commerce Management provides import and export functionality for most business objects. The usual file format is XML. During import, the system validates the data format and checks the consistency of the data. Again, this option allows high-speed import and export of very large quantities of data. This is particularly important for tasks, such as importing price lists with millions of products and prices. Import and export processes can be initiated easily via the back office; however, they are usually integrated into automated processes. To enable this, Intershop provides a REST API for job handling and batch processes.

For details refer to Reference - Jobs REST API 1.0.0.

To simplify data transport processes, ICM also includes an integrated transport framework that enables automated upload and download of data files via HTTP, HTTPS, FTP, SFTP, and e-mail.

For details refer to Guide - Transport Framework.

The customization of import/export functionality inside of ICM is not recommended. Necessary transformations should take place outside.

Product Data Feeds

Product data can be exported in various formats at specified times using the Product Data Feeds function. This can be used to integrate print and online marketing platforms as well as external search engines and dynamic pricing services. The business user can define the product range, select the target system, and schedule the export times. A range of formats is supported as standard, including Google Sitemap, Google Shopping, RSS, and Feed Dynamix.

Managed Service Interfaces

Intershop uses Managed Service APIs to efficiently integrate external (micro)services while accommodating the companies' own organizational structures (countries, brands, etc). Examples are the integration of:

  • Payment service providers

  • ERP systems (orders, inventories)

  • CRM systems (customers, customer segments, quotes)

  • Tax service providers

  • Product recommendations

  • Search

  • E-mail marketing

  • Address verification services

The Managed Service API is a Java API where a service adapter needs to be developed that implements the Java interface of the service. More details can be found here:
Concept - Managed Service Framework.

Managed services

Managed Service APIs are highly granular and, therefore, ideal for integrating microservices. For example, stock information can be provided by an inventory microservice that is integrated with the platform via a Managed Service API.

The following list shows the available interfaces:

Note

The implementation of a Managed Service Adapter requires the development of an Intershop custom cartridge that runs as part of the application server. The code of the Managed Service Adapter shall only reference the API of the Managed Service Java Interface, but no other internal APIs to minimize dependencies.

Additional Data

Custom Attributes

Intershop Commerce Platform supports the concept of custom attributes. Additional attributes can be added using Intershop Commerce Management, XML import, or the management REST APIs.

To retrieve custom attributes, here is an example from the product endpoint:

/categories/<cat_ID>/products/<sku>?attrs=<att1>,...,<attN>

Also see Reference - Product and Category REST API 1.6.0.

Microservices

Additional microservices are a recommended approach to customize and extend the Intershop Commerce Platform. Microservices can provide additional REST APIs or handle certain business events. 

Custom microservices must be operated by the Intershop partner or customer on a separate infrastructure (e.g., separate Azure subscription or even a different Cloud or data center).

Subscriptions/Events

If it is necessary to execute an action after some activity has been completed on the Intershop Commerce Platform, events are a good solution.

Intershop already supports certain business events as part of the business tracking framework, e.g., Basket View, Basket Add Product, Basket Remove Product, User Login, User Logout, Order Creation, Address Change, Create Wishlist, Add Product to Wishlist, Remove Product from Wishlist.

These events can be published to an event hub like Azure Event Grid and from there be subscribed by different event consumers, e.g., microservices, Logic Apps, or serverless functions.

Deep Customization Inside of Intershop Commerce Management

Intershop Commerce Management is internally well componentized and has a module concept (Intershop Cartridges) for customization and extension. For more information, see Overview - Development Artifacts.

Deep Customization Inside of Intershop Order Management

Intershop Order Management is intended to be configured and customized by Intershop implementation partners. For more information, see Overview - IOM Customization.

Customization Levels

The following table gives an overview of the different customization options and recommendations on their usage.

Level

Customization Options

Usage

0

  • Business configuration

(tick) (tick) (tick) Highly recommended

1

  • Additional touchpoints (native apps, digital assistants (e.g., Alexa), Smart Shelf, etc)

  • Progressive Web App (delivered as source code)

  • Microservices

  • File-based interfaces using standard formats (transformation outside of Intershop)

  • Standard events

  • Outbound REST APIs

  • Custom attributes

(tick) (tick) Recommended. These options will be extended in short-term.

2

ICM

  • Managed Service Adapter

  • DBInit (properties, configurations, data)

  • Classic inSPIRED storefront

(tick) Can still be safely used, but will be replaced successively by level 1 and 0 customization options.

The support period for level 2 customization is the same as for Intershop Commerce Management (5 years).

3

ICM

  • Application API (Java extension points, pipeline extension points, template extension points)

  • Business API (Java types in CAPI packages in bc_* cartridges, e.g., basket BO)

  • Platform API (Java types in CAPI packages in pf_* cartridges, e.g., logging framework)

  • Basket calculation

  • Solr 

  • Back office extension points

(warning) Should be discussed with Intershop before starting the customization in order to minimize future update/upgrade efforts.

For "Custom Persistent Objects" the replication and deployment process must be considered. Database changes require a downtime during deployment. 

4

ICM

  • Usage of internal Intershop JAVA APIs (package internal)

  • Overloading of pipelines, templates of p_platform or f_business

(error) Forbidden

Performance Considerations

The performance of a digital commerce solution is a major criteria for its market acceptance. The Intershop platform is continuously being optimized and carefully tested in this regard. However, any badly architected or implemented customization can seriously affect the performance of the overall system. Therefore, it is strongly recommended to follow the Intershop performance guides:


Disclaimer
The information provided in the Knowledge Base may not be applicable to all systems and situations. Intershop Communications will not be liable to any party for any direct or indirect damages resulting from the use of the Customer Support section of the Intershop Corporate Web site, including, without limitation, any lost profits, business interruption, loss of programs or other data on your information handling system.
Home
Knowledge Base
Product Releases
Log on to continue
This Knowledge Base document is reserved for registered customers.
Log on with your Intershop Entra ID to continue.
Write an email to supportadmin@intershop.de if you experience login issues,
or if you want to register as customer.