https://raw.githubusercontent.com/ajmaradiaga/feeds/main/scmt/topics/SAP-Event-Broker-for-SAP-cloud-applications-blog-posts.xml SAP Community - SAP Event Broker for SAP cloud applications 2026-03-01T18:00:52.368840+00:00 python-feedgen SAP Event Broker for SAP cloud applications blog posts in SAP Community https://community.sap.com/t5/technology-blog-posts-by-members/automating-advanced-event-mesh-broker-creation/ba-p/13595187 Automating Advanced Event Mesh Broker Creation 2024-02-08T09:07:53.387000+01:00 MarianVatafu https://community.sap.com/t5/user/viewprofilepage/user-id/864725 <H1 id="toc-hId-836747362">Introduction</H1><P>&nbsp;</P><P><SPAN>The need to reduce costs associated with operating and maintaining an active message broker led to the creation of a tool that automates the generation and configuration any time the need for asynchronous event-based messages arises.</SPAN></P><P>This article will showcase a method of creating an event broker in <A href="https://help.sap.com/docs/SAP_ADVANCED_EVENT_MESH" target="_self" rel="noopener noreferrer">Advanced Event Mesh</A> by leveraging the REST endpoints provided by&nbsp;<A href="https://help.pubsub.em.services.cloud.sap/Cloud/ght_use_rest_api_services.htm" target="_self" rel="nofollow noopener noreferrer">Solace</A> and&nbsp;<A href="https://docs.solace.com/Admin/SEMP/Using-SEMP.htm" target="_self" rel="nofollow noopener noreferrer">SEMP configuration</A>. The solution will allow the system to request a broker creation, monitor the status, re-generate the queues and topics and extract the endpoints for sending or receiving data. Besides that, a UI has been set up that simplifies the broker configuration and allows users to persist or modify configurations.</P><H2 id="toc-hId-769316576">&nbsp;</H2><H1 id="toc-hId-443720352">Scenario Overview</H1><P>&nbsp;</P><P data-unlink="true">All the necessary steps for broker creation are done in SAP Integration Suite using multiple iFlow artifacts for each process step, <A href="https://help.sap.com/docs/cloud-integration/sap-cloud-integration/decoupling-via-jms-queue?q=JMS%20Queues" target="_self" rel="noopener noreferrer">JMS Queues</A> for handling connection errors, timeouts and message routing, Datastore for saving broker configurations and a main page that acts as a user interface for setting up everything.</P><P data-unlink="true">&nbsp;</P><H1 id="toc-hId-247206847">Architecture Overview</H1><P>&nbsp;</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="Architecture.png" style="width: 947px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/60631i7F32250BAC014F9A/image-size/large?v=v2&amp;px=999" role="button" title="Architecture.png" alt="Architecture.png" /></span></P><P class="lia-align-center" style="text-align: center;">&nbsp;<EM>Picture 1 - Architecture Overview</EM></P><H1 id="toc-hId-50693342">UI Configuration Page</H1><P>&nbsp;</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="UIPAGE.png" style="width: 958px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/60634iE8C3CB8E7FCF595B/image-size/large?v=v2&amp;px=999" role="button" title="UIPAGE.png" alt="UIPAGE.png" /></span></P><P class="lia-align-center" style="text-align: center;">&nbsp;<EM>Picture 2 - UI Configuration Page</EM></P><P>The configuration page is a HTML page exposed as a REST endpoint, containing multiple sections that allow the user to generate new configurations, use existing ones and even check the status of the already-deployed broker creation jobs.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="Deployment.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/60638iEDF217918FCCE8E4/image-size/large?v=v2&amp;px=999" role="button" title="Deployment.png" alt="Deployment.png" /></span></P><P class="lia-align-center" style="text-align: center;">&nbsp;<EM>Picture 3 - Deployment Page</EM></P><P>On this page, we can see the status of the active or pending brokers on the cluster. I also added the ability to delete the broker on demand.</P><P>&nbsp;</P><P>&nbsp;</P><H1 id="toc-hId--145820163">Technical Setup</H1><P>The process of creating an event broker has been detailed in the&nbsp;<A href="https://help.pubsub.em.services.cloud.sap/Cloud/ght_use_rest_api_services.htm" target="_self" rel="nofollow noopener noreferrer">Managing Services with the<SPAN>&nbsp;</SPAN><SPAN class="">SAP Integration Suite, Advanced Event Mesh</SPAN><SPAN>&nbsp;</SPAN>REST API</A> section and it consists of several REST calls in order to create a broker, get the connection details and check the creation status.</P><P>The most important parameters that allow us to continue with the next steps are :</P><UL><LI>&nbsp;serviceId - the id of the service cluster generated</LI><LI>&nbsp;msgVpnName - the internal id of the broker</LI><LI><DIV><DIV><SPAN>defaultManagementHostname - the hostname that will be used for queue, topic and rest delivery point creation</SPAN></DIV><DIV>&nbsp;</DIV></DIV></LI></UL><P>In order to create an event broker :</P><P>HTTP POST&nbsp;<SPAN><A href="https://api.solace.cloud/api/v0/services" target="_blank" rel="noopener nofollow noreferrer">https://api.solace.cloud/api/v0/services</A></SPAN></P><P>&nbsp;</P><pre class="lia-code-sample language-javascript"><code>{ "name": "Broker Name", "datacenterId": "&lt;Data Center Id&gt;", "serviceClassId":"developer", "serviceTypeId": "developer", "adminState": "start" }</code></pre><P>&nbsp;</P><P>&nbsp;</P><P>The authentication for this endpoint is made via an authorization token generated in the Cluster Manager.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="token.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/60664i9B1907A16E2BD1D3/image-size/large?v=v2&amp;px=999" role="button" title="token.png" alt="token.png" /></span></P><P class="lia-align-center" style="text-align: center;">&nbsp;<EM>Picture 4 - API Token Management</EM></P><P>In order to create a queue object :</P><P><SPAN>HTTP POST https://&lt;defaultManagementHostname&gt;/SEMP/v2/config/msgVpns/&lt;msgVpnId&gt;/queues</SPAN></P><P>&nbsp;</P><pre class="lia-code-sample language-java"><code>{ "accessType": "exclusive", "egressEnabled": true, "ingressEnabled": true, "msgVpnName": "&lt;msgVpnId&gt;", "owner": "all", "permission": "consume", "queueName": "&lt;queue-name&gt;" }</code></pre><P>&nbsp;</P><P>&nbsp;</P><P>In order to create a topic subscription object :</P><P><SPAN>HTTP POST https://&lt;defaultManagementHostname&gt;/SEMP/v2/config/msgVpns/&lt;msgVpnId&gt;/queues/&lt;queue-name&gt;/subscriptions</SPAN></P><P>&nbsp;</P><pre class="lia-code-sample language-java"><code>{ "msgVpnName": "&lt;msgVpnId&gt;", "queueName": "&lt;queue-name&gt;", "subscriptionTopic": "&lt;topic/name&gt;" }</code></pre><P>&nbsp;</P><P>&nbsp;</P><P>&nbsp;</P><P>&nbsp;</P><P>In order to create a rest delivery point object :</P><P data-unlink="true">HTTP POST https://&lt;defaultManagementHostname&gt;/SEMP/v2/config/msgVpns/&lt;msgVpnId&gt;/restDeliveryPoints&nbsp;</P><P>&nbsp;</P><P>&nbsp;</P><pre class="lia-code-sample language-java"><code>{ "clientProfileName": "default", "enabled": true, "msgVpnName": "&lt;msgVpnNameId&gt;", "restDeliveryPointName": "&lt;restDeliveryPointId&gt;" }</code></pre><P>&nbsp;</P><P>&nbsp;</P><P>If everything is correctly triggered, we should be able to see in the Cluster Manager our newly created broker, and as well in the broker console the queues and topics.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="cluster.png" style="width: 350px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/60658iA531855FE1B34772/image-dimensions/350x371?v=v2" width="350" height="371" role="button" title="cluster.png" alt="cluster.png" /></span></P><P class="lia-align-center" style="text-align: center;">&nbsp;<EM>Picture 5 - Cluster Manager</EM></P><P class="lia-align-center" style="text-align: center;"><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="msgvpn.png" style="width: 551px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/60659i5524C62770D90BB6/image-dimensions/551x267?v=v2" width="551" height="267" role="button" title="msgvpn.png" alt="msgvpn.png" /></span></P><P class="lia-align-center" style="text-align: center;">&nbsp;<EM>Picture 6 - Queues</EM></P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="topics.png" style="width: 637px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/60660i6BE492B596763D32/image-dimensions/637x249?v=v2" width="637" height="249" role="button" title="topics.png" alt="topics.png" /></span></P><P class="lia-align-center" style="text-align: center;">&nbsp;&nbsp;<EM>Picture 7 - Topics subscribed to a queue</EM></P><H1 id="toc-hId--342333668">&nbsp;</H1><H1 id="toc-hId--538847173">Adapter for inserting/consuming events</H1><P>By using the recently published <A href="https://help.sap.com/docs/integration-suite/sap-integration-suite/advanced-event-mesh-adapter" target="_self" rel="noopener noreferrer">adapter</A> for Advanced Event Mesh integrations, we can insert and consume events from our brokers. Below is a sample iFlow artifact that connects to a specific topic and consumes messages from there.</P><P class="lia-align-center" style="text-align: center;"><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="sender.png" style="width: 637px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/60666iE01E28DF9AF4A5DC/image-size/large?v=v2&amp;px=999" role="button" title="sender.png" alt="sender.png" /></span></P><P>&nbsp;</P><P class="lia-align-center" style="text-align: center;"><EM>Picture 8 - iFlow artifact for topic message consumption</EM></P><H1 id="toc-hId--735360678">Conclusions</H1><P>&nbsp;</P><P>Using the SAP Help documentation was the key behind the success, because the product is rather new on the market and we did not really heard of other use cases yet. By following the steps we were able to easily connect two Business Technology Platform products and we were able to leverage event-based integration far more powerful than the traditional <A href="https://help.sap.com/docs/event-mesh?locale=en-US&amp;state=PRODUCTION&amp;version=Cloud" target="_self" rel="noopener noreferrer">SAP Event Mesh</A>.</P><P>For any questions or suggestions, feel free to post here or in the special<SPAN>&nbsp;</SPAN><A href="https://community.sap.com/t5/c-khhcw49343/SAP+Internet+of+Things/pd-p/73554900100800002247" target="_self">Q&amp;A Section</A>.</P><P>Thank you!</P> 2024-02-08T09:07:53.387000+01:00 https://community.sap.com/t5/application-development-and-automation-blog-posts/cloudevents-at-sap/ba-p/13620137 CloudEvents at SAP 🌁 2024-03-04T07:13:27.857000+01:00 ajmaradiaga https://community.sap.com/t5/user/viewprofilepage/user-id/107 <P class=""><STRONG>TLDR;</STRONG><SPAN> <EM>SAP is an&nbsp;<A title="https://github.com/cloudevents/spec/blob/main/docs/contributors.md" href="https://github.com/cloudevents/spec/blob/main/docs/contributors.md" target="_blank" rel="noopener nofollow noreferrer">active contributor</A>&nbsp;to the CloudEvents specification and it has adopted the specification for describing event data in common formats to provide interoperability across its services/applications/systems. In the&nbsp;<A title="https://hub.sap.com/content-type/Events/events/packages" href="https://hub.sap.com/content-type/Events/events/packages" target="_blank" rel="noopener noreferrer">SAP Business Accelerator Hub</A>, you can find all the events exposed by a total of 17 different SAP services that publish events following the specification, including its flagship ERP products,&nbsp;<A title="https://hub.sap.com/package/SAPS4HANACloudBusinessEvents/event" href="https://hub.sap.com/package/SAPS4HANACloudBusinessEvents/event" target="_blank" rel="noopener noreferrer">SAP S/4HANA Cloud public edition</A>&nbsp;and&nbsp;<A title="https://hub.sap.com/package/SAPS4HANABusinessEvents/event" href="https://hub.sap.com/package/SAPS4HANABusinessEvents/event" target="_blank" rel="noopener noreferrer">SAP S/4HANA</A>, exposing more than 600+ events combined. To enable seamless event-based integrations between SAP applications, SAP applications must conform to the CloudEvents specification. SAP also offers three services, part of the SAP Business Technology Platform (SAP BTP), that can help customers embrace event-driven architectures, these are:&nbsp;<A title="https://discovery-center.cloud.sap/serviceCatalog/sap-event-hub?service_plan=standard&amp;region=all&amp;commercialModel=btpea" href="https://discovery-center.cloud.sap/serviceCatalog/sap-event-broker?region=all&amp;service_plan=standard&amp;commercialModel=cpea" target="_blank" rel="noopener nofollow noreferrer">SAP Cloud Application Event Hub</A>,&nbsp;<A title="https://discovery-center.cloud.sap/serviceCatalog/event-mesh?region=all" href="https://discovery-center.cloud.sap/serviceCatalog/event-mesh?region=all" target="_blank" rel="noopener nofollow noreferrer">SAP Event Mesh</A>, and&nbsp;<A title="https://discovery-center.cloud.sap/serviceCatalog/advanced-event-mesh?region=all" href="https://discovery-center.cloud.sap/serviceCatalog/advanced-event-mesh?region=all" target="_blank" rel="noopener nofollow noreferrer">SAP Integration Suite, advanced event mesh</A>.</EM></SPAN></P><P class=""><SPAN>&nbsp;</SPAN></P><DIV class=""><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="CloudEvents-CloudEvents.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/188983i358094059159D58E/image-size/large?v=v2&amp;px=999" role="button" title="CloudEvents-CloudEvents.png" alt="CloudEvents-CloudEvents.png" /></span><P>&nbsp;</P></DIV><DIV class=""><SPAN>Before we dive into how CloudEvents have been adopted within SAP, we might need to talk a bit about what an Event-Driven architecture is and what a CloudEvent is as well. Let's get started.</SPAN></DIV><BLOCKQUOTE dir="auto"><P class="">In October 2024, SAP published the SAP Event Driven Architecture Whitepaper, which is an informational document that describes and highlights the SAP technologies available to address event driven architecture needs. By getting familiar with the document, you can get a deeper understanding of how EDA enables your SAP applications. Check out the whitepaper: <A href="https://dam.sap.com/mac/app/p/pdf/asset/preview/LFK8XBY?ltr=a&amp;rc=10&amp;doi=SAP1130399" target="_blank" rel="noopener noreferrer">https://dam.sap.com/mac/app/p/pdf/asset/preview/LFK8XBY?ltr=a&amp;rc=10&amp;doi=SAP1130399</A>.</P></BLOCKQUOTE><H2 id="toc-hId-987845475">Event-Driven Architectures</H2><P class="">Long gone are the days when a system (aka<SPAN>&nbsp;</SPAN><EM><STRONG>target system</STRONG></EM>) will constantly poll to check if there are any changes in another system, e.g. a new customer created in a master data system. Traditionally, the<SPAN>&nbsp;</SPAN><EM><STRONG>target system</STRONG></EM><SPAN>&nbsp;</SPAN>will only know this by programming a routine that will poll a file share and check for any files produced by this system or a web service exposed in the<SPAN>&nbsp;</SPAN><EM><STRONG>source system</STRONG></EM>, every X minutes/hours/days. The expectation nowadays is that systems are integrated and that the data exchanged between these systems will be immediately available in the<SPAN>&nbsp;</SPAN><EM><STRONG>target system(s)</STRONG></EM><SPAN>&nbsp;</SPAN>if any data is created/changed in the<SPAN>&nbsp;</SPAN><EM><STRONG>source system</STRONG></EM>. Enter<SPAN>&nbsp;</SPAN><STRONG>Event-Driven architectures</STRONG>.</P><P class="" data-unlink="true">An Event-Driven Architecture is a software architecture paradigm concerning the production and consumption of events. An event can be defined as a significant change in the state of an object within a system[1]. For example, when a customer/supplier/employee (<EM><STRONG>business object</STRONG></EM>) is created/updated/deleted (<SPAN>&nbsp;</SPAN><EM><STRONG>action</STRONG></EM>) in a system. Translating this to the SAP world, when a Business Partner is created/changed in SAP S/4HANA (<EM><STRONG>source system</STRONG></EM>), SAP S/4HANA can notify that there was a change in a business object and<SPAN>&nbsp;</SPAN><EM><STRONG>target system(s)</STRONG></EM><SPAN>&nbsp;</SPAN>interested in the Business Partner object can then react and trigger follow-up activities in their systems.</P><H3 id="toc-hId-920414689">How do source and target systems communicate?</H3><P class="">Now, if the source system lets other systems know of any changes happening in its business objects, it will not be sustainable to create a new programming routine within the source system every time we want to notify a new target system of any changes. Traditionally we would have some form of middleware, e.g. SAP Cloud Integration, and configure our source system, an SAP S/4HANA system, to send notifications of these events to the middleware and then use the middleware to distribute these messages, e.g. we would add target system(s) as needed. Now, we are moving the problem from the source system to a sort of middleware but ideally, there will be a way for the source system to notify others without the need to make any changes. Enter the<SPAN>&nbsp;</SPAN><STRONG>event broker</STRONG>.</P><P class="" data-unlink="true"><EM>An event broker is message-oriented middleware that enables the transmission of events between different components of a system, acting as a mediator between publishers and subscribers. It is the cornerstone of event-driven architecture, and all event-driven applications use some form of event broker to send and receive information</EM>[2].</P><P class="">By introducing an event broker in our landscapes, we can configure our source systems to<SPAN>&nbsp;</SPAN><STRONG>publish</STRONG><SPAN>&nbsp;</SPAN>their events to this message-oriented middleware. The source system will specify the class of the message (aka<SPAN>&nbsp;</SPAN><STRONG>topic</STRONG>). Then, systems interested in the changes happening, e.g. in a particular business object in the source system, can<SPAN>&nbsp;</SPAN><STRONG>subscribe</STRONG><SPAN>&nbsp;</SPAN>to the event(s), via the event broker, by specifying the topic they are interested (<FONT face="courier new,courier">topic-based filtering</FONT>) in or it can also be based on the content of the message (<FONT face="courier new,courier">content-based filtering</FONT>). There are two keywords important here, publish and subscribe (PubSub), this is a well-known messaging pattern used to decouple systems/applications and allow asynchronous communication between them.</P><H3 id="toc-hId-723901184">What is the PubSub messaging pattern?</H3><P class="" data-unlink="true"><EM>Publish-subscribe is a communication pattern that is defined by the decoupling of applications, where applications publish messages to an intermediary broker rather than communicating directly with consumers (as in point-to-point)</EM>[3]<SPAN>. In a way, publishers and consumers do not need to know each other; they simply publish (produce) or consume (receive) the events. When following this messaging pattern we move from the traditional polling mechanism to know if there have been any changes in the source system to reacting to real-time events (notifications) the moment something happens in the source system.</SPAN></P><P class=""><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="CloudEvents-PubSub.drawio.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/71583i0F3F672E1A5281D9/image-size/large?v=v2&amp;px=999" role="button" title="CloudEvents-PubSub.drawio.png" alt="CloudEvents-PubSub.drawio.png" /></span><SPAN>&nbsp;</SPAN></P><P class="" data-unlink="true"><SPAN>A subscriber (consumer), is generally only interested in a subset of the messages published. Normally, a message-oriented middleware will provide subscribers with a mechanism to set filters on the data that they want to receive. There are two common ways of filtering: topic-based and content-based</SPAN>[4]<SPAN>.</SPAN></P><H4 id="toc-hId-656470398">Topic-based filtering</H4><P class="">We mentioned before how target systems can subscribe to events by specifying a topic they are interested in.... some event brokers will allow subscribers to subscribe to topics by using wildcards (*) and they will be able to receive only the events they are interested in, which can be for different topics. For example, let's assume we have an SAP S/4HANA with the name<SPAN>&nbsp;</SPAN><FONT face="courier new,courier">S4D</FONT><SPAN>&nbsp;</SPAN>and it publishes the Business Partner create and change on the following topics:<SPAN>&nbsp;</SPAN><FONT face="courier new,courier">sap/S4HANAOD/S4D/ce/sap/s4/beh/businesspartner/v1/BusinessPartner/Created/v1</FONT><SPAN>&nbsp;</SPAN>and<SPAN>&nbsp;</SPAN><FONT face="courier new,courier">sap/S4HANAOD/S4D/ce/sap/s4/beh/businesspartner/v1/BusinessPartner/Changed/v1</FONT>. A subscriber system could subscribe to both topics using a wildcard, e.g.<SPAN>&nbsp;</SPAN><FONT face="courier new,courier">sap/S4HANAOD/S4D/ce/sap/s4/beh/businesspartner/v1/BusinessPartner/*/v1</FONT><SPAN>&nbsp;</SPAN>and receive the messages for both event types. In this case, we are filtering the message by topics.</P><H4 id="toc-hId-459956893">Content-based filtering</H4><P class="">In some other cases, the event broker will allow the subscriber to specify which messages they want to receive, based on the attributes or content of the message. For example, the message sent to the event broker can contain attributes that describe the message and we can do some filtering based on the values of those attributes.<SPAN>&nbsp;</SPAN><EM>Note: An example is shared later, on how attributes in a message (CloudEvent) can be used to define filters.</EM></P><BLOCKQUOTE dir="auto"><P class="">SAP offers different services that can act as event brokers. We will discuss this further in the<SPAN>&nbsp;</SPAN><A title="./cloud-event-at-sap.md#saps-event-driven-portfolio" href="https://file+.vscode-resource.vscode-cdn.net/Users/I503541/repos/github.tools.sap/cloud-events-at-sap/cloud-event-at-sap.md#saps-event-driven-portfolio" target="_blank" rel="noopener nofollow noreferrer">SAP's event-driven portfolio</A><SPAN>&nbsp;</SPAN>section.</P></BLOCKQUOTE><P class="">With many systems in our landscapes and each one being developed by different vendors/teams, it would be good if there was a standard way of structuring these events to simplify how systems create/handle/process these messages right? Enter<SPAN>&nbsp;</SPAN><A title="https://CloudEvents.io/" href="https://cloudevents.io/" target="_blank" rel="noopener nofollow noreferrer">CloudEvents</A>.</P><H2 id="toc-hId-5277950">What is CloudEvents?</H2><P align="center"><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="CloudEvents-logo.png" style="width: 200px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/71576i1C2B02966BEF3BB4/image-size/small?v=v2&amp;px=200" role="button" title="CloudEvents-logo.png" alt="CloudEvents-logo.png" /></span></P><P class="">Today's system landscapes are very complex and we need to deal with many systems communicating with each other, ideally as close to real-time as possible. Nowadays, a system can publish events to notify other systems of the changes happening within the objects of their system. Given that we are talking of many systems, ideally, there will be a common way of describing the data produced by these systems. The CloudEvents specification can help us with this. We can leverage it to provide a consistent way for how our systems can communicate with others about these events.</P><P class="">As mentioned on the<SPAN>&nbsp;</SPAN><A title="https://CloudEvents.io/" href="https://cloudevents.io/" target="_blank" rel="noopener nofollow noreferrer">CloudEvents website</A>...<SPAN>&nbsp;</SPAN><EM>CloudEvents is a specification for describing event data in a common way. It's goal is to simplify event declaration and delivery across services, platforms and beyond! The specification is now under the<SPAN>&nbsp;</SPAN><A title="https://cncf.io/" href="https://cncf.io/" target="_blank" rel="noopener nofollow noreferrer">Cloud Native Computing Foundation</A></EM>.</P><P class="">Below is an example of what a CloudEvent message will look like:</P><PRE><SPAN class="">{</SPAN> <SPAN class="">"specversion"</SPAN><SPAN class="">:</SPAN> <SPAN class="">"1.0"</SPAN><SPAN class="">,</SPAN> <SPAN class="">"type"</SPAN><SPAN class="">:</SPAN> <SPAN class="">"com.github.pull_request.opened"</SPAN><SPAN class="">,</SPAN> <SPAN class="">"source"</SPAN><SPAN class="">:</SPAN> <SPAN class="">"https://github.com/cloudevents/spec/pull"</SPAN><SPAN class="">,</SPAN> <SPAN class="">"subject"</SPAN><SPAN class="">:</SPAN> <SPAN class="">"123"</SPAN><SPAN class="">,</SPAN> <SPAN class="">"id"</SPAN><SPAN class="">:</SPAN> <SPAN class="">"A234-1234-1234"</SPAN><SPAN class="">,</SPAN> <SPAN class="">"time"</SPAN><SPAN class="">:</SPAN> <SPAN class="">"2018-04-05T17:31:00Z"</SPAN><SPAN class="">,</SPAN> <SPAN class="">"comexampleextension1"</SPAN><SPAN class="">:</SPAN> <SPAN class="">"value"</SPAN><SPAN class="">,</SPAN> <SPAN class="">"comexampleothervalue"</SPAN><SPAN class="">:</SPAN> <SPAN class="">5</SPAN><SPAN class="">,</SPAN> <SPAN class="">"datacontenttype"</SPAN><SPAN class="">:</SPAN> <SPAN class="">"text/xml"</SPAN><SPAN class="">,</SPAN> <SPAN class="">"data"</SPAN><SPAN class="">:</SPAN> <SPAN class="">"&lt;much wow=\"xml\"/&gt;"</SPAN> <SPAN class="">}</SPAN></PRE><P class="">You'll notice that the example above is composed of many attributes, the event context. The context describes the event and is independent of the event data. Meaning that we can somehow process/inspect the event without needing to process its data. Now, let's dive a bit into the message itself.</P><BLOCKQUOTE dir="auto"><P class="">For more information on the history, development and design rationale behind the specification, see the<SPAN>&nbsp;</SPAN><A title="https://github.com/cloudevents/spec/blob/v1.0.2/cloudevents/primer.md" href="https://github.com/cloudevents/spec/blob/v1.0.2/cloudevents/primer.md" target="_blank" rel="noopener nofollow noreferrer">CloudEvents Primer</A><SPAN>&nbsp;</SPAN>document.</P></BLOCKQUOTE><H2 id="toc-hId--191235555">CloudEvents message format</H2><P class="">A CloudEvent message is mainly composed of context attributes and data.</P><H3 id="toc-hId--258666341">Context Attributes</H3><P class=""><SPAN>A number of attributes can be included within the message, these attributes are known as&nbsp;</SPAN><A title="https://github.com/cloudevents/spec/blob/v1.0.2/cloudevents/spec.md#context-attributes" href="https://github.com/cloudevents/spec/blob/v1.0.2/cloudevents/spec.md#context-attributes" target="_blank" rel="noopener nofollow noreferrer">Context Attributes</A><SPAN>&nbsp;and the idea is that these context attributes can be used to describe the event. We can think of these context attributes as the header information of our event that can be used for filtering and routing. Let's explore some of the attributes available.<BR /><BR /></SPAN></P><TABLE><TBODY><TR><TD><STRONG>Name</STRONG></TD><TD><STRONG>Required</STRONG></TD><TD><STRONG>Description</STRONG></TD><TD><STRONG>Example</STRONG></TD></TR><TR><TD>id</TD><TD><span class="lia-unicode-emoji" title=":white_heavy_check_mark:">āœ…</span></TD><TD>Identifies the event. Producers MUST ensure that source + id is unique for each distinct event.</TD><TD>63d6a150-c6a1-4c5b-bcc3-27d90c07941c</TD></TR><TR><TD>source</TD><TD><span class="lia-unicode-emoji" title=":white_heavy_check_mark:">āœ…</span></TD><TD>Identifies the context in which an event happened.</TD><TD>/default/sap.s4.beh/244572008</TD></TR><TR><TD>specversion</TD><TD><span class="lia-unicode-emoji" title=":white_heavy_check_mark:">āœ…</span></TD><TD>The version of the CloudEvents specification which the event uses.</TD><TD>1.0</TD></TR><TR><TD>type</TD><TD><span class="lia-unicode-emoji" title=":white_heavy_check_mark:">āœ…</span></TD><TD>Describes the type of the event</TD><TD>sap.s4.beh.businesspartner.v1.BusinessPartner.Changed.v1</TD></TR><TR><TD>datacontenttype</TD><TD>&nbsp;</TD><TD>Content type of the value in data.</TD><TD>application/json</TD></TR></TBODY></TABLE><H4 id="toc-hId--326097127">Extension Context Attributes</H4><P class="">A CloudEvent message may also include additional context attributes, which are not defined as part of the specification. These additional attributes are known as "extension attributes" and can be used by the producer systems or intermediaries to include additional metadata to an event, similar to how we can use HTTP custom headers.</P><P class="">For example, in the<SPAN>&nbsp;</SPAN><A title="https://hub.sap.com/event/SAPDigitalVehicleHubBusinessEvents_SAPDigitalVehicleHubBusinessEvents" href="https://hub.sap.com/event/SAPDigitalVehicleHubBusinessEvents_SAPDigitalVehicleHubBusinessEvents" target="_blank" rel="noopener noreferrer">SAP Digital Vehicle Hub Business Events package</A>, we can see that the event raised when a vehicle changes -<SPAN>&nbsp;</SPAN><FONT face="courier new,courier">sap.dmo.dvh.Vehicle.Changed.v1</FONT>, contains the extension context attribute<SPAN>&nbsp;</SPAN><FONT face="courier new,courier">sappassport</FONT>, which is an SAP specific tracing identifier.</P><PRE><SPAN class="">{</SPAN> <SPAN class="">"specversion"</SPAN><SPAN class="">:</SPAN> <SPAN class="">"1.0"</SPAN><SPAN class="">,</SPAN> <SPAN class="">"type"</SPAN><SPAN class="">:</SPAN> <SPAN class="">"sap.dmo.dvh.Vehicle.Changed.v1"</SPAN><SPAN class="">,</SPAN> <SPAN class="">"source"</SPAN><SPAN class="">:</SPAN> <SPAN class="">"/eu10/sap.dmo.dvh"</SPAN><SPAN class="">,</SPAN> <SPAN class="">"subject"</SPAN><SPAN class="">:</SPAN> <SPAN class="">"808E6E30B65149978A443429B29FB300"</SPAN><SPAN class="">,</SPAN> <SPAN class="">"id"</SPAN><SPAN class="">:</SPAN> <SPAN class="">"a823e884-5edc-4194-a81a-f3a3632417ee"</SPAN><SPAN class="">,</SPAN> <SPAN class="">"time"</SPAN><SPAN class="">:</SPAN> <SPAN class="">"2018-04-08 08:31:00"</SPAN><SPAN class="">,</SPAN> <SPAN class="">"datacontenttype"</SPAN><SPAN class="">:</SPAN> <SPAN class="">"application/json"</SPAN><SPAN class="">,</SPAN> <SPAN class="">"sappassport"</SPAN><SPAN class="">:</SPAN> <SPAN class="">"string"</SPAN><SPAN class="">,</SPAN> .... <SPAN class="">}</SPAN></PRE><H3 id="toc-hId--651693351">Data</H3><P class="">A CloudEvent message may include a payload but this is not required. If included it will be in the format specified in the<SPAN>&nbsp;</SPAN><FONT face="courier new,courier">datacontenttype</FONT><SPAN>&nbsp;</SPAN>context attribute. Although it is not required, we will generally have a payload in messages. Below we can see an example of an event message that contains a payload. In this case, a Business Partner changed event generated by an SAP S/4HANA Cloud Public Edition.</P><PRE><SPAN class="">{</SPAN> <SPAN class="">"type"</SPAN><SPAN class="">:</SPAN> <SPAN class="">"sap.s4.beh.businesspartner.v1.BusinessPartner.Changed.v1"</SPAN><SPAN class="">,</SPAN> <SPAN class="">"specversion"</SPAN><SPAN class="">:</SPAN> <SPAN class="">"1.0"</SPAN><SPAN class="">,</SPAN> <SPAN class="">"source"</SPAN><SPAN class="">:</SPAN> <SPAN class="">"/default/sap.s4.beh/244572008"</SPAN><SPAN class="">,</SPAN> <SPAN class="">"id"</SPAN><SPAN class="">:</SPAN> <SPAN class="">"63d6a150-c6a1-4c5b-bcc3-27d90c07941c"</SPAN><SPAN class="">,</SPAN> <SPAN class="">"time"</SPAN><SPAN class="">:</SPAN> <SPAN class="">"2024-02-26T10:53:06Z"</SPAN><SPAN class="">,</SPAN> <SPAN class="">"datacontenttype"</SPAN><SPAN class="">:</SPAN> <SPAN class="">"application/json"</SPAN><SPAN class="">,</SPAN> <SPAN class="">"data"</SPAN><SPAN class="">:</SPAN> <SPAN class="">{</SPAN> <SPAN class="">"BusinessPartner"</SPAN><SPAN class="">:</SPAN> <SPAN class="">"1000667"</SPAN> <SPAN class="">}</SPAN> <SPAN class="">}</SPAN> </PRE><BLOCKQUOTE dir="auto"><P class="">Check out the Business Partner changed event in the SAP Business Accelerator Hub -<SPAN>&nbsp;</SPAN><A title="https://hub.sap.com/event/CE_BUSINESSPARTNEREVENTS/resource" href="https://hub.sap.com/event/CE_BUSINESSPARTNEREVENTS/resource" target="_blank" rel="noopener noreferrer">https://hub.sap.com/event/CE_BUSINESSPARTNEREVENTS/resource</A>.</P></BLOCKQUOTE><H2 id="toc-hId--630035218">SAP's adoption of CloudEvents</H2><P class="">SAP is an<SPAN>&nbsp;</SPAN><A title="https://github.com/cloudevents/spec/blob/main/docs/contributors.md" href="https://github.com/cloudevents/spec/blob/main/docs/contributors.md" target="_blank" rel="noopener nofollow noreferrer">active contributor</A><SPAN>&nbsp;</SPAN>to the CloudEvents specification and one of its many<SPAN>&nbsp;</SPAN><A title="https://cloudevents.io/" href="https://cloudevents.io/" target="_blank" rel="noopener nofollow noreferrer">adopters</A>. Evidence of that is the different products (<A title="https://hub.sap.com/content-type/Events/events/packages" href="https://hub.sap.com/content-type/Events/events/packages" target="_blank" rel="noopener noreferrer">event packages</A>) that we can find documented in the<SPAN>&nbsp;</SPAN><A title="https://hub.sap.com/content-type/Events/events/events" href="https://hub.sap.com/content-type/Events/events/events" target="_blank" rel="noopener noreferrer">SAP Business Accelerator Hub &gt; Events category</A>.</P><P class="">The products listed below document their events in the form of event packages in the<SPAN>&nbsp;</SPAN><A title="https://hub.sap.com/" href="https://hub.sap.com/" target="_blank" rel="noopener noreferrer">SAP Business Accelerator Hub</A>. All their events follow the CloudEvents specification:</P><UL class=""><LI>SAP Agricultural Origination Portal</LI><LI>SAP Batch Release Hub for Life Sciences</LI><LI>SAP Cell and Gene Therapy Orchestration</LI><LI>SAP Cloud for Utilities Foundation</LI><LI>SAP Digital Vehicle Hub</LI><LI>SAP GRC Cloud - Issue Management and Remediation Service</LI><LI>SAP Industry Process Framework</LI><LI>SAP Intelligent Clinical Supply Management for Operations</LI><LI>SAP Intelligent Clinical Supply Management for Planning</LI><LI>SAP Landscape Management Cloud</LI><LI>SAP Marketing Cloud</LI><LI>SAP Order Management Foundation</LI><LI>SAP S/4HANA</LI><LI>SAP S/4HANA Cloud Public Edition</LI><LI>SAP S/4HANA Utilities for Customer Engagement</LI><LI>SAP S/4HANA for Procurement Planning Cloud</LI><LI>SAP Subscription Billing</LI></UL><P class="">SAP's flagship ERP products, SAP S/4HANA Cloud Public edition and SAP S/4HANA, expose more than 600+ events combined. As you might have noticed from the events that we use as examples above, these events follow the CloudEvents specification. Below we can see the BusinessPartner Created event generated by an SAP S/4HANA Cloud Public Edition and we can see how it follows the CloudEvents specification.</P><PRE><SPAN class="">{</SPAN> <SPAN class="">"type"</SPAN><SPAN class="">:</SPAN> <SPAN class="">"sap.s4.beh.businesspartner.v1.BusinessPartner.Created.v1"</SPAN><SPAN class="">,</SPAN> <SPAN class="">"specversion"</SPAN><SPAN class="">:</SPAN> <SPAN class="">"1.0"</SPAN><SPAN class="">,</SPAN> <SPAN class="">"source"</SPAN><SPAN class="">:</SPAN> <SPAN class="">"/default/sap.s4.beh/244572008"</SPAN><SPAN class="">,</SPAN> <SPAN class="">"id"</SPAN><SPAN class="">:</SPAN> <SPAN class="">"194780e0-b5db-1ede-b58a-4550178dff9e"</SPAN><SPAN class="">,</SPAN> <SPAN class="">"time"</SPAN><SPAN class="">:</SPAN> <SPAN class="">"2024-02-26T09:50:00Z"</SPAN><SPAN class="">,</SPAN> <SPAN class="">"datacontenttype"</SPAN><SPAN class="">:</SPAN> <SPAN class="">"application/json"</SPAN><SPAN class="">,</SPAN> <SPAN class="">"data"</SPAN><SPAN class="">:</SPAN> <SPAN class="">{</SPAN> <SPAN class="">"BusinessPartner"</SPAN><SPAN class="">:</SPAN> <SPAN class="">"1000667"</SPAN> <SPAN class="">}</SPAN> <SPAN class="">}</SPAN> </PRE><H3 id="toc-hId--1119951730">Kyma</H3><P align="center"><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="kyma-runtime.png" style="width: 200px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/74741i0A6BD127C635814D/image-size/small?v=v2&amp;px=200" role="button" title="kyma-runtime.png" alt="kyma-runtime.png" /></span></P><P class="" data-unlink="true">Kyma contains an<SPAN>&nbsp;</SPAN><A title="https://kyma-project.io/#/06-modules/README" href="https://kyma-project.io/#/06-modules/README" target="_blank" rel="noopener nofollow noreferrer">Eventing module</A>, which provides functionality to publish and subscribe to CloudEvents. It follows the PubSub messaging pattern and all events in Kyma conform to the CloudEvents specification[5]. At the moment, NATS (provided by the NATS module) and SAP Event Mesh are<SPAN>&nbsp;</SPAN><A title="https://help.sap.com/docs/btp/sap-business-technology-platform/choose-backend-for-kyma-eventing" href="https://help.sap.com/docs/btp/sap-business-technology-platform/choose-backend-for-kyma-eventing" target="_blank" rel="noopener noreferrer">supported as backends</A><SPAN>&nbsp;</SPAN>for eventing and it is recommended to use the CloudEvents specification for sending and receiving events. Even the legacy events are automatically converted to CloudEvents.</P><H2 id="toc-hId--1023062228">SAP's event-driven portfolio</H2><P class=""><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="CloudEvents-EDA Strategy.png" style="width: 902px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/188984i368CA2466685F27B/image-size/large?v=v2&amp;px=999" role="button" title="CloudEvents-EDA Strategy.png" alt="CloudEvents-EDA Strategy.png" /></span></P><P>&nbsp;<SPAN>SAP offers various services that can help customers embrace event-driven architectures. The different offerings can meet customers where they are in their EDA adoption/implementation journey. These are:</SPAN></P><UL class=""><LI>SAP Cloud Application Event Hub</LI><LI>SAP Event Mesh</LI><LI>SAP Integration Suite, advanced event mesh</LI></UL><H3 id="toc-hId--1512978740"><A title="https://discovery-center.cloud.sap/serviceCatalog/sap-event-hub?service_plan=standard&amp;region=all&amp;commercialModel=btpea" href="https://discovery-center.cloud.sap/serviceCatalog/sap-event-broker?region=all&amp;service_plan=standard&amp;commercialModel=cpea" target="_blank" rel="noopener nofollow noreferrer">SAP Cloud Application Event Hub</A></H3><P align="center"><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="sap-event-broker.png" style="width: 200px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/71577i92E5DFD201DBFCE5/image-size/small?v=v2&amp;px=200" role="button" title="sap-event-broker.png" alt="sap-event-broker.png" /></span></P><P class="">SAP Cloud Application Event Hub is the latest service released by SAP that focuses on event-driven architecture and it supports event-based integration between SAP cloud and BTP-based applications. It is a fully managed cloud service that allows SAP cloud applications to communicate asynchronously through events. Meaning it can be used to distribute events between SAP cloud applications. For example, this service can be leveraged to enable seamless integration between<SPAN>&nbsp;</SPAN><A title="https://help.sap.com/docs/CLOUD_TO_CASH_OD/559eeb1cc256428c9bb3b9cf9f3480ba/6407b895ff9f4be6a4d417db2226eae4.html?locale=en-US" href="https://help.sap.com/docs/CLOUD_TO_CASH_OD/559eeb1cc256428c9bb3b9cf9f3480ba/6407b895ff9f4be6a4d417db2226eae4.html?locale=en-US" target="_blank" rel="noopener noreferrer">SAP S/4HANA Cloud public edition and SAP Subscription Billing</A>. When an integration scenario leverages SAP Cloud Application Event Hub, it eliminates having to configure an event storage or infrastructure such as customer-defined topics or queues to enable the event-based integration between systems.</P><P align="center"><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="CloudEvents-SeamlessIntegration.png" style="width: 896px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/188985iD74D21D27C293D38/image-size/large?v=v2&amp;px=999" role="button" title="CloudEvents-SeamlessIntegration.png" alt="CloudEvents-SeamlessIntegration.png" /></span><I>Integration between SAP S/4HANA Cloud and SAP Subscription Billing</I></P><P class="" data-unlink="true"><SPAN>CloudEvents are first-class citizens in SAP Cloud Application Event Hub, as events that are distributed between SAP cloud applications using SAP Cloud Application Event Hub all conform to the&nbsp;</SPAN><A title="https://github.com/cloudevents/spec/blob/v1.0.2/cloudevents/spec.md" href="https://github.com/cloudevents/spec/blob/v1.0.2/cloudevents/spec.md" target="_blank" rel="noopener nofollow noreferrer">CloudEvent Specification</A>[6]<SPAN>. Evidence of this is how we can&nbsp;</SPAN><A title="https://help.sap.com/docs/event-broker/event-broker-service-guide/filtering-sap-event-subscriptions?locale=en-US" href="https://help.sap.com/docs/event-broker/event-broker-service-guide/filtering-sap-event-subscriptions?locale=en-US" target="_blank" rel="noopener noreferrer">filter SAP event subscriptions</A><SPAN>&nbsp;by defining filters based on the CloudEvent context attributes, e.g. by filter by&nbsp;</SPAN><A title="https://help.sap.com/docs/event-broker/event-broker-service-guide/event-filter-examples?locale=en-US" href="https://help.sap.com/docs/event-broker/event-broker-service-guide/event-filter-examples?locale=en-US" target="_blank" rel="noopener noreferrer">type, subject, or extension context attribute</A><SPAN>.&nbsp;</SPAN><EM>Note: This is an example of content-based filtering taking place in the message-oriented middleware.</EM></P><P class="">If all your event needs are within the SAP cloud world, e.g. exchange events between SAP cloud applications and SAP BTP, this service can fulfill your needs.</P><H3 id="toc-hId--1709492245"><A title="https://discovery-center.cloud.sap/serviceCatalog/event-mesh?region=all" href="https://discovery-center.cloud.sap/serviceCatalog/event-mesh?region=all" target="_blank" rel="noopener nofollow noreferrer">SAP Event Mesh</A>&nbsp;</H3><P align="center"><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="event-mesh.png" style="width: 200px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/74749i37C69531B37CBA59/image-size/small?v=v2&amp;px=200" role="button" title="event-mesh.png" alt="event-mesh.png" /></span></P><P class="">SAP Event Mesh allows applications to communicate through asynchronous events. It can be used to publish and consume business events from SAP and non-SAP sources across hybrid landscapes from the digital core (ERP products, e.g. SAP S/4HANA Cloud public edition and SAP S/4HANA) to extension applications through event-driven architecture. It is a fully managed<SPAN>&nbsp;</SPAN><A title="https://help.sap.com/docs/event-mesh/event-mesh/event-mesh-default-plan-concepts?locale=en-US" href="https://help.sap.com/docs/event-mesh/event-mesh/event-mesh-default-plan-concepts?locale=en-US" target="_blank" rel="noopener noreferrer">centralised event-oriented</A><SPAN>&nbsp;</SPAN>service part of SAP BTP.</P><P class=""><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="event-mesh-diagram.png" style="width: 725px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/74745i794E3B023534DE7A/image-size/large?v=v2&amp;px=999" role="button" title="event-mesh-diagram.png" alt="event-mesh-diagram.png" /></span></P><P class="">The<SPAN>&nbsp;</SPAN><A title="https://help.sap.com/docs/event-mesh/event-mesh/rest-apis-for-events?locale=en-US" href="https://help.sap.com/docs/event-mesh/event-mesh/rest-apis-for-events?locale=en-US" target="_blank" rel="noopener noreferrer">service supports the use of REST APIs for Events</A>, for publishing and consuming events that are compliant with the CloudEvents specification. Related to event-based integrations, events that flow through SAP Event Mesh between SAP applications must all conform to the CloudEvents specification.</P><BLOCKQUOTE dir="auto"><P class="">You can check out how to enable the consumption of SAP S/4HANA Cloud public edition events in your SAP BTP account -<SPAN>&nbsp;</SPAN><A title="https://youtu.be/4LspIL3NxqQ" href="https://youtu.be/4LspIL3NxqQ" target="_blank" rel="noopener nofollow noreferrer">https://youtu.be/4LspIL3NxqQ</A></P></BLOCKQUOTE><H3 id="toc-hId--1906005750"><A title="https://discovery-center.cloud.sap/serviceCatalog/advanced-event-mesh?region=all" href="https://discovery-center.cloud.sap/serviceCatalog/advanced-event-mesh?region=all" target="_blank" rel="noopener nofollow noreferrer">SAP Integration Suite, advanced event mesh</A><SPAN>&nbsp;</SPAN>(AEM)</H3><P align="center"><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="advanced-event-mesh.png" style="width: 200px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/74750iA47C04BE158A2CC7/image-size/small?v=v2&amp;px=200" role="button" title="advanced-event-mesh.png" alt="advanced-event-mesh.png" /></span></P><P class="">SAP Integration Suite, advanced event mesh (AEM) is a complete event streaming, event management, and monitoring platform that incorporates best practices, expertise, and technology for event-driven architecture (EDA) on a single platform. With AEM you can deploy event broker services, create event meshes, and optimise and monitor your event-driven system.</P><P class="">AEM offers these categories of services:</P><UL class=""><LI><P class=""><STRONG>Event Streaming</STRONG>: It provides event streaming services and gives you access to event broker services that provide advanced features like the publish-subscribe messaging pattern, queuing, streaming, replay, and request-reply, while doing all the heavy lifting to dynamically deploy, upgrade, patch, and operate the service. It extends beyond the cloud and supports infrastructure and EDAs across hybrid cloud solutions and your on-premises deployments.</P><BLOCKQUOTE dir="auto"><P class="">Event brokers can be deployed to: public clouds administered by SAP (Public Regions or Dedicated Regions) and customer's own regions in the cloud or on-premises (Customer-Controlled Regions)</P></BLOCKQUOTE></LI><LI><P class=""><STRONG>Event Management</STRONG>: It provides event management services. The Event Portal provides powerful tools to create, design, share, and manage various aspects of your EDA based on event brokers or other streaming technologies. It fully supports the AsyncAPI 2.0.0 specification so that you can generate code, documentation, validate events, and apply API management policies for applications in your EDA.</P><BLOCKQUOTE dir="auto"><P class="">You might have noticed that some event specification in the SAP Business Accelerator Hub are documented using the AsyncAPI specification, e.g.<SPAN>&nbsp;</SPAN><A title="https://hub.sap.com/event/CE_MARKETINGCAMPAIGNEVENTS/overview" href="https://hub.sap.com/event/CE_MARKETINGCAMPAIGNEVENTS/overview" target="_blank" rel="noopener noreferrer">Marketing Campaign Events</A><SPAN>&nbsp;</SPAN>part of SAP Marketing Cloud.</P></BLOCKQUOTE></LI><LI><P class=""><STRONG>Event Monitoring and Insights</STRONG>: Availability out-of-the-box of dashboards and easy-to-understand visualizations based on historical and real-time metrics, and timely notifications about the event broker services deployed.</P></LI></UL><P class="">Similar to SAP Event Mesh, it can be used to publish and consume business events from SAP and non-SAP sources across hybrid landscapes. Meaning, if your event data needs to exit the SAP cloud world, you can use any of these two services.</P><HR /><P class="">Thanks for making it this far, we've covered a lot in this blog post and I hope it gives you a general understanding of CloudEvents, its importance in the SAP world, how it can enable integration across SAP applications and the different SAP offerings that can enable your EDA journey.</P><DIV><DIV>&nbsp;</DIV><DIV><SPAN>Special thanks to Klaus Deissner (<a href="https://community.sap.com/t5/user/viewprofilepage/user-id/243873">@klaus_deissner</a>) for reviewing and contributing to this blog post.</SPAN></DIV></DIV><HR /><OL class=""><LI><P class="">Event-Driven architecture:<SPAN>&nbsp;</SPAN><A title="https://en.wikipedia.org/wiki/Event-driven_architecture" href="https://en.wikipedia.org/wiki/Event-driven_architecture" target="_blank" rel="noopener nofollow noreferrer">link</A><SPAN>&nbsp;<span class="lia-unicode-emoji" title=":right_arrow_curving_left:">ā†©ļø</span></SPAN></P></LI><LI><P class="">What is an event broker?:<SPAN>&nbsp;</SPAN><A title="https://solace.com/what-is-an-event-broker/" href="https://solace.com/what-is-an-event-broker/" target="_blank" rel="noopener nofollow noreferrer">link</A>&nbsp;<span class="lia-unicode-emoji" title=":right_arrow_curving_left:">ā†©ļø</span><SPAN>&nbsp;</SPAN></P></LI><LI><P class="">What is the publish-subscribe messaging pattern?:<SPAN>&nbsp;</SPAN><A title="https://solace.com/blog/publish-subscribe-messaging-pattern/" href="https://solace.com/blog/publish-subscribe-messaging-pattern/" target="_blank" rel="noopener nofollow noreferrer">link</A><SPAN>&nbsp;<span class="lia-unicode-emoji" title=":right_arrow_curving_left:">ā†©ļø</span></SPAN></P></LI><LI><P class="">Publish-subscribe pattern - Message filtering:<SPAN>&nbsp;</SPAN><A title="https://en.wikipedia.org/wiki/Publish%E2%80%93subscribe_pattern" href="https://en.wikipedia.org/wiki/Publish%E2%80%93subscribe_pattern" target="_blank" rel="noopener nofollow noreferrer">link</A><SPAN>&nbsp;<span class="lia-unicode-emoji" title=":right_arrow_curving_left:">ā†©ļø</span></SPAN></P></LI><LI><P class="">Eventing module in Kyma:<SPAN>&nbsp;</SPAN><A title="https://kyma-project.io/#/eventing-manager/user/README" href="https://kyma-project.io/#/eventing-manager/user/README" target="_blank" rel="noopener nofollow noreferrer">link</A><SPAN>&nbsp;<span class="lia-unicode-emoji" title=":right_arrow_curving_left:">ā†©ļø</span></SPAN></P></LI><LI><P class="">SAP Event-Driven integrations:<SPAN>&nbsp;</SPAN><A title="https://help.sap.com/docs/event-broker/event-broker-service-guide/event-driven-integrations?locale=en-US%3Fversion%3DCloud" href="https://help.sap.com/docs/event-broker/event-broker-service-guide/event-driven-integrations?locale=en-US%3Fversion%3DCloud" target="_blank" rel="noopener noreferrer">link</A><SPAN>&nbsp;<span class="lia-unicode-emoji" title=":right_arrow_curving_left:">ā†©ļø</span></SPAN></P></LI></OL><HR /><P class="">Originally published at <A href="https://ajmaradiaga.com/cloud-events-at-sap/" target="_blank" rel="noopener nofollow noreferrer">ajmaradiaga.com</A>.</P><P>&nbsp;</P><P>&nbsp;</P> 2024-03-04T07:13:27.857000+01:00 https://community.sap.com/t5/enterprise-architecture-blog-posts/unleash-the-power-of-real-time-business-insights-with-sap-advanced-event/ba-p/13646287 Unleash the Power of Real-Time Business Insights with SAP Advanced Event Mesh 2024-03-26T03:57:44.968000+01:00 Nallam_97 https://community.sap.com/t5/user/viewprofilepage/user-id/1423382 <P>&nbsp;</P><P><SPAN><STRONG>Unleash the Power of Real-Time Business Insights with SAP Advanced Event Mesh</STRONG></SPAN></P><P><SPAN><BR />In today's ever-changing business landscape, being able to respond quickly is crucial. SAP Business Technology Platform (BTP) lays the groundwork for this agility by providing a comprehensive integration platform. But what if you could harness the power of instant reactions to every customer interaction? That's where SAP Advanced Event Mesh (AEM) comes in - a revolutionary tool that unlocks the true potential of SAP BTP. By utilizing the event-driven architecture championed by SAP BTP, AEM empowers businesses to make real-time, data-driven decisions - a vital capability in today's fast-paced environment.</SPAN></P><P><SPAN>Imagine a world where every customer interaction triggers an immediate response, enabling businesses to make informed choices in real-time. This is the power of SAP Advanced Event Mesh (AEM), a revolutionary tool that transforms how businesses react to events and unlock hidden opportunities&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; .</SPAN></P><P class="lia-align-center" style="text-align: center;"><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="Nallam_97_0-1711483863565.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/86952i16E613984B8AA697/image-size/medium?v=v2&amp;px=400" role="button" title="Nallam_97_0-1711483863565.png" alt="Nallam_97_0-1711483863565.png" /></span><SPAN>(Image Source: SAP)</SPAN></P><P class="lia-align-center" style="text-align: center;">&nbsp;</P><P><SPAN><STRONG>The Grocery Store Scenario: A Glimpse into the Future of Inventory Management</STRONG></SPAN></P><P><SPAN><BR />Consider a grocery store wheĀ­re every purchaseĀ­ instantly triggers an event that is reĀ­layed to a central system. This eĀ­liminates the neeĀ­d for traditional end-of-day reports, allowing for immediateĀ­ insights into:</SPAN></P><UL><LI><SPAN><STRONG>Product popularity:</STRONG> Identify fast-selling items and eĀ­nsure they are always in stock.</SPAN></LI><LI><SPAN><STRONG>InveĀ­ntory optimization:</STRONG> Replenish stock as soon as it runs low, preveĀ­nting lost sales and customer frustration. </SPAN></LI></UL><P><SPAN>This is just one eĀ­xample of how AEM streamlines busineĀ­ss processes and enableĀ­s proactive decision-making across various industries.</SPAN></P><P><SPAN><STRONG>&nbsp;KeĀ­y Features of SAP AEM:</STRONG></SPAN></P><UL><LI><SPAN><STRONG>Event-driveĀ­n communication:</STRONG> Respond to events as theĀ­y happen, creating a dynamic and responsiveĀ­ system.</SPAN></LI><LI><SPAN><STRONG>Scalability and flexibility:</STRONG> Easily adapt to changing business neĀ­eds and data volumes. </SPAN></LI><LI><SPAN><STRONG>Unified eĀ­vent management:</STRONG></SPAN><SPAN> Gain ceĀ­ntralized control and visibility over all eveĀ­nts within your SAP landscape. </SPAN></LI><LI><SPAN><STRONG>Seamless inteĀ­gration:</STRONG></SPAN><SPAN> Integrate seamleĀ­ssly with SAP and Non-SAP solutions.<BR /><BR /></SPAN><SPAN><STRONG>Components of SAP AEM:</STRONG></SPAN></LI></UL><P><SPAN><STRONG>&nbsp; &nbsp; &nbsp; &nbsp;Mission Control:</STRONG></SPAN><SPAN> Easily deĀ­ploy and manage event brokeĀ­rs, monitor their performance, and visualizeĀ­&nbsp; &nbsp; &nbsp; &nbsp;your event-driven architeĀ­cture.</SPAN></P><P><SPAN><STRONG>&nbsp; &nbsp; &nbsp; &nbsp;Event Portal:</STRONG></SPAN><SPAN> Design your eĀ­vent-driven setup using a full seĀ­t of tools, including an overview, designeĀ­r, catalog, and event manager for running eĀ­vents. </SPAN></P><P><SPAN><STRONG>&nbsp; &nbsp; &nbsp; Insights:</STRONG></SPAN><SPAN> Get real-timeĀ­ insights into the health and performanceĀ­ of your event network, ensuring your applications work well.</SPAN></P><P><SPAN><BR /></SPAN><SPAN><STRONG>&nbsp; &nbsp; &nbsp; Deployment Options:</STRONG> </SPAN></P><P><SPAN><BR />&nbsp; &nbsp; &nbsp; You can choose from diffeĀ­rent deployment options for SAP AEM: </SPAN></P><UL><LI><SPAN><STRONG>Public ReĀ­gions:</STRONG> This allows you to use the infrastructure manageĀ­d by SAP, which is simple and easy to use. </SPAN></LI><LI><SPAN><STRONG>DeĀ­dicated Regions:</STRONG></SPAN><SPAN> This gives you moreĀ­ control and isolation within a dedicated SAP cloud environmeĀ­nt. </SPAN></LI><LI><SPAN><STRONG>Customer-Controlled Regions:</STRONG></SPAN><SPAN> This leĀ­ts you deploy AEM on your own KuberneteĀ­s cluster, giving you ultimate customization and control<BR /><STRONG><BR />&nbsp;Security:</STRONG> </SPAN></LI></UL><P><SPAN>&nbsp; &nbsp; &nbsp; &nbsp;SAP AEM takeĀ­s security very seriously at eĀ­very level, with feĀ­atures like: </SPAN></P><UL><LI><SPAN>SecureĀ­ cloud architecture with various deploymeĀ­nt options.</SPAN></LI><LI><SPAN>VPC/VNet isolation for keeping data seĀ­gregated secureĀ­ly.</SPAN></LI><LI><SPAN>Multi-factor authentication and authorization to have compreheĀ­nsive access control.</SPAN></LI></UL><P>&nbsp;</P> 2024-03-26T03:57:44.968000+01:00 https://community.sap.com/t5/application-development-and-automation-blog-posts/march-developer-challenge-cloudevents-it-s-a-wrap/ba-p/13654243 March Developer Challenge - CloudEvents: It's a wrap! 2024-04-01T06:08:23.211000+02:00 ajmaradiaga https://community.sap.com/t5/user/viewprofilepage/user-id/107 <DIV><DIV><SPAN><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="CloudEvents-Developer-Challenge.drawio.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/76098i60480142BAFD3A00/image-size/medium?v=v2&amp;px=400" role="button" title="CloudEvents-Developer-Challenge.drawio.png" alt="CloudEvents-Developer-Challenge.drawio.png" /></span></SPAN></DIV><DIV>&nbsp;</DIV><DIV><SPAN>Yesterday, we concluded March's developer challenge in the SAP Community - All about CloudEvents and event-driven architectures. Thanks to everyone who took part in it :-). I hope you had as much fun participating in the challenge as I had preparing it. </SPAN></DIV><DIV>&nbsp;</DIV><BLOCKQUOTE><DIV><SPAN>In case you missed the developer challenge but you are interested in knowing what it was all about... you can get started here: <A href="https://community.sap.com/t5/application-development-discussions/march-developer-challenge-cloudevents-week-1/td-p/13629129" target="_self">March Developer Challenge - CloudEvents: Week 1</A>.</SPAN></DIV></BLOCKQUOTE><DIV><SPAN>If you want to learn more about CloudEvents and event-driven integrations, I would recommend keeping an eye on the content of the Event-driven integration CodeJam - <A href="https://github.com/SAP-samples/events-driven-integrations-codejam" target="_blank" rel="noopener nofollow noreferrer">https://github.com/SAP-samples/events-driven-integrations-codejam</A>, which is now close to being finalised :-). Also, remember that you can request/host an SAP CodeJam event in your city or company, and we will be happy to help you run it - <A href="https://community.sap.com/t5/sap-codejam-blog-posts/so-you-want-to-host-a-codejam-everything-you-need-to-know/ba-p/221415" target="_blank">https://community.sap.com/t5/sap-codejam-blog-posts/so-you-want-to-host-a-codejam-everything-you-need-to-know/ba-p/221415</A>.</SPAN></DIV><DIV>&nbsp;</DIV><BLOCKQUOTE><DIV><SPAN><SPAN>Are you wondering about what will be April's Developer challenge? It is live now <span class="lia-unicode-emoji" title=":rocket:">šŸš€</span>... April (Citizen) Developer Challenge – SAP Build Apps: Task 0 - </SPAN></SPAN><SPAN><A href="https://community.sap.com/t5/sap-builders-discussions/april-citizen-developer-challenge-sap-build-apps-task-0/m-p/13654312" target="_blank">https://community.sap.com/t5/sap-builders-discussions/april-citizen-developer-challenge-sap-build-apps-task-0/m-p/13654312</A><BR /></SPAN></DIV></BLOCKQUOTE><DIV><SPAN>Now, some cool stats on community members' participation:<BR /></SPAN></DIV><UL><LI><SPAN>A total of 36 SAP Community members took part in the challenge.</SPAN></LI><LI>Unique SAP community members participation per week:<BR /><TABLE border="1"><TBODY><TR><TD width="50%"><STRONG>Week</STRONG></TD><TD width="50%"><STRONG>Total submissions</STRONG></TD></TR><TR><TD width="50%">Week 1</TD><TD width="50%">31</TD></TR><TR><TD width="50%">Week 2</TD><TD width="50%">26</TD></TR><TR><TD width="50%">Week 3</TD><TD width="50%">23</TD></TR><TR><TD width="50%">Week 4</TD><TD width="50%">16</TD></TR><TR><TD><STRONG><EM>Total</EM></STRONG></TD><TD><STRONG><EM>96</EM></STRONG></TD></TR></TBODY></TABLE></LI><LI><SPAN><SPAN>Total submissions per week. <EM>Note: In week 2 a couple of participants submitted more than one solution and in weeks 3 and 4, I'm counting as valid submissions any valid message received. Many participants submitted more than one message.</EM><BR /></SPAN></SPAN><TABLE border="1" width="100%"><TBODY><TR><TD width="50%"><STRONG>Week</STRONG></TD><TD width="50%"><STRONG>Total submissions</STRONG></TD></TR><TR><TD width="50%">Week 1</TD><TD width="50%">31</TD></TR><TR><TD width="50%">Week 2</TD><TD width="50%">28</TD></TR><TR><TD width="50%">Week 3</TD><TD width="50%">70</TD></TR><TR><TD width="50%">Week 4</TD><TD width="50%">98</TD></TR><TR><TD><EM><STRONG>Total</STRONG></EM></TD><TD><EM><STRONG>227</STRONG></EM></TD></TR></TBODY></TABLE></LI><LI>Last but certainly not least... a special mention to all the SAP Community members who completed the challenge every single week <span class="lia-unicode-emoji" title=":party_popper:">šŸŽ‰</span><BR /><a href="https://community.sap.com/t5/user/viewprofilepage/user-id/45643">@Alpesa1990</a><BR /><a href="https://community.sap.com/t5/user/viewprofilepage/user-id/11471">@MatLakaemper</a><BR /><a href="https://community.sap.com/t5/user/viewprofilepage/user-id/789">@MioYasutake</a><BR /><a href="https://community.sap.com/t5/user/viewprofilepage/user-id/1395282">@Nagarajan-K</a><BR /><a href="https://community.sap.com/t5/user/viewprofilepage/user-id/3763">@PriyankaChak</a>&nbsp;<BR /><a href="https://community.sap.com/t5/user/viewprofilepage/user-id/120859">@Ruthiel</a>&nbsp;<BR /><a href="https://community.sap.com/t5/user/viewprofilepage/user-id/151481">@ajos</a><BR /><a href="https://community.sap.com/t5/user/viewprofilepage/user-id/43545">@emiliocampo</a><BR /><a href="https://community.sap.com/t5/user/viewprofilepage/user-id/9180">@geek61</a><BR /><a href="https://community.sap.com/t5/user/viewprofilepage/user-id/874945">@pamoli_banerjee</a><BR /><a href="https://community.sap.com/t5/user/viewprofilepage/user-id/38628">@r00k13d3v</a><BR /><a href="https://community.sap.com/t5/user/viewprofilepage/user-id/125253">@saitgunacorel</a><BR /><a href="https://community.sap.com/t5/user/viewprofilepage/user-id/162022">@spirit2681</a><BR /><a href="https://community.sap.com/t5/user/viewprofilepage/user-id/171996">@xavisanse</a></LI></UL><P>If you are interested in the event-driven integrations/architectures topic....&nbsp;<span class="lia-unicode-emoji" title=":television:">šŸ“ŗ</span> stay tuned as there is way more coming later this year in this space.</P></DIV> 2024-04-01T06:08:23.211000+02:00 https://community.sap.com/t5/technology-blog-posts-by-members/sap-event-mesh-vs-sap-integration-suite-advanced-event-mesh/ba-p/13732769 SAP Event Mesh vs. SAP Integration Suite, Advanced Event Mesh 2024-06-17T08:16:42.765000+02:00 vinodgkrishna https://community.sap.com/t5/user/viewprofilepage/user-id/160909 <P>This blog focuses on the differences of the "SAP Event Mesh" versus the powerhouse "SAP Integration Suite - Advanced Event Mesh" which will help to&nbsp;<SPAN>make an informed decision to optimize event-driven integration within your organization's specific requirements</SPAN>.&nbsp;</P><P><STRONG>Event-Driven Integration in the Digital Age</STRONG></P><P>Modern businesses navigate a data-driven landscape, demanding seamless integration between ever-expanding application portfolios. Traditional methods struggle to keep pace, necessitating a shift towards real-time, event-based integration approaches.</P><P><STRONG>SAP's Event Mesh vs. Advanced Event Mesh, IS</STRONG></P><P>SAP offers two compelling solutions for event-driven integration: SAP Integration Suite, Advanced Event Mesh (AEM), and SAP Event Mesh. While both leverage event brokers for integration, they cater to distinct use cases.</P><P><STRONG>AEM</STRONG> goes beyond basic integration, offering robust event management capabilities. It empowers you to:</P><UL><LI>Govern the events&nbsp;throughout their lifecycle, ensuring data integrity and compliance</LI><LI>Design, publish, and discover events, fostering collaboration and reusability</LI><LI>Deploy flexibly&nbsp;across various public clouds (AWS, Azure, GCP), on-premises, or at the edge</LI><LI>Maintain data consistency&nbsp;through event transactions</LI><LI>Replay messages&nbsp;for troubleshooting or new applications</LI><LI>Handle large payloads and storage&nbsp;for demanding use cases</LI></UL><P>On the other hand, <STRONG>SAP Event Mesh</STRONG> provides a lightweight solution for the core event streaming and integration. It would be great choice in below scenario's:</P><UL><LI>Simple integration scenarios&nbsp;within the SAP ecosystem</LI><LI>Cost-effective implementation&nbsp;with usage-based pricing</LI><LI>Straightforward deployment&nbsp;on SAP Business Technology Platform</LI></UL><P><STRONG>In conclusion,&nbsp;</STRONG>One can choose right fit based on below pointers -&nbsp;</P><P class="lia-indent-padding-left-30px" style="padding-left : 30px;"><STRONG>1. Complexity -</STRONG><SPAN>&nbsp;</SPAN>AEM tackles the complex event-driven architectures, while Event Mesh targets simpler integrations</P><P class="lia-indent-padding-left-30px" style="padding-left : 30px;"><STRONG>2. Event Governance -&nbsp;</STRONG><SPAN>&nbsp;</SPAN>AEM prioritizes event management for control and compliance</P><P class="lia-indent-padding-left-30px" style="padding-left : 30px;"><STRONG>3. Deployment -&nbsp;</STRONG><SPAN>&nbsp;</SPAN>AEM offers broader deployment options, while Event Mesh resides within SAP BTP</P><P class="lia-indent-padding-left-30px" style="padding-left : 30px;"><STRONG>4. Data Volume -</STRONG><SPAN>&nbsp;</SPAN>AEM handles larger payloads and storage for extensive data flows. AEM Can handle message size upto 30 MB with a storage of 6TB while Event Mesh can handle message size upto 1 MB with a storage support of 10 GB</P><P>&nbsp;</P> 2024-06-17T08:16:42.765000+02:00 https://community.sap.com/t5/integration-blog-posts/devtoberfest-2024-integration-track-sessions/ba-p/13871841 Devtoberfest 2024 - Integration track sessions 2024-09-20T10:18:26.173000+02:00 ajmaradiaga https://community.sap.com/t5/user/viewprofilepage/user-id/107 <P>We are days away from the first session of this year's <A href="https://community.sap.com/t5/devtoberfest-blog-posts/devtoberfest-welcome/ba-p/9358" target="_blank">Devtoberfest</A>, our annual virtual celebration dedicated to the SAP developer community. There is a lot&nbsp;going on in the integration space, and as part of Devtoberfest 2024 we will have sessions covering the following topics: APIs and Events, Tools for integration developers, open source and more.</P><P>As you might be aware, every track is assigned a unique day across the four weeks that Devtoberfest takes place and Wednesdays will be all about integration.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="Devtoberfest 2024 sessions" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/168927iA22B2EF6B40B3804/image-size/large?v=v2&amp;px=999" role="button" title="Devtoberfest2024-All.png" alt="Devtoberfest 2024 sessions" /><span class="lia-inline-image-caption" onclick="event.preventDefault();">Devtoberfest 2024 sessions</span></span></P><P class="lia-indent-padding-left-30px" style="padding-left : 30px;"><EM>You can find all&nbsp;the&nbsp;<A href="https://community.sap.com/t5/devtoberfest/eb-p/devtoberfest-events?calendar=true" target="_blank">different tracks/sessions</A>&nbsp;that are part of Devtoberfest <A href="https://groups.community.sap.com/t5/devtoberfest/eb-p/devtoberfest-events?calendar=true" target="_blank" rel="noopener noreferrer">here</A>. You can filter all events by selecting the topic (label) you are interested in, e.g. <A href="https://groups.community.sap.com/t5/devtoberfest/eb-p/devtoberfest-events/label-name/integration" target="_self" rel="noopener noreferrer">integration</A> <span class="lia-unicode-emoji" title=":winking_face:">šŸ˜‰</span>.</EM></P><P>Let me quickly share all the sessions that we will have as part of the <A href="https://community.sap.com/t5/devtoberfest/eb-p/devtoberfest-events/label-name/integration" target="_self">integration track</A>:<BR /><BR /><EM>25th of September:</EM></P><UL><LI><A href="https://community.sap.com/khhcw49343/downloadCalendar?message.id=13802895#M686" target="_blank">09:30 CET</A> - <A href="https://community.sap.com/t5/devtoberfest/flashpipe-your-ci-cd-companion-for-sap-integration-suite/ec-p/13802895#M686" target="_blank"><span class="lia-unicode-emoji" title=":red_circle:">šŸ”“</span>FlashPipe - Your CI/CD Companion for SAP Integration Suite</A></LI><LI><A href="https://community.sap.com/khhcw49343/downloadCalendar?message.id=13802891" target="_blank">11:00 CET</A> - <A href="https://community.sap.com/t5/devtoberfest/flashpipe-your-ci-cd-companion-for-sap-integration-suite/ec-p/13802895#M686" target="_blank"><span class="lia-unicode-emoji" title=":red_circle:">šŸ”“</span>Speed up your SAP Cloud Integration Development with CPI-Helper</A></LI><LI><A href="https://community.sap.com/khhcw49343/downloadCalendar?message.id=13802890#M684" target="_blank">13:00 CET</A> - <A href="https://community.sap.com/t5/devtoberfest/automate-your-sap-cloud-integration-governance-with-cpilint/ec-p/13802890#M684" target="_blank"><span class="lia-unicode-emoji" title=":red_circle:">šŸ”“</span>Automate your SAP Cloud Integration governance with CPILint</A></LI></UL><P><EM>2nd of October:</EM></P><UL><LI><A href="https://community.sap.com/khhcw49343/downloadCalendar?message.id=13802899" target="_blank">09:30 CET</A> - <A href="https://community.sap.com/t5/devtoberfest/developing-modern-terminal-based-tools-for-sap-cloud-integration/ev-p/13802899" target="_blank"><span class="lia-unicode-emoji" title=":red_circle:">šŸ”“</span>Developing modern terminal-based tools for SAP Cloud Integration</A></LI><LI><A href="https://community.sap.com/khhcw49343/downloadCalendar?message.id=13802903" target="_blank">11:00 CET</A> - <A href="https://community.sap.com/t5/devtoberfest/navigating-eda-complexity-sap-integration-suite-aem-and-event-portal/ev-p/13802903" target="_blank"><span class="lia-unicode-emoji" title=":red_circle:">šŸ”“</span>Navigating EDA Complexity: SAP Integration Suite Advanced Event Mesh and AEM Event Portal Solutions</A></LI><LI><A href="https://community.sap.com/khhcw49343/downloadCalendar?message.id=13802897#M687" target="_blank">15:00 CET</A> - <A href="https://community.sap.com/t5/devtoberfest/cloudevents-for-interoperable-event-systems/ec-p/13802897#M687" target="_blank"><span class="lia-unicode-emoji" title=":red_circle:">šŸ”“</span>CloudEvents for interoperable event systems</A></LI></UL><P><EM>16th of October:</EM></P><UL><LI><A href="https://community.sap.com/khhcw49343/downloadCalendar?message.id=13802867" target="_blank">09:30 CET</A> - <A href="https://community.sap.com/t5/devtoberfest/harnessing-s-4hana-events-in-sap-build/ev-p/13802867" target="_blank">ā€Œ<span class="lia-unicode-emoji" title=":red_circle:">šŸ”“</span>ā€Œā€Œ Harnessing S/4HANA Events in SAP Build</A></LI><LI><A href="https://community.sap.com/khhcw49343/downloadCalendar?message.id=13802907" target="_blank">11:00 CET</A> - <A href="https://community.sap.com/t5/devtoberfest/harnessing-s-4hana-events-in-sap-build/ev-p/13802867" target="_blank"><span class="lia-unicode-emoji" title=":red_circle:">šŸ”“</span>Filtering of RAP business events in SAP BTP ABAP Environment and in AEM</A></LI><LI><A href="https://community.sap.com/khhcw49343/downloadCalendar?message.id=13806591" target="_blank">15:00 CET</A> - <A href="https://community.sap.com/t5/devtoberfest/discover-sap-event-sources-for-advanced-event-mesh/ev-p/13806591" target="_blank"><span class="lia-unicode-emoji" title=":red_circle:">šŸ”“</span>Discover SAP Event Sources for Advanced Event Mesh</A></LI><LI><A href="https://community.sap.com/khhcw49343/downloadCalendar?message.id=13806594" target="_blank">16:30 CET</A> - <A href="https://community.sap.com/t5/devtoberfest/use-sap-event-broker-for-sap-cloud-applications-to-consume-business-events/ev-p/13806594" target="_blank"><span class="lia-unicode-emoji" title=":red_circle:">šŸ”“</span>Use SAP Event Broker for SAP cloud applications to consume business events in a CAP application</A></LI></UL><P><EM>25th of October:</EM></P><UL><LI><A href="https://community.sap.com/khhcw49343/downloadCalendar?message.id=13802909#M691" target="_blank">09:30 CET</A> - <A href="https://community.sap.com/t5/devtoberfest/improve-operational-efficiency-using-ai-enabled-api-anomaly-detection/ec-p/13802909#M691" target="_blank"><span class="lia-unicode-emoji" title=":red_circle:">šŸ”“</span>Improve Operational Efficiency using AI-enabled API Anomaly Detection</A></LI><LI><A href="https://community.sap.com/khhcw49343/downloadCalendar?message.id=13802913#M692" target="_blank">15:00 CET</A> - <A href="https://community.sap.com/t5/devtoberfest/enterprise-automation-with-sap-latest-enhancements/ec-p/13802913#M692" target="_blank"><span class="lia-unicode-emoji" title=":red_circle:">šŸ”“</span>Enterprise Automation with SAP: Latest Enhancements</A></LI></UL><P class="lia-indent-padding-left-30px" style="padding-left : 30px;"><EM>Note: If you click on any of the times of the sessions above, you will download the calendar invite for the session.</EM></P><P>So go ahead and RSVP to the different sessions you are interested in. Also, make sure to download the calendar invites so that you don't miss the session and you can get a chance to ask the speaker any questions that you might have about the topic.</P><P class="lia-align-center" style="text-align: center;"><STRONG>Happy learning this Devtoberfest 2024!</STRONG></P> 2024-09-20T10:18:26.173000+02:00 https://community.sap.com/t5/technology-blog-posts-by-members/publish-amp-protect-with-sap-advanced-event-mesh-amp-enterprise-blockchain/ba-p/13890256 Publish & Protect: with SAP Advanced Event Mesh & Enterprise Blockchain & SAP BTP Kyma šŸš€ 2024-11-05T21:40:32.160000+01:00 AndySilvey https://community.sap.com/t5/user/viewprofilepage/user-id/1397601 <P>&nbsp;</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="SAP Event Mesh and Web3 and Blockchain.jpg" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/187149iA13E50AFB893FB76/image-size/large?v=v2&amp;px=999" role="button" title="SAP Event Mesh and Web3 and Blockchain.jpg" alt="SAP Event Mesh and Web3 and Blockchain.jpg" /></span></P><P>Publish &amp; Protect Architecture is the fusion of two technologies, SAP (Advanced) Event Mesh for publishing Event Data, and Enterprise Blockchain for protecting the originality and integrity of Event Data.</P><P>The Enterprise Blockchain is actually enabling a number of things to happen, including:</P><P>. Being a <STRONG>secure store</STRONG> of the Events which have been published, for future reference, for example in the case of Audit/Internal Control/Governance/Regulation/Compliance. Thanks to storing a copy of every Event at the same time as publishing it, you have the highest level of cyber security on your Data</P><P>. Being a <STRONG>secure log</STRONG> in case there is a need to replay and resend Event Data. In the case of a situation where certain Events during a certain time period need to be resent, you can't go in to the S/4HANA and say give me the Contact Name of the Business Partner from last Wednesday because it has already been over written. Thanks to the Enterprise Blockchain, and that every time you publish an Event to the SAP (Advanced) Event Mesh you also write that Event to the Enterprise Blockchain, you have the highest level of cyber security protection on your historical Event Data</P><P>This blog is the result of collaboration between myself and Tom Fairbairn from Solace. Tom has published a sister blog to this one on the Solace website, and following SAP Community Rules I cannot link to it, that's fine though because you can easy find the blog on google if you search for Solace Publish and Protect.</P><P>We are all either already, or becoming, familiar with Event Driven Architecture (EDA) and SAP's Event Mesh and Advanced Event Mesh.</P><P>Almost every day more Standard Events are being built in to SAP S/4HANA. The catalogue gets bigger and bigger <A href="https://api.sap.com/products/SAPS4HANA/events/events" target="_blank" rel="noopener noreferrer">https://api.sap.com/products/SAPS4HANA/events/events</A> .</P><P>Events like Business Partner <A href="https://api.sap.com/event/OP_BUSINESSPARTNEREVENTS/overview" target="_blank" rel="noopener noreferrer">https://api.sap.com/event/OP_BUSINESSPARTNEREVENTS/overview</A> , "Informs a remote system about created and changed business partners in an SAP S/4HANA System".</P><P>Sending out the Business Partner Event to a remote system informing them about a changed or created business partner, this is the Publish side of Event Driven Architecture.</P><P>But what about the Protect side of Event Driven Architecture ?</P><P>The Protect side of EDA is about being able to trust the originality and the integrity of the Data.</P><P>EDA is about fluidity, it is a fast business, a Business Partner Contact Telephone Number could be changed another system, that system notifies S/4HANA, S/4HANA gets updated with the new Contact Telephone Number for this Business Partner and then informs, Publishes this Data to Subscribing Systems as part of an end to end integrated Business Process.</P><P>And here's the thing, what happens if there's a problem at the remote system which is receiving the Events from the S/4HANA, what if we get in to a situation where we need to re-play the Events that came from the S/4HANA ?</P><P>What happens if we need to be able to prove the originality and the integrity of Event Data which was sent at a certain time and date, or in-fact at any time ?</P><P>SAP Advanced Event Mesh has a feature to store Logs of Events and to be able to replay Event Logs, this has been explained nicely here: <A href="https://community.sap.com/t5/technology-blogs-by-members/reversing-the-time-with-advanced-event-mesh-unleash-the-power-of-message/ba-p/13548246" target="_blank">https://community.sap.com/t5/technology-blogs-by-members/reversing-the-time-with-advanced-event-mesh-unleash-the-power-of-message/ba-p/13548246</A></P><P>As Tom Fairbairn from Solace said in his blog, "A common implementation of the event source pattern is to have a distributed immutable log storing all state transitions, and to rebuild current application state by replaying the state transitions.</P><P>Surely this is the solution to publish and protect?</P><P>Well, no. This approach doesn’t solve the trust issue: would you replicate your log-based event streaming solution to an untrusted third party? Thought not. Log based streaming solutions also assume that replicas are generally on-line and up to date, which is not a good assumption in cross-organisational scenarios. Lastly, the log is only immutable in log-based streaming because there is no facility within the platform to edit the logs. Anyone with a binary editor can change the data and there is no detection of this or validation of data integrity. For that, you need an enterprise blockchain."</P><P>tl;dr;</P><P>In Business Processes driven by loosely coupled Event Driven Architecture, when something stops working, how can you reproduce what just happened ?</P><P>Replay the logs, where do you store the logs ? Blockchain</P><P>If for any one of many reasons and use cases, which we can discuss in the comments, and which we can even write subsequent blogs for, including the how-to guides for implementing the solutions, if you need to be as sure as you can be that the Event Data which you are sending from S/4HANA, that you are keeping "proofs" and evidence and copies of every Event which has been sent, for safe keeping, just in case, in the future you will need to be able to prove the originality and integrity of that Data, then next to your SAP Advanced Event Mesh, you need to deploy an Enterprise Blockchain, which you can do today on the SAP BTP Kyma Runtime, and use that Blockchain as the Immutable store of proof of the Events which have been sent out.</P><P>Publish &amp; Protect Architecture</P><P>The formidable combination of SAP Advanced Event Mesh and Enterprise Blockchain (on the SAP BTP Kyma)</P><P>The combination of enterprise blockchain and event-driven integration gives you the benefits of an immutable, distributed ledger while providing the mechanism to integrate with existing and future enterprise systems.</P><P>It gets better, you can run the Blockchain across you and your Partners so that each Partner has a copy of the Blockchain.</P><P>In Business Processes driven by loosely coupled Event Driven Architecture, when something stops working, how can you reproduce what just happened ?</P><P>Replay the logs, where do you store the logs ? Blockchain</P><P>How would it look in practice, what is the Reference Architecture ?</P><P>&nbsp;</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="AndySilvey_0-1730837974468.png" style="width: 612px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/187159i04D8DFCA9E5C360D/image-dimensions/612x346?v=v2" width="612" height="346" role="button" title="AndySilvey_0-1730837974468.png" alt="AndySilvey_0-1730837974468.png" /></span></P><P>&nbsp;</P><P>Of course, you can bring whichever if your favourite Enterprise Blockchain Platform.</P><P>The ideal solution is one which runs on the SAP BTP because of:</P><P>&nbsp;</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="AndySilvey_1-1730838077713.png" style="width: 617px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/187160i904543DF38FBFE1C/image-dimensions/617x318?v=v2" width="617" height="318" role="button" title="AndySilvey_1-1730838077713.png" alt="AndySilvey_1-1730838077713.png" /></span></P><P>&nbsp;</P><P>Another really simple Publish and Protect Architecture, the easy boiling an egg equivalent of implementing these technologies is to use the SAP Advanced Event Mesh and the Enterprise Blockchain in combination as part of your <A href="https://community.sap.com/t5/technology-blogs-by-members/bcp-business-continuity-planning-for-sap-s-4hana-made-easy-with-enterprise/ba-p/13647824" target="_self">Business Continuity</A> Planning solution, and write SAP Data to an Enterprise Blockchain which is both Multi Region and Multi Cloud on the SAP BTP like this:</P><P>&nbsp;</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="AndySilvey_3-1730838601432.png" style="width: 617px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/187181i25E445CECACCE76E/image-dimensions/617x347?v=v2" width="617" height="347" role="button" title="AndySilvey_3-1730838601432.png" alt="AndySilvey_3-1730838601432.png" /></span></P><P>&nbsp;</P><P>&nbsp;</P><P>Enterprise AI and the Enterprise Blockchain and Event Driven Architecture with SAP Advanced Event Mesh</P><P>And now we're just getting started because the next big one is Enterprise AI, as we all know, in AI, garbage in, garbage out, so how can we be sure that both the Data and Models are protected, that we can trust both the originality and the integrity of the Data and the Models which are the backbone of our Enterprise AI ?</P><P>Again, the Enterprise Blockchain. The Events are fed into the Enterprise AI and at the same time written to the <A href="https://community.sap.com/t5/technology-blogs-by-members/trustable-ai-thanks-to-sap-ai-core-amp-sap-hana-cloud-amp-sap-s-4hana-amp/ba-p/13662822" target="_self">Blockchain, alternatively the Enterprise AI</A> reads the Data from the Blockchain, the Data having been fed in to the Blockchain by the SAP Advanced Event Mesh:</P><P>&nbsp;</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="AndySilvey_4-1730838701163.png" style="width: 628px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/187182i3E164E571B8FB734/image-dimensions/628x353?v=v2" width="628" height="353" role="button" title="AndySilvey_4-1730838701163.png" alt="AndySilvey_4-1730838701163.png" /></span></P><P>&nbsp;</P><P>The next case are <A href="https://community.sap.com/t5/technology-blogs-by-members/b2b-business-processes-ultimate-cyber-data-security-with-blockchain-and-sap/ba-p/13680992" target="_self">B2B Business Processes</A> where you are sharing (Publishing) Data to your Business Partners and you need to have the highest cyber security protection of the Data which you are sharing, again this is where the powerful combination of SAP Advanced Event Mesh and the Enterprise Blockchain come together</P><P>&nbsp;</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="AndySilvey_5-1730838905242.png" style="width: 624px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/187195i113D80C92F24703C/image-dimensions/624x348?v=v2" width="624" height="348" role="button" title="AndySilvey_5-1730838905242.png" alt="AndySilvey_5-1730838905242.png" /></span></P><P>&nbsp;</P><DIV><P><STRONG>To wrap up, a simple reminder,&nbsp;</STRONG></P><P class="lia-indent-padding-left-30px" style="padding-left : 30px;"><EM><STRONG>The Digital Transformation of Information Security is Enterprise Blockchain</STRONG></EM></P><P class="lia-indent-padding-left-30px" style="padding-left : 30px;"><EM><STRONG>Enterprise Blockchain is the Next Generation Data Integrity, Originality, Confidentiality Protection</STRONG></EM></P><P class="lia-indent-padding-left-30px" style="padding-left : 30px;"><STRONG>Enterprise Blockchain, Enterprise Distributed Ledger Technology is re-imagining information security</STRONG></P><P><STRONG>If you want the easiest, simplest, most resilient foundation to an Enterprise Business Continuity Planning Solution, just send your S/4HANA Operational Critical Master and Transaction Data to The Enterprise Blockchain. voila.</STRONG></P></DIV><DIV>&nbsp;</DIV><DIV>And ultimately, this is all&nbsp;<A class="" href="https://community.sap.com/t5/technology-blogs-by-members/why-i-love-sap-and-blockchain-databases-and-why-you-should-too/ba-p/13625869" target="_blank">Why I love SAP and Blockchain Databases and why you should too</A>&nbsp;<P>These solutions all depend upon <A href="https://community.sap.com/t5/technology-blogs-by-members/sap-enterprise-architecture-positioning-blockchain-database-as-an/ba-p/13629842" target="_self">positioning Blockchain as an Enterprise Technology</A> Standard, considering the special <A href="https://community.sap.com/t5/technology-blogs-by-members/enterprise-architecture-enterprise-blockchain-platform-business-capability/ba-p/13902640" target="_self">Business Capabilities of the Blockchain</A>, which then allows the <A href="https://community.sap.com/t5/technology-blogs-by-members/sap-enterprise-architecture-let-the-use-case-find-the-blockchain/ba-p/13632458" target="_self">Use Cases to find the Blockchain</A>.</P><P>This is what Enterprise Blockchain running on the SAP BTP looks like:&nbsp;<A href="https://atkrypto-blockchain-for-sap.ad8ba34.kyma.ondemand.com/" target="_blank" rel="nofollow noopener noreferrer">https://atkrypto-blockchain-for-sap.ad8ba34.kyma.ondemand.com/</A></P><P>What do you think, are the words Blockchain, Web3, Distributed Ledger Technology, starting to appear in your Company's visions and technology visions ? What use cases are you looking at ? How are you positioning it ? Let's chat about it in the comments.</P><P>Andy Silvey.</P><P>Independent SAP Technical Architect and CEO of atkrypto</P><P>Author Bio:</P><P>Andy Silvey is a 25 years SAP Technology veteran&nbsp;[<EM>15 years SAP Basis and 10 years SAP Tech Arch including Tech, Integration, Security, Data from 3.1H to S/4HANA PCE on RISE and the BTP and everything in between, and<SPAN>&nbsp;</SPAN><A href="https://community.sap.com/t5/welcome-corner-blog-posts/andy-silvey-scn-moderator-spotlight/ba-p/13054438" target="_self">former SCN Moderator and Mentor alumni</A>].</EM></P><P>Andy is also co-Founder of atkrypto inc, an startup whose ambition is to make Blockchain easy for Enterprise.</P><P>atkrypto's flagship product is the atkrypto Enterprise Blockchain Platform for SAP,&nbsp; and atkrypto is a SAP Partner Edge Open EcoSystem Partner.&nbsp;</P><P>The&nbsp;atkrypto Enterprise Blockchain Platform for SAP has been designed by SAP Independent Experts for the needs of SAP Customers and to be deployed on the SAP BTP Kyma Runtime Service and leverage native integration to SAP Products.</P><P>atkrypto&nbsp;Enterprise Blockchain Platform for SAP has a number of unique qualities, including being the only Blockchain software in the world which has a DataCenter version and a light mobile version which can run on Edge/IoT/Mobile devices and enables data to be written to the Blockchain at the Edge where that same Blockchain is running on a Server in the DataCenter, protecting the integrity and originality of data from the Edge to Insights. Taking Blockchain to the Data at the Edge instead of taking the Data to the Blockchain.</P></DIV><P>&nbsp;</P><P>&nbsp;</P><P>&nbsp;</P><P>&nbsp;</P> 2024-11-05T21:40:32.160000+01:00 https://community.sap.com/t5/technology-blog-posts-by-members/using-apache-kafka-for-messaging-in-the-sap-cloud-application-programming/ba-p/13976974 Using Apache Kafka for messaging in the SAP Cloud Application Programming Model (CAP) – Part 2/2 2025-01-13T22:17:51.949000+01:00 mike_zaschka https://community.sap.com/t5/user/viewprofilepage/user-id/144369 <H3 id="toc-hId-1207619807"><STRONG>Preface</STRONG></H3><P>This blog post is the second in a two-part series introducing <A href="https://www.npmjs.com/package/cds-kafka" target="_blank" rel="noopener nofollow noreferrer">cds-kafka</A>, an open-source CAP plugin (<A href="https://github.com/mikezaschka/cds-kafka" target="_blank" rel="noopener nofollow noreferrer">github repository</A>) designed for seamless integration with Apache Kafka. Read the first post introducing cds-kafka and its capabilities&nbsp;<A href="https://community.sap.com/t5/technology-blogs-by-members/using-apache-kafka-for-messaging-in-the-sap-cloud-application-programming/ba-p/13970176" target="_blank">here.</A> In the second post, I will focus on practical use cases for the plugin and also demonstrating how to use the plugin in real-world applications, both locally and on SAP BTP.</P><H2 id="toc-hId-882023583"><STRONG>Use-cases for cds-kafka</STRONG></H2><P>Before looking at some concrete use-cases, let's focus where cds-kafka is placed in the various event-driven architecture (EDA) offerings by SAP.</P><H3 id="toc-hId-814592797">EDA Solutions and Kafka Integrations provided by SAP</H3><P>SAP provides a range of event-driven architecture solutions to cater to various enterprise needs for messaging:</P><UL><LI><STRONG>SAP Cloud Application Event Hub</STRONG><BR />The default event broker for cloud applications. Designed to enable real-time event publishing and consumption between SAP cloud solutions, but with no direct connectors to other EDA solutions outside the SAP ecosystem.</LI><LI><STRONG>SAP Advanced Event Mesh (AEM)</STRONG><BR />Enterprise-grade messaging infrastructure. Offers features such as enterprise-wide event monitoring, advanced filtering, and guaranteed delivery. Ideal for use cases requiring sophisticated monitoring and routing across distributed environments.</LI><LI><STRONG>SAP Event Mesh<BR /></STRONG>While not being a strategic solution anymore, SAP Even Mesh is now part of SAP Integration Suite and providing standard messaging capabilities.</LI></UL><P>While those solutions cover the need to handle event-driven architectures in the SAP ecosystem and connect to various SAP solutions, only AEM provides the possibility to connect to external event streams in an organization. If we expand the cloud-related toolset with direct connection to Kafka (ignoring Kafka Connect as a low-level integration option), only the following tools are able to connect to and communicate with Apache Kafka:</P><UL><LI><STRONG>SAP Advanced Event Mesh for Bridging Events</STRONG><BR />AEM includes capabilities to act as a bridge for routing events between SAP systems and Kafka. This is particularly useful for hybrid architectures where SAP and non-SAP systems coexist.</LI><LI><STRONG>SAP Cloud Integration (Integration Suite)</STRONG><BR />Provides sender and receiver adapters for Kafka to facilitate integration between the SAP ecosystem and external Kafka brokers. Suitable for scenarios where existing SAP middleware can manage event flows effectively.</LI><LI><STRONG>SAP Datasphere</STRONG><BR />Enables publishing data through an outbound replication flow and pushing data into Kafka streams.&nbsp;Used for big data processing and ETL (Extract, Transform, Load) scenarios.</LI></UL><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="sap-kafka.png" style="width: 742px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/207849i556B9E10AA987047/image-size/large?v=v2&amp;px=999" role="button" title="sap-kafka.png" alt="sap-kafka.png" /></span></P><P><SPAN>While these offerings address diverse integration needs, they may not always align with specific requirements, such as reduced architectural complexity or direct Kafka access within a SAP cloud application. This is where cds-kafka comes into play.</SPAN></P><H3 id="toc-hId-618079292">How cds-kafka comes into play</H3><P>cds-kafka as a messaging plugin for the SAP Cloud Application Programming Model (CAP), is tailored for scenarios where direct integration with Kafka is required at the application level, without relying on additional SAP middleware layers. While cds-kafka is not intended to replace existing SAP solutions like SAP Integration Suite or Advanced Event Mesh, it provides significant value in specific scenarios, especially when flexibility and direct Kafka access are needed:</P><OL><LI><STRONG>Messaging in CAP applications without Event Mesh/Event Hub<BR /></STRONG>For CAP applications that do not have access to SAP-provided messaging services (e.g. because they don't run on SAP BTP), cds-kafka offers a practical alternative. It enables CAP-based event-driven applications to leverage Kafka’s capabilities without additional dependencies.<STRONG><BR /></STRONG></LI><LI><STRONG>Messaging in SaaS CAP applications<BR /></STRONG>In SaaS scenarios, where CAP applications require messaging capabilities but are designed to operate independently of centralized SAP messaging middlewares, cds-kafka provides the tools for direct integration with Kafka for event handling.<STRONG><BR /></STRONG></LI><LI><STRONG>Connecting to a centralized Kafka message bus<BR /></STRONG>Many organizations use Kafka as their enterprise-wide event streaming platform across departments. cds-kafka enables CAP applications to directly connect to this centralized Kafka infrastructure, simplifying communication and reducing dependency on intermediate SAP services.</LI><LI><STRONG>Scenarios without Integration Suite or Advanced Event Mesh but required Kafka access</STRONG><BR />In environments where SAP Integration Suite or Advanced Event Mesh are not available to connect to Kafka, cds-kafka provides a lightweight alternative for directly sending and consuming Kafka messages.</LI><LI><STRONG>Avoiding additional complexity</STRONG><BR />Even in setups where Integration Suite or Advanced Event Mesh are available, routing messages to/from Kafka through these layers may introduce unnecessary complexity or latency. cds-kafka bypasses these intermediaries, enabling a more streamlined and efficient integration.</LI><LI><STRONG>Kafka on Kyma</STRONG><BR />Organizations deploying Kafka clusters on Kyma can leverage cds-kafka for seamless communication with CAP applications. This is particularly relevant in Kubernetes-based environments where CAP applications and Kafka are co-deployed, simplifying integration within the same ecosystem.</LI><LI><STRONG>Hybrid cloud architectures</STRONG><BR />In hybrid cloud scenarios, cds-kafka bridges the gap between SAP applications on SAP BTP and Kafka instances running in the cloud (e.g., Confluent Cloud, AWS MSK, Azure Event Hubs for Kafka). This direct integration facilitates real-time data streaming and event-driven communication across heterogeneous systems.</LI><LI><STRONG>Isolated Kafka-specific data processing</STRONG><BR />cds-kafka allows CAP applications to subscribe to Kafka topics for custom data processing, including teal-time transformations, aggregations, filtering and&nbsp;building pipelines for event enrichment or analytics. This capability makes cds-kafka ideal for applications requiring Kafka’s unique processing power in isolation from other SAP tools.</LI></OL><H3 id="toc-hId-421565787">A real world use case</H3><P>The following scenario describes a (simplified) real-world example of integrating cds-kafka with an organization’s systems for product data management. While the actual setup is far more complex and involves multiple BTP services and other applications, the focus here is on the Kafka integration.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="btp-kafka-simplified.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/211236iB506D4760EA4572F/image-size/large?v=v2&amp;px=999" role="button" title="btp-kafka-simplified.png" alt="btp-kafka-simplified.png" /></span></P><H4 id="toc-hId-354135001"><BR />Scenario Overview</H4><P>An organization stores product data, such as attributes, classifications and configurations, in its S/4HANA system, while additional product-related details, including additional master data, categorizations, media and documents, are managed in a Product Information System (PIM). The product data is critical for various internal systems, such as a CAD platform to generate 3D product images, and external applications like online shops and websites. In the past there were only manual or batch processes in place to combine the data, which was slow, error prone and did resulted in huge amounts of duplicated data.<BR />To streamline access, the organization aims to establish a standardized data model and OData service layer on SAP BTP, consolidating all product information in real-time.</P><H4 id="toc-hId-157621496"><STRONG>Solution Architecture</STRONG></H4><P>The solution was designed to remove redundancy and manual processes and instead provide a real-time single source-of-truth data model and service layer. SAP HANA Smart Data Integration (SDI) has been introduced to replicate product data from S/4HANA into SAP HANA Cloud, forming the foundation for a CAP-based application. Meanwhile, the PIM system, which lacks SAP-native connectors but supports Kafka, pushes updates to Kafka in real-time (via Change Data Capture - CDC techniques). Here, cds-kafka bridges the gap by enabling the CAP application to directly consume these Kafka updates and integrate them with the existing S/4HANA data.</P><P>The CAP application consolidates and combines data from both sources into a unified, real-time model, exposing it via APIs. The result is a standardized data model on SAP BTP providing a single source of truth for all downstream systems, ensuring consistency and reducing redundancy while ensuring real-time synchronized updates: changes in the PIM system are reflected instantly through Kafka, while updates in S/4HANA are replicated seamlessly via SDI.</P><P>This approach showcases the power of CAP and its core features and cds-kafka in extending the S/4HANA system by providing real-time, hybrid integrations, unifying disparate systems into a cohesive data model and service layer on SAP BTP without unnecessary middleware or complexity.</P><H2 id="toc-hId--297057447"><STRONG>cds-kafka in Action</STRONG></H2><P>While the previous use case is intriguing, it is too complex to demonstrate here (and the details are also under NDA <span class="lia-unicode-emoji" title=":winking_face:">šŸ˜‰</span>). Instead, we’ll explore and combine two practical examples that showcase cds-kafka in action:</P><OL><LI>Adding cds-kafka to the CAP reference repository: <A href="https://github.com/SAP-samples/cloud-cap-samples" target="_blank" rel="noopener nofollow noreferrer">SAP-samples/cloud-cap-samples</A>, running in a local environment and later using a cloud-based Kafka instance.</LI><LI>Deploying a CAP application with cds-kafka to SAP BTP, also connecting to the cloud-based Kafka instance.</LI></OL><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="demo-app.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/211548i6DE6FBF7F5465DBE/image-size/large?v=v2&amp;px=999" role="button" title="demo-app.png" alt="demo-app.png" /></span></P><P>&nbsp;</P><P>Those examples demonstrate how to integrate Kafka via cds-kafka in a hybrid multi-app event-driven architecture.</P><H3 id="toc-hId--364488233">Example 1: Integrating cds-kafka in SAP-samples/cloud-cap-samples&nbsp;</H3><P class="">For this example, we use the CAP reference repository on github, <A href="https://github.com/SAP-samples/cloud-cap-samples" target="_blank" rel="noopener nofollow noreferrer">SAP-samples/cloud-cap-samples</A>, which is an excellent playground for exploring CAP features. The repository also includes examples of messaging, as described in the <A href="https://cap.cloud.sap/docs/guides/messaging/#using-message-channels" target="_blank" rel="noopener nofollow noreferrer">official CAP documentation</A>. We will replace an existing messaging service in the sample project with cds-kafka to demonstrate how seamlessly it integrates with CAP.</P><H4 id="toc-hId--431919019">Prerequisites:</H4><UL><LI>Node.js</LI><LI>Docker</LI><LI>git</LI></UL><H4 id="toc-hId--1126149619">Step 1: Checkout the git repository</H4><P>We simply clone the repository to have it on our own local computer.</P><PRE>git clone https://github.com/SAP-samples/cloud-cap-samples.git</PRE><H4 id="toc-hId--1322663124">Step 2: Setup the local dockerized Kafka instance&nbsp;</H4><P>We will connect to a cloud-based Kafka instance in the second step. But first, let's have a fully local app-instance running, by leveraging Kafka in a docker instance. For this, we place a <FONT face="courier new,courier">docker-compose.yaml </FONT>inside of the project. We are not only using Kafka, but also Zookeeper and <A href="https://github.com/provectus/kafka-ui" target="_blank" rel="noopener nofollow noreferrer">Kafka-UI</A> to have a nice user interface to look at the data inside of Kafka:</P><P>&nbsp;</P><pre class="lia-code-sample language-yaml"><code>services: zookeeper: image: confluentinc/cp-zookeeper:latest environment: ZOOKEEPER_CLIENT_PORT: 2181 ZOOKEEPER_TICK_TIME: 2000 ports: - 22181:2181 kafka: hostname: kafka image: confluentinc/cp-kafka:latest depends_on: - zookeeper ports: - 29092:29092 - 9997:9997 environment: KAFKA_BROKER_ID: 1 KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181 KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://kafka:9092,PLAINTEXT_HOST://localhost:29092 KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: PLAINTEXT:PLAINTEXT,PLAINTEXT_HOST:PLAINTEXT KAFKA_INTER_BROKER_LISTENER_NAME: PLAINTEXT KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1 KAFKA_JMX_PORT: 9997 KAFKA_JMX_OPTS: -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -Djava.rmi.server.hostname=kafka0 -Dcom.sun.management.jmxremote.rmi.port=9997 kafka-ui: container_name: kafka-ui image: provectuslabs/kafka-ui:latest depends_on: - kafka ports: - 8080:8080 environment: DYNAMIC_CONFIG_ENABLED: true KAFKA_CLUSTERS_0_NAME: local KAFKA_CLUSTERS_0_BOOTSTRAPSERVERS: kafka:9092 KAFKA_CLUSTERS_0_METRICS_PORT: 9997</code></pre><P>&nbsp;</P><P>With the file in place, just fire up the docker containers:</P><PRE>docker compose up</PRE><H4 id="toc-hId--1519176629">Step 3: Install and configure cds-kafka in the /bookstore and /reviews application</H4><P class="">The messaging example in the cloud-cap-samples repository involves two applications working together via asynchronous events:</P><UL><LI><STRONG>Reviews Application (/reviews):<BR /></STRONG>This app acts as the producer, sending an event whenever a user submits a review for a specific book.</LI><LI><STRONG>Bookstore Application (<STRONG>/bookstore)</STRONG><BR /></STRONG>This app acts as the consumer, subscribing to the review events. Upon receiving an event, it updates its internal database with the review data.</LI></UL><P>Both apps need to be configured in the same way, as both needs access to Kafka.&nbsp;<BR />First, we install cds-kafka in each folder:</P><PRE>npm i cds-kafka</PRE><P>Then we replace the messaging configuration in the <FONT face="courier new,courier">package.json</FONT>&nbsp;files to use cds-kafka:</P><P>&nbsp;</P><pre class="lia-code-sample language-json"><code>... "messaging": { "[development]": { "kind": "kafka-messaging", "credentials": { "brokers": [ "localhost:29092" ] }, "consumer": { "groupId": "cap-bookstore" } } }, ... "kafka-messaging": { "impl": "cds-kafka" }</code></pre><P>&nbsp;</P><P>We connect to the local Kafka broker (zookeeper) on port 29092. In addition to the default configuration, we explicitly specify the <FONT face="courier new,courier">groupId</FONT> for the receiving application. Without this setting, cds-kafka would assign a dynamic <FONT face="courier new,courier">groupId</FONT>, which is not recommended in scenarios where precise control over consumer groups and offsets is required.<BR />Since we are not modifying any source code, the Kafka topic name will automatically correspond to the event name.</P><H4 id="toc-hId--1715690134">Step 4: Run the producer and consumer applications</H4><P>Now we fire up both applications (from the root folder and in two separate terminal instances). The apps will be available at:&nbsp;</P><UL><LI><A href="http://localhost:4005/vue/index.html" target="_blank" rel="noopener nofollow noreferrer">http://localhost:4005/vue/index.html</A>&nbsp;(review app)&nbsp;</LI><LI><A href="http://localhost:4005/vue/index.html" target="_blank" rel="noopener nofollow noreferrer">http://localhost:4004/vue/index.html</A>&nbsp;(bookstore app).</LI></UL><PRE>cds watch reviews</PRE><PRE>cds watch bookstore</PRE><P>In the terminal, we can see that cds-kafka is now in action.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="review-start.png" style="width: 659px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/211149iB11F5629A30A94AB/image-size/large?v=v2&amp;px=999" role="button" title="review-start.png" alt="review-start.png" /></span></P><H4 id="toc-hId--1912203639">Step 5: Create events</H4><P>To verify, that everything is working, we open the UI of the review application and submit a review (e.g. for book 251).</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="cap-review-app.png" style="width: 801px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/211238iC8A17E3F12E971B6/image-size/large?v=v2&amp;px=999" role="button" title="cap-review-app.png" alt="cap-review-app.png" /></span></P><P>As soon as a review is submitted, the event is triggered by the reviews application and sent to Kafka. Switching to the terminal for the bookstore application, you will see that the event has been successfully transmitted and processed by cds-kafka and if you open the bookshop UI, you will also see the processed data.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="bookstore-event.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/211240i08872314E0F01CF9/image-size/large?v=v2&amp;px=999" role="button" title="bookstore-event.png" alt="bookstore-event.png" /></span><BR />We’ve successfully replaced the default messaging service with cds-kafka. This demonstrates how easy and efficient it is to integrate cds-kafka into any CAP application, without touching any application coding.</P><H4 id="toc-hId--2108717144">Step 6: Inspecting Kafka</H4><P>With the Kafka-UI docker container running, we can directly inspect the data stored in Apache Kafka by navigating to <A href="http://localhost:8080/" target="_blank" rel="noopener nofollow noreferrer">http://localhost:8080/</A>. By accessing the relevant topic, we can view the message, including its data and the headers added by cds-kafka.<BR />Since we’re not using CloudEvents in this example, the headers currently only include the correlation ID and some tenant information—a reflection of cds-kafka’s built-in support for multi-tenancy. This makes it even more versatile for handling complex scenarios in multi-tenant environments.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="kafka-ui.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/211241iCB4E96A388F96502/image-size/large?v=v2&amp;px=999" role="button" title="kafka-ui.png" alt="kafka-ui.png" /></span></P><H4 id="toc-hId-1989736647">Step 7: sap/cloud-cap-samples on&nbsp;Confluent Cloud</H4><P>In the final step, we replace the local Kafka configuration with a cloud-based solution to demonstrate that cds-kafka can seamlessly connect not only to local Kafka instances but to any Kafka service.</P><P><A href="https://www.confluent.io/" target="_blank" rel="noopener nofollow noreferrer">Confluent Cloud</A> is a fully managed Kafka service offering enterprise-grade scalability, reliability, and additional features such as schema registry, connectors, and monitoring tools. It simplifies the management of Kafka clusters and is widely used for both development and production environments.<BR />Confluent offers a trial that allows you to quickly set up a simple Kafka cluster. Once the cluster is created, you’ll receive the necessary connection information, such as:</P><UL><LI>Bootstrap servers.</LI><LI>API key and secret.</LI><LI>Security protocol settings.</LI></UL><P>To connect both CAP applications to Confluent, we update the configuration in <FONT face="courier new,courier">package.json</FONT> as shown in the example below. Replace the placeholder values with your cluster’s connection details:</P><P>&nbsp;</P><pre class="lia-code-sample language-json"><code>... "messaging": { "[development]": { "kind": "kafka-messaging", "credentials": { "clientId": "&lt;YOUR CLIENT ID&gt;", "brokers": [ "&lt;YOUR BROKER&gt;.germanywestcentral.azure.confluent.cloud:9092" ], "ssl": true, "sasl": { "mechanism": "PLAIN", "username": "&lt;YOUR USERNAME&gt;", "password": "&lt;YOUR PASSWORD&gt;" } }, "consumer": { "groupId": "cap-bookstore" } } }, ... "kafka-messaging": { "impl": "cds-kafka" }</code></pre><P>&nbsp;</P><P>One important aspect to keep in mind: Confluent Cloud does not allow automatic topic creation. Therefore, you must manually create a topic named <FONT face="courier new,courier">ReviewService.reviewed</FONT> before running your application. This ensures that the application has a valid destination for the events.</P><P>Once the connection configuration is updated and the events are fired, you’ll see the messages appear in Confluent Cloud. Again, we have not changed any coding, only the configuration and the integration is working as expected.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="confluent.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/211259i8DF4B4862331A873/image-size/large?v=v2&amp;px=999" role="button" title="confluent.png" alt="confluent.png" /></span></P><P>As a platform that fully leverages the power of Apache Kafka, Confluent supports far more advanced use cases than the simple scenario demonstrated here. However, this example highlights the ease of integration with CAP using cds-kafka, while also showcasing its ability to connect to more complex Kafka architectures effortlessly.</P><P>Confluent provides robust support for schema registries, allowing schemas to be associated with specific topics to enforce data contracts and maintain consistency. While cds-kafka does not currently include native support for schema registries, this could be a valuable feature to explore in future versions.</P><H3 id="toc-hId-2086626149"><STRONG>Running an app on SAP BTP using cds-kafka</STRONG></H3><P>While running CAP applications locally is helpful for testing and development, it’s not representative of real-world scenarios. Our&nbsp;production environment of choice is SAP BTP and s<SPAN>ince Kafka is not available as a service on SAP BTP, we’ll create a simple CAP app that connects to the previously created Kafka instance, subscribes to all topics and stores the incoming messages in a database. This app will then be deployed to SAP BTP, demonstrating how cds-kafka enables seamless integration with external Kafka services from within the SAP BTP Cloud Foundry environment.<BR />To create and deploy the app, just follow the steps:</SPAN></P><H4 id="toc-hId-1596709637">Prerequisites</H4><UL><LI>Node.js</LI><LI><FONT face="courier new,courier"><a href="https://community.sap.com/t5/user/viewprofilepage/user-id/1862993">@Pa_Vi</a>/cds-dk</FONT> installed globally (<FONT face="courier new,courier">npm add -g <a href="https://community.sap.com/t5/user/viewprofilepage/user-id/1862993">@Pa_Vi</a>/cds-dk</FONT>)</LI><LI><FONT face="courier new, courier">mbt</FONT> installed globally (<FONT face="courier new,courier">npm add -g mbt</FONT>)</LI><LI><A href="https://github.com/cloudfoundry/cli" target="_blank" rel="noopener nofollow noreferrer">CF command line</A> installed including the <A href="https://github.com/cloudfoundry/multiapps-cli-plugin" target="_blank" rel="noopener nofollow noreferrer">cf multiapps plugin</A></LI><LI>BTP trial account with an existing and running SAP HANA Cloud instance</LI></UL><H4 id="toc-hId-1400196132">Step 1: Create the simple example app</H4><P>We create a new empty CAP project app via:</P><PRE>cds init kafka-consumer-app</PRE><H4 id="toc-hId-1371866318">Step 2: Install cds-kafka</H4><P>Of course we need to add cds-kafka to the project:</P><PRE>npm i cds-kafka</PRE><H4 id="toc-hId-1175352813">Step 3: Create the data model</H4><P>To store the messages, we need a data model. Create a file <FONT face="courier new,courier">model.cds</FONT> in the <FONT face="courier new,courier">db</FONT> folder with the following contents:</P><P>&nbsp;</P><pre class="lia-code-sample language-abap"><code>namespace kafka.consumer.db; entity Messages { key ID : UUID; event : String; topic : String; headers : LargeString; data : LargeString; }</code></pre><P>&nbsp;</P><DIV><H4 id="toc-hId-978839308">Step 4: Create the service definition</H4><P>To expose the messages via OData, we create a simple service. Copy the following contents in <FONT face="courier new,courier">srv/consumer-service.cds</FONT>:</P></DIV><P>&nbsp;</P><pre class="lia-code-sample language-abap"><code>using { kafka.consumer.db as db } from '../db/model'; service ConsumerService @(requires: 'authenticated-user') { entity Messages as projection on db.Messages; }</code></pre><P>&nbsp;</P><H4 id="toc-hId-782325803">Step 5: Subscribe to all Kafka topics</H4><P>We actually want to store all incoming messages into the <FONT face="courier new,courier">Messages</FONT> table. For this, we simply create a subscription and fill the respective fields whenever a new message arrives. We are using the default CAP event properties here, but also some of the custom headers provided by cds-kafka with additional meta information.<BR />Put the following content in&nbsp;<FONT face="courier new,courier">srv/consumer-service.js</FONT>:</P><P>&nbsp;</P><pre class="lia-code-sample language-javascript"><code>const cds = require('@sap/cds'); module.exports = async () =&gt; { const { Messages } = cds.entities('kafka.consumer.db') const messaging = await cds.connect.to('messaging') messaging.on("*", async (message) =&gt; { await INSERT.into(Messages).entries({ event: message.event, topic: message.headers['x-sap-cap-kafka-topic'], data: JSON.stringify(message.data), headers: JSON.stringify(message.headers), }) }) }</code></pre><P>&nbsp;</P><P>This basically is the complete business logic. The rest is pure configuration.</P><H4 id="toc-hId-585812298">Step 6: Configure cds-kafka</H4><P>Of course, cds-kafka also requires some basic configuration. Add the following snippet to the <FONT face="courier new,courier">package.json</FONT>.</P><P>&nbsp;</P><pre class="lia-code-sample language-json"><code>"cds": { "requires": { "messaging": { "kind": "kafka-messaging" }, "consumer": { "groupId": "cap-on-btp" }, "kafka-messaging": { "impl": "cds-kafka" } } }</code></pre><P>&nbsp;</P><P>We are not providing any credentials here to connect to Kafka, since we don't want to hard code this within the project. Instead, we will rely on a service binding for the app, that will automatically provide the information for the <FONT face="courier new,courier">kafka-messaging</FONT> service.</P><H4 id="toc-hId-389298793">Step 6: Add an mta.yaml file</H4><P>CAP has a nice set of helper tools to automatically generate fragments within an application. First, we leverage the CLI task to add an <FONT face="courier new,courier">mta.yaml</FONT> file, that will contain all the required things for the SAP BTP deployment.<BR /><BR /></P><PRE>cds add mta</PRE><H4 id="toc-hId-192785288">Step 7: Add all required service definitions</H4><P>CAP also provides additional tasks to add other important configuration fragments, to the <FONT face="courier new,courier">mta.yaml </FONT>or <FONT face="courier new,courier">package.json. </FONT>Since we want to use SAP HANA Cloud to store the messages and we need the XSUAA service and the approuter for user authentication and authorization, we also add this to our local project:<BR /><BR /></P><PRE>cds add hana</PRE><PRE>cds add xsuaa</PRE><PRE>cds add approuter</PRE><H4 id="toc-hId--3728217">Step 8: Add a user-provided service for Confluent Cloud</H4><P>Finally, we also need to add a user-provided service instance to provide the credentials for the Kafka instance running on Confluent Cloud. For this scenario, we will put the credentials directly into the <FONT face="courier new,courier">mta.yaml</FONT> file, as this is the easiest way to describe here. To make this more secure and also to support multiple stages, the user-provided service instance configuration should be provided differently in real production environments (CI/CD pipeline, mtaext-files, Terraform provider, etc.).&nbsp;<BR />Place the following in the <FONT face="courier new,courier">mta.yaml</FONT> file to create the service instance and also to create the service binding to the CAP application:</P><P>&nbsp;</P><pre class="lia-code-sample language-yaml"><code>modules: - name: kafka-consumer-app-srv ... requires: ... - name: kafka-instance resources: - name: kafka-instance type: org.cloudfoundry.user-provided-service parameters: service-tags: - kafka-messaging config: clientId: &lt;YOUR CLIENT ID&gt; brokers: - &lt;YOUR BROKER&gt;.azure.confluent.cloud:9092 ssl: true sasl: mechanism: PLAIN username: &lt;YOUR USERNAME&gt; password: &lt;YOUR PASSWORD&gt;</code></pre><P>&nbsp;</P><P>Providing the <FONT face="courier new,courier">service-tags </FONT>is important, as CAP will automatically scan the <FONT face="courier new,courier">VCAP_SERVICES</FONT> environment variables to try to match services provided within the CAP configuration (<FONT face="courier new,courier">package.json</FONT>). Our service name is <FONT face="courier new,courier">kafka-messaging</FONT> and CAP will automatically put all the VCAP config options into the service credentials.</P><H4 id="toc-hId--200241722">Step 9: Deploy everything to SAP BTP</H4><P>With everything setup and in place, we just need to build and deploy the application. While logged in to Cloud Foundry on the command line, we simply have to call:</P><PRE>mbt build<FONT face="courier new,courier"><BR /></FONT></PRE><PRE>cf deploy mta_archives/kafka-consumer-app_1.0.0.mtar</PRE><H4 id="toc-hId--396755227">Step 10: Create local events and check the consumer app</H4><P>When the app is running on SAP BTP, you can simply create another review in the local CAP review app. The event will then again being published to Confluent Cloud but now also being delivered to our CAP app running on SAP BTP.<BR />If we then call the provided OData endpoint (<FONT face="courier new,courier">https://&lt;yourapp&gt;.hana.ondemand.com/odata/v4/consumer/Messages</FONT>) we see, that a message has been created in the database containing all the event information, including the additional headers described in the <A href="https://community.sap.com/t5/technology-blogs-by-members/using-apache-kafka-for-messaging-in-the-sap-cloud-application-programming/ba-p/13970176" target="_blank">first blog post:</A></P><P>&nbsp;</P><pre class="lia-code-sample language-json"><code>{ "@odata.context": "$metadata#Messages", "value": [ { "ID": "736b45b6-ed68-4860-bd52-e10028240571", "data": "{\"subject\":\"251\",\"count\":3,\"rating\":4.33}", "event": "ReviewsService.reviewed", "headers": "{\"x-correlation-id\":\"5442c56b-86cf-4b95-bea2-3d512162ebc1\",\"x-sap-cap-tenant\":\"t1\",\"x-sap-cap-kafka-partition\":0,\"x-sap-cap-kafka-offset\":\"1\",\"x-sap-cap-kafka-timestamp:\":\"1736779408848\",\"x-sap-cap-event\":\"*\",\"x-sap-cap-kafka-topic\":\"ReviewsService.reviewed\"}", "topic": "ReviewsService.reviewed" } ] }</code></pre><P>&nbsp;</P><P>We now have a running application on SAP BTP Cloud Foundry directly connected to a Kafka instance and receives messages. While this again is a very basic example, it showcases how easy it is to setup a CAP using cds-kafka and a user-defined service to create a hybrid multi-app event-driven architecture.</P><H2 id="toc-hId-161720973">&nbsp;Verdict</H2><P>In this second blog post, we explored practical use cases and real-world applications of cds-kafka. Through the use cases, I demonstrated how cds-kafka enables CAP applications to connect directly to Kafka, bypassing the need for additional middleware layers like SAP Integration Suite or Advanced Event Mesh in scenarios where simplicity and direct access are required.<BR />I also showcased two key examples:</P><OL><LI>Local Integration:<BR />Adding cds-kafka to the sap/cloud-cap-samples repository to replace an existing messaging service, connecting to both a local Kafka instance and a cloud-hosted Kafka broker. This highlighted cds-kafka’s ability to integrate seamlessly without requiring any code changes.</LI><LI>Cloud Integration on SAP BTP:<BR />Deploying a CAP application to SAP BTP that consumes events from an external Kafka service, demonstrating the plugin’s flexibility to bridge SAP applications and external event-driven architectures in production-like environments.</LI></OL><P>These examples highlight the versatility of cds-kafka, simplifying integration, preserving CAP’s abstractions, and enabling hybrid event-driven solutions that seamlessly connect SAP and non-SAP ecosystems.</P><P>If you’re already using Kafka and looking for an easy-to-use SAP integration option, or if you simply want to experiment with CAP and Kafka, <A href="https://github.com/mikezaschka/cds-kafka" target="_blank" rel="noopener nofollow noreferrer">cds-kafka</A> is open-source and free to use. Have questions or need assistance with cds-kafka? Feel free to reach out—I’m happy to help! <span class="lia-unicode-emoji" title=":smiling_face_with_smiling_eyes:">😊</span></P> 2025-01-13T22:17:51.949000+01:00 https://community.sap.com/t5/application-development-and-automation-blog-posts/sap-community-escape-house-for-july-sap-cloud-application-event-hub-%EF%B8%8F-%EF%B8%8F/ba-p/14140520 SAP Community Escape House for July – SAP Cloud Application Event Hub āš½ļø šŸ† šŸŸļø 2025-07-01T05:00:00.022000+02:00 ajmaradiaga https://community.sap.com/t5/user/viewprofilepage/user-id/107 <P><EM>The seventh SAP Developer Challenge of the year is now available! The Developer Advocates have created the <A href="https://sap-community-escape-house.cfapps.us10.hana.ondemand.com" target="_blank" rel="noopener noreferrer">SAP Community Escape House</A> - a virtual escape house (consisting of multiple rooms) that you can play in your browser. Read on for all the details.</EM></P><P>SAP Developer Challenges are all about having fun, trying new things, and learning along the way. You can also earn a badge in the SAP Community upon successful completion. For this year, all SAP Developer Challenges will happen in the <A href="https://sap-community-escape-house.cfapps.us10.hana.ondemand.com" target="_blank" rel="noopener noreferrer">SAP Community Escape House</A>. For each challenge, we will unlock a new room in the house, and they all have a specific focus topic. Completing a challenge means successfully escaping the room by solving a series of coding-related tasks/questions. This month is all&nbsp;about events between SAP cloud applications, specifically the BTP service -&nbsp;<A href="https://discovery-center.cloud.sap/serviceCatalog/sap-event-hub/?service_plan=standard&amp;region=all&amp;commercialModel=btpea" target="_self" rel="nofollow noopener noreferrer">SAP Cloud Application Event Hub</A>.</P><H1 id="toc-hId-1604971530">How to participate</H1><P>Visit the <A href="https://sap-community-escape-house.cfapps.us10.hana.ondemand.com" target="_blank" rel="noopener noreferrer">SAP Community Escape House</A> and enter your numeric SAP Community user ID. If you don't know your user ID, go to your SAP Community profile. You can find the numeric ID at the end of the URL.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="SAP Community Escape House - Enter your SAP Community ID" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/220642i34263DBFFC0750A4/image-size/large?v=v2&amp;px=999" role="button" title="ajmaradiaga_0-1738502969813.png" alt="SAP Community Escape House - Enter your SAP Community ID" /><span class="lia-inline-image-caption" onclick="event.preventDefault();">SAP Community Escape House - Enter your SAP Community ID</span></span></P><P><BR />Once you see the SAP Community Escape House, select the SAP Cloud Application Event Hub room and start exploring it.<span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="escape-house.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/280693i9B6354158DCA586E/image-size/large?v=v2&amp;px=999" role="button" title="escape-house.png" alt="escape-house.png" /></span></P><P><SPAN>The user interface of an escape room includes the room itself as well as a terminal. You can click the objects in the room to receive tips. Like in a real (physical) escape room, you will have to try out a few things and explore the room until you receive helpful tips and, eventually, instructions. These tips and instructions are printed on the terminal next to the room. The terminal is also used to submit solutions to tasks. Read the instructions you receive carefully to understand how.<span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="event-hub-escape-room.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/280700i52C833CA5C39F3F4/image-size/large?v=v2&amp;px=999" role="button" title="event-hub-escape-room.png" alt="event-hub-escape-room.png" /></span></SPAN></P><P>&nbsp;</P><P><SPAN>If you successfully escape the room (you will know when that happens), you will receive a badge in the SAP Community. We will assign the badges once the challenge closes.<BR /><BR /></SPAN></P><H1 id="toc-hId-1408458025">The schedule</H1><P>The SAP Cloud Application Event Hub room will be unlocked on July 1st and will stay unlocked until the end of the year. However, the challenge closes on July 31st, so you must escape the room until then to qualify for a badge. Unlike the previous year, this SAP Developer Challenge does not consist of weekly sub-challenges. The next room (next challenge) will be unlocked in August.</P><P><STRONG>Good luck and happy escaping!</STRONG></P> 2025-07-01T05:00:00.022000+02:00 https://community.sap.com/t5/technology-blog-posts-by-sap/integrating-sap-successfactors-with-sap-build-process-automation-via-sap/ba-p/14176691 Integrating SAP SuccessFactors with SAP Build Process Automation via SAP Cloud Application Event Hub 2025-08-10T07:23:12.344000+02:00 acharyaw https://community.sap.com/t5/user/viewprofilepage/user-id/151637 <H1 id="toc-hId-1607922018">Overview</H1><P><A href="https://www.sap.com/india/products/technology-platform/process-automation/features.html" target="_blank" rel="noopener noreferrer">SAP Build Process Automation</A> is&nbsp;a low-code/no-code platform that enables users to automate business processes and tasks using visual drag-and-drop tools.&nbsp;It combines workflow automation, robotic process automation (RPA), and embedded AI capabilities to streamline processes and improve efficiency.&nbsp;</P><P><A href="https://help.sap.com/docs/sap-cloud-application-event-hub" target="_blank" rel="noopener noreferrer">SAP Cloud Application Event Hub</A> offers a flexible solution to distribute business events across the SAP cloud landscape. This service supports SAP's strategic event-driven architecture initiative to create a well-defined, easily consumable and extensible ecosystem for exchanging SAP business events.</P><P>We are using the Personal Data Collection scenario as a use case for this blog. In <A href="https://www.sap.com/india/products/hcm.html" target="_blank" rel="noopener noreferrer">SAP SuccessFactors</A> Onboarding, the "Personal Data Collection" event refers to&nbsp;the process where new hires provide their personal details during the onboarding process.&nbsp;This step allows new hires to validate and, in some cases, update information pre-populated from the recruiting system.&nbsp;The event is triggered when a new hire accesses the "Provide Personal Details" section within the onboarding checklist.&nbsp;Read <A href="https://help.sap.com/docs/successfactors-onboarding/implementing-onboarding/performing-personal-data-collection" target="_blank" rel="noopener noreferrer">here</A> for more details.</P><P>This blog walks through setting up integration between <A href="https://www.sap.com/india/products/hcm.html" target="_blank" rel="noopener noreferrer">SAP SuccessFactors</A>, <A href="https://www.sap.com/india/products/technology-platform/process-automation/features.html" target="_blank" rel="noopener noreferrer">SAP Build Process Automation</A>(SBPA) and <A href="https://help.sap.com/docs/sap-cloud-application-event-hub" target="_blank" rel="noopener noreferrer">SAP Cloud Application Event Hub</A>. With this setup, events like <A href="https://api.sap.com/event/sap-sf-processStep-v1/overview" target="_blank" rel="noopener noreferrer">onboarding</A> process step in SuccessFactors can trigger workflows in SBPA—enabling truly event-driven business automation. For more information on Success Factors events in Business Accelerator Hub read <A href="https://api.sap.com/search?searchterm=success%20factor&amp;tab=Event%20Objects&amp;$refinedBy=true&amp;$type=(%22Event%20Object%22,%22SAP%20Event%20Package%22)" target="_blank" rel="noopener noreferrer">here</A>.</P><P>The integration support was released from SAP Build in Q2 2025. For more details refer to the YouTube video <A href="https://www.youtube.com/watch?v=gaToaQGpPE8" target="_blank" rel="noopener nofollow noreferrer">Whats New in SAP Build – Q2 2025 Highlights</A> and Blog <A href="https://community.sap.com/t5/application-development-and-automation-blog-posts/what-s-new-in-sap-build-q2-2025-release-highlights/ba-p/14142487" target="_blank">What’s New in SAP Build Q2 2025 - Release Highlights</A>.</P><P>Note : Integration of SAP Build Process Automation with SAP S/4HANA Public Cloud Edition and SAP S/4HANA Private Cloud Edition is also available with Event Mesh and Advanced Event Mesh. Here are the reference blogs <A href="https://community.sap.com/t5/technology-blog-posts-by-sap/event-mesh-and-sap-s-4hana-public-cloud-setup-for-sap-build-process/ba-p/13791480" target="_blank">Event Mesh and SAP S/4HANA Public Cloud Setup for SAP Build Process Automation</A> and <A href="https://community.sap.com/t5/technology-blog-posts-by-sap/configure-sap-enterprise-messaging-for-sap-s-4hana-on-premise-2020-via/ba-p/13468533" target="_blank">Configure SAP Enterprise Messaging for SAP S/4HANA On-Premise 2020 via Service Key</A>.</P><H1 id="toc-hId-1411408513">Prerequisites</H1><P>Before you begin, make sure the following are available:</P><UL><UL><LI>SAP BTP <STRONG>Global and Subaccount Account access as administrator</STRONG></LI><LI>Check that the Active BTP <STRONG>Subaccount</STRONG> has SAP Build Process Automation Subscription for standard plan.</LI></UL></UL><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="acharyaw_0-1754801879226.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/298916iE9F934DC11729082/image-size/large?v=v2&amp;px=999" role="button" title="acharyaw_0-1754801879226.png" alt="acharyaw_0-1754801879226.png" /></span></P><UL><UL><LI>Valid <STRONG>SAP SuccessFactors CLD Tenant ID</STRONG>&nbsp;</LI></UL></UL><H2 id="toc-hId-1343977727">Step 1: Set Up Entitlements &amp; Subscriptions</H2><P>In this step we will setup the required entitlements and subscriptions. We will add "SAP Cloud Application Event Hub" subscription to BTP Subaccount if not already added.</P><P>Go to BTP Subaccount -&gt; Entitlements -&gt; Edit</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="acharyaw_1-1754801879238.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/298918iB70ED6FBE3259585/image-size/large?v=v2&amp;px=999" role="button" title="acharyaw_1-1754801879238.png" alt="acharyaw_1-1754801879238.png" /></span></P><P>Click on "Add Service Plans"</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="acharyaw_2-1754801879246.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/298917i7A713300FBAD8C21/image-size/large?v=v2&amp;px=999" role="button" title="acharyaw_2-1754801879246.png" alt="acharyaw_2-1754801879246.png" /></span></P><P>Search the services with keyword "event" and select "SAP Cloud Application Hub" service , then choose the service plan "standard" and click on "Add 1 Service Plan"</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="acharyaw_3-1754801879254.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/298920i921A182FFB16435E/image-size/large?v=v2&amp;px=999" role="button" title="acharyaw_3-1754801879254.png" alt="acharyaw_3-1754801879254.png" /></span></P><P>&nbsp;Click Save.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="acharyaw_4-1754801879263.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/298921i660300675BF9F1FC/image-size/large?v=v2&amp;px=999" role="button" title="acharyaw_4-1754801879263.png" alt="acharyaw_4-1754801879263.png" /></span></P><P>The SAP Cloud Application Event Hub Service is added in sometime. This can be verified also from the BTP Subaccount -&gt; "Services" - &gt; "Service Marketplace" -&gt; SAP Cloud Application Event Hub tile.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="acharyaw_5-1754801879270.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/298919iF9A73DE789532396/image-size/large?v=v2&amp;px=999" role="button" title="acharyaw_5-1754801879270.png" alt="acharyaw_5-1754801879270.png" /></span></P><P>Create a new Subscription by clicking on the "SAP Cloud Application Event Hub" tile -&gt; Create button.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="acharyaw_6-1754801879282.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/298923iC594E39F4E5792FF/image-size/large?v=v2&amp;px=999" role="button" title="acharyaw_6-1754801879282.png" alt="acharyaw_6-1754801879282.png" /></span></P><P>Select the Service ā€œSAP Cloud Application Event Hubā€ and Plan ā€œstandardā€ and click on Create.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="acharyaw_7-1754801879286.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/298922i28228E02B233B22E/image-size/large?v=v2&amp;px=999" role="button" title="acharyaw_7-1754801879286.png" alt="acharyaw_7-1754801879286.png" /></span></P><P>The subscription will be created in sometime. Click on ā€œView Subscriptionā€.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="acharyaw_8-1754801879297.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/298924iFE0E7FDE49F03AEF/image-size/large?v=v2&amp;px=999" role="button" title="acharyaw_8-1754801879297.png" alt="acharyaw_8-1754801879297.png" /></span></P><P>&nbsp;In the BTP Subaccount ā€œInstances and Subscriptionsā€ -&gt; Note that ā€œSAP Cloud Application Event Hubā€ subscription is added with status as subscribed.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="acharyaw_9-1754801879307.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/298925i29A573C4E2E84399/image-size/large?v=v2&amp;px=999" role="button" title="acharyaw_9-1754801879307.png" alt="acharyaw_9-1754801879307.png" /></span></P><UL><UL><LI>Add all the roles for the user for enterprise messaging. Refer to the details <A href="https://help.sap.com/docs/event-mesh/event-mesh/user-roles-for-event-mesh" target="_blank" rel="noopener noreferrer">here</A>.</LI></UL></UL><H2 id="toc-hId-1147464222">Step 2: Register Your SuccessFactors System</H2><P>In this step we will register the SuccessFactors system with the SAP BTP Subaccount, if its not already added. This step is needed to be able to discover events based on the connected system in the SAP Build. It enables SAP Cloud Application Event Hub to discover and communicate with your SFSF system.</P><UL><UL><LI>Go to <STRONG>Systems</STRONG> in <STRONG>System Landscape in BTP Global Account</STRONG></LI><LI>Switch to <STRONG>Service Owner View</STRONG></LI><LI>Click on ā€œAdd Systemā€.</LI><UL><LI>Select System Type as Success Factors</LI><LI>Enter a valid system <STRONG>name </STRONG>or your <STRONG>CLD Tenant ID</STRONG> from SuccessFactors</LI><LI>Click on <STRONG>Add</STRONG></LI></UL></UL></UL><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="acharyaw_10-1754801879313.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/298926i7FC573F16DC64010/image-size/large?v=v2&amp;px=999" role="button" title="acharyaw_10-1754801879313.png" alt="acharyaw_10-1754801879313.png" /></span></P><UL><UL><LI>Confirm the system appears in the list</LI></UL></UL><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="acharyaw_11-1754801879321.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/298927i783B46C602238090/image-size/large?v=v2&amp;px=999" role="button" title="acharyaw_11-1754801879321.png" alt="acharyaw_11-1754801879321.png" /></span></P><H2 id="toc-hId-950950717">Step 3: Create Eventing Formation</H2><P><SPAN>Eventing between SAP Cloud systems&nbsp;enables decoupled communication by exchanging events between applications.&nbsp;This approach allows systems to react to changes in other systems without direct dependencies, promoting flexibility and scalability.&nbsp;</SPAN></P><UL><UL><LI>&nbsp;Navigate to <STRONG>Global Account </STRONG><STRONG>→</STRONG><STRONG> System Landscape </STRONG><STRONG>→</STRONG><STRONG> Formations</STRONG></LI></UL></UL><UL><UL><LI>In <STRONG>Customer View</STRONG> -&gt; Click <STRONG>Create Formation</STRONG></LI></UL></UL><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="acharyaw_12-1754801879327.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/298928i5E1FBAAA977791D7/image-size/large?v=v2&amp;px=999" role="button" title="acharyaw_12-1754801879327.png" alt="acharyaw_12-1754801879327.png" /></span></P><UL><UL><LI>Select: Eventing between SAP Cloud Systems</LI></UL></UL><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="acharyaw_13-1754801879331.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/298930i1421EC2E57E4B371/image-size/large?v=v2&amp;px=999" role="button" title="acharyaw_13-1754801879331.png" alt="acharyaw_13-1754801879331.png" /></span></P><UL><UL><LI>Add the following systems in the <STRONG>Include Systems</STRONG> step of the wizard (IMPORTANT NOTE: All of them should be in the same BTP Subaccount):</LI><UL><LI>Your registered <STRONG>SAP</STRONG> <STRONG>SuccessFactors system</STRONG></LI><LI>The <STRONG>SAP</STRONG> <STRONG>Cloud Application</STRONG> <STRONG>Event Hub</STRONG> service (might also reflect as Event Broker)</LI><LI>Your <STRONG>SAP Build Process Automation</STRONG> tenant</LI></UL><LI>Review the selection</LI></UL></UL><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="acharyaw_14-1754801879337.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/298929i4FF8AA3D53C19D8A/image-size/large?v=v2&amp;px=999" role="button" title="acharyaw_14-1754801879337.png" alt="acharyaw_14-1754801879337.png" /></span></P><UL><UL><LI>Click Create and check that the formation is created successfully</LI></UL></UL><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="acharyaw_15-1754801879344.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/298931i005CDB8A951AA9CB/image-size/large?v=v2&amp;px=999" role="button" title="acharyaw_15-1754801879344.png" alt="acharyaw_15-1754801879344.png" /></span></P><H2 id="toc-hId-754437212">Step 4: Add Integration Dependency</H2><P><SPAN>In the SAP BTP cockpit System Landscape, you need to define integration dependencies that describe the events you need to integrate with another system for a given scenario.</SPAN></P><UL><UL><LI>&nbsp;Select the Formation created in the above step</LI></UL></UL><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="acharyaw_16-1754801879349.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/298933i158DB8BE3191E18F/image-size/large?v=v2&amp;px=999" role="button" title="acharyaw_16-1754801879349.png" alt="acharyaw_16-1754801879349.png" /></span></P><P>Navigate to <STRONG>SAP Build Process Automation </STRONG><STRONG>→</STRONG> <STRONG>Open in System Page</STRONG></P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="acharyaw_17-1754801879356.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/298932i86718CB408DBEDD3/image-size/large?v=v2&amp;px=999" role="button" title="acharyaw_17-1754801879356.png" alt="acharyaw_17-1754801879356.png" /></span></P><UL><UL><LI>Click <STRONG>Integration Dependencies &nbsp;-&gt; Add </STRONG></LI></UL></UL><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="acharyaw_18-1754801879363.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/298936i89C75327A0785282/image-size/large?v=v2&amp;px=999" role="button" title="acharyaw_18-1754801879363.png" alt="acharyaw_18-1754801879363.png" /></span></P><UL><UL><LI>Fill in:</LI><UL><LI><STRONG>Template</STRONG></LI></UL></UL></UL><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="acharyaw_19-1754801879368.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/298935iEBB7E5586687EB75/image-size/large?v=v2&amp;px=999" role="button" title="acharyaw_19-1754801879368.png" alt="acharyaw_19-1754801879368.png" /></span></P><UL><UL><UL><LI><STRONG>Name:</STRONG> e.g., SF_Eventing</LI><LI><STRONG>Publishing System Namespace:</STRONG>sap.sf</LI><LI><STRONG>Event Type:</STRONG> (paste exactly from SF docs)</LI></UL></UL></UL><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="acharyaw_20-1754801879373.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/298934i223238ED02209503/image-size/large?v=v2&amp;px=999" role="button" title="acharyaw_20-1754801879373.png" alt="acharyaw_20-1754801879373.png" /></span></P><UL><UL><LI><STRONG>Review</STRONG> and <STRONG>Add</STRONG></LI></UL></UL><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="acharyaw_21-1754801879379.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/298938iBB80B5260656061E/image-size/large?v=v2&amp;px=999" role="button" title="acharyaw_21-1754801879379.png" alt="acharyaw_21-1754801879379.png" /></span></P><P>Check that the Integration Dependency is added</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="acharyaw_22-1754801879383.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/298939i8F609AA824D66EF7/image-size/large?v=v2&amp;px=999" role="button" title="acharyaw_22-1754801879383.png" alt="acharyaw_22-1754801879383.png" /></span></P><H2 id="toc-hId-557923707">&nbsp;Step 5: Create Integration Formation</H2><P>The formation type "Integration with SAP Build" refers to&nbsp;a configuration within SAP BTP (Business Technology Platform) that enables the integration of SAP systems with the SAP Build suite, specifically for scenarios like process automation and application development.&nbsp;This formation type is used when you want to connect your SAP system (e.g., SAP Success Factors) to services like&nbsp;SAP Build Process Automation or other SAP Build solutions.&nbsp;</P><UL><UL><LI>Navigate to <STRONG>Global Account </STRONG><STRONG>→</STRONG><STRONG> System Landscape </STRONG><STRONG>→</STRONG><STRONG> Formations -&gt; </STRONG><STRONG>Customer View</STRONG> -&gt; Click <STRONG>Create Formation</STRONG></LI></UL></UL><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="acharyaw_23-1754801879388.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/298937i13C0F8AB78A1E4F9/image-size/large?v=v2&amp;px=999" role="button" title="acharyaw_23-1754801879388.png" alt="acharyaw_23-1754801879388.png" /></span></P><UL><UL><LI>Give a formation name and Select: Integration with SAP Build</LI></UL></UL><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="acharyaw_24-1754801879391.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/298940i6EF64426512033D9/image-size/large?v=v2&amp;px=999" role="button" title="acharyaw_24-1754801879391.png" alt="acharyaw_24-1754801879391.png" /></span></P><UL><UL><LI>Add the following systems in the <STRONG>Include Systems</STRONG> step of the wizard (IMPORTANT NOTE: All of them should be in the same BTP Subaccount):</LI><UL><LI>Your registered <STRONG>SAP</STRONG> <STRONG>SuccessFactors system</STRONG></LI><LI>Your <STRONG>SAP Build </STRONG>tenant</LI></UL><LI>Review the selection</LI></UL></UL><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="acharyaw_25-1754801879397.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/298941i03149EF0D9EE0EBE/image-size/large?v=v2&amp;px=999" role="button" title="acharyaw_25-1754801879397.png" alt="acharyaw_25-1754801879397.png" /></span></P><UL><UL><LI>&nbsp;Click Create and check that the formation is created successfully</LI></UL></UL><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="acharyaw_26-1754801879403.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/298942i128610664449BEB3/image-size/large?v=v2&amp;px=999" role="button" title="acharyaw_26-1754801879403.png" alt="acharyaw_26-1754801879403.png" /></span></P><H2 id="toc-hId-361410202">Step 6: Validate in Event Hub App</H2><P>As SAP Build is a consumer of events, you need manage event subscriptions in the SAP Cloud Application Event Hub application.&nbsp;Integration dependencies defined in the System Landscape become available as event subscriptions.</P><P>Pre-requisite : Assign relevant <STRONG>Event Broker Roles</STRONG> to your user, if roles were just assigned, re-login.</P><UL><UL><LI>Open the <STRONG>Event Hub Application</STRONG></LI></UL></UL><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="acharyaw_27-1754801879410.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/298943i13DFDE94CAD66603/image-size/large?v=v2&amp;px=999" role="button" title="acharyaw_27-1754801879410.png" alt="acharyaw_27-1754801879410.png" /></span></P><P>&nbsp;Click on ā€œAll Available Subscriptionsā€ and select the subscription name that we have created in the above step.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="acharyaw_28-1754801879416.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/298945i65EBF14011F76310/image-size/large?v=v2&amp;px=999" role="button" title="acharyaw_28-1754801879416.png" alt="acharyaw_28-1754801879416.png" /></span></P><P>&nbsp;Enable the SFSF event subscription.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="acharyaw_29-1754801879424.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/298944i2E4686F5527463AD/image-size/large?v=v2&amp;px=999" role="button" title="acharyaw_29-1754801879424.png" alt="acharyaw_29-1754801879424.png" /></span></P><P>Click on Enable.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="acharyaw_30-1754801879431.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/298947iBAA54E502412E7CD/image-size/large?v=v2&amp;px=999" role="button" title="acharyaw_30-1754801879431.png" alt="acharyaw_30-1754801879431.png" /></span></P><P>Check that the Subscription status is ā€œActiveā€.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="acharyaw_31-1754801879438.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/298948iF98467022659B047/image-size/large?v=v2&amp;px=999" role="button" title="acharyaw_31-1754801879438.png" alt="acharyaw_31-1754801879438.png" /></span></P><H2 id="toc-hId-164896697">Step 7: Create and publish an events project</H2><P>Now you need to create an event project from the SAP Build Lobby which will be published to Library so that we can use it as an event trigger in the SBPA process. Follow the steps mentioned below:</P><UL><LI>Create an event project. Go to the SAP BTP Sub Account -&gt; Lobby -&gt; Connectors -&gt;Events -&gt;Create.</LI></UL><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="acharyaw_32-1754801879445.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/298946i4C12B630BDA5395C/image-size/large?v=v2&amp;px=999" role="button" title="acharyaw_32-1754801879445.png" alt="acharyaw_32-1754801879445.png" /></span></P><UL><LI><SPAN>As the Success Factors system and BTP Subaccount are now connected and we will be able to choose events based on the connected systems, choose <STRONG>Unified</STRONG> <STRONG>Customer Landscape</STRONG>.</SPAN></LI></UL><P><SPAN>Note: Read <A href="https://community.sap.com/t5/technology-blog-posts-by-sap/discovering-business-events-from-lobby-for-sap-build-process-automation/ba-p/13873261" target="_blank">Discovering Business Events from Lobby for SAP Build Process Automation : Manage Credit Memo Request</A> for more ways to create Event Projects from SAP Build Lobby.</SPAN></P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="acharyaw_33-1754801879452.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/298949i486BE2B0BDF6F647/image-size/large?v=v2&amp;px=999" role="button" title="acharyaw_33-1754801879452.png" alt="acharyaw_33-1754801879452.png" /></span></P><P><SPAN>Select <STRONG>SAP SuccessFactors Onboarding Events</STRONG>.</SPAN></P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="acharyaw_34-1754801879467.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/298951i6D17C51C9D4D18F0/image-size/large?v=v2&amp;px=999" role="button" title="acharyaw_34-1754801879467.png" alt="acharyaw_34-1754801879467.png" /></span></P><P>Select <STRONG>Onboarding Process Step</STRONG>.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="acharyaw_35-1754801879475.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/298950iFEF78987EC875DB5/image-size/large?v=v2&amp;px=999" role="button" title="acharyaw_35-1754801879475.png" alt="acharyaw_35-1754801879475.png" /></span></P><P><SPAN>Review all the events and payloads and click on <STRONG>Add</STRONG>.</SPAN></P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="acharyaw_36-1754801879485.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/298953i54F6E23821B97BCA/image-size/large?v=v2&amp;px=999" role="button" title="acharyaw_36-1754801879485.png" alt="acharyaw_36-1754801879485.png" /></span></P><P><SPAN>Create the event project. Release and publish it to the library. Note : Publishing is mandatory to be able to use the events as event trigger in any SBPA Process.</SPAN></P><P><SPAN>After the event project is created successfully, its listed in the Lobby.</SPAN></P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="acharyaw_37-1754801879492.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/298952i5418C610D2BDD622/image-size/large?v=v2&amp;px=999" role="button" title="acharyaw_37-1754801879492.png" alt="acharyaw_37-1754801879492.png" /></span></P><H2 id="toc-hId--31616808">Step 8: Create and Deploy a Sample process in SAP Build Process Automation</H2><UL><UL><LI>Go to <STRONG>SAP Build Process Automation from the BTP Subaccount</STRONG></LI><LI>Create a new <STRONG>Process Project, </STRONG>&nbsp;the empty process would look like the following.</LI></UL></UL><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="acharyaw_38-1754801879503.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/298954i0A6069534DBA36EA/image-size/large?v=v2&amp;px=999" role="button" title="acharyaw_38-1754801879503.png" alt="acharyaw_38-1754801879503.png" /></span></P><UL><UL><LI>Click on Add a trigger -&gt; &nbsp;ā€œWait for an Eventā€ from the trigger options to add an event trigger to the project.</LI></UL></UL><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="acharyaw_39-1754801879505.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/298955iE7E95100AA278668/image-size/large?v=v2&amp;px=999" role="button" title="acharyaw_39-1754801879505.png" alt="acharyaw_39-1754801879505.png" /></span></P><UL><LI>Search and Add the required event from the library.</LI></UL><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="acharyaw_40-1754801879518.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/298956i590D19355B09ECE0/image-size/large?v=v2&amp;px=999" role="button" title="acharyaw_40-1754801879518.png" alt="acharyaw_40-1754801879518.png" /></span></P><P>After creation of event trigger check that the event trigger is added and the Outputs tab shows the event payload. &nbsp;This payload can be further used in the business process for further processing like approvals, decisions, subprocesses , actions etc.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="acharyaw_41-1754801879523.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/298957i74D5FC0F3DDB27EE/image-size/large?v=v2&amp;px=999" role="button" title="acharyaw_41-1754801879523.png" alt="acharyaw_41-1754801879523.png" /></span></P><UL><UL><LI>Add a simple action (e.g., approval or email) or any set of actions required for your business process. A sample process could look like the following.</LI></UL></UL><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="acharyaw_42-1754801879528.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/298960i5909E48EFFDCFFE6/image-size/large?v=v2&amp;px=999" role="button" title="acharyaw_42-1754801879528.png" alt="acharyaw_42-1754801879528.png" /></span></P><UL><UL><LI>Release and Deploy the process by selecting appropriate environment.</LI><LI>Test by triggering the event from Success Factors.</LI></UL></UL><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="acharyaw_43-1754801879531.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/298958i9F6F307E1E34F0FD/image-size/large?v=v2&amp;px=999" role="button" title="acharyaw_43-1754801879531.png" alt="acharyaw_43-1754801879531.png" /></span></P><P>The below step confirms that the Personal Data Collection is completed and this event should now trigger our deployed SBPA Process.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="acharyaw_44-1754801879534.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/298959i87CB7F93F040C87F/image-size/large?v=v2&amp;px=999" role="button" title="acharyaw_44-1754801879534.png" alt="acharyaw_44-1754801879534.png" /></span></P><P>&nbsp;Go to SAP BTP Subaccount -&gt; Lobby -&gt; Monitoring -&gt; Process and Workflow Instances and check that the process is in Running status.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="acharyaw_45-1754801879539.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/298962i9354DC366D3E0C58/image-size/large?v=v2&amp;px=999" role="button" title="acharyaw_45-1754801879539.png" alt="acharyaw_45-1754801879539.png" /></span></P><P>&nbsp;You can open the process instance to see further details. For example, in the below logs the task is waiting to be approved in My Inbox.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="acharyaw_46-1754801879547.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/298963i1D724E365EEFEAF2/image-size/large?v=v2&amp;px=999" role="button" title="acharyaw_46-1754801879547.png" alt="acharyaw_46-1754801879547.png" /></span></P><P>&nbsp;Click My Inbox to review and approve the task.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="acharyaw_47-1754801879550.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/298961i02E9ED39F127FB36/image-size/large?v=v2&amp;px=999" role="button" title="acharyaw_47-1754801879550.png" alt="acharyaw_47-1754801879550.png" /></span></P><P>&nbsp;Note that the simple approval process based on SuccessFactors event is completed.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="acharyaw_48-1754801879555.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/298964iA31DAC0D8BE49A06/image-size/large?v=v2&amp;px=999" role="button" title="acharyaw_48-1754801879555.png" alt="acharyaw_48-1754801879555.png" /></span></P><P>&nbsp;Below is the sample Logs view for the completed process instance.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="acharyaw_49-1754801879565.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/298965i08A5833F64BF6CA4/image-size/large?v=v2&amp;px=999" role="button" title="acharyaw_49-1754801879565.png" alt="acharyaw_49-1754801879565.png" /></span></P><H2 id="toc-hId-119124044">Troubleshooting Tips</H2><UL><UL><LI>If systems aren’t showing in formations: double-check region/subaccount match</LI><LI>Event Hub app not showing dependencies? Check your user role + re-login</LI><LI>Not receiving events? Confirm SuccessFactors is emitting the specific event (some are tenant-configurable). Also check the section Lobby -&gt; Monitoring -&gt; Acquired Events -&gt; Business Events to confirm that business events are received in SBPA.</LI></UL></UL><H1 id="toc-hId-216013546">Conclusion</H1><P>You’ve now connected SAP SuccessFactors to SAP Build via SAP Cloud Application Event Hub! This architecture lays the groundwork for robust, event-driven automations—like onboarding workflows—all without writing complex integration code or going through complicated setup process.</P><H1 id="toc-hId-19500041">References</H1><P>Please refer to the below blogs for event driven architecture in SAP Build Process Automation:</P><P><SPAN><A href="https://community.sap.com/t5/technology-blog-posts-by-sap/business-event-triggers-in-sap-build-process-automation-for-sap-s-4hana/ba-p/13572223" target="_blank">Business Event Triggers in SAP Build Process Automation for SAP S/4HANA Cloud : The Customer Return (BKP) Use Case</A></SPAN></P><P><SPAN><A href="https://community.sap.com/t5/technology-blog-posts-by-sap/business-event-triggers-in-sap-build-process-automation-for-sap-s-4hana/ba-p/13573138" target="_blank">Business Event Triggers in SAP Build Process Automation for SAP S/4HANA: Manage Billing Block on Sales Orders</A></SPAN></P><P><SPAN><A href="https://community.sap.com/t5/technology-blog-posts-by-sap/business-event-triggers-in-sap-build-process-automation-for-sap-s-4hana/ba-p/13574142" target="_blank">Business Event Triggers in SAP Build Process Automation for SAP S/4HANA: Manage Credit Block on Sales Orders</A></SPAN></P><P><SPAN><A href="https://community.sap.com/t5/technology-blog-posts-by-sap/discovering-business-events-from-lobby-for-sap-build-process-automation/ba-p/13873261" target="_blank">Discovering Business Events from Lobby for SAP Build Process Automation : Manage Credit Memo Request</A></SPAN></P><P><SPAN><A href="https://community.sap.com/t5/technology-blogs-by-sap/event-mesh-and-sap-s-4hana-public-cloud-setup-for-sap-build-process/ba-p/13791480" target="_blank">Event Mesh and SAP S/4HANA Public Cloud Setup for SAP Build Process Automation</A></SPAN> <SPAN><BR /></SPAN><A href="https://community.sap.com/t5/enterprise-resource-planning-blogs-by-sap/incorporating-custom-events-from-lobby-into-sap-build-process-automation/ba-p/13859601" target="_blank">Incorporating Custom Events from Lobby into SAP Build Process Automation</A><BR /><BR /></P><P>Thanks to my co-author&nbsp;<a href="https://community.sap.com/t5/user/viewprofilepage/user-id/191705">@emanuil_ivanov</a>&nbsp; for his valuable support and collaboration for the content of this blog !</P> 2025-08-10T07:23:12.344000+02:00 https://community.sap.com/t5/integration-blog-posts/sap-integration-suite-what-s-new-in-q3-2025/ba-p/14243767 SAP Integration Suite: What’s New in Q3/2025 2025-10-16T09:38:05.160000+02:00 MaiaraEllwanger https://community.sap.com/t5/user/viewprofilepage/user-id/58 <P><SPAN>Another quarter has come to an end and it’s time for us to review the most recent updates and improvements delivered to SAP Integration Suite. Whether you’re an integration architect, developer, or business leader, these new features are designed to help you get the most out of your hybrid landscape. Read on to discover what’s new and how these enhancements can support your organisation’s integration goals.</SPAN></P><H2 id="toc-hId-1762774826"><STRONG><SPAN>Message status overview monitoring for large tenants</SPAN></STRONG></H2><P><SPAN>One awaited featured has been released to the Cloud Integration capability of SAP Integration Suite to improve </SPAN><SPAN><A href="https://help.sap.com/docs/integration-suite/sap-integration-suite/monitor-message-status-overview" target="_blank" rel="noopener noreferrer">Message Status Overview</A></SPAN> <SPAN>monitoring and support larger time intervals through data preaggregation. Now the monitoring option can be utilized for extended periods on tenants with a high volume of message processing logs. </SPAN></P><H1 id="toc-hId-1437178602"><STRONG><SPAN>Artificial Intelligence</SPAN></STRONG></H1><H2 id="toc-hId-1369747816"><STRONG><SPAN>AI-based integration flow generation with mediation steps</SPAN></STRONG></H2><P><SPAN>Earlier this year, the generation of integration flows with the assistance of AI was made available to customers. This enable users to generate an integration flow with sender and receiver systems based on a scenario description provided in natural language. You can read more about it </SPAN><SPAN><A href="https://community.sap.com/t5/technology-blog-posts-by-sap/sap-integration-suite-generative-ai-based-integration-flow-generation/ba-p/13761166" target="_blank">here</A></SPAN><SPAN>. </SPAN></P><P><SPAN>In Q3/2025 we have enhanced this feature to include additional mediation steps. This means that now, users can provide even more detailed scenarios and the tool identifies the details and generates a comprehensive integration flow with the described components, systems, and actions. Get a first glimpse into how to use this feature in the blog post: </SPAN><SPAN><A href="https://community.sap.com/t5/technology-blog-posts-by-sap/sap-integration-suite-generative-ai-based-integration-flow-generation-with/ba-p/14196606" target="_blank">SAP Integration Suite – Generative AI based Integration Flow Generation with Mediation Steps</A></SPAN><SPAN>.</SPAN></P><P><SPAN><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="DeepakGDeshpande_1-1756369510610.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/327915i344A889BB67CE2B9/image-size/large/is-moderation-mode/true?v=v2&amp;px=999" role="button" title="DeepakGDeshpande_1-1756369510610.png" alt="DeepakGDeshpande_1-1756369510610.png" /></span></SPAN></P><H1 id="toc-hId-1044151592">&nbsp;<STRONG>Business Accelerators</STRONG></H1><H2 id="toc-hId-976720806"><STRONG><SPAN>Joule copilot-based conversational search and discovery of content</SPAN></STRONG></H2><P>Joule has arrived at the SAP Business Accelerator Hub in Q3 to help users find the right content throughconversational context-based search. The Joule-based discovery provides user guidance to search different artifacts and access cohesive information for other relevant sources, such as help documentation.</P><P><STRONG>Note</STRONG>: The feature is currently in the beta phase and you can find more details on availability <A href="https://help.sap.com/docs/business-accelerator-hub/sap-business-accelerator-hub/discover-and-explore-sap-business-accelerator-hub?locale=en-US#joule-(beta)" target="_blank" rel="noopener noreferrer">here</A>.<SPAN>&nbsp;&nbsp;</SPAN></P><H1 id="toc-hId-651124582"><STRONG><SPAN>Connectivity and Adapters</SPAN></STRONG></H1><P>The latest releases of SAP Integration Suite introduced a new array of adapters and connectors designed to streamline and enhance connectivity, improve data flow, and foster a more integrated digital landscape for businesses leveraging SAP solutions.</P><H2 id="toc-hId-583693796"><STRONG><SPAN>AI adapter</SPAN></STRONG></H2><P>The recently released AI adapter for SAP Integration Suite functions as a receiver adapter and accelerates connectivity to the Generative AI Hub (SAP AI Core) and other AI providers, as needed by customer (BYOM).</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="Screenshot 2025-10-07 at 13.28.13.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/327914iE6A9DCB86583A42B/image-size/large/is-moderation-mode/true?v=v2&amp;px=999" role="button" title="Screenshot 2025-10-07 at 13.28.13.png" alt="Screenshot 2025-10-07 at 13.28.13.png" /></span></P><P>&nbsp;<SPAN>The benefit of this adapter is that it increases connectivity options to integrate with both SAP and third-party systems and applications. How it works: after configuration, data exchange is performed at runtime where the SAP Integration Suite tenant sends the operation request to GenAIHub. The AI Adapter works on the request and sends the data back to the SAP Integration Suite tenant.</SPAN></P><P>Find the <SPAN><A href="https://hub.sap.com/package/AIAdapterforSAPIntegrationSuite/overview" target="_blank" rel="noopener noreferrer">AI Adapter at SAP Business Accelerator Hub</A>, read the <A href="https://help.sap.com/docs/integration-suite/sap-integration-suite/ai-adapter" target="_blank" rel="noopener noreferrer">help documentation</A>, and check out the short demo below:</SPAN></P><P><SPAN><div class="video-embed-center video-embed"><iframe class="embedly-embed" src="https://cdn.embedly.com/widgets/media.html?src=https%3A%2F%2Fwww.youtube.com%2Fembed%2FsCJ6PsskeI8%3Fstart%3D273%26feature%3Doembed%26start%3D273&amp;display_name=YouTube&amp;url=https%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3DsCJ6PsskeI8&amp;image=https%3A%2F%2Fi.ytimg.com%2Fvi%2FsCJ6PsskeI8%2Fhqdefault.jpg&amp;type=text%2Fhtml&amp;schema=youtube" width="400" height="225" scrolling="no" title="Whats New in SAP BTP: Top New Features | Joule Studio Skill Builder | Q3 2025" frameborder="0" allow="autoplay; fullscreen; encrypted-media; picture-in-picture;" allowfullscreen="true"></iframe></div></SPAN></P><H2 id="toc-hId-387180291"><STRONG><SPAN>Further adapters released in Q3 include:</SPAN></STRONG></H2><TABLE border="1" width="100%"><TBODY><TR><TD width="33.333333333333336%"><SPAN>IBM MQ adapter using JMS protocol: client certificate support</SPAN></TD><TD width="33.333333333333336%"><SPAN>Supports Client Certificate based authentication for JMS Variants. A new version 1.3.0 of the IBM MQ adapter supports Client Certificate based authentication for JMS Variants.</SPAN></TD><TD width="33.333333333333336%"><SPAN><A href="https://help.sap.com/docs/integration-suite/sap-integration-suite/configure-ibm-mq-jms-receiver-adapter" target="_blank" rel="noopener noreferrer">- Configure the IBM MQ JMS Receiver Adapter</A></SPAN></TD></TR><TR><TD width="33.333333333333336%"><SPAN>IBM MQ adapter using JMS protocol: client certificate support</SPAN></TD><TD width="33.333333333333336%"><SPAN>Supports On-Premise Connectivity via Cloud Connector for JMS Variants. A new version 1.4.0 of the IBM MQ adapter supports On-Premise Connectivity via Cloud Connector for JMS Variants.</SPAN></TD><TD width="33.333333333333336%"><P class=""><A href="https://help.sap.com/docs/integration-suite/sap-integration-suite/configure-ibm-mq-jms-sender-adapter" target="_blank" rel="noopener noreferrer">- Configure the IBM MQ JMS Sender Adapter</A></P><SPAN><A href="https://help.sap.com/docs/integration-suite/sap-integration-suite/configure-ibm-mq-jms-receiver-adapter" target="_blank" rel="noopener noreferrer">- Configure the IBM MQ JMS Receiver Adapter</A></SPAN></TD></TR><TR><TD width="33.333333333333336%"><SPAN>BigCommerce adapter</SPAN></TD><TD width="33.333333333333336%"><SPAN>Facilitates the connectivity to BigCommerce GraphQL &amp; REST Admin APIs, accelerates the implementation time and reduces complexity of connecting to BigCommerce. This adapter is available on SAP Business Accelerator Hub.</SPAN></TD><TD width="33.333333333333336%"><P class=""><A href="https://hub.sap.com/package/BigCommerceAdapter/overview" target="_blank" rel="noopener noreferrer"><SPAN class=""><SPAN>- BigCommerce Adapter at SAP Business Accelerator Hub</SPAN></SPAN></A></P><SPAN><A href="https://help.sap.com/docs/integration-suite/sap-integration-suite/bigcommerce-receiver-adapter" target="_blank" rel="noopener noreferrer">- BigCommerce Receiver Adapter</A></SPAN></TD></TR></TBODY></TABLE><P><span class="lia-unicode-emoji" title=":rocket:">šŸš€</span><span class="lia-unicode-emoji" title=":rocket:">šŸš€</span>Discover the <A href="https://community.sap.com/t5/integration-blog-posts/new-partner-content-on-sap-business-accelerator-hub-q3-25/ba-p/14232215" target="_self">latest content packages</A>, including APIs and Integrations, released on the SAP Business Accelerator Hub by our partners in Q3 2025. These releases come with high-level details to help you understand their features and benefits.</P><H1 id="toc-hId-61584067"><STRONG><SPAN>API-Centric &amp; Event-Driven Integrations</SPAN></STRONG></H1><H2 id="toc-hId--5846719"><STRONG><SPAN>Support for reusable API artifacts in Edge Integration Cell</SPAN></STRONG></H2><P>Customers can now leverage components, endpoints, and services across multiple applications, projects, or contexts, without having to perform significant adaptations. The reusability of API artifacts enables companies to implement a centralized security and traffic management system for exposed APIs. It not only enhances compliance and reduces misconfiguration risks but also significantly lowers both the total cost of development and ownership by eliminating redundant configurations and promoting the reuse of existing API artifacts, which means additional API calls are avoided, leading to cost savings. <SPAN><A href="https://help.sap.com/docs/integration-suite/sap-integration-suite/reusable-api-artifact?locale=en-US" target="_blank" rel="noopener noreferrer">Learn more</A></SPAN>.</P><P><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="reusable apis.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/327913i31395863592EF29E/image-size/large/is-moderation-mode/true?v=v2&amp;px=999" role="button" title="reusable apis.png" alt="reusable apis.png" /></span></P><P>&nbsp;</P><P>Watch the demo from this year's Devtoberfest - Session "<EM>Next generation hybrid integration with Edge Integration Cell</EM>":</P><P><div class="video-embed-center video-embed"><iframe class="embedly-embed" src="https://cdn.embedly.com/widgets/media.html?src=https%3A%2F%2Fwww.youtube.com%2Fembed%2FoZ0Bu6plkfk%3Ffeature%3Doembed&amp;display_name=YouTube&amp;url=https%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3DoZ0Bu6plkfk&amp;image=https%3A%2F%2Fi.ytimg.com%2Fvi%2FoZ0Bu6plkfk%2Fhqdefault.jpg&amp;type=text%2Fhtml&amp;schema=youtube" width="400" height="225" scrolling="no" title="šŸ”“ Unleash Next-Generation Hybrid Integration with Edge Integration Cell" frameborder="0" allow="autoplay; fullscreen; encrypted-media; picture-in-picture;" allowfullscreen="true"></iframe></div></P><H2 id="toc-hId-144894133"><STRONG><SPAN>Integration of Advanced Event Mesh with SAP Cloud Application Event Hub</SPAN></STRONG></H2><P>The latest updates allow you to connect your SAP Integration Suite, advanced event mesh system to SAP Cloud Application Event Hub for the consumption and exposure of events.</P><P>SAP Cloud Application Event Hub creates a clear, user-friendly, and adaptable way to easily exchange business events across SAP's cloud landscape. The solution is a key part of SAP's event-driven architecture. With the <SPAN><A href="https://help.sap.com/docs/sap-integration-suite/advanced-event-mesh/access-sap-business-events-on-sap-integration-suite-advanced-event-mesh" target="_blank" rel="noopener noreferrer">integration</A></SPAN>, you can access events from various SAP business systems, published via the hub, directly on SAP Integration Suite's advanced event mesh.</P><H1 id="toc-hId-241783635"><STRONG><SPAN>Migration &amp; Modernization</SPAN></STRONG></H1><H2 id="toc-hId--248132877"><STRONG><SPAN>ABAP proxy generation from service interfaces for current users of SAP Process Orchestration</SPAN></STRONG></H2><P><SPAN>SAP Integration Suite now supports the implementation of existing use cases for the Enterprise Services Repository using an efficient API-first development methodology. This assists users in importing the service interface artifacts from their PI/PO systems to the Cloud Integration workspace. The feature includes the ability to generate and update&nbsp;ABAP Proxies (non-language-specific interface descriptions in Web Services Description Language converted into executable interfaces) in SAP backend or S/4 HANA systems by connecting them to the SAP Integration Suite tenant and it’s available in the multi-cloud environment. Find more details and the prerequisites <A href="https://help.sap.com/docs/integration-suite/sap-integration-suite/generating-abap-proxy?locale=en-US#prerequisites" target="_blank" rel="noopener noreferrer">here</A>.</SPAN></P><H2 id="toc-hId--444646382"><STRONG><SPAN>Migration assessment: Clean core modernization recommendations for BAPIs</SPAN></STRONG></H2><P>This extension of the Migration Assessment capability in SAP Integration Suite makes it possible for users to analyse used BAPIs in SAP Process Orchestration. Additionally, they receive recommendations available in the SAP Business Accelerator Hub to transition from legacy content and adopt a clean core approach, e.g. replacing RFCs (BAPIs) with SOAP/OData APIs, IDOCs with Business Events, Alert Rules by SAP Cloud ALM, and more. Explore all <SPAN><A href="https://help.sap.com/docs/migration-guide-po/migration-guide-for-sap-process-orchestration/modernization-recommendations?locale=en-US" target="_blank" rel="noopener noreferrer">modernization recommendations</A></SPAN> covered in each area.</P><H1 id="toc-hId--347756880"><STRONG><SPAN>Dive Deeper</SPAN></STRONG></H1><H2 id="toc-hId--837673392"><STRONG><SPAN>New learning offerings available</SPAN></STRONG></H2><TABLE border="1" width="100%"><TBODY><TR><TD width="33.333333333333336%"><SPAN><A href="https://learning.sap.com/learning-journeys/accelerating-hybrid-integrations-with-sap-integration-suite-on-suse-rancher" target="_blank" rel="noopener noreferrer"><SPAN class="">Accelerating Hybrid </SPAN></A><A href="https://learning.sap.com/learning-journeys/accelerating-hybrid-integrations-with-sap-integration-suite-on-suse-rancher" target="_blank" rel="noopener noreferrer"><SPAN class="">Integrations with SAP </SPAN></A><A href="https://learning.sap.com/learning-journeys/accelerating-hybrid-integrations-with-sap-integration-suite-on-suse-rancher" target="_blank" rel="noopener noreferrer"><SPAN class="">Integration Suite on SUSE </SPAN></A><A href="https://learning.sap.com/learning-journeys/accelerating-hybrid-integrations-with-sap-integration-suite-on-suse-rancher" target="_blank" rel="noopener noreferrer"><SPAN class="">Rancher&nbsp;</SPAN></A></SPAN></TD><TD width="33.333333333333336%"><SPAN class=""><SPAN>Set up, deploy, and operate Edge Integration Cell on SUSE Rancher Kubernetes Engine</SPAN></SPAN></TD><TD width="33.333333333333336%"><SPAN class=""><SPAN>Time investment 3h, Record of achievement</SPAN></SPAN></TD></TR><TR><TD width="33.333333333333336%"><SPAN><A href="https://learning.sap.com/learning-journeys/accelerating-hybrid-integrations-with-sap-integration-suite-on-redhat-openshift" target="_blank" rel="noopener noreferrer"><SPAN class="">Accelerating Hybrid </SPAN></A><A href="https://learning.sap.com/learning-journeys/accelerating-hybrid-integrations-with-sap-integration-suite-on-redhat-openshift" target="_blank" rel="noopener noreferrer"><SPAN class="">Integrations with SAP </SPAN></A><A href="https://learning.sap.com/learning-journeys/accelerating-hybrid-integrations-with-sap-integration-suite-on-redhat-openshift" target="_blank" rel="noopener noreferrer"><SPAN class="">Integration Suite on RedHat </SPAN></A><A href="https://learning.sap.com/learning-journeys/accelerating-hybrid-integrations-with-sap-integration-suite-on-redhat-openshift" target="_blank" rel="noopener noreferrer"><SPAN class="">OpenShift&nbsp;</SPAN></A></SPAN></TD><TD width="33.333333333333336%"><SPAN class=""><SPAN>Set up, deploy, and run an Edge Integration Cell on Red Hat OpenShift</SPAN></SPAN></TD><TD width="33.333333333333336%"><SPAN class=""><SPAN>Time investment 3h, Record of achievement</SPAN></SPAN></TD></TR><TR><TD width="33.333333333333336%"><SPAN><A href="https://learning.sap.com/learning-journeys/exploring-enterprise-automation-with-sap" target="_blank" rel="noopener noreferrer"><SPAN class="">Exploring Enterprise </SPAN></A><A href="https://learning.sap.com/learning-journeys/exploring-enterprise-automation-with-sap" target="_blank" rel="noopener noreferrer"><SPAN class="">Automation with SAP</SPAN></A></SPAN></TD><TD width="33.333333333333336%"><SPAN class=""><SPAN>Understand how SAP </SPAN></SPAN><SPAN class=""><SPAN>Signavio</SPAN></SPAN><SPAN class=""><SPAN>, SAP Build, and SAP Integration Suite work together&nbsp;</SPAN><SPAN>to improve efficiency and responsiveness</SPAN></SPAN></TD><TD width="33.333333333333336%">&nbsp;<SPAN class=""><SPAN>Time investment 1.5h, Record of achievement</SPAN></SPAN></TD></TR></TBODY></TABLE><H2 id="toc-hId--1034186897"><STRONG><SPAN>What’s next?</SPAN></STRONG></H2><UL><LI><SPAN>Integration @&nbsp;Devtoberfest: <A href="https://community.sap.com/t5/devtoberfest-blog-posts/devtoberfest-2025-integration-track-sessions/ba-p/14180984" target="_self">watch all sessions</A></SPAN></LI><LI><SPAN>Join us at SAP TechEd 2025: <A href="https://community.sap.com/t5/sap-teched-blog-posts/shape-what-s-next-with-sap-integration-suite-at-teched-2025/ba-p/14220264" target="_self">explore the Integration track and register</A>&nbsp;</SPAN></LI></UL><P><A href="https://community.sap.com/source-Ids-list" target="1_les6p4hy" rel="nofollow noopener noreferrer">&nbsp;</A></P><DIV>&nbsp;</DIV> 2025-10-16T09:38:05.160000+02:00