Governance is the backbone of any successful Clean Core initiative. Writing clean code once is not enough — you need automated, continuous mechanisms to ensure that new custom development stays within clean core boundaries over time. The ABAP Test Cockpit (ATC) is SAP’s answer to this challenge, and the latest ATC recommendations for clean core governance represent a significant leap forward.
What Is the ABAP Test Cockpit (ATC)?
The ABAP Test Cockpit is SAP’s integrated code quality and compliance tool for ABAP development. It runs static analysis checks on ABAP objects — identifying violations of coding standards, usage of deprecated APIs, security vulnerabilities, and — critically for clean core — violations of the Clean Core Extensibility Model.
In the context of clean core governance, ATC serves as your automated gatekeeper. It can be configured to enforce level compliance (A, B, C, D) and block transports that include non-compliant custom code from reaching production — ensuring clean core is maintained across your entire development lifecycle.
Setting Up a Central ATC Check System
SAP recommends setting up a central ATC check system for clean core governance. There are two main options depending on your landscape:
- ATC on SAP BTP — A cloud-native option for organizations running S/4HANA Cloud Private Edition or leveraging BTP-based ABAP environments. This keeps the governance infrastructure out of the productive system landscape.
- Central ATC in S/4HANA 2025 or S/4HANA 2023 — For on-premise or private cloud systems, a dedicated central ATC system provides centralized control over all satellite systems’ custom code compliance.
The central system approach means you don’t need to configure ATC separately on every development system — one configuration governs all.
Key ATC Checks for Clean Core Compliance
The updated clean core ATC check framework includes several new and enhanced checks aligned with the Level A–D model:
ABAP Language Version Check
This check validates that ABAP objects intended to be Level A compliant are developed using the “ABAP for Cloud Development” language version. Any usage of statements or built-ins that are not available in this language version will be flagged, preventing accidental introduction of non-cloud-ready constructs.
Released API Usage Check
Perhaps the most critical check for clean core, this validates that custom code only accesses SAP objects (tables, function modules, classes, BAdI definitions) through their officially released API interfaces. Direct access to internal SAP tables or undocumented function modules is flagged as a violation.
Modification Check
Modifications to standard SAP delivery objects are the most significant clean core violation. The ATC modification check detects and flags any changes made directly to SAP-delivered ABAP objects, distinguishing them from proper extension mechanisms like BAdIs, Enhancement Spots, or Customer Include sections.
Integrating ATC into Your Development Pipeline
ATC checks are most effective when integrated into the transport workflow. By configuring ATC to run automatically before a transport request is released, you create a mandatory compliance gate. Developers receive immediate feedback on violations, and critical errors can block the transport entirely — preventing non-compliant code from progressing through the landscape.
For CI/CD-enabled landscapes, ATC can be integrated into gCTS (Git-enabled Change and Transport System) pipelines, enabling automated clean core governance in a modern DevOps workflow.
Governance as a Journey, Not a Gate
Effective clean core governance doesn’t mean blocking all development that isn’t Level A. It means having complete visibility into your extensibility posture, making conscious decisions about where exceptions are warranted, and maintaining a documented plan to reduce the exception surface over time.
ATC gives you the tooling to do exactly that — turning clean core from a one-time project into an ongoing operational discipline that improves with every release cycle.

