– Positioning PLM System Integration within the Clean Core Extensibility Model
Clean Core is a central architectural principle of SAP that aims to keep the SAP core as close to the standard as possible. Extensions should be implemented exclusively through released, upgrade-stable interfaces and extension points. This ensures that system upgrades can be carried out smoothly and that customer-specific adaptations remain maintainable and future-proof in the long term.
In the context of SAP PLM System Integration (PLMSI), the standardized integration component for bidirectional data transfer between SAP S/4HANA and an external PLM system (e.g. Siemens Teamcenter), the question arises as to how customer-specific extensions can be implemented in a clean-core-compliant manner.
This Block-Post explains the clean core extensibility levels, positions the PLMSI extension mechanisms within this framework, and provides clear guidance for implementation practice.
Contents
- The SAP Clean Core Extensibility Model
- Extension Patterns: On-Stack and Side-by-Side
- SAP PLMSI in the Context Clean Core
3.1 BAdIs as Released Extension Points
3.2 Categories of PLMSI BAdIs
3.3 Configuration vs. Implementation - Positioning PLMSI Extensions with Clean Core Levels
- Future-Proofing and Evolution
- Conclusion
1. The SAP Clean Core Extensibility Model
SAP defines four extensibility levels (A through D) that describe the degree of clean core compliance of an extension. The higher the level, the more upgrade-stable and future-proof the implementation.
Level | Description | Clean Core? |
Level A | Extensions based on released APIs and extension points. Development with ABAP Cloud (SAP Build) or side-by-side on SAP BTP. Highest upgrade stability. | ✅Yes – Target state |
Level B | Extensions using classic APIs and frameworks (e.g. BAPIs, classic BAdIs) that are not formally tagged as “released” but are recognized as upgrade-stable. | ✅Yes |
Level C | Use of internal SAP objects that are not officially released. Conditionally clean, provided that change-log monitoring is set up. | ⚠️Conditional |
Level D | Modifications, implicit enhancements, direct table writes, or non-recommended extension technologies. Not upgrade-stable. | ❌No |
The following diagram shows how clean core levels map to SAP standard objects:
Figure 1: Clean core levels mapped to SAP standard objects
Source: SAP – Clean core extensibility for SAP S/4HANA Cloud (2024)
2. Extension Patterns: On-Stack and Side-by-Side
SAP distinguishes two fundamental extension patterns for SAP Cloud ERP Private:
A) On-Stack Extensibility (directly on SAP S/4HANA):
- Adapting and extending standard applications (e.g. custom fields, data model extensions)
- Creating custom full-stack applications with custom UI, application logic, and persistence
- Creating and consuming APIs and events for integration connectivity
B) Side-by-Side Extensibility (on SAP Business Technology Platform):
- Developing custom full-stack or mobile applications
- Automating tasks and processes across system boundaries
- Using workflows, rules, and central entry points
The following diagram provides an overview of the extension patterns:
Figure 2: Extension use case patterns for SAP Cloud ERP Private
Source: SAP – Clean core extensibility for SAP S/4HANA Cloud (2024)
3. SAP PLMSI in the Context of Clean Core
3.1 BAdIs as Released Extension Points
SAP PLM System Integration (PLMSI) provides a wide range of documented BAdIs (Business Add-Ins) that are designated as official extension points for customer-specific adaptations. These BAdIs are documented in the SAP Configuration Guide for PLMSI and therefore belong to the released extension points of the SAP standard.
The use of these BAdIs is clean-core-compliant and corresponds to Level A or Level B of the SAP extensibility model, provided that only released or classic APIs and objects are used within the BAdI implementation.
3.2 Categories of PLMSI BAdIs
The PLMSI BAdIs can be categorized as follows:
Post-Processing BAdIs: Customer-specific post-processing steps after successful standard processing of inbound messages (e.g. for material master, document master, change objects, bills of material).
Read Extension Fields BAdIs: Enrichment of outbound data with additional customer-specific fields during read access (e.g. BAdI /PLMF/BD_PV_READ_EXTN_FLD for material master data).
Custom Conversion BAdIs: Definition of custom conversion logic for data formats (e.g. date formats, units of measure).
Custom Logic BAdIs: Complete implementation of custom processing logic as a replacement for the standard integration. These BAdIs offer methods for Maintain (write) and Read (read) and allow the creation of entirely custom SAP objects or the implementation of deviating business logic.
Selection Condition BAdIs: Adaptation of selection conditions for specific object types (e.g. routings).
Inbound Request BAdIs: Adjustment of data in inbound maintain requests before standard processing, as well as modification of the response before it is returned to the external system.
Note: The number of avialabe BAdI extention points varies depending on the PLMSI version and feature pack.
3.3 Configuration vs. Implementation
A significant portion of PLMSI functionality can be covered purely through configuration – without any code development. This includes, among other things, scenario definitions, attribute mappings, conversion rules, and the assignment of processing pipelines.
For requirements beyond this – such as complex business logic, customer-specific validations, or the integration of additional SAP objects – the BAdIs described above are available. This combination of configuration and BAdI-based extension is architecturally intentional and fully clean-core-compliant.
4. Positioning PLMSI Extensions within Clean Core Levels
Extension Type | Clean Core Level | Assessment |
PLMSI configuration (scenario setup, attribute mappings, conversion rules) | Level A | ✅Fully compliant |
BAdI implementation using released/classic APIs and objects | Level A / B | ✅Compliant |
BAdI implementation using internal SAP objects | Level C | ⚠️Conditionally compliant – change-log monitoring recommended |
Direct modification of SAP standard (not recommended) | Level D | ❌Not compliant |
5. Future-Proofing and Evolution
Since the PLMSI BAdIs are provided as released extension points, upgrade safety is should be ensured. SAP updates typically do not affect BAdI implementations, as the BAdI framework ensures a clean separation between standard code and customer extensions.
Furthermore, it is possible that future PLMSI versions may incorporate into the standard some extensions that are currently realized through BAdIs. This would prospectively reduce customer-specific implementation effort and further increase the degree of standardization.
SAP regularly releases new released APIs and BAdIs. For a current overview, the following resources are recommended:
- SAP Road Map Explorer for PLM System Integration
- SAP Business Accelerator Hub (for released APIs)
- Cloudification Repository Viewer (for classic APIs)
- SAP Help Portal – PLMSI Configuration Guide
6. Conclusion
The use of SAP PLMSI BAdIs is clean-core-compliant. SAP has intentionally provided these extension points to enable customer-specific integration requirements within a future-proof, upgrade-stable architectural framework.
For implementation, the following clear recommendations apply:
- Prioritize configuration – wherever possible, address requirements through PLMSI configuration.
- Use BAdIs with released objects – this corresponds to Level A/B and is unconditionally clean-core-compliant.
- Use internal objects only when necessary – and set up change-log monitoring in that case (Level C).
- Avoid modifications – direct interventions in the SAP standard are not clean-core-compliant and jeopardize upgrade capability (Level D).
Sources
[1] SAP – Clean core extensibility for SAP S/4HANA Cloud (September 2024)
https://www.sap.com/documents/2024/09/20aece06-d87e-0010-bca6-c68f7e60039b.html
[2] SAP Help – Configuration Guide for PLM System Integration 3.0 for SAP S/4HANA
https://help.sap.com/docs/plm-system-integration-for-s4hana/configuration/about-this-guide
[3] SAP Learning – Practicing Clean Core Extensibility for SAP S/4HANA Cloud
https://learning.sap.com/courses/practicing-clean-core-extensibility-for-sap-s-4hana-cloud
[4] SAP Learning – Exploring How to Make Extensions Clean Core Compliant
https://learning.sap.com/courses/managing-clean-core-for-sap-cloud-erp/exploring-how-to-make-extensions-clean-core-compliant_d285a299-b152-452f-9cb4-ed3f6e382b10
[5] SAP Community – ABAP Extensibility Guide – Clean Core for SAP S/4HANA Cloud (August 2025)
https://community.sap.com/t5/technology-blog-posts-by-sap/abap-extensibility-guide-clean-core-for-sap-s-4hana-cloud-august-2025/ba-p/14175399
[6] SAP Road Map Explorer – PLM System Integration
https://roadmaps.sap.com/board?PRODUCT=73555000100800003228
Source link