Neptune DXP - SAP Edition 25.0.0 release notes

September 30, 2026

General

Minimum system requirements

The system must run SAP_BASIS 740 SP09 or higher and must be a Unicode system.

Front-end/Back-end split: new authorization object /NEP/RFC

In a front-end/back-end split, apps on the Gateway system connect to backend systems through RFC. DXP 25 checks these connections against a new authorization object, /NEP/RFC.

If you’re upgrading from a version earlier than DXP 25, add /NEP/RFC to your existing authorization roles. Business users also need this authorization. You can give it to them with the role /NEPTUNE/RFC_END_USER.

Install UI5 1.148 before you upgrade

UI5 1.148 is the default UI5 version in DXP 25. Download it from the Neptune download service and install it on the system before you install Neptune DXP SAP Edition 25.

After the upgrade, any launchpad or mobile client with an empty UI5 version field uses UI5 1.148. In the UI, an empty field shows as Using recommended by Neptune.

Use the latest Neptune Setup Helper

Always run the latest version of the Neptune Setup Helper program. The latest version has changes that affect DXP 25 installations.

API Factory

Request Body Signature might be empty in S4Hana Systems for function modules with enhancements #905

When a function module has (an) enhancement(s) that extend the signature of the function module (for example, BAPI_SALESORDER_CHANGE) and you use API Factory Class /NEPTUNE/CL_DR_LIB_SRC_FUNC_X to inspect the POST /execute endpoint, you will notice that the request body payload might stay empty. This will also lead to issues in the AI Context Hub for SAP for certain function module calls.

App Designer

Copy and import of extension apps #893

The functions New from File, Copy and Import from File have been fixed to work properly for extension apps.

Create floorplan pages directly from OData Sources #809

New pages for EntitySets (Worklist) or EntityTypes (Object Page) can now be generated via context menu on any OData Source (V2 + V4).

Filter aggregation controls #896

The context menu on aggregations will now only show UI5 controls that match the type defined by the aggregation.

Importing a file via paste checks the file content #881

The menu action Import from File checks whether the given file really contains an app to prevent unpredictable behavior.

New UI5 controls #870

The following UI5 controls have been added to the App Designer control library.

  • sap.m.SinglePlanningCalendar

  • sap.m.SinglePlanningCalendarDayView

  • sap.m.SinglePlanningCalendarMonthView

  • sap.m.SinglePlanningCalendarWeekView

  • sap.m.SinglePlanningCalendarWorkWeekView

  • sap.ui.unified.DateRange

  • sap.ui.unified.DateTypeRange

  • sap.m.Tokenizer

  • sap.m.OverflowToolbarMenuButton

  • sap.m.table.columnmenu.Menu

  • sap.m.table.columnmenu.ActionItem

  • sap.m.table.columnmenu.QuickAction

  • sap.m.table.columnmenu.QuickActionItem

  • sap.m.table.columnmenu.QuickGroup

  • sap.m.table.columnmenu.QuickGroupItem

  • sap.m.table.columnmenu.QuickSort

  • sap.m.table.columnmenu.QuickSortItem

  • sap.m.table.columnmenu.QuickTotal

  • sap.m.table.columnmenu.QuickTotalItem

  • sap.m.VariantManagement

  • sap.m.VariantItem

  • sap.m.SplitContainer

  • sap.ui.unified.Menu

  • sap.ui.unified.MenuItem

  • sap.ui.unified.MenuItemGroup

  • sap.ui.unified.MenuTextFieldItem

Search and Replace now preserves TypeScript source #865

Previously, using search and replace on a TypeScript string would replace the code in its transpiled JavaScript form instead of the original TypeScript. Search and replace now correctly updates the TypeScript source file.

Search results showing transpiled JavaScript instead of TypeScript #865

Previously, searching for code would return results from the transpiled JavaScript version of TypeScript files, rather than the original TypeScript source. This has been fixed and search results now correctly point to the matching TypeScript string and line in the file.

Cockpit Apps

OData Source name can’t be renamed anymore #839

After renaming an OData Source any linked app became unusable. Renaming is now prohibited and names must be unique in the system.

Rendering issue with wizard tabs in Translate Cockpit Objects app #860

The wizard step tabs in the Translate Cockpit Objects Cockpit app rendered incorrectly under UI5 1.120. The process-step arrows and icons appeared misaligned and changed state at the wrong times (for example after the TRANSLATION_INIT call finished or when switching steps). The wizard header has been rebuilt and the process steps now carry a nep-wizard="progress" custom-data marker written to the DOM, so the step tabs and their progress indicators display correctly again.

Extension apps

Extension apps now correctly pick up inherited script files #864

Script files inherited from the base app are now loaded correctly, even when they weren’t changed or added within the extension app itself.

Launchpad

App not reloaded after accepting the "app updated" prompt #899

After accepting the launchpad’s This app was updated, reload? prompt, the tile silently kept showing the old version of the app instead of reopening with the latest one. AppCache.checkView now clears the app’s cached in-memory view once the updated version has finished downloading in the background, so accepting the prompt correctly rebuilds the tile from the fresh version instead of reusing the stale one.

Live apps started twice when switching language during login #911

Logging in and out and at the same time switching language would load live apps twice. Live apps will now only be started one time.

Nested documentation in Launchpad side panel #880

Since Neptune DXP - SAP Edition 24.12.0, only the top-level entries were displayed in the launchpad’s documentation side panel tree. The side panel now correctly displays the full documentation tree, including nested entries.

Overflow menu for opened apps #611

The launchpad top menu now uses the UI5 overflow menu control to display the opened apps. When there are more open apps than fit in the available width, the surplus items move into an overflow menu instead of being cut off, keeping every open app reachable on smaller screens.

Start parameters lost on AppCache.Load after back-end app update #866

When an application had been changed in the back end, the launchpad prompted the user to reload it. Accepting the reload dropped the application’s start parameters (and other load options), so the app reopened without the context it was started with. AppCache.checkView now forwards the original load options to the "app updated" flow, and the standard launchpad’s appUpdated handler passes them straight through to AppCache.Load, so start parameters are preserved when the app is reloaded.

Mobile Client

Mobile Client login button colors #892

On very small mobile devices, button background & text colors would not have enough contrast.

Safe-area handling #796

The mobile client now respects device safe areas on iOS and Android devices with notches, rounded corners, and home indicators. The viewport is rendered with viewport-fit=cover and the safe-area insets are applied at the top-level nepMainCanvas form element, so app content is no longer obscured by the status bar, notch, or home indicator. Tested on iPad (no safe areas), iPhones with notches and Android phones with notches.

Rich Text Editor

Code view now follows the SAP theme #652

The RichTextEditor’s source (code) view text area was rendered with the browser default colors, making the text hard to read on dark themes. It now uses the SAP theme colors (--sapBaseColor background, --sapTextColor text), matching the rest of the editor.

Math button threw an error when enabled #652

Enabling the math button (btnMath) on the RichTextEditor previously threw [SUNEDITOR.create.fail] To use the math button you need to add a "katex" object to the options, because the required KaTeX library was never provided to the editor. KaTeX (katex.min.js / katex.min.css) is now loaded on demand from the server when the math button is enabled and passed to the editor. The math dialog also no longer closes immediately the first time it is opened: committing the editor content back to the control on blur (and on save) no longer forces a re-render that recreated the editor and dismissed the open dialog.

System Settings

SAP System Role #868

You can now quickly check which system role is configured for an SAP system directly from the Cockpit. A new SAP System Role field has been added under System Settings → General, showing the configured role at a glance.

Tile

Editing tiles from inside the Tile Group app #885

Editing tiles from inside the Tile Group app no longer keeps the app in display mode although creating a lock for the required tile.

New tile type - Fiori application (Beta) #785

You can now configure tiles to launch native Fiori applications directly, making it easier to bring SAP Fiori content into your launchpad experience.