Qué es Clean Core y por qué se convirtió en prioridad
El concepto de SAP para mantener el núcleo de S/4HANA cerca del estándar, las cinco dimensiones que abarca, los niveles A a D, lo que no es y por dónde la propia SAP recomienda empezar.
"Clean Core" se ha convertido en una de las expresiones más repetidas en proyectos SAP, en propuestas de RISE with SAP, en planes de upgrade y en los paneles de SAP Cloud ALM. Como ocurre con todo término de moda, se usa de maneras distintas. Conviene volver a lo que SAP quiere decir con él.
La idea en una frase
Clean Core consiste en mantener el núcleo del ERP lo más cerca posible del estándar de SAP, y hacer todo lo que es propio de la empresa de una forma que no se rompa cuando SAP actualiza el sistema.
El "núcleo" es S/4HANA tal como lo entrega SAP. "Limpio" no significa vacío: significa sin modificaciones en el código de SAP y con las extensiones conectadas a él solo a través de puntos que SAP considera estables.
Las cinco dimensiones
SAP describe Clean Core en cinco dimensiones y deja claro que el concepto no se limita al código:
| Dimensión | Qué significa estar "limpia" |
|---|---|
| Procesos | Procesos de negocio cercanos a las mejores prácticas del estándar, sin personalización innecesaria |
| Extensiones | Funcionalidad propia construida sin modificar SAP, conectada al núcleo solo por puntos estables |
| Datos | Datos maestros, de configuración y transaccionales consistentes y sin basura acumulada |
| Integraciones | Comunicación con otros sistemas mediante escenarios y API estándar (OData, SOAP, eventos) |
| Operaciones | Gobernanza y monitorización continuas, para que el núcleo siga limpio después del proyecto |
Los artículos de esta serie tratan la dimensión de extensiones, donde vive el código Z, porque es la que hoy aparece medida en SAP Cloud ALM.
Los niveles A a D
Desde agosto de 2025, SAP clasifica cada extensión en cuatro niveles. Estos sustituyeron el antiguo modelo de tres capas (tier 1, 2 y 3), y la propia SAP los compara con una etiqueta de eficiencia energética:
| Nivel | Qué es | Situación |
|---|---|---|
| A | Solo interfaces liberadas por SAP, con contrato de estabilidad: código en ABAP Cloud o aplicaciones en SAP BTP | Clean Core |
| B | API clásicas, como las BAPI, que los especialistas de SAP indicaron como estables, aunque sin contrato formal | Clean Core |
| C | Objetos internos de SAP, como la lectura directa de tablas. SAP puede reclasificarlos en cualquier momento, hacia arriba o hacia abajo | Condicionalmente limpio |
| D | Usos fuera de las reglas de extensión: objetos marcados como no-API, modificaciones, ampliaciones implícitas y escritura directa en tablas de SAP | Fuera de Clean Core |
Una extensión recibe el peor nivel entre los que utiliza. El cálculo de puntos que SAP Cloud ALM hace a partir de esto se explica en Cómo calcula SAP Cloud ALM la deuda Clean Core.
Por qué se convirtió en prioridad
- Actualizaciones más frecuentes. S/4HANA recibe actualizaciones con regularidad, y cada una obliga a probar y corregir el código propio que depende de lo que cambió. Cuanto más limpio el núcleo, menor es ese costo en cada ocasión.
- SAP empezó a medir. Desde finales de 2025, el panel de RISE with SAP en SAP Cloud ALM muestra, sistema por sistema, la distribución de los objetos por nivel y una deuda en puntos. El tema salió de la conversación técnica y llegó al panel de la dirección.
- El camino a la nube. El código en ABAP Cloud, el nivel A, ya sigue las reglas de las ediciones cloud de SAP. El código clásico, incluso en el nivel B, tiene que rehacerse antes de ir a la Public Edition o a SAP BTP.
Cómo extender sin ensuciar el núcleo
SAP ofrece tres caminos, que pueden combinarse:
| Camino | Para qué | Ejemplo |
|---|---|---|
| Key user (en el propio sistema) | Ajustes hechos por el usuario clave, mediante apps Fiori, sin programación clásica | Campos y lógicas simples añadidos a un proceso |
| Desarrollo en el propio S/4HANA (on-stack) | Código propio en el mismo sistema, en ABAP Cloud, usando solo API liberadas | Una regla de negocio de la empresa en un objeto de negocio estándar |
| En paralelo (side-by-side) | Aplicaciones separadas, en SAP BTP, que se comunican con S/4HANA mediante API | Una aplicación para proveedores o una integración con otro sistema |
Lo que queda fuera de Clean Core es el camino clásico sin control: modificar código de SAP, escribir directamente en tablas de SAP y usar objetos internos que SAP puede cambiar en cualquier actualización.
Lo que Clean Core no es
- No es "cero código Z". Es código propio conectado al núcleo por puntos estables. Un objeto Z en ABAP Cloud, que solo usa API liberadas, está en el nivel A; un programa clásico sin ningún hallazgo se queda en el B (véase Por qué un programa con pantalla clásica se queda en el nivel B).
- No es todo o nada. Un programa clásico que usa BAPI y otras API clásicas está en el nivel B, y B cuenta como Clean Core.
- No es solo para quien va a la nube. Un sistema on-premise con el núcleo limpio se actualiza más rápido, con menos pruebas y menos riesgo.
- No es un proyecto con final. Sin gobernanza, el código nuevo vuelve a ensuciar el núcleo. Por eso las operaciones son una de las cinco dimensiones.
Por dónde recomienda SAP empezar
El white paper de Clean Core de SAP propone un orden de prioridad para el código propio:
- Primero el nivel D. SAP pide la corrección inmediata de lo que está fuera de Clean Core.
- El código que nadie usa. SAP estima que alrededor del 60% del código Z de los clientes no se utiliza. Las herramientas SCMON y SUSG muestran lo que no se ejecuta; borrarlo es la corrección más barata que existe, empezando por lo que está en D.
- Reducir el nivel C todo lo posible, sustituyendo objetos internos por API liberadas o clásicas.
- "Stay clean" para el código nuevo: nada nuevo puede entrar en C o D. ABAP Cloud en el desarrollo nuevo y una verificación del ATC antes de cada transporte lo garantizan. La organización en componentes de software ayuda a evitar dependencias ocultas (véase Componentes de software en ABAP Cloud: quién puede llamar a quién).
- "Get clean" para el legado: reducir la deuda poco a poco, con una meta de alrededor del 10% al año, aprovechando cada cambio en un objeto para dejarlo más limpio de lo que estaba.
Para que la evolución aparezca donde mira la dirección, SAP recomienda importar el resultado del ATC en SAP Cloud ALM todas las semanas.
Fuentes
- SAP, Clean core extensibility (white paper), edición de agosto de 2026.
- SAP, Extend SAP S/4HANA in the cloud and on premise with ABAP based extensions (ABAP Extensibility Guide), versión 2.3, agosto de 2025.
- SAP Help, SAP Cloud ALM, Extensibility (panel de RISE with SAP Methodology).
- SAP Learning, Discovering the Clean Core Concept.