SAP AIF

/

feb 16, 2025

Accelerating Business Processes with SAP AIF Synchronous Interfaces

SAP AIF, SAP ABAP

/

AUTHOR

/

AUTHOR

/

AUTHOR

Mateusz Kwaśniewski

Document Overview

This document explains how synchronous messages can be handled within the SAP AIF (Application Interface Framework), including approaches for error handling and monitoring. The example described below covers a scenario where a WebService is deployed on an SAP S/4HANA system, implemented as an ABAP Proxy class, and the inbound request is processed through AIF.

To follow this document effectively, you should have basic familiarity with ABAP and the AIF framework.

Synchronous vs Asynchronous Processing

Before we move into the solution, it is important to understand what synchronous communication means.

Synchronous messaging:
The sender sends a request and waits for a direct response before continuing to the next step in the process.

Asynchronous messaging:
The request is sent and the sender does not wait for completion or response. Processing continues independently.

In business processes, synchronous communication is commonly used when immediate validation or confirmation is required, such as validating a customer number during an order process.

Problem Overview in SAP AIF

From a design perspective, SAP AIF does not store payloads for synchronous WebService messages. This behavior is caused by how SAP WebService processing works. Persistence is not performed for synchronous Proxy calls, which means that no data is stored in the SRT_MMASTER table.
For reference, see SAP Note 1575707.

As a result:

  • Message payloads are not available in AIF monitoring

  • In case of failure, the support team cannot view the inbound data

  • This impacts troubleshooting and traceability

This issue specifically affects scenarios where external systems call SAP via ABAP Proxy Web Services.

You can use the XML Persistence Engine for storing synchronous messages, but the standard configuration runs in the background, which means it does not return a direct synchronous response. Therefore, adjustments are needed to achieve both:

  • Real-time synchronous response

  • Error visibility and monitoring in AIF

For more background, refer to the official AIF documentation:
https://help.sap.com/viewer/p/SAP_APPLICATION_INTERFACE_FRAMEWORK

Technical Solution in AIF

To address the issue, we need to understand how AIF manages message storage and processing through its engines:

Engine Type

Class

Purpose

Application Engine

internal

Main logic for processing messages and executing actions

Persistence Engine

/AIF/CL_PERSIST_ENGINE_*

Responsible for storing, retrieving and managing payload data

Common persistence classes include:

Purpose

Class Name

Notes

XML storage

/AIF/CL_PERSIST_ENGINE_XML

Used in this solution

Web Service processing

/AIF/CL_PERSIST_ENGINE_WEBSERV

Default processing for synchronous WS calls

Proxy via PI/PO

/AIF/CL_PERSIST_ENGINE_PROXY

Supports restart and monitoring when PI/PO is involved

Others

/AIF/CL_PERSIST_ENGINE_*

RFC, IDoc, OData, CIF, TRFC etc.

Selected Configuration

For this solution we use:

  • Application Engine: WebService (standard)

  • Persistence Engine: XML

The proxy implementation must explicitly trigger AIF processing using the AIF Proxy Enabler. In the example below, the standard exception class CX_MDC_STANDARD_MESSAGE_FAULT is used to capture errors returned by AIF actions:

TRY.
    /aif/cl_enabler_proxy=>process_message(
        is_input               = ls_input
        iv_exception_classname = 'CX_MDC_STANDARD_MESSAGE_FAULT' ).
CATCH cx_mdc_standard_message_fault INTO DATA(lo_fault).
    LOOP AT lo_fault->standard-fault_detail ASSIGNING FIELD-SYMBOL(<fs_fault>

Persistence Step

After AIF processing, the Message GUID returned by the AIF Enabler class can be retrieved and stored. This enables standard AIF monitoring to show full payload details, including in case of failure.

The required persistence logic relies on standard AIF classes, such as /AIF/CL_ENABLER_XML, without custom development.


/

BLOG

/

BLOG

/

BLOG

SAP AI

/

Nov 12, 2025

SAP S/4HANA document grounding with SAP AI Core (real use case)

AI doesn’t just collect data - it transforms it into actionable steps that grow your business.

SAP AI

/

Nov 12, 2025

SAP S/4HANA document grounding with SAP AI Core (real use case)

AI doesn’t just collect data - it transforms it into actionable steps that grow your business.

SAP AI

/

Nov 12, 2025

SAP S/4HANA document grounding with SAP AI Core (real use case)

AI doesn’t just collect data - it transforms it into actionable steps that grow your business.

SAP AIF

/

Oct 10, 2025

SAP AIF custom ABAP framework

Learn how to modernize your SAP AIF implementations with object-oriented ABAP and clean architecture. Discover best practices for building modular, reusable, and scalable AIF actions that simplify integration and long-term maintenance.

SAP AIF

/

Oct 10, 2025

SAP AIF custom ABAP framework

Learn how to modernize your SAP AIF implementations with object-oriented ABAP and clean architecture. Discover best practices for building modular, reusable, and scalable AIF actions that simplify integration and long-term maintenance.

SAP AIF

/

Oct 10, 2025

SAP AIF custom ABAP framework

Learn how to modernize your SAP AIF implementations with object-oriented ABAP and clean architecture. Discover best practices for building modular, reusable, and scalable AIF actions that simplify integration and long-term maintenance.

SAP AIF

/

Jun 13, 2024

SAP AIF Mapping Conditions - How to Apply Conditional Logic in Interface Mappings

Discover how to use mapping conditions in SAP AIF to apply dynamic logic, value mappings, and checks during message processing. Learn practical configuration steps and examples from Codemine’s SAP integration experts.

SAP AIF

/

Jun 13, 2024

SAP AIF Mapping Conditions - How to Apply Conditional Logic in Interface Mappings

Discover how to use mapping conditions in SAP AIF to apply dynamic logic, value mappings, and checks during message processing. Learn practical configuration steps and examples from Codemine’s SAP integration experts.

SAP AIF

/

Jun 13, 2024

SAP AIF Mapping Conditions - How to Apply Conditional Logic in Interface Mappings

Discover how to use mapping conditions in SAP AIF to apply dynamic logic, value mappings, and checks during message processing. Learn practical configuration steps and examples from Codemine’s SAP integration experts.