Download as pdf or txt
Download as pdf or txt
You are on page 1of 439

6/14/2023

SAP Cloud Integration


Generated on: 2023-06-14 23:09:58 GMT+0000

SAP Cloud Integration | Cloud

PUBLIC

Original content: https://help.sap.com/docs/CLOUD_INTEGRATION/368c481cd6954bdfa5d0435479fd4eaf?locale=en-


US&state=PRODUCTION&version=Cloud

Warning

This document has been generated from the SAP Help Portal and is an incomplete version of the official SAP product
documentation. The information included in custom documentation may not re ect the arrangement of topics in the SAP Help
Portal, and may be missing important aspects and/or correlations to other topics. For this reason, it is not for productive use.

For more information, please visit the https://help.sap.com/docs/disclaimer.

This is custom documentation. For more information, please visit the SAP Help Portal 1
6/14/2023

What Is SAP Cloud Integration?


Support end-to-end process integration through the exchange of messages.

SAP Cloud Integration helps you to connect cloud and on-premise applications with other SAP and non-SAP cloud and on-
premise applications. This service can process messages in real-time scenarios spanning different companies, organizations, or
departments within one organization.

 Note
SAP Integration Suite combines Cloud Integration, API Management, Integration Advisor, Open Connectors, and other
integration capabilities into a cohesive and simpli ed toolkit for enterprise integration. To provide a comprehensive
integration experience, these services are not available separately, but only as part of the Integration Suite service plan. To
learn more on different service plans, see the Integration Suite service catalog.

Environment
This service runs in the Neo and Cloud Foundry (CF) environments. Integration content artifacts designed in the Neo
environment are also compatible in Cloud Foundry environment with certain limitations as mentioned in the following.

 Remember
There are currently certain limitations when working in the Cloud Foundry environment. For more information on the
limitations, see SAP Note 2752867 .

Features
Implement diverse scenarios

Integrate processes and data in application-to-application (A2A) and business-to-business (B2B) scenarios.

Connect to multiple endpoints

Integrate various applications and data sources from SAP and non-SAP, on premise, as well as the cloud. SAP Cloud Integration
comes with a set of prebuilt adapters.

Customize SAP integration scenarios

Bene t from prepackaged integration content to jump-start integration projects and to set up productive scenarios with only
minimum effort. You can extend prede ned integration ows according to your requirements.

Develop custom adapters

Use the adapter SDK to build your own custom adapters for additional connectivity needs.

Access public APIs

Customize the access to SAP Cloud Integration with our public OData APIs.

Set up secure and reliable communication

Use our core integration and security capabilities for the safe and reliable processing of messages. Con gure how messages
are exchanged within an integration scenario so that the data involved is protected according to the newest security standards.

Implement various communication modes

Orchestrate business processes and integrate data in synchronous as well as in asynchronous scenarios. SAP Cloud Integration
also supports reliable messaging processes based on asynchronous decoupling implemented by using queuing mechanisms.

This is custom documentation. For more information, please visit the SAP Help Portal 2
6/14/2023
Integrate with SAP Process Orchestration

Use SAP Cloud Integration and SAP’s on-premise integration Platform, SAP Process Orchestration, seamlessly integrated.

Tools

Tools Description

SAP BTP cockpit The cockpit is the central point for managing all activities
associated with your subaccount and for accessing key information
about your applications.

Adapter Development Kit The Adapter Development Kit allows integration developers to
de ne new adapter types and to integrate them into the Cloud
Integration tool environment.

Cloud Connector It serves as the link between on-demand applications in SAP BTP
and existing on-premise systems. You can control the resources
available for the cloud applications in those systems.

Integration Suite Dashboard Overview The Cloud Integration reporting dashboard is part of the Integration
Suite content package developed on SAP Analytics Cloud. It is a
simple and intuitive widget-based analytics dashboard that
provides at-a-glance view of relevant key performance indicators of
a Cloud Integration tenant. The widgets in the dashboard display
data in a simpli ed way that helps you visualize the context
information with slicing and dicing capabilities. If you’re curious to
explore, then read the blog on Interactive Reporting Dashboard for
SAP Cloud Integration using SAP Analytics Cloud .

System Scope in the Cloud Foundry Environment


This section describes the system scope for Cloud Integration tenants that are deployed in the Cloud Foundry environment.
Read the recommendations to know how to optimize the resources when exceeding the scope:

Resource Scope

Integration content 500 MB

Refer to the blog on Content Size Limits learn how to reduce


your integration content size.

JMS queues 9 GB, 150 transactions (default con guration with 30 queues)

Can be scaled up to 30 GB, 500 transactions (with 100 queues)

See the blog on Cloud Integration – JMS Resource and Size Limits
for further guidance on how to set the queue size to restrict the
limit and on how to delete unused queues.

Message processing log persistence 35 GB

See: Cloud Integration – Setting the Log Level for Message


Processing

Data store message persistence 35 GB

See: Optimize Performance

This is custom documentation. For more information, please visit the SAP Help Portal 3
6/14/2023

Resource Scope

Disk space 4 GB

Refer to SAP Note 2648415 to learn how to optimize the


integration ow development to prevent the integration ow from
running into the “No More Space left on Disk” error.

For more information on the available data storage features, refer to Data Storages.

System Scope in the Neo Environment


This section describes the system scope for Cloud Integration tenants that are deployed in the Neo environment. Read the
recommendation to know how to optimize the resources when exceeding the scope:

Resource Scope

Integration content 500 MB

Refer to the blog on Content Size Limits learn how to reduce


your integration content size.

JMS queues 9 GB

9 GB, 150 transactions (default con guration with 30 queues)

Can be scaled up to 30 GB, 500 transactions (with 100 queues)

See the blog on Cloud Integration – JMS Resource and Size Limits
for further guidance on how to set the queue size to restrict the
limit and on how to delete unused queues.

ASE database 32 GB

See the following blogs for information on how to:

Avoid Storing Payloads in the Message Processing Log

Avoid Excessive Storage Load caused by Using MPL


Attachments

Set the Log Level for Message Processing

Disk space 2 GB

Refer to SAP Note 2648415 to learn how to optimize the


integration ow development to prevent the integration ow from
running into the “No More Space left on Disk” error.

For more information on the available data storage features, refer to Data Storages.

Pricing and Resources


Get access to SAP Cloud Integration community, pricing models and all the technical resources, tutorials, blogs, and support you
need. Get Started with SAP Cloud Integration .

SAP Cloud Integration


Core Components, 2022/2023

This is custom documentation. For more information, please visit the SAP Help Portal 4
6/14/2023

Technical Environment Title Description Action Lifecycle Type


Component

Cloud Cloud Software SAP Cloud Integration: 6.39.* Info only General Changed
Integration Foundry Version Update Availability
SAP Integration Advisor: 1.73.*

Increment: 2303

Cloud Neo Software SAP Cloud Integration: 5.47.* Info only General Changed
Integration Version Update Availability
SAP Integration Advisor: 1.73.*

Adapter Development Kit for SAP


Cloud Integration: 2.53.*

Increment: 2303

This is custom documentation. For more information, please visit the SAP Help Portal 5
6/14/2023

Technical Environment Title Description Action Lifecycle Type


Component

Cloud Cloud Update If you're using an adapter (provided in Required General Changed
Integration Foundry Required for partnership with Advantco) that supports Availability
Dedicated connectivity with one of the following
Neo
Adapters components, make sure to switch to a
newer adapter version:

Salesforce (ADVANTCO-SFO adapter),


Amazon Web Service (ADVANTCO-AWS
adapter), Microsoft Dynamics CRM
(ADVANTCO-MSD adapter), and Sugar
CRM (ADVANTCO-SGR adapter).

The older adapter versions are in


maintenance and don't get further
updates. For more information, see SAP
note 3001980 . Therefore, please
move to the new adapter versions as soon
as possible. Note that old versions of
adapters (from Advantco) will no longer
run as of 1 January 2024.

Furthermore, these older adapter versions


aren't supported in the Cloud Foundry
environment (and, therefore, they also
aren't supported for SAP Integration
Suite).

For more information on the new adapter


versions, see:

AmazonWebServices Sender
Adapter

AmazonWebServices Receiver
Adapter

Microsoft Dynamics CRM


Receiver Adapter

Salesforce Sender Adapter

Salesforce Receiver Adapter

SugarCRM Receiver Adapter

Certain integration packages use


adapters that are affected by this change.
If you're using one of these integration
packages, we recommend you to switch
to the latest version of the integration
package (see: SAP note 3001980 ).

Perform this step as soon as possible,


but no later than 1 November 2023. This
will give you enough time to test your
integration scenarios.

For more information on the required


steps, see SAP note 3001980 .

This is custom documentation. For more information, please visit the SAP Help Portal 6
6/14/2023

Technical Environment Title Description Action Lifecycle Type


Component

Cloud Cloud New Feature A new feature has been added that allows Info only General Changed
Integration Foundry Allows You to you to inspect usage of integration Availability
Inspect Usage resource caused by your active
of Integration integration ows and to analyze critical
Resources resource situations.

You can, for example, identify those


integration ows that contribute
signi cantly to integration resource
exhaustion, and access guidelines how to
change your integration design in order to
improve the situation.

The feature covers the following


integration resources:

Database connections (used by


integration ows)

Data stores (used by integration


ows)

This feature is only available for SAP


Cloud Integration, Cloud Foundry
environment.

See: Inspect

Integration Cloud GS1 XML Type A new type system GS1 XML has now Info only General Changed
Advisor Foundry System been added to the Type System library. Availability

Neo See: Overview Of B2B Standards

Integration Cloud Namespace You can now view the Namespace Pre x Info only General Changed
Advisor Foundry Pre x in of a XML quali ed node in a Message Availability
Message Implementation Guideline.
Neo
Implementation
See: Working with a Node
Guideline

Integration Cloud Conditional Conditional Mapping is now extended to Info only General Changed
Advisor Foundry Mapping in support leaf-to-leaf mapping. Availability
Mapping
Neo See: Mapping the Source and Target
Guidelines
Nodes

Integration Cloud Global Code You can now create a Global Code Value Info only General Changed
Advisor Foundry Value Mapping Mapping directly from the Mapping Availability
Guidelines tab.
Neo
See: Global Code Value Mapping

Cloud Cloud Auto Layout You can now prettify your complex Info only General New
Integration Foundry Feature in Integration Process pools in one click Availability
Integration Flow using the auto layout feature in the
Neo
Editor Integration Flow Editor. See: Overview of
Integration Flow Editor.

Cloud Cloud View Runtime You can now view the runtime version of Info only General New
Integration Foundry Version in the UI Cloud Integration in the UI. This feature is Availability
helpful if you've enabled the Delay
Software Update feature. See: .

This is custom documentation. For more information, please visit the SAP Help Portal 7
6/14/2023

Technical Environment Title Description Action Lifecycle Type


Component

Cloud Cloud Software SAP Cloud Integration: 6.38.* Info only General Changed
Integration Foundry Version Update Availability
SAP Integration Advisor: 1.72.*

Increment: 2302

Cloud Neo Software SAP Cloud Integration: 5.46.* Info only General Changed
Integration Version Update Availability
SAP Integration Advisor: 1.72.*

Adapter Development Kit for SAP


Cloud Integration: 2.53.*

Increment: 2302

Cloud Cloud PGP Keys The features for the management of PGP Info only General Changed
Integration Foundry Monitor keys has been disabled for the Security Availability
Provides Material tile (under Manage Security). All
Neo
Access to All features to manage PGP keys are now
PGP Key- accessible from the PGP Keys tile (under
Related Manage Security).
Features
See: Managing PGP Keys

Cloud Cloud New Parameter A new parameter has been introduced for Info only General Changed
Integration Foundry Compress the XI sender and receiver adapter that Availability
Stored allows you to compress the stored
Neo
Message message if JMS queue is used as
Introduced for temporary storage.
XI Sender and
See:
Receiver
Adapter Con gure the XI Sender Adapter

Con gure the XI Receiver Adapter

Cloud Cloud Renaming Product pro les are being renamed as Info only General New
Integration Foundry Product Pro les "Runtime Pro les". Availability

Neo See: Runtime Pro les.

Cloud Cloud Support for EDI to XML Converter, XML to EDI Info only General New
Integration Foundry EDIFACT Syntax Converter, EDI Splitter, EDI Validator now Availability
Version 2 support EDIFACT Syntax Version 2.
Neo
See: De ne EDI to XML Converter, De ne
XML to EDI Converter, De ne Splitter,
De ne EDI Validator

Cloud Cloud Software SAP Cloud Integration: 6.37.* Info only General Changed
Integration Foundry Version Update Availability
SAP Integration Advisor: 1.71.*

Increment: 2301

This is custom documentation. For more information, please visit the SAP Help Portal 8
6/14/2023

Technical Environment Title Description Action Lifecycle Type


Component

Cloud Neo Software SAP Cloud Integration: 5.45.* Info only General Changed
Integration Version Update Availability
SAP Integration Advisor: 1.71.*

Adapter Development Kit for SAP


Cloud Integration: 2.53.*

Increment: 2301

Cloud Cloud Handling of Handling of duplicate attachment names Info only General Changed
Integration Foundry Duplicate was changed for the SOAP SOAP 1.x Availability
Attachment sender adapter. If an attachment name
Neo
Names in SOAP occurs several times, now also a Guid is
SOAP 1.x added to the rst of these attachment
Sender Adapter names (before this increment, no Guid
was added to the rst one).

See: Con gure the SOAP (SOAP 1.x)


Sender Adapter

Cloud Cloud Support to You can now specify the source of Partner Info only General New
Integration Foundry De ne Source of ID in AS2 Sender adapter. Availability
Partner ID in
Neo See: Con gure the AS2 Sender Adapter
AS2 Sender
Adapter

Cloud Cloud Support for On- JDBC Receiver adapter now supports Info only General New
Integration Foundry Premise and SAP ASE Service database on both On- Availability
Cloud SAP ASE Premise and Cloud infrastructures.
Neo
Service
See: JDBC for SAP ASE Platform (On-
Databases in
Premise)and JDBC for SAP ASE Service
JDBC Receiver
(Cloud)
Adapter

Cloud Cloud Advanced You can now con gure complex and Info only General New
Integration Foundry Scheduler granular schedules using combination of Availability
Con guration in various units of time measurement.
Neo
the Timer Flow
See: De ne a Timer Start Event.
Step

Cloud Cloud Transport Owner You can now propagate the logged in user Info only General New
Integration Foundry Propagation as the owner of the particular transport Availability
action while transporting artifacts using
Neo
Cloud Transport Management.

See: Content Transport Using Cloud


Transport Management.

This is custom documentation. For more information, please visit the SAP Help Portal 9
6/14/2023

Technical Environment Title Description Action Lifecycle Type


Component

Cloud Cloud New In the latest versions of the OData Info only General New
Integration Foundry Con guration receiver adapter variants, you've an Availability
Option for option to reuse connection objects from
Neo
OData Receiver the internal connection pool that improves
Adapter the network turnaround time.
Variants Allow
See:
Reuse of
Connections Con gure the OData V2 Receiver
Across HTTP Adapter
Requests
Con gure the OData V4 Receiver
Adapter

Con gure the SuccessFactors


OData V2 Receiver Adapter

SuccessFactors OData V4
Receiver Adapter

Cloud Cloud New Filter You can now the lter the Fields list when Info only General New
Integration Foundry Option for Query you're trying to choose the right eld Availability
in the Model name while modeling a query using the
Neo
Operation Model Operation wizard.
Wizard of OData
See: Con gure the OData V2 Receiver
V2 Receiver
Adapter.
Adapter

Cloud Cloud Keyboard In the integration ow creation dialog, you Info only General New
Integration Foundry Shortcut to can now press the Enter / Return key Availability
Create Artifacts to create an integration ow.
Neo
See: Creating an Integration Flow.

The feature is available for creation of


Message Mapping, Value Mapping, and
Script Collection too.

Cloud Cloud Software SAP Cloud Integration: 6.36.* Info only General Changed
Integration Foundry Version Update Availability
SAP Integration Advisor: 1.70.*

Increment: 2213

Cloud Neo Software SAP Cloud Integration: 5.44.* Info only General Changed
Integration Version Update Availability
SAP Integration Advisor: 1.70.*

Adapter Development Kit for SAP


Cloud Integration: 2.53.*

Increment: 2213

Cloud Cloud RabbitMQ The RabbitMQ sender adapter allows you Info only General New
Integration Foundry Adapters to consume messages in from queues on Availability
Available the RabbitMQ server. In addition, you use
the adapter to send acknowledgements to
the RabbitMQ server.

The RabbitMQ receiver adapter allows


you to send messages from to exchanges
or queues on the RabbitMQ server.

This is custom documentation. For more information, please visit the SAP Help Portal 10
6/14/2023

Technical Environment Title Description Action Lifecycle Type


Component

Integration Cloud Update The new feature Update MAGS now Info only General New
Advisor Foundry Mapping allows you to select and update a group Availability
Guidelines of mapping guidelines together.
Neo
See: Updating Mapping Guidelines

Cloud Cloud External Logging The External Logging feature enables Info only General New
Integration Foundry feature customers to send message processing Availability
logs to an external system, independently
of available database storage.

See: External Logging

Cloud Cloud New version of 1.2 version of Integration Process pool is Recommended General New
Integration Foundry Integration available with a default Transaction Availability
Process pool Handling value that improves the
Neo
available processing performance of your tenant.

See: De ne Transaction Handling.

Cloud Cloud Persisting the For multi-mapping schema, the Info only General Changed
Integration Foundry cardinality in cardinality is persisted if the source or Availability
message target schema is replaced.
Neo
mapping
Earlier, the cardinality used to revert to
the default value if the schema was
replaced.

Cloud Cloud New Option to You can now update an RSA key in the Recommended General Announcem
Integration Foundry Update an RSA keystore. Availability
Key
Neo See: Updating an RSA Key

Cloud Cloud New The new adapter type allows you to Info only General Changed
Integration Foundry AzureStorage exchange data between Azure Storage Availability
Adapter and .
Available

Cloud Cloud Software SAP Cloud Integration: 6.35.* Info only General Changed
Integration Foundry Version Update Availability
SAP Integration Advisor: 1.69.*

Increment: 2212

Cloud Neo Software SAP Cloud Integration: 5.43.* Info only General Changed
Integration Version Update Availability
SAP Integration Advisor: 1.69.*

Adapter Development Kit for SAP


Cloud Integration: 2.53.*

Increment: 2212

Cloud Cloud Support to You can now specify the source of Partner Recommended General Announcem
Integration Foundry De ne Source of ID in AS2 MDN sender adapter. Availability
Partner ID in See: Con gure the AS2 MDN Sender
Neo
AS2 MDN Adapter
Sender Adapter.

This is custom documentation. For more information, please visit the SAP Help Portal 11
6/14/2023

Technical Environment Title Description Action Lifecycle Type


Component

Cloud Cloud New Option to You can now upload an RSA key to the Info only General New
Integration Foundry Upload an RSA keystore. Availability
Key to Keystore
Neo See: Uploading an RSA Key

Cloud Cloud New Operations You can now navigate to a script collection Info only General Changed
Integration Foundry Added to Script from an integration package and save a Availability
Collections script collection as version.
Neo
Resource of
See: Integration Content
Integration
Content OData
API

Cloud Cloud Role-Based The new role template Info only General Changed
Integration Foundry Protection of CredentialsRead has been introduced Availability
Connectivity that is required in addition to role
Test Has Been template CredentialsEdit in order to
Changed perform connectivity tests.

The role templates for the integration


developer and tenant administrator
persona that contain permission to
perform connectivity tests have been
adapted accordingly.

See: Tasks and Permissions

Cloud Neo Role-Based Role Info only General Changed


Integration Protection of NodeManager.readcredentials is Availability
Connectivity required to perform this task (instead of
Test Has Been role
Changed NodeManager.deploycredentials).

The role authorization groups for the


integration developer and tenant
administrator persona that contain
permission to perform connectivity tests
have been adapted accordingly.

See: Tasks and Permissions

Cloud Cloud AMQP Adapters The AMQP sender and receiver adapters Info only General Changed
Integration Foundry Support Client now support client certi cate Availability
Certi cate authentication for TCP transport protocol.
Neo
Authentication
See:

Con gure the AMQP Sender


Adapter

Con gure the AMQP Receiver


Adapter

Cloud Cloud Integration Flow The integration ow design guideline EOIO Info only Deleted Changed
Integration Foundry Design via Aggregator (with integration ow
Guidelines Pattern Quality Of Service - Scenario
Neo
Changes 08b) has been deleted.

This is custom documentation. For more information, please visit the SAP Help Portal 12
6/14/2023

Technical Environment Title Description Action Lifecycle Type


Component

Cloud Cloud Integration Flow The following new integration ow design Info only General New
Integration Foundry Design guidelines (including integration ows) Availability
Guidelines have been newly added:
Neo
Changes
Create Attachments

Read Multiple Attachments


Based on Filter Criteria

Cloud Cloud Integration Flow The following integration ow design Info only General Changed
Integration Foundry Design guidelines have been changed: Availability
Guidelines
Neo Decouple Sender and Flows Using
Changes
Data Store now uses a data store
based on Data Store sender
adapter instead of a Timer event.

Decouple Sender and Flows Using


Data Store and Polling Consumer
now uses a data store and polling
consumer based on new data
store sender adapter instead of
timer event.

The integration ow design


guideline (and integration ow
Pattern Quality Of Service -
Scenario 08) has been replaced
by the new guideline
Resequencer (see Resequencer).

Cloud Cloud Handling of Handling duplicate attachment names Info only General Changed
Integration Foundry Duplicate has been improved for the SOAP SOAP Availability
Attachment 1.x sender adapter.
Neo
Names by SOAP
See: Con gure the SOAP (SOAP 1.x)
SOAP 1.x
Sender Adapter
Sender Adapter

Cloud Cloud XI Sender The new header Info only General


Integration Foundry Adapter Sets SapQualityOfService is set by the Availability
New Header for adapter. It contains the quality of service
Neo
Quality of of the sender system.
Service
See:

Con gure the XI Sender Adapter

Headers and Exchange Properties


Provided by the Integration
Framework

Integration Cloud Display of XML You can now view the XML Tag Name of a Info only General New
Advisor Foundry Tag Name node in the Details section of a Message Availability
Implementation Guideline.
Neo
You can use this value while maintaining
the XSD assertions.

See: Working with a Node

This is custom documentation. For more information, please visit the SAP Help Portal 13
6/14/2023

Technical Environment Title Description Action Lifecycle Type


Component

Integration Cloud Custom Type You can now delete the active version of a Info only General New
Advisor Foundry System custom message. Availability

Neo See: Deleting a Custom Message

Integration Cloud Version History The version history of a MIG and MAG Info only General New
Advisor Foundry of a MIG and now also displays the import details if Availability
MAG applicable.
Neo
See:

Message Implementation
Guidelines (MIGs)

Mapping Guidelines (MAGs)

Cloud Cloud Software SAP Cloud Integration: 6.33.* Info only General Changed
Integration Foundry Version Update Availability
SAP Integration Advisor: 1.67.*

Increment: 2210

Cloud Neo Software SAP Cloud Integration: 5.41.* Info only General Changed
Integration Version Update Availability
SAP Integration Advisor: 1.67.*

Adapter Development Kit for SAP


Cloud Integration: 2.53.*

Increment: 2210

Integration Cloud Import/Export Import and export of a mapping guideline Info only General Changed
Advisor Foundry of a Mapping now also includes its pre-transformation Availability
Guideline in the zip le.
Neo
See: Import and Export

Integration Cloud Filtering MIGs You can now lter message Info only General Changed
Advisor Foundry and MAGs implementation guidelines and mapping Availability
guidelines using two new lters:
Neo
Last Imported By

Last Imported Between

See:

Message Implementation
Guidelines (MIGs)

Mapping Guidelines (MAGs)

Integration Cloud Download and Info only General Changed


You can now download the
Advisor Foundry Upload of Availability
standard codelist from any type
standard
Neo system in csv format.
codelists
You can now upload and modify
the standard codelists in a
message implementation
guideline.

See: Creating MIG Codelists

This is custom documentation. For more information, please visit the SAP Help Portal 14
6/14/2023

Technical Environment Title Description Action Lifecycle Type


Component

Integration Cloud Pre- You can now use the Pre-Transformation Info only General Changed
Advisor Foundry Transformation feature in a mapping guideline to Availability
of a Message transform the structure of your message
Neo
Implementation implementation guideline before
Guideline mapping.

See: Pre- Transformation of a Message


Implementation Guideline

Cloud Cloud Neo to Cloud Migration from the Neo environment to Info only General Changed
Integration Foundry Foundry the multi-cloud foundation supports the Availability
Migration following new steps:
Neo
Enhanced
Migrating data stores

See: Migrating Cloud Integration from the


Neo Environment to the Multi-Cloud
Foundation

Cloud Cloud New Slack The new adapter type allows you to Info only General Changed
Integration Foundry Adapter exchange data between Slack storage and Availability
Available .

Cloud Cloud New Splunk The new adapter type allows you to Info only General Changed
Integration Foundry Adapter exchange data between Splunk storage Availability
Available and .
Neo

Cloud Cloud Handling of Handling duplicate attachment names Info only General Changed
Integration Foundry Duplicate has been improved for the Mail sender Availability
Attachment adapters (POP3 and IMAP4) by the
Neo
Names by Mail introduction of GUIDs.
Sender Adapter
See: Con gure the Mail Sender Adapter

Cloud Cloud Dynamic You can now update the MDN properties Info only General Changed
Integration Foundry support for of AS2 sender adapter dynamically. Availability
MDN properties See: AS2 Sender Adapter: MDN
Neo
in AS2 Sender
adapter

Cloud Cloud Support for AS2 adapter has been extended to Info only General Changed
Integration Foundry incoming con gure decryption option from Availability
message incoming payload.
Neo
decryption in See: AS2 Sender Adapter: Security
AS2 Sender
adapter

Cloud Cloud Support for On- JDBC adapter now supports On-Premise Info only General Changed
Integration Foundry Premise Postgres database for both Neo and Availability
Postrgres Cloud Foundry tenants.
Neo
database in See:JDBC for Postgres (On-Premise)
JDBC Receiver
adapter

This is custom documentation. For more information, please visit the SAP Help Portal 15
6/14/2023

Technical Environment Title Description Action Lifecycle Type


Component

Cloud Cloud New Feature for A new checkbox is introduced to make Info only General New
Integration Foundry Timer Start sure that the runtime status of the Availability
Event to Avoid integration artifact doesn't go into Error
Neo
Validation status.
Exception
See:De ne a Timer Start Event

Cloud Cloud Software SAP Cloud Integration: 6.32.* Info only General Changed
Integration Foundry Version Update Availability
SAP Integration Advisor: 1.66.*

Increment: 2209

Cloud Neo Software SAP Cloud Integration: 5.40.* Info only General Changed
Integration Version Update Availability
SAP Integration Advisor: 1.66.*

Adapter Development Kit for SAP


Cloud Integration: 2.53.*

Increment: 2209

Integration Cloud Exporting a When you export a mapping guideline Info only General Changed
Advisor Foundry Mapping (MAG), the global code value Mapping of Availability
Guideline the MAG also gets exported now.
Neo
See: Import and Export

Integration Cloud New Codelists GS1 global codelists is now available as a Info only General Changed
Advisor Foundry collection new content in the Type System Library. Availability

Neo See: Overview Of B2B Standards

Cloud Cloud New Integration New content has been added to the Info only General New
Integration Foundry Flow Design Integration Flow Design Guidelines - Availability
Content Learn the Basics integration package.
Neo
Both documentation and a sample
integration ow are available.

See: Attachment Handling

Cloud Cloud New entry in the A new entry ExecutedMapping is added Info only General New
Integration Foundry Message to the message processing log that Availability
Processing Log indicates which message mapping
Neo
artifact was executed.

See: Message Processing Log - Text View.

Cloud Cloud Improvements New elds are introduced to leverage Info only General New
Integration Foundry for OAuth2 shared secret between services. See: Availability
Client Deploying an OAuth2 Client Credentials
Neo
Credentials Artifact.
Artifact

Cloud Cloud Fixing issues There were issues with Content Enricher Info only General Changed
Integration Foundry with Content where it was enriching the content of an Availability
Enricher original message with unexpected content
Neo
that wasn't de ned as part of the content
enrich strategy. The issue is xed with 1.2
version of Content Enricher.

This is custom documentation. For more information, please visit the SAP Help Portal 16
6/14/2023

Technical Environment Title Description Action Lifecycle Type


Component

Cloud Cloud New Operations You can now delete and update a script Info only General Changed
Integration Foundry Added to Script collection. Availability
Collections
Neo See: Integration Content
Resource of
Integration
Content OData
API

Cloud Cloud Handle Invalid You can now con gure how to handle Info only General New
Integration Foundry XML Characters invalid xml characters in the XML Availability
in XML Modi er Modi er step.
Neo
See: De ne XML Modi er

Cloud Cloud Software SAP Cloud Integration: 6.31.* Info only General Changed
Integration Foundry Version Update Availability
SAP Integration Advisor: 1.65.*

Increment: 2208

Cloud Neo Software SAP Cloud Integration: 5.39.* Info only General Changed
Integration Version Update Availability
SAP Integration Advisor: 1.65.*

Adapter Development Kit for SAP


Cloud Integration: 2.53.*

Increment: 2208

Cloud Cloud New Operations You can now read and download a script Info only General Changed
Integration Foundry Added to Script collection and its resources. Availability
Collections
Neo See: Integration Content
Resource of
Integration
Content OData
API

Integration Cloud Creating a You can now directly create a Message Info only General Changed
Advisor Foundry Message Implementation Guideline from a speci c Availability
Implementation message type of a type system/custom
Neo
Guideline type system.

See: Creating a New Message


Implementation Guideline

Cloud Cloud Keep-Alive for You can now activate the keep-alive Info only General Changed
Integration Foundry SOAP (SOAP functionality to signal to the server that Availability
1.x) Receiver the connection should remain open.
Neo
See: Con gure the SOAP (SOAP 1.x)
Receiver Adapter

Cloud Cloud TSL During a TSL connectivity test, you can Info only General Changed
Integration Foundry Connectivity now add a root certi cate directly to the Availability
Tests: Option to keystore.
Neo
Add Root
See: TLS Connectivity Tests
Certi cate to
Keystore

This is custom documentation. For more information, please visit the SAP Help Portal 17
6/14/2023

Technical Environment Title Description Action Lifecycle Type


Component

Cloud Cloud Changed Length You can now use up to 4096 characters Info only General Changed
Integration Foundry for Secure for your secure parameter in Cloud Availability
Parameter Foundry.

See: Deploying a Secure Parameter


Artifact

Cloud Cloud New Tutorial for There's a new tutorial available on Info only General New
Integration Foundry Inbound OAuth developers.sap.com describing how to Availability
Client set up inbound authentication for API
Credentials clients calling the Cloud Integration OData
Grant API. The Cloud Integration OData API
Authentication provides access to various Cloud
Integration resources such as message
processing logs, integration content, log
les, etc.

See: Tutorial: Set Up Inbound OAuth


Client Credentials Grant Authentication
for API Clients with SAP-Generated
Certi cate

Cloud Cloud Authenticate You can now select OAuth 2.0 SAML Info only General Changed
Integration Foundry SOAP (SOAP Bearer Assertion Grant as authentication Availability
1.x) Receiver option for SOAP (SOAP 1.x) Receiver
Neo
with OAuth 2.0 Adapter when connecting to target
SAML Bearer system type SuccessFactors.
Assertion Grant
See: Con gure the SOAP (SOAP 1.x)
when connecting
Receiver Adapter
to target system
type
SuccessFactors

Cloud Cloud Support for Client Certi cate is now available as an Info only General New
Integration Foundry Client authentication type from version 1.10 and Availability
Certi cate onwards of the OData V4 receiver
Neo
authentication in adapter.
OData V4
See: Con gure the OData V4 Receiver
receiver adapter
Adapter.

Cloud Cloud Dynamically From version 1.3 and onwards of the Info only General New
Integration Foundry Assign Message message mapping ow step, you can Availability
Mapping dynamically assign message mapping
Neo
Artifacts to a artifacts using a header or property, or via
Message partner directory. This way, you can
Mapping execute different message mappings
from a single integration ow.

See: Creating Message Mapping As A


Flow Step.

Cloud Cloud AS2 Receiver On con guring AS2 receiver channel for Info only General New
Integration Foundry Adapter the Request-Reply integration ow Availability
Enhancement element, the AS2 receiver adapter version
Neo
1.8 and above sets the exchange header
Sap_AS2MessageID with
originalMessageID.

See:Con gure the AS2 Receiver Adapter

This is custom documentation. For more information, please visit the SAP Help Portal 18
6/14/2023

Technical Environment Title Description Action Lifecycle Type


Component

Cloud Cloud API to Publish Support for a public API to publish the Info only General New
Integration Foundry Status of status of the connection to integration Availability
Connection to ow monitoring for ADK sender integration
Neo
Integration Flow adapters.
Monitoring
See: Enabling Connection Status for
Integration Flow

Cloud Cloud Software SAP Cloud Integration: 6.30.* Info only General Changed
Integration Foundry Version Update Availability
SAP Integration Advisor: 1.64.*

Increment: 2207

Cloud Neo Software SAP Cloud Integration: 5.38.* Info only General Changed
Integration Version Update Availability
SAP Integration Advisor: 1.64.*

Adapter Development Kit for SAP


Cloud Integration: 2.53.*

Increment: 2207

Cloud Neo Deployment of You can now deploy and undeploy an Info only General Changed
Integration Integration integration adapter. Availability
Adapter
See: Manage Integration Content

Cloud Cloud AS2 Receiver AS2 receiver adapter has been enhanced Info only General Changed
Integration Foundry adapter for Dynamic support in Proxy Type, Availability
enhancement Authentication Type, Content Transfer
Neo
Encoding, and MDN Type.

See Con gure the AS2 Receiver Adapter

Integration Cloud Import and Info only General Changed


You can now import and overwrite
Advisor Foundry Export Availability
existing status of MIG and MAG in
MIG/MAG
Neo a tenant.

You can now import new versions


or overwrite existing versions of a
MIG/MAG in the same tenant
where it was exported from.

See: Import and Export

Cloud Cloud New Integration New content has been added to the Info only General Changed
Integration Foundry Flow Design Integration Flow Design Guidelines - Availability
Guideline Enterprise Integration Patterns
Neo
Content integration package. Both documentation
and a sample integration ow are
available.

See: ID Mapping (with Multicast)

This is custom documentation. For more information, please visit the SAP Help Portal 19
6/14/2023

Technical Environment Title Description Action Lifecycle Type


Component

Cloud Cloud New Signature The PKCS7 Signer integration ow step Info only General Changed
Integration Foundry Algorithms now supports the following additional Availability
Supported for signature algorithms:
Neo
PKCS7 Signer
SHA3-224/RSA, SHA3-256/RSA, SHA3-
Step
384/RSA, SHA3-512/RSA, SHA3-
512/DSA, SHA3-384/DSA, SHA3-
256/DSA, SHA3-224/DSA, SHA512/DSA,
SHA384/DSA, SHA3-224/ECDSA, SHA3-
256/ECDSA, SHA3-384/ECDSA, SHA3-
512/ECDSA, SHA512/ECDSA,
SHA384/ECDSA, SHA256/ECDSA,
SHA224/ECDSA, SHA1/ECDSA.

See:

Message-Level Security

Sign the Message Content with


PKCS#7/CMS Signer

Cloud Cloud New Signature The Simple Signer integration ow step Info only General Changed
Integration Foundry Algorithms now supports the following additional Availability
Supported for signature algorithms:
Neo
Simple Signer
SHA3-224/RSA, SHA3-256/RSA, SHA3-
Step
384/RSA, SHA3-512/RSA, SHA3-
512/DSA, SHA3-384/DSA, SHA3-
256/DSA, SHA3-224/DSA, SHA512/DSA,
SHA384/DSA, SHA3-224/ECDSA, SHA3-
256/ECDSA, SHA3-384/ECDSA, SHA3-
512/ECDSA, SHA512/ECDSA,
SHA384/ECDSA, SHA256/ECDSA,
SHA224/ECDSA, SHA1/ECDSA.

See:

Message-Level Security

Sign the Message Content with


Simple Signer

Cloud Cloud Option to You can now dynamically con gure queue Info only General Changed
Integration Foundry Con gure JMS names with the JMS Receiver Adapter. Availability
Receiver
Neo See: Con gure the JMS Receiver Adapter
Adapter with
Dynamic Queue
Name

Cloud Cloud Support for OAuth2 SAML Bearer Assertion is now Info only General New
Integration Foundry OAuth2 SAML available as an authentication type from Availability
Bearer in version 1.7 and onwards of the
Neo
SuccessFactors SuccessFactors OData V4 receiver
OData V4 adapter. See: SuccessFactors OData V4
Adapter Receiver Adapter.

This is custom documentation. For more information, please visit the SAP Help Portal 20
6/14/2023

Technical Environment Title Description Action Lifecycle Type


Component

Cloud Cloud Software SAP Cloud Integration: 6.29.* Info only General Changed
Integration Foundry Version Update Availability
SAP Integration Advisor: 1.63.*

Increment: 2206

Cloud Neo Software SAP Cloud Integration: 5.37.* Info only General Changed
Integration Version Update Availability
SAP Integration Advisor: 1.63.*

Adapter Development Kit for SAP


Cloud Integration: 2.53.*

Increment: 2206

Cloud Cloud Scheduler You can now use scheduler component in Info only General New
Integration Foundry Support for ADK your custom adapter. Availability
Sender Adapter
Neo See: Enabling Scheduler Support for ADK
Sender Adapter

Cloud Cloud Accessing On- Now, Adapter API supports on-premise Info only General New
Integration Foundry Premise connectivity using Transmission Control Availability
Application Protocol also.
Neo
using Cloud
See: Accessing On-Premise Application
Connector via
using Cloud Connector
TCP

Cloud Cloud New Integration New content has been added to the Info only General Changed
Integration Foundry Flow Design Integration Flow Design Guidelines - Availability
Guideline Enterprise Integration Patterns
Neo
Content integration package. Both documentation
and a sample integration ow are
available.

See: Decoupling via Data Store

Cloud Cloud New Compress You can now compress messages in the Info only General New
Integration Foundry Stored JMS queue. Availability
Messages
Neo See: Con gure the JMS Receiver Adapter
Option in the
JMS Receiver
Adapter

Cloud Cloud New Parameter A new parameter has been added to the Info only General Changed
Integration Foundry for PKCS#7/CMS Signer step that allows you Availability
PKCS#7/CMS to specify the object identi er for the
Neo
Signer content type.

See: Sign the Message Content with


PKCS#7/CMS Signer

Cloud Cloud New Operations New POST and DELETE operations have Info only General Changed
Integration Foundry Added to been added to the Message Mappings Availability
Message resource of the Integration Content API.
Neo
Mappings These new operations support the
Resource of creation and deletion message mappings
Integration through the API.
Content OData
See: Integration Content
API

This is custom documentation. For more information, please visit the SAP Help Portal 21
6/14/2023

Technical Environment Title Description Action Lifecycle Type


Component

Cloud Cloud New Operation A new operation has been added to the Info only General Changed
Integration Foundry for Value Value Mappings resource of the Availability
Mappings Integration Content OData API that
Neo
Resource of allows you to delete entries from value
Integration mappings.
Content OData
See: Integration Content
API

Cloud Cloud New Using the AMQP receiver adapter, you can Info only General New
Integration Foundry Passthrough now use the Passthrough option to Availability
Option for forward the message header name
Neo
Message without transformation.
Header Name
See: Con gure the AMQP Receiver
Adapter

Cloud Cloud New Script The new resource Script Collection has Info only General Changed
Integration Foundry Collection been added to the Integration Content Availability
Resource Added OData API. You can create and upload a
Neo
to Integration script collection, add resources to a
Content OData script collection, and deploy a script
API collection.

See: Integration Content

Cloud Cloud PATCH The HTTP receiver adapter now supports Info only General New
Integration Foundry operation in PATCH operation to partially update Availability
HTTP Receiver resources.
Neo
Adapter
See: HTTP Receiver Adapter

Integration Cloud Export and The Export dialog now displays Info only General Changed
Advisor Foundry Import of MIGs the number of MIGs and MAGs Availability
and MAGs available in the tenant.
Neo
See: Exporting MIG/MAG

You can now view the detailed


information of the import result in
the Import dialog.

See: Importing MIG/MAG

You can now overwrite draft and


active MIGs and MAGs.

See: Import and Export

Cloud Cloud New Dropbox The Dropbox adapter allows you to Info only General New
Integration Foundry Adapter connect to a user's Dropbox account from Availability
Available and to perform different operations as
Neo
supported by the Dropbox APIs.

Cloud Cloud Integration New integration adapters are now Info only General New
Integration Foundry Adapters available in SAP API Business Hub with Availability
available in SAP easy-to-consume experience.
API Business
See: Consuming Integration Adapters
Hub
from SAP API Business Hub

This is custom documentation. For more information, please visit the SAP Help Portal 22
6/14/2023

Technical Environment Title Description Action Lifecycle Type


Component

Cloud Cloud Software SAP Cloud Integration: 6.27.* Info only General Changed
Integration Foundry Version Update Availability
SAP Integration Advisor: 1.61.*

Increment: 2204

Cloud Neo Software SAP Cloud Integration: 5.35.* Info only General New
Integration Version Update Availability
SAP Integration Advisor: 1.61.*

Adapter Development Kit for SAP


Cloud Integration: 2.53.*

Increment: 2204

Cloud Cloud Self-Service to Tenant administrators can now con gure Recommended General New
Integration Foundry Delay Software their tenants to delay the monthly Availability
Update updates from SAP. See: .

Cloud Cloud New Adapter for Synchronize your master data from SAP Info only General New
Integration Foundry SAP Master and other third-party applications with Availability
Data Integration SAP Master Data Integration service.

Cloud Cloud Importing Value You can now import value mappings from Info only General New
Integration Foundry Mappings from ES Repository in your PI landscape to Availability
ES Repository Cloud Integration. See: Creating Value
Mapping.

Cloud Cloud Settings for You can now con gure the settings of a Info only General New
Integration Foundry JSON Target message mapping resource to handle Availability
Schema in basic data types for JSON target
Neo
Message schemas. See: Creating Message
Mapping Mapping As A Flow Step.

Integration Cloud Import and You can now import message Info only General New
Advisor Foundry Export Message implementation guidelines and mapping Availability
Implementation guidelines.
Neo
Guidelines and
See:
Mapping
Guidelines Import and Export

Importing MIG/MAG

Exporting MIG/MAG

Cloud Cloud Enhancing For JDBC receiver adapters (version 1.5 Info only General New
Integration Foundry Batch Payload and above), you can now use multiple Availability
for JDBC access tags in INSERT Mode of Batch
Neo
Adapters Payload functionality. See: Batch Payload
and Operation

Cloud Cloud New Message The new resource Message Mappings has Info only General New
Integration Foundry Mappings been added to the Integration Content Availability
Resource Added API. A number of GET operations and
Neo
to Integration query options allow you to access
Content OData message mappings through the API.
API
See: Integration Content

This is custom documentation. For more information, please visit the SAP Help Portal 23
6/14/2023

Technical Environment Title Description Action Lifecycle Type


Component

Cloud Cloud Software SAP Cloud Integration: 6.26.* Info only General Changed
Integration Foundry Version Update Availability
SAP Integration Advisor: 1.60.*

Increment: 2203

Cloud Neo Software SAP Cloud Integration: 5.34.* Info only General New
Integration Version Update Availability
SAP Integration Advisor: 1.60.*

Adapter Development Kit for SAP


Cloud Integration: 2.53.*

Increment: 2203

Cloud Cloud OAuth2 SAML You can now use a OAuth2 SAML Bearer Recommended General New
Integration Foundry Bearer Assertion credential, that has a Key Pair Availability
Credential in Common Name and SuccessFactors
Neo
HTTP Receiver target system, in HTTP Receiver adapter.
Adapter for This helps you remove dependency on
SuccessFactors using basic authentication to connect to a
System SuccessFactors OData V2 system. See:
Deploying an OAuth2 SAML Bearer
Assertion.

Cloud Cloud Server-Side OData V4 Receiver adapter now supports Info only General New
Integration Foundry Pagination in pagination. See: Con gure the OData V4 Availability
OData V4 Receiver Adapter.
Neo
Receiver
Adapter

Cloud Cloud New Signature The XML Digital Signer step now Info only General Changed
Integration Foundry Algorithms and supports new signature algorithms and Availability
Canonicalization canonicalization methods.
Neo
Methods
See: Sign the Message Content with XML
Supported for
Digital Signature
XML Digital
Signer

Cloud Cloud Enhancing AS2 You can now set the message status to Info only General New
Integration Foundry Adapters to set Failed on negative MDN for both Availability
Message Status Asynchronous and Synchronous MDN
Neo
to Failed on type.
Negative MDN
See AS2 Adapter

Cloud Cloud Extending Batch Batch support is now enabled for native Info only General New
Integration Foundry Support to SQL queries also. Availability
Native SQL
Neo See, JDBC Receiver Adapter
Queries for
JDBC Receiver
Adapters

Cloud Cloud Software SAP Cloud Integration: 6.25.* Info only General Changed
Integration Foundry Version Update Availability
SAP Integration Advisor: 1.59.*

Increment: 2202

This is custom documentation. For more information, please visit the SAP Help Portal 24
6/14/2023

Technical Environment Title Description Action Lifecycle Type


Component

Cloud Neo Software SAP Cloud Integration: 5.33.* Info only General Changed
Integration Version Update Availability
SAP Integration Advisor: 1.59.*

Adapter Development Kit for SAP


Cloud Integration: 2.53.*

Increment: 2202

Cloud Cloud Consuming You can easily consume adapters that are Info only General New
Integration Foundry Adapters from published in SAP API Business Hub while Availability
SAP API designing your integration. See: Import
Neo
Business Hub Integration Adapters.

Cloud Cloud New Integration New content has been added to the Info only General New
Integration Foundry Flow Design Integration Flow Design Guidelines - Availability
Guideline Enterprise Integration Patterns
Neo
Content integration package. Both documentation
and a sample integration ow are
available.

Cloud Cloud New Query The Cloud Integration Message Stores Info only General Changed
Integration Foundry Option Available API supports a new query option to get Availability
for Message stopped JMS queues.
Neo
Store OData API
See:

JMS Resources Example


Requests

JMS Resources

Cloud Cloud New Data Store The new adapter enables Cloud Info only General New
Integration Foundry Sender Adapter Integration to consume messages from a Availability
Available data store. This feature helps you to
Neo
enable asynchronous decoupling of
inbound and outbound processing by
using the data store as temporary
storage.

See: Data Store Sender Adapter

Cloud Cloud Software SAP Cloud Integration: 6.24.* Info only General Changed
Integration Foundry Version Update Availability
SAP Integration Advisor: 1.58.*

Increment: 2201

Cloud Neo Software SAP Cloud Integration: 5.32.* Info only General Changed
Integration Version Update Availability
SAP Integration Advisor: 1.58.*

Adapter Development Kit for SAP


Cloud Integration: 2.53.*

Increment: 2201

This is custom documentation. For more information, please visit the SAP Help Portal 25
6/14/2023

Technical Environment Title Description Action Lifecycle Type


Component

Cloud Cloud Support for The new version of SuccessFactors OData Info only General Changed
Integration Foundry Retry in V2 receiver adapter supports retry for Availability
SuccessFactors HTTP response code 429 for all
Neo
OData V2 operations now. See: Con gure the
Receiver SuccessFactors OData V2 Receiver
Adapter Adapter.

Cloud Cloud New Log Level A new log level Error has been Info only General Changed
Integration Foundry Error Available introduced. Choose this log level to Availability
records basic information for failed
Neo
message executions only.

See: Setting Log Levels

Cloud Cloud Support for Null The new versions of OData V4 and Info only General Changed
Integration Foundry Values in OData SuccessFactors OData V4 receiver Availability
V4 and adapters now support representing null
Neo
SuccessFactors values in both request and response. See:
OData V4
Con gure the OData V4 Receiver
Receiver
Adapter
Adapters
SuccessFactors OData V4
Receiver Adapter

Cloud Neo Connection Tenant administrators can now generate Info only General Changed
Integration Metering report on details of the connections Availability
associated with the tenant for a particular
date that is metered and billed using the
Provisioning application.

Integration Cloud Mapping You can now lter and search for code Info only General New
Advisor Foundry Guideline values in the Global code value mapping Availability
of a mapping guideline.
Neo
See: Mapping Guidelines (MAGs)

Cloud Cloud New Integration New content has been added to the Info only General Changed
Integration Foundry Flow Design Integration Flow Design Guidelines - Availability
Guideline Handle Errors Gracefully integration
Neo
Content package. Both documentation and a
sample integration ow are available. It
shows how to handle exceptions raised in
a receiver connected through the HTTP
receiver adapter.

See: Don't Throw Exception on Failure

Cloud Cloud Software SAP Cloud Integration: 6.23.* Info only General Changed
Integration Foundry Version Update Availability
SAP Integration Advisor: 1.57.*

Increment: 2113

This is custom documentation. For more information, please visit the SAP Help Portal 26
6/14/2023

Technical Environment Title Description Action Lifecycle Type


Component

Cloud Neo Software SAP Cloud Integration: 5.31.* Info only General Changed
Integration Version Update Availability
SAP Integration Advisor: 1.57.*

Adapter Development Kit for SAP


Cloud Integration: 2.53.*

Increment: 2113

Cloud Cloud New Integration New content has been added to the Info only General Changed
Integration Foundry Flow Design Integration Flow Design Guidelines - Availability
Guideline Enterprise Integration Patterns
Neo
Content integration package. Both documentation
and a sample integration ow are
available. Additionally, the documentation
of the various use cases and guidelines
has been improved.

New example scenarios show how to use


the Idempotent Process Call step in
order to guarantee quality of service
Exactly Once.

See:

Idempotent Process Call Handles


Duplicates

Idempotent Process Call Handles


Duplicates (with JMS and Data
Store Operations)

Idempotent Process Call Handles


Duplicates (With Alternative
Response)

Aggregator

Cloud Cloud Archiving The archiving function now supports the Info only General Changed
Integration Foundry Destination OAuth authentication for the archiving Availability
Supports OAuth destination. See: Con guring Destination
Authentication

Cloud Cloud Kafka Adapter The Kafka adapter supports Transport Info only General Changed
Integration Foundry Supports TLS Layer Security (TLS) 1.3 protocol for Availability
1.3 outbound and inbound communication.
Neo
See: Con gure the Kafka Sender Adapter
Con gure the Kafka Receiver Adapter

Cloud Cloud New Integration Guidelines have been added related to Info only General Changed
Integration Foundry Flow Design the communication of integration ows Availability
Guideline deployed on the same tenant.
Neo
Content
See: Communication between Integration
Flows

This is custom documentation. For more information, please visit the SAP Help Portal 27
6/14/2023

Technical Environment Title Description Action Lifecycle Type


Component

Cloud Cloud New Integration New content has been added to the Info only General Changed
Integration Foundry Flow Design Integration Flow Design Guidelines - Availability
Guideline Handle Errors Gracefully integration
Neo
Content package. Both documentation and a
sample integration ow are available.
Additionally, the documentation of the
various use cases and guidelines has
been improved.

See:

Handle Errors Gracefully

Handle Exceptions in Dependent


Integration Flows (Simple
Scenario)

Handle Exceptions in Subprocess


(Simple Scenario)

Integration Cloud Message You can now download the code values Info only General New
Advisor Foundry Implementation from the codelist in a message Availability
Guideline implementation guideline.
Neo
See: Creating MIG Codelists

Cloud Cloud Software SAP Cloud Integration: 6.22.* Info only General Changed
Integration Foundry Version Update Availability
SAP Integration Advisor: 1.56.*

Increment: 2112

Cloud Neo Software SAP Cloud Integration: 5.30.* Info only General Changed
Integration Version Update Availability
SAP Integration Advisor: 1.56.*

Adapter Development Kit for SAP


Cloud Integration: 2.53.*

Increment: 2112

This is custom documentation. For more information, please visit the SAP Help Portal 28
6/14/2023

Technical Environment Title Description Action Lifecycle Type


Component

Cloud Neo Handling of Handling of integration artifacts in Info only General Changed
Integration Artifacts with Stopping state has been improved in the Availability
Status Stopping Monitor section (under Manage
Has Been Integration Content).
Improved
During undeployment of an artifact, the
artifact is not anymore immediately
removed from the artifact list. Instead of
this, the artifact is still shown, but its
status changes to Stopping. Furthermore,
for artifacts with status Stopping the
following applies:

The functions Restart, Undeploy,


and Download aren’t available.

You can still navigate to the


artifact (integration ow model)
and to the message monitor.

See:

Runtime Status

Cloud Cloud New Integration New content has been added to the Info only General New
Integration Foundry Flow Design Integration Flow Design Guidelines - Availability
Guideline Enterprise Integration Patterns
Neo
Content integration package. Both documentation
and a sample integration ow are
available.

One example integration scenario has


been added that shows how to use the ID
Mapping step together with the AS2
sender adapter.

Another example scenario shows how to


set up quality of service Exactly Once
when the receiver system isn't
idempotent.

See:

ID Mapping (with AS2 Sender


Adapter)

XI Sender Adapter Handles


Duplicates

Cloud Cloud Enhanced Cloud With the enhancement of the OData API, Info only General Changed
Integration Foundry Integration you can now get the build and deploy Availability
OData API status of an integration artifact. This
Neo
status indicates the deployment status of
an artifact triggered for deployment.

See:

Integration Content

Get Runtime Status of Deployed


Integration Flow

This is custom documentation. For more information, please visit the SAP Help Portal 29
6/14/2023

Technical Environment Title Description Action Lifecycle Type


Component

Cloud Cloud New Optional We introduced new optional parameters: Info only General New
Integration Foundry Parameters for Availability
ClientCompression
Data Archiving
ResponseCompression

CookiesForAuthentication

ConnectTimeout

ReadTimeout

See: Con guring Destination

Cloud Cloud Option to You now have an option to ignore the Info only General New
Integration Foundry Disable HTTP failure responses from remote Availability
Throwing server and proceed with the message
Neo
Exceptions in processing. Earlier, by default, when there
HTTP Receiver were HTTP failure responses, the
Adapter message processing failed too.

See: HTTP Receiver Adapter.

Cloud Cloud TLS 1.3 Protocol You can now use Transport Layer Security Info only General New
Integration Foundry Version (TLS) 1.3 protocol for outbound Availability
Supported communication. See Connectivity Options
Neo
and Communication Security

Cloud Cloud New Process You can now execute a process call step Info only General New
Integration Foundry Call Step to check if an incoming message was Availability
already processed, and skip the
Neo
processing of this message. See De ne
Idempotent Process Call

Cloud Cloud New Integration New content that shows how to transfer Info only General New
Integration Foundry Flow Design les has been added to the Integration Availability
Guideline Flow Design Guidelines – Learn the
Neo
Content Basics integration package. Both
documentation and a sample integration
ow are available.

See:

Combine XML Files via Poll Enrich

Poll and Merge Folder

Cloud Cloud Allow Header You can now unfold long headers in the Info only General New
Integration Foundry Folding in MIME MIME encoder to comply to the mail Availability
Encoder protocol. See De ne a MIME Multipart
Neo
Encoder.

Integration Cloud Deleting a Deleting one or more quali ed instances Info only General Changed
Advisor Foundry Quali ed has now been enhanced to retain the Availability
Instance in a values of the node.
Neo
Message
See: Additional Options For Quali cation
Implementation
Guideline

This is custom documentation. For more information, please visit the SAP Help Portal 30
6/14/2023

Technical Environment Title Description Action Lifecycle Type


Component

Integration Cloud XSD Assertion You can now extend the MIG validation to Info only General New
Advisor Foundry in Message validate dependencies between different Availability
Implementation elds of the MIG structure using XSD
Neo
Guidelines assertions and XSD patterns of a group
node and leaf node respectively.

See: Working with a Node

Initial Setup
Includes links to concepts and activities required to set up and start using Cloud Integration.

Related Information
Initial Setup of SAP Cloud Integration in the Neo Environment
Initial Setup of SAP Cloud Integration in the Cloud Foundry Environment
Environment-Speci c Aspects Integration Developers Should Know

Connecting a Customer System to Cloud Integration


You can set up the technical connection between a tenant and different kinds of remote systems (in many cases located in the
customer landscape).

Throughout this documentation we assume the following basic setup of technical components and communication paths: A
remote system (which is not speci ed) is being connected to one of the tenants that are assigned to the customer. The remote
system can act either as a sender or a receiver of messages. The setup and the detailed con guration procedure differ
according to the communication direction that is being set up: whether a remote system is supposed to send a message to the
integration platform or the other way round.

Throughout this documentation, the terms inbound and outbound re ect the perspective of the integration platform.

Inbound refers to message processing from a remote system (in many cases, located in the customer landscape) to
Cloud Integration. Here, the integration platform is the server.

Outbound refers to message processing from the integration platform to a remote system (where the integration
platform is the client).

Related Information
Introduction
Con guring Inbound Communication
Con guring Outbound Communication
Setting up Message-Level Security Use Cases
Concepts of Secure Communication
This is custom documentation. For more information, please visit the SAP Help Portal 31
6/14/2023

Development
Design integration content in order to specify how messages are to be exchanged between the connected components.

SAP Cloud Integration provides a set of tools and applications that help you perform end-to-end tasks on development and
deployment, packaging and publishing, accessing and editing the integration content.

This topic provides an overview of roles, working environment and tasks involved in managing integration content.

Since the tasks are performed by different roles, in different working environment such as, Integration Designer on Eclipse
platform or SAP Cloud Integration Web application on SAP UI5, the gure below helps you understand the relationship between
the roles, tools/applications, and tasks:

Related Information
Getting Started with Integration Flow Development
Packaging Integration Content in Cloud Integration
Developing Integration Content with SAP Cloud Integration
Developing an OData API Project
Developing Script and Script Collection
Developing Custom Adapters
Parameterizing Integration Flows Using the Partner Directory
API Documentation
Integration Flow Design Guidelines

Getting Started with Integration Flow Development


Learn how to develop and run your rst integration ow.

 Note
These exercises apply for both cases when you use SAP Cloud Integration in the Neo and in the Cloud Foundry environment.

Note that at certain steps there are speci c things to consider depending on the environment. If this is the case, it’s
indicated in this documentation.

 Note
In addition to the exercises provided in this section, you can also check out the Integration Flow Design Guidelines.

This is custom documentation. For more information, please visit the SAP Help Portal 32
6/14/2023
The integration ow design guidelines provide both documentation and prede ned integration content. You can deploy and
run the integration content out-of-the-box to learn basic concepts of Cloud Integration. You can also access the integration
ows from SAP API Business Hub as described in How to Work with the Example Integration Flows.

A key part of an SAP Cloud Integration project is to develop integration ows. An integration ow allows you to specify how SAP
Cloud Integration is to process a message. SAP Cloud Integration provides a modeling environment that allows you to design
the details of message processing (its senders and receivers as well as the individual processing steps) with a graphical user
interface.

This section shows you step by step how to develop and run your rst, simple integration ows. In other words, it gives you an
introduction to the tasks of an integration developer. We show you the design of four integration ows, with increasing
complexity.

 Note
The rst three integration ows start with a timer and don't have a sender. This means that you can omit all tasks related to
setting up a sender system to SAP Cloud Integration.

The fourth integration ow is initiated by a request from a sender system that is simulated by an HTTP client.

To complete the tasks, you use the SAP Cloud Integration Web UI.

Before designing any integration ow of this section, you need to create an integration package rst and, within this integration
package, create an integration ow. When you've created the integration ow, you add the steps as described for the speci c
integration ow exercise.

The rst exercise shows you how to perform a simple smoke test to check whether your tenant cluster is working
correctly and that it processes messages in the expected way. A simple message is created with the text Hello
World! in the message body. The integration ow has no receiver. To check if the message has been processed
successfully, you can go to the monitoring application and check for the message content there.

More information: Smoke Test Scenario

The second exercise shows you how to extend the smoke test scenario by adding an outbound call to an external data
source. The integration ow requests data exposed by the external component through an OData application
programming interface (API). The message body is created based on that data and, like in the rst exercise, can be
displayed by the monitoring application.

More information: Smoke Test Scenario with External Data Source

The third exercise is a simple enhancement and modi cation of second integration ow. It has an e-mail receiver so that
you receive the message (processed by SAP Cloud Integration) in an e-mail account of your choice.

More information: Timer-Initiated Scenario with a Mail Receiver

The last exercise is a simple integration ow that also has a sender component. The sender in this example is simulated
by an HTTP client installed on your computer.

More information: Sender-Initiated Scenario (with HTTPS Sender Adapter)

The exercises are designed so that you can do all four of them independently. All steps are described one-by-one. But you can
also start with the rst one and, successively, enhance it to derive the second and the third scenario out of the rst one.

There are sample integration ows that show other simple modi cations and additional features.

More information: Further Sample Integration Flows

This is custom documentation. For more information, please visit the SAP Help Portal 33
6/14/2023

 Note
Prerequisites:

You have set up an e-mail account that you can use as the receiver system for the integration ow (only required for
third exercise with the Mail adapter).

You have opened the SAP Cloud Integration Web UI, which contains all the tools you need to set up, run, and monitor
your integration scenario.

You can access the Web UI using the hyperlink that ends with /itspaces.

You have been given access to an SAP Cloud Integration tenant and have the following permissions assigned to your
user (in the Cloud Foundry environment):

Authorization group PI_Integration_Developer (to be authorized to perform integration developer


tasks)

Authorization group PI_Business_Expert (to allow you to access message processing log attachments)

You have been given access to an SAP Cloud Integration tenant and have the following permissions assigned to your
user (in the Neo environment):

Role collection AuthGroup.IntegrationDeveloper (to be authorized to perform integration developer


tasks)

Role collection AuthGroup.BusinessExpert (to allow you to access message processing log attachments)

Further Reading
For an introduction to the concept of integration ows, check out Elements of an Integration Flow.

For an overview of the available connectivity options (adapter types), check out Connectivity (Adapters).

For an overview of the available message processing options (integration ow step types), check out Integration Capabilities.

Related Information
Overview of the SAP Cloud Integration Web UI
Creating an Integration Package
Creating an Integration Flow
Smoke Test Scenario
Smoke Test Scenario with External Data Source
Timer-Initiated Scenario with a Mail Receiver

Overview of the SAP Cloud Integration Web UI


The SAP Cloud Integration Web UI is your one-stop shop for integration development.

Note that the URL to access the Web UI ends with /itspaces.

The Web UI comprises the following sections:

Discover

This is custom documentation. For more information, please visit the SAP Help Portal 34
6/14/2023
Here, you can nd prede ned integration content provided by SAP that you can use out of the box and adapt to your
requirements. As the Getting Started documentation focuses on how to design your own integration content, we do not
go into any more detail on this section.

Design

This is where you design your integration content. As you progress through the exercise in the Getting Started
documentation, you will spend most of your time in this section. It contains the graphical integration ow modeling
environment.

Monitor

This is where you can monitor your integration ow. You also use this section to manage additional artifacts that you
need to deploy on your tenant to complement your integration ows (for example, User Credential artifacts to con gure
connections using basic authentication).

Design Section
When you go to the Design section, you nd a list of integration packages de ned for the tenant.

When you select an integration package, you can nd the integration ows (and other artifacts) de ned for the package (on the
Artifacts tab).

In this Getting Started documentation, we assume that you have not yet de ned an integration package for your integration
content. Therefore, the rst step is to de ne an integration package.

Monitor Section
The Monitor section (also referred to as Operations view) has several subsections, each one containing several tiles. These
subsections allow you to perform various tasks that are required for an integration project in addition to integration content
design.

Monitor Message Processing

When you select a tile in this section, you nd all messages that have been processed by all integration ows deployed on
the tenant. You can nd out whether messages have been processed successfully for your integration ow and analyze
the situation if not.

Manage Integration Content

When you select a tile in this section, you nd all deployed integration ows and can check whether deployment was
successful. You can also nd the endpoint address for your integration ow (which you need if you want to con gure the
endpoint in the connected sender system).

Manage Security

The Security Material tile contains security-related artifacts that are required on the tenant in addition to the
security-relevant settings in your integration ow. In the course of the following exercise, you will create and
deploy a User Credentials artifact to de ne the user name and password for the mail account that is addressed
by the Mail receiver adapter of the integration ow.

The Keystore tile shows the content of the tenant keystore, which contains key pairs and certi cates required to
set up connections that are protected using certi cate-based authentication. In the exercise, we need to add
certi cates when setting up the connection to the e-mail receiver.

The Connectivity Tests (only available in the Neo environment) tile allows you to test outbound connections
(from SAP Cloud Integration to a receiver system). We use the connectivity test tool to retrieve the certi cates of
the e-mail receiver that need to be imported into the tenant keystore.

This is custom documentation. For more information, please visit the SAP Help Portal 35
6/14/2023
There are other sections and tiles that are required for additional tasks, but these are not required in the Getting Started
exercise, so we will not look at them in any more detail here.

Related Information
Developing Integration Content with SAP Cloud Integration
Monitor

Create an Integration Package


Create an integration package that contains your integration ows.

An integration package is used like a folder for your integration content (integration ows, value mappings, and OData
services). You can transport an integration package, for example, if you want to design your integration content on a test tenant
rst and then transport it to a production tenant.

1. Open the Web UI using the hyperlink provided to you in the mail from SAP (the links ends with /itspaces).

2. Go to the Design section of the Web UI.

3. Choose Create.

4. Enter a name and description for your integration package and choose Save.

Smoke Test Scenario

This is custom documentation. For more information, please visit the SAP Help Portal 36
6/14/2023
This is a very simple test to verify that your SAP Cloud Integration is working as expected. You do not need any receiver system
to perform this test.

In this scenario, you create a Hello World text and write it into the message body (scheduled on deployment of the integration
ow). The result is written into the message processing log which you can directly inspect with the message monitoring
application.

 Caution
This integration scenario is designed to show how to quickly (without much effort) set up and run an integration ow without
the need to con gure and connect to any receiver system. It uses a Script step to store the message payload in the message
processing log (to enable you to easily check in the message monitoring application if the message was processed without
any errors).

Note that this is not according to standard best practice. When designing productive scenarios, don't store the message
payload in the message processing log. This can cause severe issues with memory consumption. The reason is that tasks
such as message processing and message monitoring share the same memory and CPU which are available on your tenant.

In the course of this exercise, you develop the following integration ow.

To make it as easy as possible for you to develop this rst integration ow, you don't need to con gure any sender system. That
saves the effort for you to set up a dedicated sender system and to connect it to SAP Cloud Integration. Instead of this,
message processing is triggered by a Timer event, and the inbound message payload is created within the integration ow, in a
dedicated Content Modi er step.

Furthermore, it is also not required that you set up any receiver system. To enable you to check if the message has been
processed correctly, you will con gure the integration so that the message payload is written into the message processing log
(where you can easily inspect it using the Monitor application of the Web UI).

This is how the integration ow will process the message at runtime:

1. The Timer event triggers the processing of the message (according to the settings of the Timer's scheduler).

2. The Content Modi er step creates a message with a simple text content (Hello World!).

3. The Groovy Script step logs the payload of the message (that means, it writes the message content into the message
processing log).

When you have nished the integration ow design, you save and deploy the integration ow.

You can then monitor message processing.


This is custom documentation. For more information, please visit the SAP Help Portal 37
6/14/2023

Related Information
Create a Content Modi er to De ne the Message Body
Create a Script Step to Log the Payload
Save and Deploy the Integration Flow
Monitor Message Processing

Add a Timer Start Event


1. Open the integration ow model (Edit mode), select the Sender shape, and choose the recycle bin icon (to remove the
Sender shape).

2. In the same way, remove the Start event.

3. In the palette, select the Events entry, and then select the Timer shape.

This is custom documentation. For more information, please visit the SAP Help Portal 38
6/14/2023

4. Place the Timer shape in the Integration Process shape (at the point where the Start event was previously located).

5. In the properties section of the Timer event (displayed below the integration ow model when the Timer event is
selected in the model), go to the Scheduler tab.

6. Make sure that the option Run Once is selected.

 Note
You can, of course, try out the other settings, which enable the Timer to start message processing periodically.
However, take care when selecting these options and you have added a receiver to your scenario. For example, in
another demo scenario provided in this documentation, the receiver of the message is an e-mail account, and you
don't want your e-mail account to be inundated with periodically generated e-mails.

Related Information
De ne a Timer Start Event

This is custom documentation. For more information, please visit the SAP Help Portal 39
6/14/2023

Create a Content Modi er to De ne the Message Body


Add a Content Modi er step to create the message body.

As the integration ow has no sender, we use a Content Modi er to create a message from scratch.

1. To add a Content Modi er, go to the palette, choose the Message Transformers icon, and select the Content Modi er
icon.

2. Place the Content Modi er in the model after the Timer Start event.

3. In the Content Modi er properties section, go to the Message Body tab and enter the following string sequence in the
entry eld:

Hello World!

This simulates the inbound XML message.

This is custom documentation. For more information, please visit the SAP Help Portal 40
6/14/2023
4. Connect the Timer event with the Content Modi er. To do this, select the Timer event.

5. Click the arrow icon, and drag and drop the cursor to the Content Modi er.

Create a Script Step to Log the Payload


Add a Script step to log the message payload.

With a Groovy Script step, you can con gure the integration in such a way that the payload of the message is written to the
message processing log as attachment.

1. To add a Script step (containing a Groovy script), go to the palette and choose the Message Transformers icon and
select the Script icon.

This is custom documentation. For more information, please visit the SAP Help Portal 41
6/14/2023

2. In the Script submenu, select Groovy Script.

3. Place the Script step shape after the Content Modi er step and connect both shapes.

4. Select the Script step.

The context icons are displayed.

5. Choose the + icon.

6. The default script coding of the step is displayed.

This is custom documentation. For more information, please visit the SAP Help Portal 42
6/14/2023

7. Replace this content by the script provided in the coding example below.

import com.sap.gateway.ip.core.customdev.util.Message;
import java.util.HashMap;

def Message processData(Message message)


{
def body = message.getBody(java.lang.String) as String;
def messageLog = messageLogFactory.getMessageLog(message);
if(messageLog != null)
{
messageLog.addAttachmentAsString("Log current Payload:", body, "text/plain");
}
return message;
}

8. Choose OK.

The integration ow model is again displayed.

Save and Deploy the Integration Flow


Save and deploy the integration ow on the tenant to process it.

1. When you've nished modeling the integration ow, select Save.

Once saving has been successful, a corresponding status message is displayed.

This is custom documentation. For more information, please visit the SAP Help Portal 43
6/14/2023
2. Select Deploy.

A message is displayed that asks you to con rm this action.

3. Select Yes.

Another message is displayed when the validation has been performed and the integration ow deployment has been
triggered.

4. Select OK.

After successful deployment, a status message is displayed.

 Note
In case of a modeling error, instead of this message, a Validation Failed message is displayed. Only when you've
xed the error, the deployment of the integration ow is triggered.

5. Choose the Operations view to check the status of the deployment.

6. Select a tile in the section Manage Integration Content.

You can check the deployment status of your integration ow.

It changes from Starting to Started.

This is custom documentation. For more information, please visit the SAP Help Portal 44
6/14/2023

 Tip
There's an alternative approach to deploy an integration ow:

Open the integration package that contains the integration ow to. Go to the Artifacts tab, select the Actions button (next
to the name of the integration ow that you like to deploy) and select Deploy.

Monitor Message Processing


Run the integration ow and check the result of message processing.

When the integration ow has been deployed successfully, the message is processed without any further trigger (based on the
settings of the timer).

1. Go to the Operations view and select a tile under Monitor Message Processing.

If your integration ow has been processed successfully, the status Completed should be shown.

2. Select the integration ow and analyze the details area to the right of the integration ow list.

3. Under Attachments, click Log current Payload.

You should see the message content, which consists of the following text:

Hello World!

This shows you that the message has been processed correctly.

This is custom documentation. For more information, please visit the SAP Help Portal 45
6/14/2023

Smoke Test Scenario with External Data Source


This is a very simple test to verify that your SAP Cloud Integration is working as expected. You do not need any receiver system
to perform this test.

In this scenario, you access an OData API and get information about a product (for a speci c product ID). The result is written
into the message processing log which you can directly inspect with the message monitoring application.

 Caution
This integration scenario is designed to show how to quickly (without much effort) set up and run an integration ow without
the need to con gure and connect to any receiver system. It uses a Script step to store the message payload in the message
processing log (to enable you to easily check in the message monitoring application if the message was processed without
any errors).

Note that this is not according to standard best practice. When designing productive scenarios, don't store the message
payload in the message processing log. This can cause severe issues with memory consumption. The reason is that tasks
such as message processing and message monitoring share the same memory and CPU which are available on your tenant.

In the course of this exercise, you develop the following integration ow.

To make it as easy as possible for you to develop this rst integration ow, you don't need to con gure any sender system. That
saves the effort for you to set up a dedicated sender system and to connect it to SAP Cloud Integration. Instead of this,
message processing is triggered by a Timer event, and the inbound message payload is created within the integration ow, in a
dedicated Content Modi er step.

Furthermore, it is also not required that you set up any receiver system. To enable you to check if the message has been
processed correctly, you will con gure the integration so that the message payload is written into the message processing log
(where you can easily inspect it using the Monitor application of the Web UI).

This is how the integration ow will process the message at runtime:

1. The Timer event triggers the processing of the message (according to the settings of the Timer's scheduler).

2. The rst Content Modi er step creates a message with only one element, a productIdentifier (to identify a
product from the product catalog).

The actual value of the productIdentifier is hard-coded in this step. If you like to process the integration ow with
another product identi er, you need to change the value in this step and re-deploy the integration ow again. This is the
drawback which results from abstaining from a dedicated sender system.
This is custom documentation. For more information, please visit the SAP Help Portal 46
6/14/2023
3. The second Content Modi er creates a message header (which we also call productIdentifier) and writes the
actual value of the productIdentifier element into it. This header will be used in the subsequent step.

4. The Request Reply step passes over the message to an external data source and retrieves data (about products) from
there.

The external data source is represented by the lower WebShop shape.

The external data source supports the Open DataProtocol (OData). For our scenario, we use the ESPM WebShop, which
is based on the Enterprise Sales and Procurement Model (ESPM) provided by SAP.

For the connection to the WebShop, an OData receiver channel is used. To query for exactly one product (for the product
identi er provided with the inbound message), the header that has been created in the preceding Content Modi er is
used.

5. The OData API provides the details of one speci c product (according to the product identi er provided with the inbound
message).

6. The Groovy Script step logs the payload of the message (that means, it writes the message content into the message
processing log).

You can then run the integration ow and monitor message processing as described under: Run the Integration Flow and
Monitor the Message Processing.

Related Information
Create the Script Step to Log the Payload
Run the Integration Flow and Monitor the Message Processing

Create a Content Modi er to De ne the Message Body


Add a Content Modi er step to create the message body.

As the integration ow has no sender, we use a Content Modi er to create a message from scratch.

1. To add a Content Modi er, go to the palette, choose the Message Transformers icon, and select the Content Modi er
icon.

2. Place the Content Modi er in the model after the Timer Start event.

3. In the Content Modi er properties section, go to the Message Body tab and enter the following string sequence in the
entry eld:

 Sample Code
This is custom documentation. For more information, please visit the SAP Help Portal 47
6/14/2023

<root>
<productIdentifier>HT-1080</productIdentifier>
</root>

This simulates the inbound XML message.

4. Connect the Timer event with the Content Modi er. To do this, select the Timer event, click the arrow icon, and drag and
drop the cursor to the Content Modi er.

Related Information
De ne Content Modi er

Create a Content Modi er to Add a Header


Add a Content Modi er to your model to de ne a header, which will be used in a later step to lter data from the external
source.

If you remember, our input message has only one eld: productIdentifier. This eld will contain a product identi er that we
want to use to lter the results from the WebShop application.

To make this number available to the integration framework during message processing, SAP Cloud Integration provides the
option to store the value of productIdentifier from the incoming message either in the message header or in a data
container referred to as an exchange property.

This is custom documentation. For more information, please visit the SAP Help Portal 48
6/14/2023
We use the rst option, and to prepare the message accordingly we use a Content Modi er.

1. Add a second Content Modi er (after the rst one) to the integration ow model.

2. In the properties section of the second Content Modi er, go to the Message Header tab and choose Add.

3. Specify the following parameters:

Name: Enter any name, for example, productIdentifier. This is the name of the header that will be created
by the Content Modi er step.

Type: Select XPath.

 Tip
In this example, you use an XML Path Language (XPath) expression to address a dedicated element of your
inbound message. XPath allows you to address any element in an XML structure by using a well-de ned
syntax. The expression //<element name> addresses all elements with name <element name> in the
XML document.

Data Type: Enter java.lang.String.

Value: Enter //productIdentifier (which is the XPath expression that points to the productIdentifier
eld in the inbound message).

4. Connect the rst Content Modi er (which de nes the message body) with the second one.

In other words, the Content Modi er creates a header with the name productIdentifier, which will contain the value of the
productIdentifier eld of the incoming message.

Related Information
De ne Content Modi er

Create the Outbound OData Channel


To call the external data source, add a Request Reply step to the integration ow model and connect this step with the external
system using an OData channel.

 Note
Follow this procedure in case you use SAP Cloud Integration in the Neo environment.

To con gure SAP Cloud Integration to send a request message to the external OData API (to retrieve the required data), you
need to do the following:

Create a Request Reply step.

Connect the Request Reply step to a Receiver shape and select the OData adapter type.

Con gure the OData adapter to specify how the OData API of the external service should be called (to de ne query
options, for example).

This is custom documentation. For more information, please visit the SAP Help Portal 49
6/14/2023

 Remember
There are currently certain limitations when working in the Cloud Foundry environment. For more information on the
limitations, see SAP Note 2752867 .

1. Go to the palette and select the Call entry.

2. Select External Call and in the submenu choose Request Reply.

3. Place the Request Reply shape between the second Content Modi er and the End event in the model.

Furthermore, connect the second Content Modi er with the Request Reply step and the Request Reply step with the End
event.

4. Move the Receiver shape closer to the Request Reply shape (below the Request Reply shape but outside the Integration
Process shape, as shown in the overall integration ow model under Smoke Test Scenario with External Data Source).

5. Connect the Request Reply shape to the Receiver shape (by selecting the Request Reply shape, clicking the arrow icon,
and dragging and dropping the cursor on the Receiver shape).

6. In the next dialog, choose adapter type OData OData V2 .

7. In the next dialog, as Message Protocol select OData V2.

 Note
This is custom documentation. For more information, please visit the SAP Help Portal 50
6/14/2023
This adapter supports different versions of the OData protocol. Select version 2.0.

8. Go to the Connection tab of the OData adapter and enter the following as Address:

https://refapp-espm-ui-cf.cfapps.eu10.hana.ondemand.com/espm-cloud-web/espm.svc

 Tip
This is the endpoint address of the ESPM WebShop's OData application programming interface.

9. Go to the Processing tab.

10. Next to Resource Path, choose Select.

In the Query Editor opens, you can conveniently de ne the OData query.

The Address eld is already populated with the value you just entered.

11. Make sure that Remote is selected as the Connection Source, and choose Step 2.

The system connects to the WebShop service and retrieves the metadata from its OData API.

12. Choose the search icon in the Select Entity eld.

Select Products.

13. A list of the available elements is provided, using the information from the OData API.

This is custom documentation. For more information, please visit the SAP Help Portal 51
6/14/2023
Choose a set of elements for which you want to retrieve data (for example, all elements, as shown in the next gure) and
choose Step 3.

14. Choose the copy icon in the Filter By eld and select ProductId.

15. Select Equal.

16. In the third eld, enter an expression that allows the integration framework to access the message header
productIdentifier that you created in the preceding Content Modi er step: ${header.productIdentifier}.

 Tip
The dollar sign and the curled brackets indicate that we're dealing with Apache's Simple Expression Language , which
is often used in SAP Cloud Integration. In particular, here, you see a dynamic parameter, which has the following
effect: The value of the header productIdentifier (which is identical to the value of the productIdentifier
eld of the incoming message) is used dynamically at runtime to de ne the OData query.

17. Choose Finish.

Related Information
De ne Request Reply
This is custom documentation. For more information, please visit the SAP Help Portal 52
6/14/2023
Con gure the OData V2 Receiver Adapter
Dynamically Con gure Integration Flow Parameters

Create the Script Step to Log the Payload


Add a Script step to log the message payload.

With a Groovy Script step, you can con gure the integration in such a way that the payload of the message is written to the
message processing log.

1. To add a Script step (containing a Groovy script), go to the palette and choose the Message Transformers icon and
select the Script icon.

2. In the Script submenu, select Groovy Script.

3. Place the Script Step shape after the Request Reply step and connect both shapes.

4. Select the Script step.

The context icons are displayed.

This is custom documentation. For more information, please visit the SAP Help Portal 53
6/14/2023

5. Choose the + icon.

6. The default script coding of the step is displayed.

7. Replace this content by the script provided in the coding example below.

import com.sap.gateway.ip.core.customdev.util.Message;
import java.util.HashMap;

def Message processData(Message message)


{
def body = message.getBody(java.lang.String) as String;

This is custom documentation. For more information, please visit the SAP Help Portal 54
6/14/2023
def messageLog = messageLogFactory.getMessageLog(message);
if(messageLog != null)
{
messageLog.addAttachmentAsString("Log current Payload:", body, "text/plain");
}
return message;
}

8. Choose OK.

The integration ow model is again displayed.

9. Save and deploy the integration ow.

Run the Integration Flow and Monitor the Message Processing


Run the integration ow and check the result of message processing.

When the integration ow has been deployed successfully, the message is processed without any further trigger (based on the
settings of the timer).

1. When you have saved and deployed your integration ow, check the deployment status. Go to the Monitor section of the
Web UI and select a tile under Manage Integration Content.

2. As soon as deployment has nished, the status Started should be displayed for your integration ow.

3. Go back to the overview page of the Web UI Monitor section and select a tile under Monitor Message Processing.

If your integration ow has been processed successfully, the status Completed should be shown.

4. Select the integration ow and analyze the details area to the right of the integration ow list.

5. Under Attachments, click Log current Payload.

You should see the message content, which consists of the details of the product associated with the value of
productIdentifier entered in the rst Content Modi er.

This shows you that the message has been processed correctly.

Timer-Initiated Scenario with a Mail Receiver


Create a simple integration scenario that is initiated by a timer, retrieves data from an external source, and sends the result to
an e-mail account (as the receiver system).

A typical challenge addressed by an integration scenario is to retrieve data from a certain source (for example, product details
from a product catalog on a vendor's site) using certain lter criteria. We use the integration ow described in this section to
address such a use case.

In the course of this exercise, you develop the following integration ow:

This is custom documentation. For more information, please visit the SAP Help Portal 55
6/14/2023

To make it as easy as possible for you to develop this integration ow, you don't need to con gure a sender system. This saves
you the effort of setting up a dedicated sender system and connecting it to SAP Cloud Integration. Instead, message processing
is triggered by a Timer event, and the inbound message is created within the integration ow, in a dedicated Content Modi er
step.

As a prerequisite to use the Mail adapter, you need to take care of the following things.

Update the tenant keystore with the certi cates required by the mail server.

Create and deploy a User Credentials artifact that contains the credentials of the mail account.

This is how the integration ow processes the message at runtime:

1. The Timer event triggers the processing of the message (according to the settings of the Timer's scheduler).

2. The rst Content Modi er step creates a message with only one element: a productIdentifier (to identify a
product from the product catalog).

The actual value of the productIdentifier is hard-coded in this step. If you want to process the integration ow with
another product identi er, you need to change the value in this step and redeploy the integration ow. This is the
drawback of not having a dedicated sender system.

3. The second Content Modi er step creates a message header (which we also call productIdentifier) and writes the
actual value of the productIdentifier element into it. This header is used in the subsequent step.

4. The Request Reply step passes the message to an external data source from which it retrieves data (about products).

The external data source is represented by the lower WebShop shape.

The external data source supports the Open DataProtocol (OData). For our scenario, we use the ESPM WebShop, which
is based on the Enterprise Sales and Procurement Model (ESPM) provided by SAP.

An OData receiver channel is used to connect to the WebShop. The header that was created in the preceding Content
Modi er is used to query exactly one product (using the product identi er provided with the inbound message).

5. The OData API provides the details of this product.

6. Finally, the result of the request is forwarded to an e-mail account using the Mail receiver adapter (the e-mail server is
represented by the Mail_Ser … shape on the right in the integration ow model).

When you have nished integration ow design, you can monitor message processing.

This integration ow introduces you to a number of important aspects of integration development, such as de ning an OData
query and using a message header to dynamically query an OData source.

This is custom documentation. For more information, please visit the SAP Help Portal 56
6/14/2023

Related Information
Update the Tenant Keystore with the Certi cates Required by the Mail Server
Create and Deploy a User Credentials Artifact for the E-Mail Account
Create the Mail Receiver Channel
Monitor Message Processing

Update the Tenant Keystore with the Certi cates Required by the
Mail Server
Add the required server root certi cates (required by the e-mail provider) to the tenant keystore.

The tenant keystore contains the key pairs and certi cates that are required (on the tenant side) to establish trusted
communication with the connected systems.

When establishing the connection to the SAP Cloud Integration tenant, the e-mail server needs to authenticate itself against
SAP Cloud Integration using a digital server certi cate. For this purpose, the tenant keystore must contain a root certi cate
that is also trusted by the e-mail server.

You can download the required certi cates usually on a dedicated section of the email provider's website. You can search for
server certi cate to get more information. Note that the procedure can differ depending on the email provider.

Get the E-Mail Servers' Certi cate


To get the e-mail servers' root certi cate, you can do the following:

1. Open the website that hosts the mail account you like to address with the Mail adapter.

2. In the browser address eld, click the lock icon and select Certi cate (Valid) (example for using Google Chrome).

3. In tab Certi cation Path, doubleclick the uppermost node (which is the root certi cate).

This is custom documentation. For more information, please visit the SAP Help Portal 57
6/14/2023

4. Click Details and select Copy to File ....

5. In the wizard, click Next.

6. On the next screen, keep the setting DER encoded binary X.509 (.CER) and click Next.

This is custom documentation. For more information, please visit the SAP Help Portal 58
6/14/2023
7. Choose a directory on your computer where to store the certi cate le and a name.

8. Click Next and then Finish.

The root certi cate is stored as le with extension .cer on your computer.

Get the E-Mail Servers' Certi cate


A smart way to get the required certi cates is by using the Connectivity Test application provided as part of SAP Cloud
Integration.

 Remember
There are currently certain limitations when working in the Cloud Foundry environment. For more information on the
limitations, see SAP Note 2752867 .

1. Go to the Monitor section of the Web UI and select the Connectivity Tests tile under Manage Security.

2. Choose SMTP.

3. Specify the following parameters.

Host: Enter the address of the e-mail provider (for the SMTP protocol). This is the same address that you
speci ed in the Mail receiver adapter (without the port), for example, smtp.mail.yahoo.com.

Proxy Type: Select Internet.

Port: Select the port that you speci ed in the Mail receiver adapter (for example, 465 (SMTPS)).

Authentication: Select None.

Deselect the option Validate Server Certi cate.

4. Choose Send.

The resulting response shows details about the certi cates required by the e-mail server.

5. Choose Download.

The certi cates are downloaded as a compressed le on your computer.

6. Extract the certi cates on your computer from the compressed (.zip) le.

Finally, you need to import the downloaded certi cates to the tenant keystore. To do this, open the Keystore monitor.

This is custom documentation. For more information, please visit the SAP Help Portal 59
6/14/2023
1. Go to the Monitor section of the Web UI and select the Keystore tile under Manage Security.

All certi cates that are already included in the keystore are displayed. These certi cates are initially provided by SAP.

2. Choose Add Certi cate .

3. Browse to the certi cate stored on your computer, provide an alias (to identify the certi cate in the keystore) and
choose Deploy.

4. Repeat this task for all certi cates that you have downloaded.

 Note
You also need to change the settings of your e-mail account so that the mail server accepts connections to remote
applications with a lower security level (for example, for Yahoo mail, this is the Less Secure Apps setting). If you don't do this,
the integration ow raises an error during processing.

 Note
If you don't upload the required root certi cate to the tenant keystore and try to execute the integration ow (when having
nished its design), message processing fails with the following error message starting with:

 Sample Code

javax.mail.MessagingException: Could not connect to SMTP host: smtp.mail.yahoo.com, port: 465;


nested exception is:
javax.net.ssl.SSLHandshakeException ...

Related Information
SMTP Connectivity Tests
Managing Keystore Entries
Setting Up Outbound Mail Connections

Create and Deploy a User Credentials Artifact for the E-Mail


Account
Deploy a User Credentials artifact that contains the user name and password for your receiver mail account.

1. Go to the Monitor section, and select the Security Material tile under Manage Security.

2. Choose Create User Credentials .

This is custom documentation. For more information, please visit the SAP Help Portal 60
6/14/2023

3. As Name, enter the User Credentials name that you speci ed in the Mail receiver adapter, and as User enter the e-mail
account user name (also speci ed in the elds From and To in the Mail receiver adapter).

Also provide the password of the mail account.

 Note
Storing the user name and password in a separate artifact increases the security level of integration development.

4. Choose Deploy.

Related Information
Deploying a User Credentials Artifact

This is custom documentation. For more information, please visit the SAP Help Portal 61
6/14/2023

Create the Mail Receiver Channel


Add a Mail receiver channel to enable the integration ow to send messages to an e-mail account.

1. First, add a second receiver to represent the e-mail account. In the integration ow model (in Edit mode), select the
Participants entry from the palette and select Receiver.

2. Place the Receiver shape on the right side of the model, outside the Integration Process shape.

You can rename the shape to Mail_Receiver (for example).

3. Select the End event, click the arrow button and drag and drop the cursor on the Receiver shape.

4. Select Mail as the Adapter Type.

5. In the Mail adapter properties section (below the model), go to the Connection tab and specify the following Mail
adapter parameters.

The gure shows example settings, which are explained further below.

This is custom documentation. For more information, please visit the SAP Help Portal 62
6/14/2023

Address: Enter the address of your mail provider, followed by a colon and the port number. The example in the
gure shows the address for Yahoo Mail (smtp.mail.yahoo.com:465) and SMTP protocol.

Proxy Type: Select Internet.

Protection: Select SMTPS.

Authentication: Select Plain User/Password.

Credential Name: Enter a name for a User Credentials artifact that you will create in a subsequent step, for
example, MyCredentials.

The User Credentials artifact will contain the user name and password for the e-mail account to which the
message is to be sent.

Keep the default settings for the other parameters.

6. In the Mail adapter properties section (below the model), go to the Processing tab and specify the following Mail adapter
parameters.

From and To: Enter the mail address of the e-mail account that should receive the message.

Subject: Enter a meaningful text.

7. Save and deploy the integration ow.

Related Information
Mail Adapter
This is custom documentation. For more information, please visit the SAP Help Portal 63
6/14/2023

Monitor Message Processing


As you use a Timer event to trigger the message processing, the integration ow is processed as soon as it is deployed.

1. To check whether the processing has been executed correctly, go to your e-mail account. You should nd a mail with the
following content:

2. Finally, check how the message was processed by opening the Monitor section of the Web UI.

3. Choose a tile under Monitor Message Processing and you should nd your message with the integration ow name.

4. Open the integration ow in Edit mode, click the rst Content Modi er and on the Message Body tab change the value of
the productIdenti er to HT-2001 and redeploy the integration ow.

5. Once the integration ow has been deployed successfully, you should receive an e-mail with details about another
product.

Related Information
Monitor Message Processing

Sender-Initiated Scenario (with HTTPS Sender Adapter)


Create a simple integration scenario that is initiated by a sender (using the HTTPS sender adapter).

This is custom documentation. For more information, please visit the SAP Help Portal 64
6/14/2023
With the following steps, you can easily modify and extend the previously built integration ow with the email receiver (Timer-
Initiated Scenario with a Mail Receiver).

The gure shows the integration ow model that you get as a result of this exercise.

In the modi ed integration ow, an HTTP client instead of a Timer event triggers message processing.

Furthermore (to simplify the design), we have merged the steps processed by two different Content Modi er steps in the
previously built integration ow into one Content Modi er step.

 Note
As a prerequisite to execute this integration ow in the Cloud Foundry environment, you need to authorize the sender
system (HTTP client) to call the integration ow endpoint. For that purpose, you create a service instance on SAP BTP and
generate service key credentials (which can then be used by the HTTP client to call the integration ow endpoint).

This is how the integration ow processes the message at runtime:

1. The HTTP client (represented by the Sender shape) sends an HTTP request to SAP Cloud Integration through an HTTPS
sender channel. The HTTPS request body, which is in JavaScript Object Notation (JSON) format, contains a product
identi er.

2. The JSON-to-XML converter transforms the request body into XML format (which can be processed in the following
step, the Content Modi er).

3. The Content Modi er creates a message header (which we also call productIdentifier) and writes the actual value
of the productIdentifier element into it. This header is used in the subsequent step.

In this exercise, you use one Content Modi er to create the header and to write the message body.

4. The Request Reply step passes the message to an external data source and retrieves data (about orders) from there.

The external data source supports the Open DataProtocol (OData). For our scenario, we use the ESPM WebShop, which
is based on the Enterprise Sales and Procurement Model (ESPM) provided by SAP.

5. An OData receiver channel is used for the connection to the OData source. To query for exactly one product (for the
product identi er provided with the inbound message), the header that was created in the preceding Content Modi er is
used.

6. The OData API provides the details of one speci c product, which is identi ed by the actual value of the
productIdentifier eld (provided with the inbound HTTP request).

This is custom documentation. For more information, please visit the SAP Help Portal 65
6/14/2023
7. Finally, the result of the request is forwarded to an e-mail account using the Mail receiver adapter (the e-mail server is
represented by the right Mail … shape in the integration ow model).

When you have nished the integration ow design, you can send the message through the HTTP client.

Related Information
Timer-Initiated Scenario with a Mail Receiver
Authorize the HTTP Client to Call the Integration Flow Endpoint, Cloud Foundry Environment
Create the HTTPS Sender Channel
Add the JSON to XML Converter
Create the Mail Receiver Channel
Send the HTTP Request and Process the Integration Flow

Authorize the HTTP Client to Call the Integration Flow Endpoint,


Cloud Foundry Environment
You perform these steps to authorize the sender (HTTP client) to call the SAP Cloud Integration integration ow endpoint.

 Note
This information is relevant only when you use SAP Cloud Integration in the Cloud Foundry environment.

 Note
You need to perform these steps only in case you use SAP Cloud Integration in the Cloud Foundry environment.

These steps imply that you create a service instance on SAP BTP and generte a service key for it. The credentials which you get
as a result can be used by the HTTP client to call the integration ow endpoint.

Create Service Instance


A service instance de nes how an application on SAP BTP can be called by a sender (in our scenario, the HTTP client). In
technical terms, it is an OAuth client.

Go to SAP BTP cockpit and perform the steps described at Creating Service Instance and Service Key for Inbound
Authentication.

When de ning the service instance, enter the following JSON content:

 Sample Code

{
"roles":[
"ESBMessaging.send"
]
}

Create Service Key

This is custom documentation. For more information, please visit the SAP Help Portal 66
6/14/2023
With this step, you generate credentials to communicate with a service instance.

Perform the steps described at Creating Service Instance and Service Key for Inbound Authentication.

The sender application (HTTP client) uses these credentials (clientid and clientsecret) to access the SAP Cloud
Integration integration ow endpoint.

You need to copy the values of clientid and clientsecret to your clipboard or to a text editor for later reference.

These values specify the credentials of the user associated with the sending application.

Create the HTTPS Sender Channel


Add an HTTPS sender channel to enable the integration ow to receive HTTP requests.

1. Select the integration ow and choose Edit.

2. Click the Sender shape. The context icons for the Sender appear.

 Note
If you choose the information icon, the version of the integration ow component is displayed.

Do not confuse the version of an individual integration ow component with the software version of SAP Cloud
Integration. An integration ow component gets a new version each time a new feature is added to it by SAP. Let's
imagine a situation where you started modeling an integration ow some time ago and now want to continue working
on it. Let's assume that SAP has updated the software in the meantime. A new version of an integration ow step or
shape that you have used is now available, containing a new feature. You can continue to use the old component
version, but if you want to use the new feature you need to update to the new version.

3. Click the arrow icon and drag and drop the cursor on the Start event.

The list of available adapter types is displayed in a dialog.

4. Choose adapter type HTTPS .

The properties of the adapter are shown below the model.

5. Go to the Connection tab.

This is custom documentation. For more information, please visit the SAP Help Portal 67
6/14/2023

Specify the following parameters:

Address: This parameter de nes the endpoint under which the integration ow can be called from the sender.
Start the address with a slash, for example,/FirstFlow.

Authorization and User Role: You want to con gure your rst integration ow so that the inbound request is
authenticated using basic authentication (based on user credentials). To keep it simple, you use your dialog user.
During onboarding, you also made sure that the role ESBMessaging.send was assigned to your user (and this
setting was also used when con guring the HTTP client).

You can select other roles for inbound authentication (if you have de ned these roles for the runtime node in
Neo), but you don't use this option in this scenario.

CSRF Protected: Keep this option selected (default setting). It ensures that your integration ow is protected
against Cross-Site-Request-Forgery, a kind of attack where a malicious party can perform harmful actions by
masquerading as the logged in user (the user speci ed for the HTTP client in our case).

Related Information
HTTPS Sender Adapter
Authentication and Authorization Options (Inbound)

Add the JSON to XML Converter


Add a JSON-to-XML converter to convert the HTTP request, which is in JavaScript Object Notation (JSON) format, to XML for
further processing.

With the HTTP client, we send a POST request with a request body in JSON format. To enable the subsequent steps to process
the message, it needs to be converted to XML rst. To perform the required conversion, you can use the JSON-to-XML
converter.

1. In the palette, select the Message Transformers entry and then choose Converter.

This is custom documentation. For more information, please visit the SAP Help Portal 68
6/14/2023

2. In the submenu, choose JSON to XML Converter.

3. In the integration ow model, place the shape inside the Integration Process shape after the Start event.

This is custom documentation. For more information, please visit the SAP Help Portal 69
6/14/2023
The model should now look like this:

Related Information
De ne JSON to XML Converter

Send the HTTP Request and Process the Integration Flow


Set up an HTTP client using Postman and send the HTTP request.

1. Install an HTTP client on your computer.

2. Since the HTTPS sender adapter is con gured to expect User Role authorization, the authentication mode used is basic
authentication (with user credentials).

Select the corresponding authentication mode for your HTTP client.

Depending on whether you work in the Neo or the Cloud Foundry environment, the way how to get the required
credentials differs.

Neo environment:

Specify the credentials of the user that is associated with the inbound HTTP request and that has been assigned
the role ESBMessaging.send in SAP BTP cockpit.

Cloud Foundry environment:

As credentials, enter the values of clientid and clientsecret that have been generated when you created
the service key during onboarding.

The following gure shows the related dialog from SAP BTP cockpit.

This is custom documentation. For more information, please visit the SAP Help Portal 70
6/14/2023

3. As you have selected CSRF Protected in the HTTPS adapter, you need to fetch a CSRF token.

The CSRF token is then used to place the POST request for your integration ow.

a. Find out the endpoint address of the integration ow. To do this, go to the Monitor section of the Web UI.

b. Choose a tile under Manage Integration Content.

c. Select your integration ow. It should be displayed in the list of deployed artifacts with status Started.

d. Copy the endpoint URL to the clipboard.

The URL should end with /http/<Address specified in the HTTPS adapter>.

4. Using your HTTP client, send a GET request to the endpoint address.

Make sure that you send a header with the key X-CSRF-token and the value fetch with the request.

5. You should receive the CSRF token.

You can now send the POST request to the integration ow.

1. Specify the same authentication settings as for the GET request above.

2. Specify the following HTTP request body (JSON format):

 Sample Code

This is custom documentation. For more information, please visit the SAP Help Portal 71
6/14/2023
"productIdentifier": "HT-1080"

3. Copy the value of the CSRF token (obtained from the GET request above) to the clipboard.

4. Add a header to the request.

In the Key eld, enter X-CSRF-Token and in the Value eld, enter the value of the CSRF token from your clipboard.

5. Send the request.

You should get the details of the product with productIdenti er HT-1080.

6. Go to the e-mail account speci ed in the Mail adapter. You should have received an e-mail like this:

7. Place another POST request with a body containing productIdenti er HT-2001, and you receive details of another
product.

8. Finally, check how the message was processed by opening the Monitor section of the Web UI.

Choose a tile under Monitor Message Processing and you should nd your message with the integration ow name.

Related Information

Further Sample Integration Flows


Check out the following links to nd out how to extend the Getting Started integration ow with additional features.

It's easy to modify the Getting Started scenario to demonstrate speci c features.

Related Information
SOAP Sender Adapter: Example Integration Flow
De ne Data Store Select Operations
Examples

This is custom documentation. For more information, please visit the SAP Help Portal 72
6/14/2023

Packaging Integration Content in Cloud Integration


Cloud Integration allows you to assemble integration contents into packages so that integration developers can use these
packages in their integration scenarios.

As an integration developer, you can now create integration packages for your speci c domain or organization. You can also
view different packages published by other integration developers and consume them for your integration purposes. You can
modify these packages based on your requirements and upload them through the web application.

Creating an Integration Package


Create an integration package that is speci c to your integration scenario.

Procedure
1. Choose Design.

2. Choose Create.

3. In the Header tab, provide a Name, a Technical Name, and a Short Description for the package.

4. Choose Save to keep your package.

5. Navigate to other tabs of the package to explore what else you can do with the package.

Importing Integration Packages


Upload your existing integration packages that suits your integration scenario to reduce redundancy and duplication efforts of
creating a package from scratch.

Procedure
1. Choose Design Import .

Importing a new version of a package (zip import) over an existing package doesn't overwrite the con gured values of
the externalized parameters in the existing package.

2. Browse and select the integration package for uploading.

3. Choose OK.

Import of package fails with Uniqueness Con ict when the package contains one or more artifacts that already exist in
other packages of the tenant.

A package is created based on the metadata of the uploaded le.

Working with an Integration Package


Perform various tasks with the artifacts and the integration package.

Procedure
1. Choose Design to view the list of integration packages.

2. If you want to view the details of an integration package, choose <integration package name>.

This is custom documentation. For more information, please visit the SAP Help Portal 73
6/14/2023
3. Navigate to the Artifacts tab, to work with the available artifacts in the package.

a. Choose  View metadata to view the metadata of the artifact.

b. Choose  Deploy to deploy the artifact.

You can only deploy data ows, integration ows, and value mappings. You can deploy multiple value mappings at
a time.

c. Choose  Con gure to con gure the artifact.

You can con gure only integration ows. For more information, see Con gure Externalized Parameters of an
Integration Flow.

d. Choose  Download to download an artifact. The download feature allows users to download the
integration ow artifact with two options:

Default Values Only: Downloads the integration ow with default values only.

 Note
When the downloaded integration ow imported into the system with default values, these values are
seen to the user under externalized parameter view.

Merged Con gured and Default Values: Downloads the integration ow with values that consists of
con gured and default values. This option would replace the default value with the con gured value and
accept it as a new default value.

 Note
When you import the integration ow in the tenant, the con gured values become the default value.
For more information, see Externalize Parameters of an Integration Flow

You can only download integration ows, les, and value mappings. Your local le system stores the downloaded
artifacts with name as <artifact name>.zip le. If you want to use the artifact in Eclipse, you need to import it in
eclipse after extracting it from the zip le.

Editing an Integration Package


Edit your integration package to revise the header and overview sections, add or remove content to the artifacts, and delete
the package.

Procedure
1. Choose Design to view the list of integration packages.

2. Select the required integration package.

3. In the integration package editor, choose Edit.

You can edit the existing information in the following tabs:

Header

Overview

Artifacts

Documents

Tags

4. In the Header tab, you can maintain the name of the package, a short description, a version, and the vendor of the
package.
This is custom documentation. For more information, please visit the SAP Help Portal 74
6/14/2023
All this data is displayed on top of the integration package. Furthermore, in the list of integration packages within your
design workspace, the name, the short description, and the version are displayed.

 Note
Although the technical name of the integration package is displayed in the Header tab, you can't change it. The
technical name can only be de ned either when creating a new package or when copying it from the Discover area.

5. In the Overview tab, you can maintain a more detailed description of your integration package.

You can also add hyperlinks.

Furthermore, you've the option to upload a package image. The image is placed on top of the overview page.

6. In the Artifacts tab, choose .

You get the following functions. The list of functions varies for different artifact types.

Delete

Copy

View metadata

Download

Con gure (only for integration ows)

Deploy (only for data ows and integration ows)

7. To edit the metadata of an artifact, perform the following steps:

a. Choose View metadata.

The <Artifact Type> Details dialog box comes up with the metadata of the artifact. For certain prepackaged,
standard SAP artifacts you see an additional metadata Integration: SAP-to-SAP. This metadata identi es the
standard SAP integration artifacts that connect two SAP systems.

b. In the <Artifact Type> Details dialog box, choose Edit.

 Note
The name of integration ow must begin with an underscore '_' or alphabets. It can contain numbers '0–9',
space ' ', dot '.', and hyphen '-'.

c. Choose Save to keep the changes.

d. Choose Save as version to retain a copy of the current artifact. For more information, see Versioning of Artifacts.

You can view the version history of an artifact by choosing the current version mentioned along with it. You can
save versions of a single or multiple artifacts, or an integration package. You can also view the list of existing
versions of the required artifacts or integration packages. You can choose to make an existing version as the
latest one with or without saving a draft of it.

e. Choose Cancel to revert the changes.

8. In the Documents tab, you can upload les, such as con guration guides, and add URLs.

9. In the Tags tab, you can maintain standard tags such as Product, Country/Region, Lines of Business and Industry.

Furthermore, you can add custom tags to identify and track your packages based on your custom-de ned attributes. For
more information, see Creating Custom Tags.

10. Choose Save to keep the changes made to the integration package.

11. Choose Cancel to discard the changes.

12. Choose Delete Package to permanently delete the integration package.

This is custom documentation. For more information, please visit the SAP Help Portal 75
6/14/2023
Provide your consent to delete the package.

 Remember
You can’t recover the package and its content after you delete them.

Updates for SAP's Integration Packages


SAP provides preshipped content to address various integration scenarios. You can copy these integration packages from the
Discover section to the Design space. SAP also publishes updates with new enhancements and bug xes.

Whenever there's an update (planned or available) for the content that you've copied into your workspace, you're informed by a
label that is displayed below your corresponding artifact.

 Note
You see a noti cation for all updates performed on all standard content packages that have been copied from the Discover
view to the Design view of your tenant. This is even the case if the content isn't deployed on your tenant.

There are two modes through which the package update is done:

1. Manual

2. Automatic

a. Immediate

b. Scheduled

 Note
The update mode is de ned by the content package publisher.

Only in case of a manual update, you've the option not to implement the change. In case of an automatic update, the update
is always applied.

In case of non-con gure-only content, you've the option to revert back to an older version, regardless of the update mode.
However, in case of automatic update you don't receive any automatic update of this content anymore.

Manual
1. If you've copied a package into your Design space and an update is available, only then Update Available label appears
next to the package name.

2. Open the package and choose Update Package.

This is custom documentation. For more information, please visit the SAP Help Portal 76
6/14/2023

Automatic
If the content is set to update automatically , the update of the packages in the Design space happens in one of two ways.

Automatic Update - Immediate

The package gets updated within 12 hours. Updates are pushed immediately when the update includes important bug xes.
These packages have the label Will be updated within 12 hrs next to their names.

Automatic Update - Scheduled

The content of the package is set to be updated on a particular date as con gured during publication. Packages that are
scheduled to update automatically have the label Will be updated on <date>.

You can always update the package manually even if the package is set to be updated automatically.

 Note
If an artifact is already deployed on the tenant, and an automatic update is released for that content package, the automatic
update process also updates the deployed instance of the artifact in addition to the stored instance in the Design view.

Post Update
After successful update, the updated packages display the last modi ed details next to the package names, and the design-time
artifacts are replaced with the new updated content.

If the artifacts contain previously deployed content, the update procedure triggers the deployment of the new design-time
content. If the deployment of updated design-time content fails, then the system retries the deployment three times with an
interval of 1 hour. With every iteration, if the deployment fails, the artifact is rolled back to the previously deployed runtime
version.

This is custom documentation. For more information, please visit the SAP Help Portal 77
6/14/2023
If this happens, your tenant contains content with a newer version of the design time, as there's no rollback of the design time
content to an older version.

You need to manually deploy the newly updated design-time content. If the manual deployment also fails, contact your tenant
administrator with the relevant log details of the issue.

Updates for Edited Content


We recommend to only con gure the standard integration content.

In some scenarios, you can customize the content according to your needs. But once the artifact is modi ed, it does no longer
receive any updates. Such artifacts appear with the grayed-out label of Update Available.

 Note

Package update only updates the content of the package. All attributes and con gured externalized parameters of
the package maintained by the user are retained.

Updates are available even if the packages are renamed.

A renamed artifact does no longer receive any updates.

Exporting Integration Packages


Download your integration packages to your local system, so that you can provide it to your content management team to
upload and publish them. Publishing integration packages makes them available on SAP API Business Hub.

Procedure
1. Choose Design to view the list of integration packages.

2. Select the required integration package.

3. Choose Export.

By default, the downloaded le takes the name of the integration package. In case the name contains special characters,
the browser changes the le name by appending them. The destination of export depends on the default browser
setting.

 Note
Con gure-only content can't be downloaded.

Backup and Restore Your Integration Artifacts


This is custom documentation. For more information, please visit the SAP Help Portal 78
6/14/2023

Context
Download all the artifacts of a package in one go, using which you can create a local backup of all artifacts. Later, you can upload
the downloaded resources in another package or tenant based on your requirements.

Procedure
1. Open your integration package and choose Edit.

Download all artifacts

2. Choose the Artifacts tab.

3. Select the checkbox besides the column header Name to select all the integration artifacts in the package. Alternatively,
you can select only the artifacts that you would like to download.

4. Choose Actions Download .

A .zip le with lename same as the integration package's name is ready for download.

5. Save the le to your choice of destination.

 Remember
The folder structure of the mass download le is different from the structure of an individually downloaded artifact. In
a mass download, the .zip le contains individual folders for each artifact. In turn, each folder contains the resources
of an artifact. But, in an individual download, the downloaded .zip le directly contains the resources of the artifact.

This information is critical to know because when you attempt to upload the downloaded resources in another
package, you can't directly upload the mass-downloaded .zip le.

To upload the downloaded artifacts in another package or tenant, continue with the below steps.

6. Choose Design.

7. Choose Import.

8. Browse and select a .zip le.

 Remember
Upload a .zip le that contains multiple .zip les for each artifact. Each .zip le of the artifact must contain the
resources directly in it and not within a folder.

Developing Integration Content with SAP Cloud Integration


You can use SAP Cloud Integration to access and design integration content.

Use
SAP Cloud Integration provides you with an interface for accessing and managing integration content. You can either directly
use the prepackaged integration content from the catalog or upload it to your workspace to adapt it to your requirements.

You can use the artifacts available in integration packages to solve the integration challenges of your scenario. Optionally, you
can also upload integration packages from your local folder and use them. You can use the integration ows available in
packages by con guring and deploying them. You can also edit the integration ows by adding or removing elements, before you
con gure and deploy them.

This is custom documentation. For more information, please visit the SAP Help Portal 79
6/14/2023
The application consists of the following components which allow you to perform different tasks:

Component Allows you to...

Discover View all available integration packages.

Which integration packages are available to you depends on the


permissions for the user (which has logged-in to SAP Cloud
Integration). You can view the description of integration packages
and copy integration packages to your customer workspace (see
Design tab below).

This component is also known as catalog.

Design Con gure or model integration ows.

After completing this task, you can save the changes, save as a
version or deploy the integration ow.

This component is also known as customer workspace.

Monitor Monitor the message processing and manage integration artifacts


such as integration ows, value mappings and security-related
artifacts.

You can check the status of messages and integration artifacts for
your tenant cluster.

You can also access the dedicated message monitor and


integration content monitor to view more information.

Settings Select the runtime pro le to specify the target runtime for your
content.

Related Information
Basic Concepts of Integration Design
Working with Integration Packages
Content Transport
Creating an Integration Flow
Using Flow Step Recommendation
Integration Flow Extension
Importing Custom Integration Adapter in the Cloud Foundry Environment
Con gure Integration Flow Components
Simulation of an Integration Flow
Deploying Data Flows
Unlocking Integration Packages and Artifacts
Monitor

Basic Concepts of Integration Design


This section provides an overview of the concepts of integration content design.

Related Information
Elements of an Integration Flow
The Camel Data Model in a Nutshell

This is custom documentation. For more information, please visit the SAP Help Portal 80
6/14/2023
Updating your Existing Integration Flow
Adapting Standard Integration Content to Your Requirements
Runtime Pro les

Elements of an Integration Flow


An integration ow allows you to specify how a message is processed on a tenant.

You can use integration ows to specify speci c integration patterns like mapping or routing.

A graphical editor allows you, the integration developer, to model the message processing steps and specify in detail what
happens to the message during processing.

In detail, you de ne the following aspects in an integration ow:

The senders and receivers of the message

How the senders and receivers are connected to the tenant (adapters)

The steps that de ne the message processing

The following gure provides a simpli ed and generalized representation of an integration ow.

Senders and Receivers

You de ne a participant of an integration scenario as a sender or receiver. The senders and receivers typically represent the
customer systems that are connected to the tenant and exchange messages with each other.

Connectivity (Adapters)

An integration ow channel allows you to specify which technical protocols should be used to connect a sender or a receiver to
the tenant.

 Note
To specify an adapter, click the connection arrow between the sender/receiver and the Integration Process box.

This is custom documentation. For more information, please visit the SAP Help Portal 81
6/14/2023

Message Processing (Steps)

You use integration ow steps to specify what should happen to a message during processing. Various step types support the
wide range of integration capabilities of the Cloud-based integration platform.

 Note
To insert a step into an integration ow, drag and drop the desired step type from the palette on the right of the graphical
modeling area.

Message Flows

You use message ows to connect various integration ow elements.

Related Information
Con gure Adapter in Communication Channels

Data Storages
Cloud Integration comes with the following data storage features.

Cloud Integration Data Storages

 Note
For guidelines how to use these features during integration ow design, check out Using Data Storage Features When
Designing Integration Flows.

For information on the size limits of each data storages both in the Neo and Cloud Foundry environment, see What Is SAP
Cloud Integration?.

Physical Database Description

This is custom documentation. For more information, please visit the SAP Help Portal 82
6/14/2023

Physical Database Description

Main memory (only During the processing of an integration ow, the system can write data to and read data from the main memory.
available during the In particular, we talk about data containers that come with the Camel data model (see The Camel Data Model in
processing of an a Nutshell).
integration ow)
The data is accessible from there as long as the processing of a message lasts. After message processing for
an integration ow has nished, this data isn't available anymore.

Constraints:

Data only available as long as message processing lasts (there's no persistence)

Overall storage size for headers and properties restricted

No tenant storage capacity required

The following data containers are available:

Exchange (where you can store properties)

Message header

Message body

Cloud Integration can transfer message headers and the message body to remote components (other integration
ows or connected systems). However, exchange properties exist within a dedicated data container that is only
available as long as processing of a single integration ow lasts. This container is referred to as exchange.

 Note
Exchange properties can't be transferred across integration ows.

Message headers and the message body can be shared with remote components or with other integration
ows (for example, using the ProcessDirect adapter).

See About Headers and Exchange Properties

Tenant database During the processing of an integration ow, Cloud IntegrationCloud Integration tenant. The database keeps the
data for a restricted amount of time.

The database is associated with a subaccount of SAP BTP.

You can store the following data in the tenant database:

Global/local data store content (retention period: up to 180 days; default: 30 days)

Global/local variable (retention period: 400 days)

Data required at runtime when aggregating messages (retention period: 60 min (depends on con gured
timeout); as soon as the data has been consumed successfully, it isn't available anymore in the data
store)

Message store content (retention period: 30 days)

Message processing log attachments

Partner Directory content (retention period: No limitation)

 Note
To be more precise from a technical perspective, when you use Cloud Integration in the Cloud Foundry
environment, the following assets are stored in the SAP BTP object store:

Message processing log attachments

Message store content

This is custom documentation. For more information, please visit the SAP Help Portal 83
6/14/2023

Physical Database Description

JMS queues To asynchronously decouple inbound and outbound processing, Cloud Integration can store messages in
message queues and read from there (using the JMS adapter). can write data to and read data from a database
that comes with the

As soon as the message has been consumed successfully, it isn't available anymore in the queue.

Constraints:

Limited storage capacity, but can be enhanced

More information:

Cloud Integration – JMS Resource and Size Limits

In particular, there's a limit of 4 MB for storing headers and properties.

Store message body and header (and, optionally, properties)

Retention period: 90 days (default)

can write data to and read data from a database that comes with theThe system deletes messages
from the queue that weren't consumed within this period.

As soon as the message has been consumed successfully, it isn't available anymore in the queue.

Remote Data Storages


Cloud Integration also provides options to integrate various kinds of remote data storage systems:

Remote archiving system

The monitoring application can store message processing logs (MPLs) in a remote archiving system.

Remote database system

If you like to integrate a permanent data storage in your scenario, you can set up a remote database system and
connect Cloud Integration to it using the JDBC adapter.

Remote Kafka server

You can connect Cloud Integration to an external Kafka server via Kafka protocol. With the help of the Kafka sender
adapter you can receive messages; with the help of the Kafka receiver adapter you can send messages to the Kafka
server.

Remote message broker

You can connect Cloud Integration to an external message broker. With the help of the AMQP sender adapter you can
receive messages; with the help of the AMQP receiver adapter you can send messages to the message broker.

The Camel Data Model in a Nutshell


An integration ow is a BPMN (Business Process Model and Notation)-like model that allows you to specify how a message is to
be processed on a tenant.

To interpret an integration ow model at runtime, it is transformed into an XML structure that is compatible with Apache Camel
(http://camel.apache.org ), an Open Source integration framework for Java that supports the mediation and routing of
messages of any format.

This is custom documentation. For more information, please visit the SAP Help Portal 84
6/14/2023
The only prerequisite for a message that is to be processed by the Camel framework is that it comprises the following elements:

Headers

Contain information related to the message, for example, information for addressing the message sender.

Attachments

Contain optional data that is to be attached to the message.

Body

Contains the payload (usually with the business-related data) to be transferred in the message.

For as long as a message is being processed, a data container (referred to as Exchange ) is available. This container is used to
store additional data besides the message that is to be processed. An Exchange can be seen as an abstraction of a message
exchange process as it is executed by the Camel framework. An Exchange is identi ed uniquely by an Exchange ID. In the
Properties area of the Exchange, additional data can be stored temporarily during message processing. This data is available
for the runtime during the whole duration of the message exchange.

Using Camel Simple Expression Language


Cloud Integration supports a subset of the expressions de ned in Camel Simple Expression Language (see
https://camel.apache.org/components/next/languages/simple-language.html ).

You can use Camel Simple Expression Language when con guring the following components:

Components that Support Camel Simple Expression Language

Component Use Camel Simple Expression to ... More Information

Content modi er De ne: De ne Content


Modi er
Message body

Message header

Exchange property

(Type parameter set to Expression)

Write variables De ne a variable. De ne Write Variables


(Type parameter set to Expression)

Router De ne a routing condition. De ne Router


(Expression Type parameter set to Non-XML)

Content lter De ne conditions for XPath elements. De ne Filter


To see some examples, see Examples.

Expressions Supported by Content Modi er and Write Variables Step


The following table lists the expressions from Camel Simple Expression Language that are supported by the content modi er
and write variables step.

Expression Description Example

exchangeId Exchange Id. ${exchangeId}

This is custom documentation. For more information, please visit the SAP Help Portal 85
6/14/2023

Expression Description Example

id Message Id ${id}

body Incoming message body ${body}

in.body Incoming message body ${in.body}

This expression is deprecated from Apache


Camel version 3.12.x.

bodyAs(<class> Message body converted to compatible ${bodyAs(String)}


class

mandatoryBodyAs(<class>) Message body is Mandatory converted to ${mandatoryBodyAs(String)}


compatible class

in.header.fo Refers to foo (forward declaration) in header ${in.header.mandatory.length}

in.header.foo.OGNL Refers to foo (forward declaration) in header ${in.header.fname.split(',')


with OGNL (Object-Graph Navigation [0]}
Language) expresssion

headerAs(<key>,<class> Refers to header with name <key> ${headerAs(name, String)}


converted to compatible class

property.foo Refers to foo (forward declaration) in ${property.token.length}


exchange property

property.foo.OGNL Refers to foo (forward declaration) in ${property.token.split(',')[0]}


exchange property with OGNL (Object-
Graph Navigation Language) expresssion

sys.foo Refers to foo (forward declaration) in ${sys.file.separator}


system (runtime container)

sysenv.foo Refers to foo (forward declaration) in ${sysenv.property1}


system enviroment

date:<command>:<pattern> Creates date speci ed in command and Processed at ${date:now-2h}


uses SimpleDateFormat notation
Othe rexample: To write the current
timestamp into a message header, de ne a
header with the following value (and Type
set to Expression):

${date:now:yyyy-MM-dd HH:mm:ss}

date-with-timezone:<command>: Same as date, but with timezone Expires at ${date-with-


<timezone>:<pattern> timezone:now+2h30m:IST:yyyy-MM-
dd'T'HH:mm:ss.SSSZ}

 Note
The content modi er Does not process Equality or Comparison expressions.

Example: The following expression is not supported:

${header.branch} == “HR”

Updating your Existing Integration Flow


This is custom documentation. For more information, please visit the SAP Help Portal 86
6/14/2023
Some new features might not be available for your current integration ow due to the following reason:

A feature for a particular adapter or step was released after you created the corresponding shape in your integration ow.

You have the following options:

You can continue using the older version of the integration ow shape (adapter or step).

You can use the new integration ow shape (adapter or step).

To do this, you rst have to delete the old ow step or channel and then create it again.

 Caution
Updating & Redeploying Your Integration Flow

To minimize disruptions of the message processing during updating or redeploying active integration ows, redeployments
are postponed up to 1 min after redeployment has been triggered manually. This set-up allows Cloud Integration enough
time to nish the current message processing.

If the message processing cannot be completed within 1 min, an error is thrown. In exceptional cases, the integration ow
needs to be redeployed again.

Related Information
Versioning of Artifacts

Adapting Standard Integration Content to Your Requirements


When you use standard (prede ned) integration content published on SAP API Business Hub, there are two different ways how
to adapt such content to meet the requirements of your concrete business scenario.

Modifying/editing the standard integration ow

Con guring externalized integration ow parameters

Modifying/Editing the Standard Integration Flow


Using this option, you modify the integration ow in Edit mode and change its design, for example, by adding new integration
ow steps or channels. Modifying an integration ow this way allows you also to change parameter values prede ned in the
integration ow model.

However, be aware of the fact that when using this option you can run into con icts when SAP provides an update of the
associated integration package. Note that as soon as you've modi ed a prede ned integration ow, you don’t get any further
updates to it when SAP provides an update of the related integration package. Furthermore, if you copy an updated standard
integration package from SAP API Business Hub to the Design workspace of your tenant, you overwrite all changes that you
have made to that package before this action.

If you, nevertheless, like to modify standard integration content, it's recommended that you decouple your modi cations from
the standard content.

More information: Keep Modi cations Separate from Prepackaged Integration Content

 Note
This is custom documentation. For more information, please visit the SAP Help Portal 87
6/14/2023
You can only modify content of a standard integration package if its mode is set to Editable.

There are dedicated standard integration packages that don't allow a user to modify its content (Con gure-only mode). In
such a case, you can only con gure externalized parameters of the contained integration content (as described under
Con guring Externalized Integration Flow Parameters).

Con guring Externalized Integration Flow Parameters


When you use a prede ned integration ow, it’s likely that certain parameters are de ned as externalized parameters. When
having copied an integration package from SAP API Business Hub to the Design workspace of your tenant, you have the option
to con gure the values of externalized integration ow parameters. Choosing this option allows you to adapt the integration
ow without the need to modify the integration ow model in Edit mode.

Typically, the integration developer who provides the standard integration ow has externalized parameters such like, for
example, address parameters of adapters. Such parameters typically can't be foreseen by the provider of the standard
integration package. The reason is that the values of such parameters depend on the concrete environment and system
landscape where the integration ow is nally to be deployed. To enable the integration ow to run in a dedicated environment,
such parameters anyway need to be adapted by the consumer of the standard integration package.

When you have con gured externalized parameters of integration ow parameters, you can still receive updates of the
associated standard integration package.

More information: Con gure Externalized Parameters of an Integration Flow

Versioning of Artifacts
Cloud Integration offers an easy version management capability for your integration artifacts.

You can version both the integration package and its artifacts and documents.

When editing an artifact, you can either choose Save as Version to save your changes. Choose Save to save your artifact as
Draft version. Choose Save as Version to create a new version of the artifact. In this case, you can specify the version in the
upcoming Version Information dialog. In the Comment section, you can add additional information speci c to the artifact for
later reference. This helps you determine the purpose of each version.

The artifact version management is speci c to the tenant that you are using it in. It will not work across tenants.

When you create a new artifact, it is created with the version 1.0.0 by default.

If you choose Save after editing an artifact, the artifact version will be Draft. You can only see the latest Draft version.

If you choose Save as Version, by default the micro version is increased, for example, from 1.0.0 to 1.0.1. You can
either con rm the proposed version number or change according to your policy.

By default, artifact versions follow the versioning convention of <major>.<minor>.<micro>. Although Cloud Integration
does not prevent you from maintaining any version number, it is recommended to follow this convention. In combination with a
well-de ned versioning policy, thie measure helps you to understand to which extent changes of the package or artifact were
done.

 Note
Example

This is custom documentation. For more information, please visit the SAP Help Portal 88
6/14/2023
If you add a new integration ow step to an existing integration ow, increase the micro version, for example, from
version 1.0.1 to 1.0.2.

If you enhance an integration ow with a further integration process or an exception subprocess, increase the minor
version,for example, from version 1.0.1 to 1.1.0.

If you have updated an existing integration ow within an integration package, increase the micro version of the
package.

If you have added a new integration ow to an integration package, increase the minor version of the package.

By default, you only see the latest version of the artifact in the integration package. However, the older versions of the artifact
are available for you in the backend. If you want to switch to a different version of that artifact, you can do that by selecting the
version and choosing the  icon corresponding to the version. This feature allows you to replace integration content of the
current version with the selected version.

 Example
You are currently using the 1.2.0 version of the artifact, but you want to switch to version 1.1.8. You click on the version
number 1.2.0, and in the Version History dialog, you choose  icon next to 1.1.8 to replace the integration content of the
1.2.0 version with 1.1.8 version. You can choose More to see comments about each version, if any.

Runtime Pro les


Cloud Integration allows you to use integration content for different target integration platforms. Accordingly, different runtime
pro les are available to adapt the user interface of the integration content designer to the speci cations and capabilities of the
target integration platform.

A runtime pro le de nes a set of capabilities for Cloud integration content design supported by a speci c target integration
platform. In particular, a speci c runtime pro le supports the con guration of a speci c set of adapter types and integration
ow steps.

The following runtime pro les are available:

Cloud Integration

Cloud-based integration runtime of Cloud Integration

SAP Process Orchestration (for speci c Process Orchestration release)

For example: SAP Process Orchestration 7.5, SP5

On premise integration runtime of SAP Process Integration (for the available release)

Prior to start working with Cloud integration content, you need to know on which target integration platform(s) the Cloud
integration content is to be deployed and executed.

If you encounter use cases where both on premise and Cloud-based integration platforms are involved, you might like to have
several options and, accordingly, both runtime pro les are of interest for you.

The following gure illustrates the use case for the runtime pro les SAP Cloud Integration and SAP Process Orchestration 7.5
SP0.

This is custom documentation. For more information, please visit the SAP Help Portal 89
6/14/2023

When you’ve decided on the runtime pro les in question, the process is as follows:

Based on your choice, you request an account and tenant at SAP.

Under Settings, you choose the default runtime pro le. When you create a new integration ow, this choice is applied by default.

All the pro les are visible in the Runtime Pro les tile. You can enable or disable the availability of the runtime pro le in the
tenant under the enable option. Only enabled runtime pro les appear in the integration ow under Runtime Con guration.

 Note

Runtime pro les are shown as enabled under Settings.

Using the switch option, tenant administrator can enable or disable runtime pro les. Users can edit the pro les page
and save the settings.

The Cloud Integration pro le can’t be disabled. The switch option is grayed out.

Tenant administrator can decide to enable or disable the SAP Process Orchestration supported packages (SP's).
They can take the decision based on the availability of SP’s in the on-premise integration platform.

If you make support packages of SAP Process Orchestration pro le as a default and disable it, SAP Cloud Integration
automatically becomes a default pro le.

If you disable the runtime pro le already used in the integration ow

The palette shows an alert message indicating that the runtime pro le set in the integration ow isn’t
available; default pro le set at the workspace level will be used for loading the palette and validations.

Disabled runtime pro le is grayed out in the integration ow under Runtime Con guration.

The integration ow editor shows the options and executes checks based on the chosen runtime pro le. The reason for this is
that the target integration platform imposes speci c restrictions on the Cloud integration content.

You have the option to con gure a runtime pro le also for an individual integration ow (under Runtime Con guration).

Related Information
This is custom documentation. For more information, please visit the SAP Help Portal 90
6/14/2023
Set Default Runtime Pro le
Con gure Runtime Pro le for an Integration Flow

Con gure Runtime Pro le for an Integration Flow


You can use runtime pro le in an integration ow, to develop content for a particular runtime.

Prerequisites
Your user is assigned with integration developer role.

You have opened an integration ow in the editor.

Context
Runtime pro le is a collection of capabilities such as OData adapter, splitter or datastore elements, available for a particular
product. You can consume these capabilities at the time of designing integration ows.

The tool enables you to design for multiple runtimes at the same time. You should select speci c runtime pro le to develop
content for the respective runtime.

 Note
If a runtime pro le does not support a particular capability then the checks report errors for unsupported components in the
integration ow.

Procedure
1. Choose the Runtime Con guration tab page.

2. Select relevant runtime pro le from the Runtime Pro le dropdown list.

 Note

If you want to publish content in the catalog, then it is a recommendation to select a speci c runtime pro le.

If you switch runtime pro les, then the system reloads the palette and displays relevant capabilities.

3. Choose Save or Deploy as appropriate.

Related Information
Runtime Pro les

Set Default Runtime Pro le


The tenant administrator can view and con gure a runtime pro le, to mark one of them as default for the tenant.

Prerequisites
You have connected to SAP Cloud Integration.

This is custom documentation. For more information, please visit the SAP Help Portal 91
6/14/2023
You have assigned WebToolingSettingsProductProfiles.savetenantconfiguration or the tenant
administrator role.

Context
Runtime pro le is a collection of capabilities such as success factor adapter, splitter or datastore elements, available for a
particular product. You can consume these capabilities at the time of designing integration ows.

The tool enables you to design for multiple runtimes at the same time. You should select speci c runtime pro le to develop
content for the respective runtime. You can execute the following steps to con gure a runtime pro le for a tenant.

Procedure
1. Choose Settings.

 Note
You can click on the runtime pro le name under Name eld to see the available capabilities for the relevant pro le.

2. Choose Edit in the Runtime Pro les tab page.

3. Select the radio button for the runtime pro le you want to mark as default.

4. Choose Save or Cancel as appropriate.

 Note
You can also con gure runtime pro le at integration ow level. For more details please refer to Con gure Runtime
Pro le for an Integration Flow.

Related Information
Runtime Pro les

Restrictions
The Integration Designer allows you to model speci c patterns which are handled at runtime in an unexpected way.

Restrictions and Alternative Configuration Settings

Modelled Pattern Expected Behavior at Runtime Actual Behavior at Runtime Alternative Modeling Option

This is custom documentation. For more information, please visit the SAP Help Portal 92
6/14/2023

Modelled Pattern Expected Behavior at Runtime Actual Behavior at Runtime Alternative Modeling Option

Integration ow step with more The same message is The messages are delivered to Con gure only one outgoing
than one outgoing sequence processed in parallel after the the different receivers in a sequence ow and parallel
ows integration ow step. sequence. processing using a multicast of
For example, after a Message Hereby, the order in that the messages.
Persistence step the message is messages are delivered is
supposed to be sent to multiple randomly generated.
receivers in parallel.
In addition to that, the following
behavior may occur: the
message which results from the
processing in the previous
sequence ow is taken as input
for the next sequence ow.

 Note
As an example, consider two
parallel sequence ows
where the rst one contains
an encryption step and the
second one not. In that case,
the receiver of the second
sequence ow also gets an
encrypted message
(although in the second
sequence ow no encryption
step has been con gured).

Comment on Database Transactions

The following step types include transactional database processing.

If one of the below listed steps is contained in an integration ow, the processing of the message is executed in one transaction.

Data Store Operations step

Select (in case delete=true)

Write

Get (in case delete=true)

Delete

Usage of Write variables

Aggregator step

Content Enricher

 Caution
Such steps might lead to resource shortages because long running transactions can cause node instability and impede other
processes that are running in transactions.

Some of the above mentioned steps or adapters persist data in the database. In case of an error, the whole process is rolled
back and the original state is being re-established. That means, data from failed processes remain and, in case message
processing fails, customers normally cannot access data about the failed processing (due to the roll-back).

This is custom documentation. For more information, please visit the SAP Help Portal 93
6/14/2023
In case an error is propagated back to the calling component, all data that have been written in the course of the (failed)
transaction are being removed (in other words: not persisted in the database). For the calling component, an error implies,
therefore, to restart the integration ow.

Transactional processing is also to be considered in scenarios that contain asynchronous decoupling. Let’s assume
integration ow A contains a Data Store Operation step. Integration ow B contains a Select operation on the Data Store
and runs into an error. In that case, that data is preserved that has been written to the database by integration ow A. This
behavior makes sense in particular when you consider the case that integration ow B changes or deletes the data that has
been stored by integration ow A. In case integration ow B fails, the original data from integration ow A can be retrieved.

Working with Integration Packages

Related Information
Working with Prepackaged Integration Content
Con gure Multiple Integration Flows
Generating Integration Content using APIs
Add Integration Packages to the Customer Workspace
Creating Custom Tags
Importing Content from ES Repository

Working with Prepackaged Integration Content


SAP delivers rich prepackaged integration content out of the box that enables you get started quickly. These integration
packages are created for some of the commonly used integration scenarios. They contain integration ows, value mappings,
documentation, and so on. By using this content, you can easily get started with minimal integration developer effort.

 Note
You can also nd integration content from SAP partners in the Discover tab. If you're viewing the package in Highlights
section, they can be identi ed by the tag Partner on the top-right part of the integration package tile. You can also nd these
packages by ltering for the Vendor with any other available value apart from SAP.

You can't download content from integration packages by SAP partner vendors.

In the Overview tab of the package, you can nd detailed description about the package. You also nd the Support Info that
shows the correct support component for the package. The support component helps you report incidents to the right SAP
support team when you face issues with the content of the package.

Copy the prepackaged content to your design workspace, con gure it, and deploy it.

You can also access prepackaged content on the SAP API Business Hub:
https://api.sap.com/products/SAPCloudPlatform/integrations/packages .

Community Packages
Community packages are assets created and packaged by the SAP integration community.

What is Community Package

This is custom documentation. For more information, please visit the SAP Help Portal 94
6/14/2023
SAP has a thriving community of integration experts involved in the creation of community packages. Community packages
consist of open-source and editable integration content. Licensed by Apache v2.0, these packages are created through user
feedback. The integration content of these packages can be readily reused in consulting and commercial projects.

How do you consume

You can nd these community packages in the Discover section, identi ed by the label Community Package.

Like other prepackaged packages, you can copy the community packages to the Design workspace. This content is also available
on the GitHub. For any support, you can raise an issue with the content under the associated GitHub project.

What does it contain

Each community package contains documents associated with the integration content and the following links:

The Apache license, Version 2.0

Link to the package on the GitHub repository.

Link to the Contribute.md document. This document lists the guidelines to contribute and enhance the community
content.

Con gure Multiple Integration Flows


You use this feature to con gure parameters of multiple integration ows. You can save and deploy all from a single window with
minimal effort.

Context
The feature offers a mass update capability where you can con gure multiple integration ows. It allows you to enter the
con guration details in the mass con guration view. Using the embedded con gure view you need to con gure the integration
ows one by one. You can save and deploy all the con gured integration ows in one click and it minimizes your efforts.

With the mass con guration, you can con gure all the externalized parameters of the integration ow. If there are any errors
during con guration of the elds, it’s noti ed as a check error along with detailed message. You can see an indicator referring to
the respective integration ow after you close the error message window.

Bene ts

Reduction in steps and time for con guring multiple integration ows.

Save and deploy all integration ows simultaneously.

Validation checks help you to resolve the errors with the clear message.

Procedure
You use the following procedure to con gure multiple integration ows.

1. Launch SAP Cloud Integration using the application URL.

2. Choose  Design .

3. Select the package that contains the integration ows that you want to con gure and choose Package content.

4. In the Artifacts screen area, select one or more integration ows you want to con gure.

This is custom documentation. For more information, please visit the SAP Help Portal 95
6/14/2023
5. Choose Actions Con gure .

6. Select the integration ows one after the other in the mass con gure view and make necessary changes.

7. If you want to save the con guration, choose Save All.

8. If you want to deploy the integration ows, choose Deploy All.

You can see a message con rming that the integration ows has been deployed.

Generating Integration Content using APIs


Use APIs to generate integration ows.

Context

 Note
This information is relevant only when you use SAP Cloud Integration in the Neo environment.

Based on speci c integration requirement, you can lter and choose prepackaged APIs from the Discover page. These
prepackaged APIs are from the SAP API Business Hub. Prepackaged API content contains different API types, and each API
contains a set of resources and operations. The operations are available in the open API-speci cation format.

Supported APIs and Operations

APIs Operations

OData GET, POST, and DELETE

REST GET, POST, PUT, and DELETE

For each API contained in an API package, you can generate an integration ow. The generated integration ow exposes an
endpoint equivalent to the chosen API. Using this endpoint, you can send a request to the API exposed on a target tenant. The
gererated integration ow contains a sender adapter according to the chosen API and operation. For example, from an OData
API with GET operation, you generate an integration ow with OData sender adapter and GET operation.

 Note
Generating integration ows is only possible for APIs that support basic authentication and DELETE, GET, POST, PUT, and
GET_ID operations.

To generate an integration ow and add it to the workspace of an existing integration package, do as follows:

Procedure
1. Choose Discover APIs to access the prepackaged APIs.

2. Choose an API content package.

For example, if you like to generate an integration ow for one of the SAP Cloud Integration OData APIs (on SAP API
Business Hub at https://api.sap.com/package/CloudIntegrationAPI/odata ), choose the package SAP Cloud
Integration.

3. Choose the Artifacts tab.

4. Select the API for which you like to generate an integration ow.

This is custom documentation. For more information, please visit the SAP Help Portal 96
6/14/2023
For example, if you've chosen the SAP Cloud Integration OData API package, the following APIs are available: Integration
Content, Log Files, Message Processing Logs, Message Stores, Partner Directory, and Security Content. Let's assume
that you like to generate an integration ow to read all SAP Cloud Integration message processing logs from a target
tenant. Consequently, choose Message Processing Logs.

5. Choose Generate Integration Flow.

6. Specify the following parameters:

Parameter Setting

Package Select the package where to add the generated integration ow.

Name Specify the name of the generated integration ow.

Resource Select the resource of the chosen API.


For example, select /MessageProcessingLogs.

Operation Select the operation. In the chosen example, only GET is


available.

URL Specify the URL of the target system that exposes the API.

7. Choose Next.

8. Specify the following parameters:

Parameter Setting

Entity Set Specify an entity set for the API, for example,/GetAllMPLs.

This parameter is added to the sender adapter of the


generated integration ow. In the chosen example, the
generated integration ow contains an OData sender adapter,
and this parameter speci es the Entity Set parameter of the
sender adapter.

Receiver Addres Specify the URL under which the API can be reached on the
target tenant.

Credential Name Specify a name for a User Credentials artifact. This artifact
contains the credentials that are used to authenticate the
integration ow against the target tenant (only basic
authentication is supported). The credential name is added to
the receiver dapter of the generated integration ow.

These parameters are added to the generated integration ow as externalized parameters.

Results
You have generated an integration ow and added it to an existing integration package.

Add Integration Packages to the Customer Workspace

Prerequisites
You have logged-on to the Web application with the integration developer role.

This is custom documentation. For more information, please visit the SAP Help Portal 97
6/14/2023

Context
You have to add the integration packages to your customer workspace (Design tab page). This enables you to access the
artifacts in that package, con gure, and deploy them. There are two options to do this:

1. Copy integration package from catalog (Discover tab page) to your customer workspace.

2. Upload integration package from your local le system to your customer workspace.

You use this procedure to add integration packages to your customer workspace.

 Note
If you want to copy a package that already exists in your workspace, you can decide to overwrite the existing package or to
add a suffix to the package name and create a new one. When you decide to add a suffix, the suffix is added to both the
package ID and the IDs of all existing artifacts/integration ows. This way, updates for packages and artifacts with suffixes
function the same way like for any other standard content. See: Updates for SAP's Integration Packages.

If you want to import a package, you can decide to overwrite the existing package or to cancel the import. You don’t have the
option to add a suffix.

Procedure
1. If you want to copy integration package in catalog to your customer workspace, mouse-over the integration package tile
and choose .

2. If you want to upload an integration package from your local le system to your customer workspace, perform the
following substeps.

a. Choose , then Design.

b. Choose Import.

c. Navigate to the folder in your local le system in which you have saved the integration package.

 Note
The integration package must be a .zip le.

d. Choose Open.

You see the integration package that you uploaded in your customer workspace.

Creating Custom Tags


You can maintain custom attributes in your editable integration packages.

You can tag your integration package using custom attributes that can be created under the Settings tab. The tags can help you
identify and track your packages based on attributes, for example, such as Author, Line of Business etc.

 Remember
You must have the tenant administrator role assigned to access the Custom Tags settings. See Tasks and Permissions.

1. Navigate to the Settings () in the web UI and choose Custom Tags.

2. Choose Edit and select Add to add custom attributes.

This is custom documentation. For more information, please visit the SAP Help Portal 98
6/14/2023
3. Enter a name for the tag under Tag Name.

4. By default, the Mandatory check box is enabled. Uncheck the check box if you don’t want to set your tag mandatory.

5. In the Permitted Values eld, type in the possible custom values from which you want the integration developers to
choose. For example, with a custom tag name Department, you can provide permitted values like HR, Finance, Sales,
and Marketing. Leave the eld blank, if you want the integration developers to type their own values.

6. Choose Save. You can’t rename the tags after saving them. The tags become read-only.

 Note

After adding the necessary custom tags, you can inform the integration developers to maintain the custom
tags in the existing packages.

For transport scenarios, the custom tags can be exported from source tenants and imported into the target
tenant before the package transport, to re ect the custom tag values maintained at source.

The integration developers can now start maintaining the attribute values under the Tags tab in the newly created packages.
For existing packages without the attributes, the values can be added by editing the package or using OData API.

To know how to work with custom tags using OData API, see Working with Custom Tags and Create New Custom Tags
Con guration.

Saving of an edited package or a newly created package fails if the mandatory attributes aren’t maintained.

 Note
Deleting a custom tag in the Settings that is already maintained in a package only hides the tag from the Tags section of the
package. But the value of the tag along with the tag name is persisted in the package for easy retrieval. Read this blog to
know more about custom tags and their behaviours.

Importing Content from ES Repository


You can fetch content directly from ES repository. This enables you to reuse the integration content that you already have in
your ES repository and avoid the overhead of creating that content again in the Cloud Integration web application.

To enable this content import feature, you have to con gure the connection settings to connect to ES repository. Since this is an
on-premise system, you need to connect to it via Cloud Connector.

For more information on Cloud Connector, see SAP Cloud Connector documentation.

You can also check out this blog in SAP community: Importing Message Mapping from ES Repository in SAP Cloud Integration
.

Con guring Connectivity to ES Repository


This is custom documentation. For more information, please visit the SAP Help Portal 99
6/14/2023

Context

You have to con gure connectivity to the ES Repository under Settings (). You need to have tenant administrator role to
access this tab. If you do not see the icon,  in your application, please contact your tenant administrator to obtain this role or
con gure connectivity to the ES Repository.

As sub paths are used to extract data from your on-premise system, make sure that SAP Cloud Connector can access the below
endpoints:

For Message mapping: /rep/query/

For Value mapping: /dir/query/

Procedure
1. Choose Settings.

2. Choose the ES Repository tab.

You see some elds that enable to con gure connectivity to ES Repository.

3. Choose Edit. Provide values in elds based on description in table:

Field Description

Name Enter a connection name for your reference. This can be any
value of your choice.

Address Enter the URL con gured in the cloud connector that connects
to the ES Repository.

Credential Name Enter the credential name that you have deployed in the
operations view of this application.

Location ID Enter the location ID that you have speci ed in your cloud
connector.

4. Choose Save.

Importing Mapping Content from ES Repository

Prerequisites

You have con gured a connection to ES Repository under Settings () tab. For more information, see Con guring Connectivity
to ES Repository.

You have opened the integration ow in which you want to add the integration content and you are editing it.

Context
After you have con gured the connection to ES Repository, you can import content from it in the Resources tab of the
integration ow editor. Currently, you can import:

Message mapping

Value mapping

This is custom documentation. For more information, please visit the SAP Help Portal 100
6/14/2023
Operation mapping

WSDL

 Restriction

Import of operation mapping will fail if

It contains XSLT references

The interfaces contain more than one cardinality

The interfaces are asynchronous in type

The import process will fail if the message mapping contains

User De ned Functions with function libraries or imported archives

Parameters

Importing, viewing and editing of Java UDF is supported.

Message Mapping containing reference to Value Mapping is not supported at runtime.

Here's how you can do it:

Procedure
1. Choose Resources tab in the integration ow settings.

If you do not see the Resources tab, click the empty space in the integration ow editor. You will see the Resources tab
at the bottom of the integration ow editor.

2. Choose Add Mapping Message Mapping/Operation Mapping depending on the resource you want to import.

An Add Message Mapping prompt, where you can select the source and select target system details is displayed.

3. Choose ES Repository as the source. You see the details populated in Name and Address elds. Connect.

A connection is established to the ES Repository. A table with the list of available content is displayed.

4. Choose the content that you want to import and choose Select.

A summary of all the artifacts that will be imported is displayed.

5. Choose Add.

You see a con rmation about all the artifacts that are successfully imported.

Content Transport
Reuse content across multiple tenants. Export integration content from one (source) tenant and import it on another (target)
tenant.

Let us consider an example where you've 2 tenants – test and production. You design and test an integration ow on the test
landscape and it works as expected. Instead of redesigning the integration ow on the production landscape, you can reuse the
integration content that you've tested in the test landscape in the production landscape as well.

 Remember
The procedure to set up content transport depends on whether you use Cloud Integration in the Cloud Foundry or in the Neo
environment.

This is custom documentation. For more information, please visit the SAP Help Portal 101
6/14/2023
Content transport across 2 different environments isn't supported. You can't transport content between a Neo and a Cloud
Foundry tenant.

There are 4 content transport options:

 Remember
There are different criteria that help you to decide on a transport option. Before you pick your choice of transport option, see
Decision Help for Choosing the Right Content Transport Option.

Transport Option Description

CTS+ With a single click, transport integration content from one tenant to another through the CTS+ system.

For more information, see Content Transport Using CTS+.

Transport Management With a single click, transport integration content from one tenant to another through Cloud Transport
Service Management service.

For more information, see Content Transport Using Cloud Transport Management.

MTAR Download Download an MTAR le from the source tenant and manually upload the same le to a CTS+ system or Cloud
Transport Management service.

In the Neo environment, you can deploy an MTAR le to a target Cloud Integration tenant from the subscriber
account (through Solutions).

For more information, see Content Transport using MTAR Download.

Manual export and Manually export integration content from the source tenant and manually import this content to the target
import tenant.

For more information, see Content Transport using Manual Export and Import.

 Note

If the con guration or the transport results in an error, the error codes are displayed along with the error message.

The externalized parameters/con gured values of the integration ows aren't overwritten during a content
retransport.

If the standard/pre-shipped integration packages are transported to target tenant, the updates on those packages
aren't available in the target tenant.

This image is interactive. Hover over each area for a description. Click highlighted areas for more information.

This is custom documentation. For more information, please visit the SAP Help Portal 102
6/14/2023

Please note that image maps are not interactive in PDF output.

Selective Transport of Integration Artifacts


You can select one or more integration artifacts that were modi ed or updated, and transport them to another tenant. See blog
on: Transport at Artifact Level .

 Note

A package is the container for an artifact. So, when you transport only a selected artifact, you would only see the
package in your transport request. The transported package in the target tenant contains only the artifact that you
transported.

Artifacts in draft version can't be transported.

You must ensure that the source and target tenants are hosted on the same cloud environment. This means – you can move
selected artifacts from a tenant classi ed for testing purpose to a production tenant only if they both are hosted on Neo or both
on Multi-Cloud environment.

You can't transport those artifacts that are protected with access policies in the source tenant. The constraint is also applicable
when you transport an artifact that is already present in the target tenant protected with access policies. For more information
in how to manage access policies for cloud environments, see Managing Access Policies, Cloud Foundry Environment.

For Neo environment, see Managing Access Policies, Neo Environment

Related Information
Enabling Content Transport, Cloud Foundry Environment
Enabling Content Transport, Neo Environment
This is custom documentation. For more information, please visit the SAP Help Portal 103
6/14/2023
Guidelines and Best Practices for Content Transport

Enabling Content Transport, Neo Environment


All the tasks mentioned here are one-time activities. It’s recommended that the tenant administrator performs these tasks to
make content transport possible.

 Note
This information is relevant only when you use SAP Cloud Integration in the Neo environment.

 Note
To use the automatic transport options (CTS+ or Cloud Transport Management), you need to enable an additional service –
Solutions Lifecycle Management. This service is responsible for packaging the integration content objects (integration
packages with their artifacts) into MTA les and handing them over to the transport mechanism. This service is always
needed independently of the transport mechanism, whether CTS+ or Cloud Transport Management.

Enabling Solutions Lifecycle Management


You enable the Solutions Lifecycle Management service in the subaccounts where your source and target tenants are hosted.
This step is a one-time activity. You can do that by performing the following steps:

1. Log in to your SAP BTP account.

2. Choose Services Solutions Lifecycle Management .

3. Choose Enable.

Selecting the Transport Mode


The content transport mechanism provides you the exibility of directly exporting integration content to CTS+ system and
Cloud Transport Management, or exporting the content as an MTAR le to a local le system. To use one of these transport
modes, you must enable the Transport Mode found in the Settings ( (settings)) of your source tenant.

1. Navigate to Tenant Settings ( ) in the Web UI.

2. Select the Transport tab and choose Edit.

3. In the Transport Mode list, select one among CTS+, Transport Management Service , and MTAR Download based on
your requirement.

 Remember
Note that this step needs to be performed on the tenant from which you want to export content. For example, if
you're exporting content from your Test tenant, you need to perform this step only in the Test tenant.

Transport Settings are available for you only if you have the tenant administrator role assigned to your account.
Assign the role to your user if you don't see the Settings( ) icon. Transport Settings.

Next Steps
You must create HTTP destinations to make connections between your tenant, Solutions Lifecycle Management service, and
the CTS+/Cloud Transport Management systems. If you want to use:

This is custom documentation. For more information, please visit the SAP Help Portal 104
6/14/2023
MTAR Download option – create an HTTP destination in Solutions Lifecycle Management.

CTS+ option – create 3 HTTPS destinations and use Cloud Connector to connect your CTS+ system with your Cloud
Integration source tenant. Then, create transport nodes and routes.

Cloud Transport Management option – create 2 HTTP destinations in Solutions Lifecycle Management and 1 HTTP
destination each in your SAP BTP Neo and Cloud Foundry subaccounts. Then, create transport nodes and routes.

For detailed information about these destinations, see Creating HTTP Destinations and Transport Route.

Creating HTTP Destinations and Transport Route


Create destinations, transport nodes, and transport routes to con gure the content transport landscape.

Prerequisites
Enable the Solutions Lifecycle Management (SLM) service. For information, see Enabling Content Transport, Neo
Environment.

To use CTS+ as your transport option, complete the following steps:

Set up CTS+ for the transport purpose. See Activating and con guring CTS Export Web Service.

Install and con gure Cloud Connector to connect your on-premise system with SAP Cloud Integration. See Cloud
Connector.

To use Cloud Transport Management as your transport option, complete the initial setup. See Cloud Transport
Management Setup.

Context

 Note
This information is relevant only when you use SAP Cloud Integration in the Neo environment.

HTTP Destinations and Transport Route


The steps involved in creating HTTP destinations and transport route are different for different transport modes. Choose a
transport mode (box) to view the detailed procedure for creating destinations and transport routes.

The information within a transport mode is independent of other modes.

Please note that image maps are not interactive in PDF output.

Enabling Content Transport, Cloud Foundry Environment


All the tasks mentioned here are one-time activities. The tenant administrator performs these tasks to enable content
transport.

This is custom documentation. For more information, please visit the SAP Help Portal 105
6/14/2023

 Note
To use the automatic transport options (CTS+ or Cloud Transport Management ), you must enable an additional service –
Content Agent Service. This service is responsible for packaging the integration content objects (integration packages with
their artifacts) into MTAR les and handing them over to the transport mechanism. This service is always needed
independently of the transport mechanism, whether CTS+ or Cloud Transport Management .

 Note
This information is relevant only when you use SAP Cloud Integration in the Cloud Foundry environment.

Enabling Content Transport involves the following major steps:

Subscribing to Content Agent Service


You can follow one of the approaches to use the Content Agent Service:

Create a service instance of Content Agent Service – using which you trigger the transport from Cloud Integration but
you must create an additional destination in SAP BTP cockpit. See Create Instance and Create Service Key.

Create a subscription of Content Agent Service – using which you trigger the transport from Content Agent Service web
UI (instead of Cloud Integration UI) while there's one less destination to be created. See Subscribe to Content Agent
Service.

 Note
The Content Agent Service UI method works only if you use Cloud Transport Management as the transport
mechanism.

Irrespective of what choice you make, this action must be done in the SAP BTP subaccount where the source Cloud Integration
tenant is hosted.

Subscribing to Process Integration Runtime


Follow the instructions mentioned in Creating Service Instance and Service Key for Inbound Authentication for the service plan
api.

When prompted to select a role for the service plan, choose the role WorkspacePackagesTransport.

Selecting the Transport Mode


The content transport mechanism provides you the exibility of directly exporting integration content to CTS+ and Cloud
Transport Management system, or exporting the content as an MTAR le to a local le system. To use either of the modes, you
must enable Transport Mode found in Settings.

Navigate to Settings and move to the Transport tab. Based on your requirement, select either CTS+, or Transport
Management Service, or MTAR Download from the dropdown list.

 Remember
This step must be performed on the tenant from which you want to export content. For example, if you're exporting
content from your Test tenant, you need to perform this step only in the Test tenant.

You must have the administrator role assigned for Cloud Integration to access the Transport Settings. Else reach out
to your administrator to enable transport.

This is custom documentation. For more information, please visit the SAP Help Portal 106
6/14/2023

Next Steps
You must create HTTP destinations to ease connections between your source and target tenants to transport integration
packages and artifacts. See Creating HTTP Destinations and Transport Route.

Creating HTTP Destinations and Transport Route


Create destinations, transport nodes, and transport route to con gure the content transport landscape.

Prerequisites
Complete the tasks mentioned in Enabling Content Transport, Cloud Foundry Environment.

To use Cloud Transport Management as your transport option, complete the initial setup. See Cloud Transport
Management Setup.

Context

 Note
This information is relevant only when you use SAP Cloud Integration in the Cloud Foundry environment.

Destinations are used to enable content transport from a source tenant to the target tenant.

Creating HTTP Destinations for Cloud Transport Management


Create four HTTP destinations in the SAP BTP subaccount where your source Cloud Integration tenant is hosted. Later, create
transport nodes and route in Cloud Transport Management .

1. Create a destination for Content Agent Service. See Create SAP Content Agent Service Destination.

 Note
Skip creating this destination if you want to use the Content Agent Service's web UI to trigger the transport.

2. Create a destination for source Cloud Integration tenant. See Create SAP Cloud Integration Destination.

3. Create a destination for Cloud Transport Management . See Create Cloud Transport Management Destination.

4. In Cloud Transport Management service, create the source and target transport nodes. The name for the source node
must be the same as the property you de ned in sourceSystemId of the destination created for Cloud Transport
Management service in the previous step. See: Create Transport Nodes.

5. In Cloud Transport Management service, create a transport route using the preceding nodes. See: Create Transport
Routes.

6. Create a destination for Cloud Transport Management for the target Cloud Integration tenant. You use this destination
in Cloud Transport Management to con gure your transport landscape. See Create Transport Destinations.

Content Transport Using CTS+

Prerequisites
This is custom documentation. For more information, please visit the SAP Help Portal 107
6/14/2023

 Note
This information is relevant only when you use SAP Cloud Integration in the Cloud Foundry environment.

You've set the Transport Mode as CTS+ in the tenant Transport settings. For more information, see Enabling Content
Transport, Cloud Foundry Environment.

You've created two HTTP destinations on Solutions Lifecycle Management. One for the tenant management node. For
more information, see Creating HTTP Destinations and Transport Route. The other one is for CTS+ system via cloud
connector. For more information, see Integration with Transport Management Tools.

Context
SAP Cloud Integration provides an option to transport integration content directly to CTS+ system. You can then transport this
content from the CTS+ system to your target SAP Cloud Integration tenant. Here's how you can transport content to CTS+.

Procedure
1. Select the integration package that you want to transport.

2. Choose Transport.

If you don't see the Transport button, ensure that you've the role WorkspacePackagesTransport for CF or
IntegrationContent.Transport for Neo. If you still don't see the Transport icon, contact your tenant administrator to
enable transport option in the tenant settings. For more information on the roles, see Con guring User Access to the
Application and Tasks and Permissions.

3. In the Transport Comments prompt, you can see the type of transport under the Mode eld con gured by the tenant
administrator. Provide comments under the Comments section and choose Transport.

 Remember
The eld has a limit of 512 characters. You can use alphabets, numbers, whitespaces, and the following characters: ' - .
_ ~ : \ / ? # [ ] @ ! $ & ( ) * + , ; = % ' in your comment.

You can use only English text in a single line. You cannot create a new line in the comment.

You see a prompt with the Transport ID. The integration package is transported to the CTS+ system.

4. Import the content in the target system. For more information, see Importing transport requests.

Content Transport Using Cloud Transport Management

Prerequisites
You've set the Transport Mode as Transport Management Service in the tenant Transport settings. For more
information, see Enabling Content Transport, Cloud Foundry Environment.

You've created necessary HTTP destinations and transport routes. For more information, see Creating HTTP
Destinations and Transport Route.

For more information on integration with Transport Management tools, see: Integration with Transport Management
Tools

Context
Cloud Integration provides an option to transport integration content to Cloud Transport Management system. You can then
transport this content from the Cloud Transport Management system to your target Cloud Integration tenant.

This is custom documentation. For more information, please visit the SAP Help Portal 108
6/14/2023
Here's how you can transport content to Cloud Transport Management:

Procedure
1. Select the integration package or artifact that you want to transport.

If you want to use the Content Agent Service's web UI to trigger the transport, see: Export Content Wizard.

2. Choose Transport.

If you don't see the Transport button, ensure that you've the role WorkspacePackagesTransport for CF or
IntegrationContent.Transport for Neo.

If you still don't see the Transport icon, contact your tenant administrator to enable transport option in the tenant
settings. For more information on the roles, see Con guring User Access to the Application and Tasks and Permissions.

3. In the Transport Comments prompt, you can see the type of transport under the Mode eld con gured by the tenant
administrator. Provide comments under the Comments eld and choose Transport.

 Remember
The eld has a limit of 512 characters. You can use alphabets, numbers, whitespaces, and the following characters: ' - .
_ ~ : \ / ? # [ ] @ ! $ & ( ) * + , ; = % ' in your comment.

You can use only English text in a single line. You cannot create a new line in the comment.

If you use Cloud Integration on SAP BTP Neo Environment, you aren't allowed to use the character "_" in the
Transport Comments eld.

You see a prompt with the Transport ID. The content gets transported to the Cloud Transport Management system.

4. Enable the Propagate logged-in user as transport owner checkbox to send the logged-in user's ID to Cloud Transport
Management system so that you can easily identify the artifacts triggered for transport by a particular user. The user ID
depends on the attributes con gured in the Identity Provider system.

5. To import the content in the target system, follow the steps mentioned in the official documentation for Cloud Transport
Management service.

Content Transport using MTAR Download

Prerequisites
You have selected MTAR Download as your Transport Mode. For more information, see Enabling Content Transport,
Cloud Foundry Environment.

Context
You can use the MTAR Download option to download a MTAR le/s of the integration content to be transported

Procedure
1. Select the integration package that you want to transport.

2. Choose Transport.

If you don't see the Transport button, ensure that you've the role WorkspacePackagesTransport for CF or
IntegrationContent.Transport for Neo.

If you still don't see the Transport icon, contact your tenant administrator to enable transport option in the tenant
settings. For more information on the roles, see Con guring User Access to the Application and Tasks and Permissions.
This is custom documentation. For more information, please visit the SAP Help Portal 109
6/14/2023
3. In the Transport Comments prompt, you can see the type of transport under the Mode eld con gured by the tenant
administrator. Provide comments under the Comments section and choose Transport.

 Remember
The eld has a limit of 512 characters. You can use alphabets, numbers, whitespaces, and the following characters: ' - .
_ ~ : \ / ? # [ ] @ ! $ & ( ) * + , ; = % ' in your comment.

You can use only English text in a single line. You cannot create a new line in the comment.

A le with extension mtar is downloaded to your local le system in the download path con gured in your browser.

4. To import the content in the target system, follow the steps mentioned here.

Content Transport using Manual Export and Import

Prerequisites

You have logged in to SAP Cloud Integration on source and target tenants. Access the (Design) tab (workspace).

Context
One of the options to transport content from one tenant to another is to use the Export and Import options for your integration
package. The application imports the integration package to your local le system in the form of a .zip le. You can import the
same le in the target tenant using the Import option.

Procedure
1. Select the integration package that you want to export.

2. Choose Export.

A .zip le is downloaded to the default browser download location on your local le system.

3. Log in to the SAP Cloud Integration web application to which you want to import the content. Choose .

4. Choose Import.

A new window opens in your le system explorer, allowing you to access your local le system.

5. Navigate to the folder path where the .zip le was downloaded in step 3.

6. Select the le and choose Open.

You see a prompt indicating the successful import of the .zip le. You can see the imported integration package in the
Design tab of your target tenant.

Handling Integration Artifacts When Reusing an Integration Flow


on Multiple Tenants
SAP Cloud Integration allows you to transport integration packages from a source tenant to a target tenant in order to re-use
the content of the integration package (integration ows, value mappings, OData APIs) on the target tenant.

However, having transported an integration package to a target tenant does not mean that the contained integration ows run
without any further actions.

For example, you need to make sure that security material and keystore content that is used/referenced by the integration ow
is as well available on the target tenant. If that is not the case, the integration ow will fail.

This is custom documentation. For more information, please visit the SAP Help Portal 110
6/14/2023
This topic provides an overview of how to handle the different kinds of artifacts to make sure that integration content can be
executed without errors also on the target tenant.

Web UI Section Artifact Type Required Actions to After Content Transport

Design view Integration ow, Can be transported as part of an integration package (with one of the chosen transport options such
value mapping, like manual export/import, usage of SAP CTS+ or usage of the SAP BTP Transport Service).
OData API
More information: Content Transport

Design view Integration ow Are transported along with the integration ow.
resources
(schemas,
mappings)

Operations Public key or Download public part of key pair (certi cate, certi cate chain, root certi cate, signing request)
view/Keystore certi cate from source tenant and import to target tenant.

More information: Managing Keystore Entries

Operations Private/public You need to newly create the key pair and upload it to the keystore of the target tenant..
view/Keystore key pair
More information: Creating a Key Pair/SSH Key Pair

Operations User Cannot be reused; newly create artifact on target tenant (and use same artifact name in order not to
view/Security Credentials break any integration ow references to the artifact).
Material artifact
More information: Deploying a User Credentials Artifact

Operations Secure Cannot be reused; newly create artifact on target tenant (and use same artifact name in order not to
view/Security Parameter break any integration ow references to the artifact).
Material artifact
More information: Deploying a Secure Parameter Artifact

Operations OAuth2 Cannot be reused; newly create artifact on target tenant (and use same artifact name in order not to
view/Security Credentials break any integration ow references to the artifact).
Material
More information: Deploying an OAuth2 Client Credentials Artifact

Operations Known Hosts Newly upload the known hosts le to the target tenant.
view/Security
More information: Deploying an SSH Known Hosts Artifact
Material

Operations PGP Public Newly upload the keyring le to the target tenant.
view/Security Keyring
More information: Deploying a PGP Public Keyring
Material

Operations PGP Secret Newly upload the keyring le to the target tenant.
view/Security Keyring
More information: Deploying a PGP Secret Keyring
Material

Operations Certi cate-to- Newly create certi cate-to-user mapping on target tenant. You can reuse an existing certi cate (by
view/Certi cate- User Mapping manual upload from your computer). Make sure that the role speci ed in the related integration ow
to-User (sender adapter) is de ned on the target tenant and assigned to the user.
Mappings
More information: Managing Certi cate-to-User Mappings, Neo Environment

Operations Operations Cannot be reused; newly create artifact on target tenant (and use same artifact name in order not to
view/JDBC Data view/JDBC break any integration ow references to the artifact).
Sources Data Source
More information: Managing JDBC Data Sources

Additional Content

This is custom documentation. For more information, please visit the SAP Help Portal 111
6/14/2023

Artifact T More information:

Partner Directory content You need to migrate the Partner Directory content using the OData API.

More information: Parameterizing Integration Flows Using the Partner Directory

When you plan to automate certain manual steps described in this topic, you can use the SAP Cloud Integration OData API.

For example, you can facilitate steps like:

Reading a security artifact from the source tenant and adding it to the target tenant

Exporting a certi cate from the source tenant and importing it to the target tenant

Generating a key pair

Creating a certi cate-to-user mapping

Guidelines and Best Practices for Content Transport


Cloud Integration offers different options to transport integration content. There are certain criteria that help you to decide
which option to choose for your integration project.

To nd out more about the different content transport options, see Content Transport.

The mentioned options allow you to transport always complete integration packages and their content. Integration artifacts
transported with an integration package are:

Integration ows

Value mappings

OData APIs

REST APIs

SOAP APIs

 Note
However, additional artifacts are required to use integration content on a tenant that cannot be transported along with
integration content.

For example, to run an integration ow that uses authentication to a receiver system based on OAuth2 client credentials
grant, you also need to deploy an OAuth2 Client Credentials artifact on the tenant and refer to the artifact alias in the
integration ow.

After you have transported an integration ow using this authentication type, you need to separately deploy a new OAuth2
Client Credentials artifact on the target tenant (ideally with the same alias as used on the source tenant).

Other examples for non-transportable content are keystore entries (key pairs and certi cates).

For more information on objects that cannot be transported and how to deal with them in a transport scenario, see Handling
Integration Artifacts When Reusing an Integration Flow on Multiple Tenants.

Related Information
This is custom documentation. For more information, please visit the SAP Help Portal 112
6/14/2023
Decision Help for Choosing the Right Content Transport Option
Decoupling Development from Transport Using Externalized Parameters
Guidelines on Role Assignments
Content Transport - Sequence of Steps (Example)

Decision Help for Choosing the Right Content Transport Option


There are different criteria that help you to decide on a transport option.

The following table lists the characteristics and advantages and disadvantages of the different transport options.

Transport
Option Recommendations

Manual Use this option only in exceptional cases, for example for urgent xes in case the transport system is down.
export/import
This option is easy-to-use out-of-the-box (no con guration required).

However, there is no control and logging of the transport events and the involved users.

You have the risk of losing control of who is transporting what and when. Using this option, you don't have any advantage
of the tool support provided by a transport system, like, for example, logging. For this reason, manual exports and
imports should be avoided in an integration project or while operating SAP Cloud Integration. It could be used.

CTS+ This is a recommended option.

This option provides a fully-automated transport mechanism (allows the assignment of roles, de nition of transport
routes, approvals, and comes with additional useful features like logging).

If an on-premise CTS+ is already installed and used for other systems or objects, it is an option of choice to use CTS+
also for integration content transport.

 Note
CTS+ is available for many years to transport on-premise non-ABAP content. This concept has been extended some
time ago to support SAP BTP. However, only cloud content that can be packaged in MTAR les can be transported.
For integration content transport, this constraint is ful lled. Therefore, if you use MTAR-based content only in SAP
BTP, CTS+ is a valid choice.

Transport This is a recommended option.


Management
This option provides a fully automated transport mechanism (allows the assignment of roles, de nition of transport
Service (TMS)
routes, approvals, and comes with additional useful features like logging).

If there is no on-premise CTS+ available in your landscape, a good option is to go for TMS. TMS is the solution for
transporting content in SAP BTP. Compared to using CTS+, this option initially implies a smaller investment in
implementation and operation. Note that TMS is a cloud service (subscription-based and maintenance and updates by
SAP). TMS is therefore the way to go for customers planning to implement projects using SAP BTP services.

MTAR This is a semi-automated option (in between manual export/import on the one and using CTS+ or TMS on the other
Download hand).

This option allows you to download an integration package manually from a source tenant as an .mtar le. In a
subsequent step, you can upload this le to the transport system and, nally, transport it to the target tenant.

Using this option, you bene t of having certain advantages of a transport system. However, there is still a manual step.
As manual steps should be avoided as far as possible, it is recommended to use this option only in exceptional cases,
for example for urgent xes in case the connection between source tenant and transport system is down.

Both options, CTS+ and TMS are recommended as summarized in the table. In the long run, a good practice is to perform all
cloud-related transports via TMS and the on-premise transport with CTS+. For more information and a comparison between

This is custom documentation. For more information, please visit the SAP Help Portal 113
6/14/2023
TMS and CTS+, see Interplay of Transport Management, CTS+ and ChaRM in hybrid landscapes .

The following table provides a further decision help along certain typical requirements that you encounter in an integration
project.

Recommended Transport
Criteria Requirement Option

Lifecycle phase Exploring Cloud Integration Manual Export/Import

Lifecycle phase Operating Cloud Integration Automated transport


(TMS/CTS+)

Exceptional Case: Urgent Transport system down Manual Export/Import


Intervention

Exceptional Case: Urgent Connection to transport system down MTAR Download


Intervention

Facts given by your current CTS+ already implemented and used (bene t from available CTS+
landscape infrastructure)

Facts given by your current CTS+ already implemented and used TMS
landscape

Facts given by your current CTS+ not implemented TMS


landscape

Strategy On-premise CTS+

Strategy Cloud TMS

Decoupling Development from Transport Using Externalized


Parameters
Consider decoupling development from transport when designing integration content.

When designing integration content, there are certain con gurations that depend on the landscape where the content is
deployed.

Let us assume that you design an integration ow that calls an external system (with OAuth authentication). Let us
furthermore assume that you design the integration ow rst on a development tenant and, in a subsequent step, transport it
to a production tenant.

In such a case, you can assume that the URL used to address the external system and the OAuth credentials differ in the
development and the production environment.

If you specify the URL of the external system for the development environment in the related receiver adapter, the integration
scenario doesn't work anymore after you've transported it to the production tenant.

To overcome this issue, you or another integration developer need to edit the integration ow on the production tenant after
content transport and deploy it again. Such an activity leads to inconsistencies in the transport mechanism. Furthermore, this
activity also decreases productivity, as additional steps are needed before deployment.

To avoid this behavior, the best practice is to use externalized parameters. If you've designed your integration ows using
externalized parameters, you bene t from the following advantages:

This is custom documentation. For more information, please visit the SAP Help Portal 114
6/14/2023
After you've transported the integration ow and before deploying it on the target tenant, you only need to con gure the
externalized parameters. You don't have to do any changes in the integration ow model at all.

Con guring the externalized parameters after transport is usually a one-time activity. After subsequent transports, you
don't need to con gure these parameters again if the values remain the same (as the initially con gured values aren't
overwritten).

Related Information
Externalize Parameters of an Integration Flow
Externalize Volatile Con gurations

Guidelines on Role Assignments


The combined usage of the following role collections, respectively, authorization groups (as described under Persona) gives you
full control of the tenant in terms of design, monitoring, and administration.

Assigning these role collections/authorization groups to a user is a good choice for the source tenant (development system).
However, assigning these role collections/authorization groups to a user on target tenants can lead to undesired behavior and
inconsistencies with the transport system. To avoid that a user gets too many permissions in the target system, it's necessary
to de ne permissions on a more detailed level on the target tenant (test and production).

Required on Target Tenant Avoid on Target Tenant Description

AuthGroup.IntegrationDeveloper (Neo) Allows user to connect to


Cloud Integration and to
PI_Integration_Developer (Cloud Foundry) display, download, and
deploy artifacts.

AuthGroup.BusinessExpert (Neo) Allows user to perform


business tasks like, for
PI_Business_Expert (Cloud Foundry) example, examining the
payload, monitor
integration ows, status of
integration artifacts.

AuthGroup.Administrator (Neo) Allows user to connect to


Cloud Integration and to
PI_Administrator (Cloud Foundry) perform administrative
tasks.

This is custom documentation. For more information, please visit the SAP Help Portal 115
6/14/2023

Required on Target Tenant Avoid on Target Tenant Description

WebToolingWorkspace.Write (Neo) Allows user to update a


package,
WorkspacePackagesEdit (Cloud Foundry) create/edit/import/delete
a package and its
artifacts.

 Tip
Updating, creating,
editing, importing, or
deleting a package or
its artifacts on a target
tenant isn't
recommended.
Changes made on the
target tenant are
overridden when the
package is
retransported. In
addition, objects not
properly saved after
editing lead to errors
while transporting. For
that reason, those
roles must not be
assigned to a user on
the target tenant.

TransportModule.write (Neo) Allows user to export,


import, and update
WorkspacePackagesTransport (Cloud Foundry) packages.

 Tip
Export for transport
and import or update a
package from
transport must be also
restricted on the target
tenant (as the
transport works with
CTS+ or TMS as
recommended
options). However, still
the export, import, and
update of packages
can be available just in
source tenant with
these roles.

This is custom documentation. For more information, please visit the SAP Help Portal 116
6/14/2023

Required on Target Tenant Avoid on Target Tenant Description

WebToolingWorkspace.Read (Neo) Allows user to view


packages and artifacts.
WorkspacePackagesRead (Cloud Foundry)

 Tip
On the target tenant,
it's still needed to
access and view the
transported packages
and artifacts.

WebTooling.IntegrationFlowCon gure (Neo) Allows user to con gure


artifacts (integration ows
WorkspacePackagesCon gure (Cloud Foundry) and value mappings).

 Tip
After transporting a
package from source
tenant to target tenant,
artifacts (integration
ows and value
mappings) must be
con gured on the
target tenant.

NodeManager.read, Allows user to deploy


GenerationAndBuild.generationandbuildcontent, artifacts.
NodeManager.deploycontent (Neo)
 Tip
WorkspaceArtifactsDeploy (Cloud Foundry)
After transport to
target tenant and
con guring the
artifacts, artifacts
must be deployed.

This is custom documentation. For more information, please visit the SAP Help Portal 117
6/14/2023

Required on Target Tenant Avoid on Target Tenant Description

WebToolingCatalog.OverviewRead, Allows user to access SAP


WebToolingCatalog.DetailsRead, API Business Hub
WebToolingWorkspace.Write (Neo) (Discover section).

CatalogPackagesRead, CatalogPackageArtifactsRead,
 Tip
CatalogPackagesCopy (Cloud Foundry)
Standard packages
are published on SAP
API Business Hub. A
good practice is to
subscribe only a single
tenant to the SAP
Business Hub (see
Subscribe Only a
Single Tenant to SAP
API Business Hub). If
you apply this rule, the
standard packages are
copied only to the
workspace of the
source tenant and
transported to the
target tenant. If there's
an update for those
packages, then this
update can only be
applied to the source
tenant. Standard
packages that are
transported to a target
tenant do not get
updates on that target
tenant. To have the
updates applied, the
package with the
update applied must
be transported from
source to target
tenant. To implement
this behavior, you can
restrict the access to
the SAP Business Hub
on the target tenant
assigning these roles
just to the source
tenant.

This is custom documentation. For more information, please visit the SAP Help Portal 118
6/14/2023

Required on Target Tenant Avoid on Target Tenant Description

All roles related to the Monitor area (see Tasks Allows user to perform
and Permissions) tasks associated with
monitoring and
operations.

 Tip
There are objects that
can't be transported
using the transport
system. In addition,
monitoring- and
operations-related
tasks must be allowed
on the target tenant.

WebToolingSettingsProductPro les.savetenantcon guration Allows user con gure the


transport option.

 Tip
The selection of what
transport mechanism
to use is done just on
the source tenant.

For more information on the individual roles and tasks, see Tasks and Permissions.

Certain roles must be assigned also in the transport system to determine the responsibilities of who can do what (for example,
import a transport order into a queue, release an order).

For more information on roles in CTS+, see CTS Roles and Authorizations.

For more information on roles in TMS, see Security.

If you have implemented complex transport routes, it's a good practice to assign attributes to certain roles in TMS to restrict
the corresponding authorizations to speci c transport nodes only. For example, one person is responsible for releasing one
order to test environment while a second one is responsible for production. You can nd more information in section Transport
Node-Speci c Attributes under Security.

Content Transport - Sequence of Steps (Example)


There are the following prerequisites:

The tenant administrator of the source system has con gured the transport mode (SAP Cloud Integration under
Settings).

The integration developer has granted the required transport permissions (see Guidelines on Role Assignments).

The following diagram shows a typical sequence of steps when transporting integration content. We assume that content is
transported rst from a dev tenant to a test tenant and from there to the prod tenant.

This is custom documentation. For more information, please visit the SAP Help Portal 119
6/14/2023

1. The integration developer initiates transport of the desired integration package by creating a transport order in the
transport system.

2. The transport responsible logs in to the transport system and releases the request in the test node queue.

3. Once the package is imported on the test tenant, the integration developer con gures the integration ows and deploys
them on the test tenant. If necessary, the integration developer also con gures and deploys the associated security
artifacts.

4. If the request is to go to production, the transport responsible forwards transport to production node queue.

5. Either manually or by means of a job, the request is imported in the production node.

6. The integration developer con gures the integration ows and deploys them (on the prod tenant). If necessary, the
integration developer also con gures and deploys the associated security artifacts.

Creating an Integration Flow


Add an integration ow to an integration package.

Prerequisites
You’ve created an integration package. For more information, see Creating an Integration Package.

Context

This is custom documentation. For more information, please visit the SAP Help Portal 120
6/14/2023
An integration ow is a graphical representation of the ow and processing of messages between two or more participants
using an integration runtime platform, ensuring successful communication.

Procedure
1. Choose Design to view the list of integration packages.

2. Select the integration package in which you want to add an integration ow and choose Edit.

3. Navigate to the Artifacts tab and choose Add Integration Flow .

4. If you want to create a new integration ow, execute the following substeps:

a. Choose the Create radio button.

b. Enter a valid name for the integration ow in the Name eld. The ID eld gets auto- lled.

For a new integration ow you can de ne two attributes, Name and ID.

 Note

The integration ow ID needs to be unique across the tenant, but you can specify the same Name
multiple times. When you create a new integration ow, by default the entry for ID is generated
automatically based on the string entered for Name (with underscore replacing space characters).

However, you can also manually edit the ID eld and, once it’s modi ed manually, changing the name of
the integration ow doesn’t make any auto-changes to the ID eld again.

c. You can select the runtime pro le for the integration ow in the Runtime Pro le eld. The integration ow
templates used during creation adhere to the latest version of a component available in the runtime pro le. For
more information, see Runtime Pro les.

d. Enter Description for the integration ow.

e. Choose  search values to add Sender and Receiver systems. The search values provide a list of sender and
receiver systems maintained by SAP.

 Tip
If you don't nd a sender or receiver system of your choice, or want to add your own values, type in the Sender
and Receiver elds and press tab button in your keyboard. You can also add multiple values if it's necessary.

f. Choose OK. Alternatively, you can press the Enter / Return key to create the integration ow.

5. If you want to upload an integration ow, execute the following substeps:

a. Choose the Upload radio button.

b. Choose Browse to select the integration project archive from your local le system. When you select the archive
le, the Name and ID elds in the dialog box are lled automatically.

 Note

The integration ow ID needs to be unique across the tenant, but you can specify the same Name
multiple times. When you create a new integration ow, by default the entry for ID is generated
automatically based on the string entered for Name (with underscore replacing space characters).

However, you can also manually edit the ID eld and, once it’s modi ed manually, changing the name of
the integration ow doesn’t make any auto-changes to the ID eld again.

c. Choose OK. Alternatively, you can press the Enter / Return key to create the integration ow.

 Note

This is custom documentation. For more information, please visit the SAP Help Portal 121
6/14/2023

You can copy an integration ow by choosing  in the Action column, and then Copy.

An integration ow can be copied within the same package or to a different package.

The copied integration ow has the same version as the source.

An integration ow can be copied from a con gure-only package to a non-con gure-only package.

An integration ow can’t be copied from a non-con gure-only package to a con gure-only package.

Results
A template-based integration ow with the following shapes is created:

Sender: Represents your sender system.

Receiver: Represents the receiver system.

Integration Process: The shape where you add all the steps that de ne how a message is processed in the tenant. This
shape has two tabs:

General: allows you to set the name of the integration process

Processing: allows you to maintain the Transaction Handling and the Timeout details under Transaction
Management.

Using Flow Step Recommendation


The ow step recommendation in an integration ow development helps you to easily add ow steps. You get the
recommendations based on prepackaged SAP integration content.

Prerequisites
You’ve created an integration package. For more information, see Create an Integration Package.

You've created an integration ow. For more information, see Creating an Integration Flow.

Context
With ow step recommendation, there’s no need to nd the next ow steps from the palette. You get a dialog with a list of ow
steps in the editor itself where you need them. You get a suggestion for next possible ow step at the time of integration
scenario development. For example, when you’re adding a content modi er in your integration ow, it comes with a ow step
recommendation that helps you select the next ow step without navigating to the palette. The selected ow step
automatically gets added to the sequence connector.

You see the following sections in the ow step recommendation dialog:

Recommended Steps: From an existing ow step or sequence connector, you get recommendations for the next step.
The recommendations are made by a machine learning study on the prepackaged SAP integration content.

All Steps: The dialog also provides a list of all ow steps where you can either scroll or search for the required ow step.

Procedure
Here's how you can use ow step recommendation for adding ow step in an integration ow.

This is custom documentation. For more information, please visit the SAP Help Portal 122
6/14/2023
1. Choose  (Design) tab to access your workspace.

2. Choose Integration Package Artifacts Integration Flow Edit .

3. Select an existing ow step or a sequence connector.

4. Choose  (Add Flow Step) button.

A dialog opens up showing the recommended steps rst and then all the steps.

5. Select a step that is required for your integration ow.

Integration Flow Extension


SAP Cloud Integration allows you to extend the capabilities of standard integration content provided by SAP. This approach
allows you to implement speci c integration scenarios relevant to your business use case without changing the content
provided by SAP.

SAP (or SAP partners) provide prepackaged integration content (also referred to as standard content) that covers a large
variety of integration requirements. This content usually comprises a set of integration ows, value mappings, and other
integration artifacts that cover a standard integration use case. If you want to adapt these capabilities to speci c business
requirements, you might consider directly editing and modifying the related integration ows contained in the standard
integration package.

However, this does have some disadvantages. For example, you will not get any further updates to modi ed standard
integration content. Furthermore, if you copy the updated standard package from the SAP Integration Content Catalog to the
Design workspace of your tenant, you will overwrite all changes that you have made to that package.

To avoid such implications, we recommend decoupling the modi cations (required for your speci c business scenario) from the
standard content provided by SAP. To support this pattern, SAP Cloud Integration comes with dedicated concepts and features.
Using these features, a customer can specify requirements in one or more dedicated custom integration ows, without
touching any integration ows from the standard content. Both the standard and the custom integration ows are deployed on
the same tenant and are processed in conjunction, communicating with each other using a speci c adapter, the ProcessDirect
adapter.

 Note
This is custom documentation. For more information, please visit the SAP Help Portal 123
6/14/2023
Using the described concepts, the customer can keep the standard integration content unchanged and specify any required
enhancements (for example, speci c mappings) in one or more custom integration ows separate from the standard
integration ow.

We can summarize the advantages as follows:

Ensures better lifecycle management of prebuilt integration ows. If you make custom changes to a standard
integration ow (prebuilt by SAP), this has an impact on lifecycle management, as you will not receive future updates
related to modi ed artifacts on your tenant. Additionally, if you copy the updated standard package from the content
catalog to the Design workspace of your tenant that contains the modi ed packages, you will overwrite all changes
that have been made to that package. Therefore, de ning all required changes in a dedicated integration ow helps
you to better manage the lifecycle of your integration packages.

Provides exibility to integration developers to customize their integration ows without modifying them entirely.

Enables the reuse of integration ows for mapping across different integration projects.

Involved Target Groups


As an integration ow extension is based on the interplay of standard integration content with one or more custom integration
ows, two target groups are involved in the overall process:

Content publisher (at SAP or an SAP partner)

Customer doing the actual extension (referred to as customer in the following)

This documentation is structured as follows to serve both groups:

Section Target Group

Integration Flow Extension - Concepts Content publisher

Provides an overview of the concept and the involved components; Customer


shows how standard content and extended content work in
conjunction.

Mapping Extension Step by Step (Demo Example) Content publisher

Provides a step-by-step description of a simple demo example Customer


and covers both sides of the extension story:
This scenario is also feasible as a learning scenario: You should be
Creating the Standard Integration Flow able to set up and run this example in about an hour.

Shows how to design the standard integration content (with


a post-exit step)

Creating the Custom Integration Flow with the Post-Exit


Mapping

Shows how to design a post-exit integration ow (with the


customer mapping extension)

Mapping Extension Step by Step (Example from SAP Hybris C4C) Customer

Shows how a mapping extension is done for a real-life use case


(covering pre-exit and post-exit mappings).

This is custom documentation. For more information, please visit the SAP Help Portal 124
6/14/2023

Integration Flow Extension - Concepts


This section provides an overview of the concepts and components required to implement an extension.

 Note
The use cases that we use to explain the concept in detail are all mapping extensions, and we use variations of mapping
extensions for our examples and tutorials as well.

Note that you can, however, extrapolate the concept to any other extension.

Customer Exits
This is the basic concept: A standard integration ow, prede ned by SAP or an SAP partner as part of a standard integration
package, contains one or more customer exits. Through these exits, one or more customer integration ows (designed by the
customer who is extending the standard content) are called. The standard integration ow and the custom integration ows
(called through the customer exit) have to be deployed on the same tenant.

To support mapping extensions, standard integration ows can provide 2 types of customer exits:

Pre-exit

This exit is only required if the customer needs to extend the source message of the mapping. Using this exit, the
standard integration ow calls a pre-exit integration ow (which is designed by the customer). Within the pre-exit
integration ow, the extended source message is mapped to the message that is consumed by the mapping prede ned
in the standard integration ow.

Post-exit

This exit is always required. It calls a post-exit custom integration ow that maps the output of the standard mapping
and the extended source structure to the extended target structure.

The following gure shows the general overview of the message ow when a pre-exit and a post-exit are involved in the
extension scenario.

This is custom documentation. For more information, please visit the SAP Help Portal 125
6/14/2023

The message ow in such an extension scenario works in the following way:

Let us assume that the mapping prede ned in the standard integration ow de nes the transformation of an original message
A to message B.

We also assume that the customer has enhanced the source structure of the mapping (resulting in message A'). The pre-exit
integration ow contains a mapping that transforms message A' to message A. Message A is then handed over to the standard
integration ow and can be consumed by the prede ned mapping.

The prede ned mapping transforms message A to message B. Message B is then passed to the post-exit integration ow,
where it's mapped against the actual enhancement of the target structure (de ned as message C).

As indicated in the gure, the standard integration ow merges the original message (with the extended structure, message A')
with message B before handing it over to the post-exit integration ow. The post-exit mapping then consumes the merged
message. Merging the message is a prerequisite for using elds from the original message A' that might have got lost during
the standard mapping step in the post-exit mapping.

 Note
Technically, the communication between the standard integration ow and the pre-exit and post-exit integration ow is
accomplished through the ProcessDirect adapter.

This adapter allows you to directly connect different integration ows deployed on the same tenant. In contrast to any of the
available HTTP-based adapters ( for example, the HTTP or SOAP adapter), communication through the ProcessDirect
adapter is not routed through the load balancer and, therefore, does not imply any network latency.

The ProcessDirect adapter (both sender and receiver) has only 1 parameter, which is Address. When 2 integration ows need
to communicate with each other through this adapter, the value speci ed for Address (in the related sender and receiver
ProcessDirect adapters) has to match in both integration ows.

This is custom documentation. For more information, please visit the SAP Help Portal 126
6/14/2023
More information: ProcessDirect Adapter

 Note
The standard integration ow is developed as part of an integration package that is made available in the Integration
Content Catalog (either by SAP or an SAP partner). For the sake of simplicity, we refer to this target group as the
integration content publisher.

The custom integration ows (pre-exit and post-exit integration ows) are developed by customers who want to consume
the integration package and build the extension on top. For the sake of simplicity, we refer to this target group as the
customer.

Depending on whether the standard integration ow contains both a pre-exit and a post-exit, or only a post-exit, the
customer needs to create either 2 integration ows (a pre-exit and a post-exit integration ow) or only 1 post-exit
integration ow to specify its own extensions.

Structure of the Standard Integration Flow


We rst describe the structure of the standard integration ow, and then the structure of the custom (pre-exit/post-exit)
integration ows.

The standard integration ow that supports mapping extensions is structured in the following way. It contains one or more
customer exits (pre-exit or post-exit). These exits are encapsulated within local integration processes. From the local
integration process, the related pre-exit or post-exit integration ow is called by the ProcessDirect receiver adapter.

The following gure shows the general structure of the standard integration ow containing both a pre-exit and a post-exit.
Furthermore, the message ow is illustrated using the same notation for the different messages as already used above.

The standard integration ow contains a main integration process shape and 2 local integration process shapes (as we assume
that both a pre-exit and a post-exit are involved in this scenario):

This is custom documentation. For more information, please visit the SAP Help Portal 127
6/14/2023
The main integration process contains the main business logic (in this section, we'll just look at a mapping) and 2 routing
steps leading to 2 different message processing paths (both containing a Process Call step).

The local integration processes contain further steps to modify the message and – most important – the outbound call
to a receiver. The receiver represents the pre-exit or post-exit integration ow. The outbound communication with the
receiver is de ned in a ProcessDirect adapter.

In the model, the local integration process on the left represents the pre-exit, and the local integration process on the
right represents the post-exit.

Let's go into more detail. The integration ow is designed so that the message is processed in the following way at runtime:

Main Integration Process

The sender system sends a message (A', which is the extended source message structure) to SAP Cloud Integration
through a sender channel.

 Note
If as Authorization the option User Role is speci ed in the sender channel, the User Role parameter is externalized.

This enables consumers of the standard integration ow to apply their security role concept by providing a custom
role for the integration ow.

The Content Modi er creates 2 exchange properties:

custom_extension_enabled

This exchange property is used as a parameter to control whether the extension concept should be applied to the
standard integration ow or not. If its value is set to true, the pre-exit and post-exit integration ows are called.
If its value is false, the standard mapping is applied without any further extension.

This parameter is externalized so that the value can be speci ed during integration ow con guration without the
need to edit the integration ow model.

original_payload

In this exchange property, the content of the original message received by the sender is stored (to make it
available in a later step where the original message is merged with the transformed message as preparation for
the post-exit mapping step).

The rst router step opens 2 alternative processing paths. Which path is processed depends on the routing condition,
which uses the exchange property custom_extension_enabled de ned in the preceding Content Modi er.

If the value of the property custom_extension_enabled is false, the default route (upper path) is taken.

The default route directly leads to the standard mapping.

If the value of the property custom_extension_enabled is true, the 2nd route (lower path) is taken. This
route contains a Process Call step that passes the message to the local integration process on the left (pre-exit).

This route is processed under the condition that the value of the exchange property
custom_extension_enabled is true.

The mapping step transforms the inbound message to the target message B. The mapping step in this integration ow
contains the standard mapping prede ned by SAP or an SAP partner. This step always expects a prede ned original
message structure (message A). If the customer has extended the source structure (to message A'), the message needs
to be processed by the pre-exit before the standard mapping step, to be transformed to the original structure A (as
already explained above).

This is custom documentation. For more information, please visit the SAP Help Portal 128
6/14/2023
The subsequent router step also opens 2 alternative processing paths, using the same routing condition as the rst
router step (using the exchange property custom_extension_enabled de ned in the Content Modi er).

If the value of the property custom_extension_enabled is false, the default route (upper path) is taken.

The default route now ends message processing. In this case, the message isn't subjected to any further
processing other than the standard mapping.

If the value of the property custom_extension_enabled is true, the 2nd route (lower path) is taken. This
route contains a Process Call step that passes the message to the local integration process on the right (post-
exit).

Local Integration Process (Pre-Exit)

If the message is rst handed over to the local integration process with the pre-exit, the following steps are executed on the
message:

A Request-Reply step calls a receiver (which represents the pre-exit integration ow) through a ProcessDirect receiver adapter.

The address of the ProcessDirect adapter is externalized and can be con gured during integration ow con guration. The
customer needs to make sure that the address of the ProcessDirect receiver adapter (of the standard integration ow) is the
same as the one used in the ProcessDirect sender adapter of the pre-exit integration ow (to be connected).

Local Integration Process (Post-Exit)

If the message is rst handed over to the local integration process with the post-exit, the following steps are executed on the
message:

A Content Modi er constructs a message body that is composed of the following 2 parts:

The original payload received from the sender (contained in the original_payload exchange property created
in the Content Modi er of the main integration process)

(message A' in the gure)

The message that results as output from the Mapping step in the main process

(message B in the gure)

With this step, the original payload from the sender system (A') is merged with the output message (B) resulting from
the standard mapping step. The concatenated message is denoted as message A',B.

This measure is required for the following reason: The standard mapping step transforms the original message into a
new one (B), which means that certain elds from the original message (A) may no longer be available in the resulting
message B. However, the customer requires such elds in the custom mapping step (which is executed in the custom
integration ow, as explained below). The message merge is done in order to make sure that all elds of the original
message are still available in the message that is handed over to the post-exit integration ow.

A Request-Reply step calls a receiver (which represents the post-exit integration ow) through a ProcessDirect receiver
adapter.

The address of the ProcessDirect adapter is externalized and can be con gured during integration ow con guration.
The customer needs to make sure that the address of the ProcessDirect receiver adapter (of the standard integration
ow) is the same as the one used in the ProcessDirect sender adapter of the post-exit integration ow (to be
connected).

Structure of the Pre-Exit and Post-Exit Integration Flows (Designed by Customer)


The following gure shows the general structure of a pre-exit or post-exit integration ow.
This is custom documentation. For more information, please visit the SAP Help Portal 129
6/14/2023

The sender shape represents the standard integration ow, which passes on the original message. The sender
component is connected to the integration process component through a ProcessDirect sender adapter.

Detailed instructions about the mapping are provided in a separate topic. In short, the mapping steps in the pre-exit and
the post-exit integration ow process the inbound message in the following way:

Pre-exit mapping: Transforms the extended source message A' into the original message A, which can be
consumed by the standard mapping.

Post-exit mapping: Transforms the message A', B from the standard integration ow into the nal message C.

Procedure
The following list contains the main tasks in an integration ow extension process:

Tasks accomplished by the content publisher (SAP or SAP partner):

Create and publish the standard integration ow. Make sure that it contains the required customer exits (post-exit and, if
applicable, pre-exit point). Externalize those parameters that the customer needs to con gure the required parameters (for
example, the addresses of the involved ProcessDirect adapters) without changing the standard integration ow.

Tasks accomplished by the customer (extending the content):

 Note
It is a prerequisite that you, the customer, have imported the integration package that contains the standard integration
ow (that is to be extended) into your own workspace.

1. Copy the desired standard integration ow (as contained in the Integration Content Catalog) into your own workspace.

2. Create the required custom integration ows (with the pre-exit and post-exit steps).

Make sure you deploy the custom integration ows on the same tenant as the standard integration ow.

3. Con gure the standard integration ow so that it can be used together with the custom integration ows.

To access the con guration user interface with the externalized parameters, open the standard integration ow and
select Con gure.

Examples:

For the custom_extension_enabled parameter, enter the value true.

This is custom documentation. For more information, please visit the SAP Help Portal 130
6/14/2023
For the Address parameter of the ProcessDirect receiver adapter, enter the same value as used in the Address
eld of the custom integration ow's ProcessDirect sender adapter.

Related Information
ProcessDirect Adapter
Con gure Externalized Parameters of an Integration Flow
De ne Process Call
De ne Local Integration Process
De ne Content Modi er

Mapping Extension Step by Step (Demo Example)


A demo example, explained step by step, covers the key aspects of integration ow extension.

This section provides a more detailed view of the concept overview given in Integration Flow Extension - Concepts. We walk you
through the most important concepts and involved components using a simple demo scenario.

You should be able to set up and run the scenario within approximately one hour.

 Note
The demo scenario covers both the design of the standard integration ow and of the custom integration ow. Consider the
following:

This demo scenario covers both sides of the extension concept : the design of the standard integration content and
the customer extension (in a post-exit integration ow). Note that these tasks are typically accomplished by different
target groups. Therefore, the demo scenario is aimed at experts from both target groups who want a more detailed
understanding of the concepts and also hands-on experience of the tasks.

The tasks described in the two parts of the demo scenario are associated with the different target groups as follows:

Creating the Standard Integration Flow

Describes the tasks accomplished by the content publisher (at SAP or an SAP partner organization) who
makes this integration ow available as part of a prede ned integration package that customers can copy into
their own workspace.

Creating the Custom Integration Flow with the Post-Exit Mapping

Describes the tasks accomplished by the customer who is extending the content.

The example scenario does not re ect a real-life integration use case. We keep the mapping as simple as possible and
focus on the main principles and concepts so that you can see the differences between the standard mapping
provided by SAP and the customer extension. To make it easy for you to reproduce the example, the integration ows
are based on the scenario described in SOAP Sender Adapter: Example Integration Flow.

To nd instructions for a mapping extension based on a real-life example, check out Mapping Extension Step by Step
(Example from SAP Hybris C4C).

The demo scenario does not use a pre-exit step.

Overview of the Demo Scenario


This section covers the following extension scenario with a post-exit.

This is custom documentation. For more information, please visit the SAP Help Portal 131
6/14/2023

In this scenario, the standard integration ow passes a message to a post-exit integration ow (which contains the custom
mapping).

In this demo scenario, the sender system is simulated by a SOAP client, which sends a SOAP message toCloud Integration. The
original message has a simple structure (only four elements). The standard mapping is also kept simple and concatenates
(me.res) two of the original elds

More information: Standard Mapping

The mapping extension in the post-exit integration ow (the customer extension) adds an additional eld to the target
message and lls it with the value of a eld from the original message ( changing uppercase letters to lowercase letters).

More information: Post-Exit Mapping

To learn how to design the standard integration ow, see Creating the Standard Integration Flow.

To learn how to design the post-exit integration ow, see Creating the Standard Integration Flow.

To learn how to execute the scenario, see Executing the Scenario.

Standard Mapping
The following gure shows the mapping used in this demo scenario.

The gure also indicates which elds correspond to the messages A and B as used in the concept overview in Integration Flow
Extension - Concepts.

This is custom documentation. For more information, please visit the SAP Help Portal 132
6/14/2023

In the standard mapping, the original message A is transformed in the following way:

The elds supplierForename and supplierForename are concatenated (resulting in the eld supplierName of target
message B).

Post-Exit Mapping
The following gure shows the custom mapping extension in the post-exit integration ow.

This is custom documentation. For more information, please visit the SAP Help Portal 133
6/14/2023

Here, the only mapping extension is the addition of the eld AdditionalField to the target structure.

The custom mapping maps the supplierSurname eld of the source message to the new eld AdditionalField and
applies a simple function (changing uppercase characters to lowercase characters).

Creating the Standard Integration Flow


 Note
This section is targeted at the content publisher at SAP or an SAP partner organization.

The standard integration ow is depicted in the following gure, where the key elements are highlighted.

This is custom documentation. For more information, please visit the SAP Help Portal 134
6/14/2023

This is a summary of the elements of the integration ow. Check out the detailed topics below to nd out how to design these
shapes.

Sender and SOAP sender adapter

The sender is simulated by using a SOAP client that calls the integration ow endpoint using the SOAP 1.x sender
adapter. The SOAP client sends message A to Cloud Integration.

Content Modi er

This step performs the following tasks:

Stores the body of the inbound message in an exchange property (originalpayload).

Creates another exchange property custom_extension_enabled, which is used in the subsequent routing
step to separate message processing depending on whether the custom extension is activated or not.

We show how to externalize this parameter so that you can easily specify its value during the integration ow
con guration without having to redesign the integration ow.

Message Mapping

This step de nes the standard mapping according to Standard Mapping.

Router

The Router step leads to two different message processing paths. The routing conditions are expressed using the
exchange property custom_extension_enabled in the following way:

Default route: Ends message processing without any further message processing.

Route taken if the following condition is met: custom_extension_enabled=true

This message processing path contains a Process Call step, which calls the local integration process (post-exit).

This is custom documentation. For more information, please visit the SAP Help Portal 135
6/14/2023
After the Process Call step, a lter is added. This step lters the relevant parts from the message that is received
from the post-exit integration ow.

The local integration process has the following elements:

Filter

This step lters the elements from message B (which is the result of the standard mapping step) that are needed in the
merged message (A,B), which is to be sent to the post-exit integration ow. This step is used to prepare the content of
message B before it is merged with the original message A in the subsequent Content Modi er step.

Content Modi er

Merges message A and message B by constructing a new message body using dynamic expressions for the original
message A and the processed message B.

Request-Reply step connected through ProcessDirect adapter with receiver

Uses the ProcessDirect receiver adapter to call the custom integration ow.

At runtime, the target integration ow is called based on the endpoint address con gured in the adapter. You will learn
how to externalize this parameter.

The integration ow does not have a receiver component. The result of the mapping can be analyzed in the response that is
sent back to the SOAP client.

Related Information
Con gure the SOAP (SOAP 1.x) Sender Adapter
De ning the Content Modi er
De ning the Standard Message Mapping
De ning the Local Integration Process
De ning the Router, Process Call, and Filter Steps

De ning the Content Modi er


1. Add a Content Modi er after the start message event.

You nd the Content Modi er shape in the palette under Message Transformation Content Modi er .

This is custom documentation. For more information, please visit the SAP Help Portal 136
6/14/2023

2. On the Exchange Property tab, enter the following property (by selecting Add and specifying the property):

Parameter Select Option/Enter

Name Enter original_payload

Type Select Expression

Value Enter ${in.body}

This property stores the content of the inbound message (message A, which is retrieved from the WebShop) by
dynamically evaluating the Camel simple expression ${in.body} at runtime.

We de ne the second property as an externalized parameter.

1. Select Externalize.

2. Go to the Exchange Property tab.

3. Enter custom_extension_enabled under Name, select Expression as the Type, , and enter {{
custom_extension_enabled }} in the Value eld.

This is custom documentation. For more information, please visit the SAP Help Portal 137
6/14/2023

4. Click Define Value (in the Value eld), and on the next screen enter false. Then, choose OK

The nal Content Modi er has the following settings:

When the integration ow is being processed, the Content Modi er does the following:

It writes the complete message body (retrieved from the external OData API) into the property original_payload.

Secondly, it writes the value speci ed during integration ow con guration for the externalized parameter
custom_extension_enabled into the Exchange property. This property is used in the subsequent routing step to
determine whether the default route is taken (where only the SAP mapping is processed and nothing else is done to the
message) or whether the customer exit is taken (if the value of custom_extension_enabled is set to true).

Related Information
De ne Content Modi er

De ning the Standard Message Mapping


Before de ning the standard mapping, you need to upload to the tenant certain resource les (Web Services De nition
Language, or WSDL les for short) that de ne the structure of source message (A) and target message (B) of the mapping. To
facilitate the design of the demo scenario, we provide you with the content of the WSDL les in this section.

To upload the WSDL les, perform the following steps:

1. Copy the content of the following coding example into a text editor and save it as a le with extension .wsdl (for
example, A.wsdl).

This WSDL le de nes the structure of the source message of the standard mapping (corresponding to the original
message A, which is sent to the integration ow through the SOAP client).

 Sample Code

<?xml version="1.0" encoding="UTF-8"?>


<wsdl:definitions name="SendOrder_Async"
targetNamespace="http://cpi.sap.com/demo" xmlns:p1="http://cpi.sap.com/demo"
xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy"
xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utili
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">

This is custom documentation. For more information, please visit the SAP Help Portal 138
6/14/2023
<wsdl:documentation />
<wsp:UsingPolicy wsdl:required="true" />
<wsp:Policy wsu:Id="OP_SendOrder_Async" />
<wsdl:types>
<xsd:schema targetNamespace="http://cpi.sap.com/demo"
xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://cpi.sap.
<xsd:element name="Order_MT" type="Order_DT" />
<xsd:complexType name="Order_DT">
<xsd:sequence>
<xsd:element name="orderNumber" type="xsd:string" /
<xsd:element name="supplierForename" type="xsd:stri
<xsd:element name="supplierSurname" type="xsd:strin
<xsd:element name="productName" type="xsd:string" /
</xsd:sequence>
</xsd:complexType>
</xsd:schema>
</wsdl:types>
<wsdl:message name="Order_MT">
<wsdl:documentation />
<wsdl:part name="Order_MT" element="p1:Order_MT" />
</wsdl:message>
<wsdl:portType name="SendOrder_Async">
<wsdl:documentation />
<wsdl:operation name="SendOrder_Async">
<wsdl:documentation />
<wsp:Policy>
<wsp:PolicyReference URI="#OP_SendOrder_Async" />
</wsp:Policy>
<wsdl:input message="p1:Order_MT" />
</wsdl:operation>
</wsdl:portType>
<wsdl:binding name="SendOrder_AsyncBinding" type="p1:SendOrder_Async">
<soap:binding style="document"
transport="http://schemas.xmlsoap.org/soap/http" xmlns:soap="http:/
<wsdl:operation name="SendOrder_Async">
<soap:operation soapAction="http://sap.com/xi/WebService/soap1.1"
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" />
<wsdl:input>
<soap:body use="literal" xmlns:soap="http://schemas.xmlsoap
</wsdl:input>
</wsdl:operation>
</wsdl:binding>
</wsdl:definitions>

You will notice that the WSDL contains exactly the same elds that are shown in the topic Standard Mapping for
message A.

2. Do the same with the following code sample, but save it under a different name, for example, B.wsdl.

This WSDL le de nes the structure of the target message B of the standard mapping.

 Sample Code

<?xml version="1.0" encoding="UTF-8"?>


<wsdl:definitions name="SendOrder_Async"

This is custom documentation. For more information, please visit the SAP Help Portal 139
6/14/2023
targetNamespace="http://cpi.sap.com/demo" xmlns:p2="http://cpi.sap.com/demo"
xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy"
xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utili
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
<wsdl:documentation />
<wsp:UsingPolicy wsdl:required="true" />
<wsp:Policy wsu:Id="OP_SendOrder_Async" />
<wsdl:types>
<xsd:schema targetNamespace="http://cpi.sap.com/demo"
xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://cpi.sap.
<xsd:element name="Order_MT" type="Order_DT" />
<xsd:complexType name="Order_DT">
<xsd:sequence>
<xsd:element name="orderNumber" type="xsd:string" /
<xsd:element name="supplierName" type="xsd:string"
<xsd:element name="productName" type="xsd:string" /
</xsd:sequence>
</xsd:complexType>
</xsd:schema>
</wsdl:types>
<wsdl:message name="Order_MT">
<wsdl:documentation />
<wsdl:part name="Order_MT" element="p2:Order_MT" />
</wsdl:message>
<wsdl:portType name="SendOrder_Async">
<wsdl:documentation />
<wsdl:operation name="SendOrder_Async">
<wsdl:documentation />
<wsp:Policy>
<wsp:PolicyReference URI="#OP_SendOrder_Async" />
</wsp:Policy>
<wsdl:input message="p2:Order_MT" />
</wsdl:operation>
</wsdl:portType>
<wsdl:binding name="SendOrder_AsyncBinding" type="p2:SendOrder_Async">
<soap:binding style="document"
transport="http://schemas.xmlsoap.org/soap/http" xmlns:soap="http:/
<wsdl:operation name="SendOrder_Async">
<soap:operation soapAction="http://sap.com/xi/WebService/soap1.1"
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" />
<wsdl:input>
<soap:body use="literal" xmlns:soap="http://schemas.xmlsoap
</wsdl:input>
</wsdl:operation>
</wsdl:binding>
</wsdl:definitions>

 Tip
You might have noticed that in this WSDL document the namespace pre x p2 is used instead of the namespace
pre x p1 (used in the WSDL for message A). For example, note the following entry:
p2="http://cpi.sap.com/demo.

This is custom documentation. For more information, please visit the SAP Help Portal 140
6/14/2023
This is an important detail. Using the correct namespace pre xes (and making some further related settings in the
integration ow as shown below) makes sure that the merged message that is passed on to the post-exit mapping
can be interpreted in the right way. Using namespaces correctly is critical because the merged message contains the
structures of messages A and B, which have many elements with the same name.

We map the namespaces in the next step to complete this con guration.

3. In the integration ow editor, click somewhere outside the Integration Process shape and select Runtime Con guration.
In eld Namespace Mapping enter the following:

xmlns:p1=http://cpi.sap.com/demo;xmlns:p2=http://sap.com/xi/XI/SplitAndMerge

The namespace mapped to the pre x p2 relates to the nal merged message.

4. In the integration ow editor, click somewhere outside the Integration Process shape and select Resources.

5. Choose Add Schema WSDL and browse to the A.wsdl le.

6. Repeat these steps for the B.wsdl le.

Now you can de ne the mapping step.

1. In the integration ow model, select the Message Mapping shape from the palette (under Mapping) and place it in the
model after the second Content Modi er.

2. Choose the + icon next to the message mapping shape and enter a name for the message mapping (for example,
standardmapping).

This is custom documentation. For more information, please visit the SAP Help Portal 141
6/14/2023

3. Choose Create.

4. The graphical mapping editor is opened.

5. Choose Add source message and browse to the WSDL le of the source message (in our example, the le A.wsdl).
Choose Upload from le system.

6. Choose Add target message and repeat the steps with the WSDL le for the target message (B.wsdl).

7. Connect the elds of the source and target message in the following way using the cursor:

Connect orderNumber in the source message with orderNumber in the target message.

Connect supplierForename in the source message with supplierName in the target message.

Connect supplierSurname in the source message with supplierName in the target message.

Connect productName in the source message with productName in the target message.

8. Click supplierForename in the source message. The connectors between supplierForename and
supplierSurname (in the source message) and supplierName (in the target message) are highlighted.

9. In the section below the graphical mapping editor, select the function Text Concat . Connect the source and target
elds in the following way:

Connect supplierForename with string1 and supplierSurname with string2. Connect concat with
supplierName.

Furthermore, you can add a delimiter string (for example, / or an empty space).

This is custom documentation. For more information, please visit the SAP Help Portal 142
6/14/2023

Your mapping should now look like this:

This mapping function merges the elds supplierForename and supplierSurname from the source message to one
single eld supplierName in the target message (where the values are separated in the target eld by the delimiter
string).

10. Choose OK. The integration ow model is displayed again.

De ning the Local Integration Process


Before continuing to the routing step, we rst add a local integration process shape to the integration ow model.

1. In the palette, select Process Local Integration Process and position the shape below the (main) Integration
Process shape.

This is custom documentation. For more information, please visit the SAP Help Portal 143
6/14/2023

2. In the palette, select Transformation Filter and place the lter shape to the right of the start event of the local
integration process.

3. Click the Filter shape and, on the Processing tab, enter the following string in the XPath Expression eld:
/p1:Order_MT

Keep the default setting of Value Type as Nodelist.

This step will lter the required elements from the message structure Order_MT (associated with the namespace
mapped to pre x p1) from the processed message B (to prepare the message for the subsequent merge step).

4. Add a Content Modi er to the right of the Filter step (you can nd this under Message Transformers in the palette).

On the Message Body tab, enter the following:

 Sample Code

<ns1:Messages xmlns:ns1="http://sap.com/xi/XI/SplitAndMerge">
<ns1:Message1>
${property.originalpayload}
</ns1:Message1>
<ns1:Message2>
${in.body}
</ns1:Message2>
</ns1:Messages>

This step creates the message (A,B), which will be passed on to the custom integration ow.

Again, you will notice the following dynamic expressions:

Expression ${property.original_payload} is replaced at runtime by the content of the original message A


(which was stored prior to the standard mapping step in the Exchange property).

Expression ${in.body} is replaced at runtime by the content of the message that enters the Content Modi er.
This is message B, which results from the standard mapping.

5. Add a Request-Reply step (you can nd this in the palette under Call External Call ) to the right of the Content
Modi er.

6. Add a receiver shape below the local integration process and connect it to the Request-Reply step.

7. When connecting the shapes, select ProcessDirect as the Adapter Type.

This is custom documentation. For more information, please visit the SAP Help Portal 144
6/14/2023
8. The ProcessDirect adapter has only one parameter that you need to con gure. Specify the Address as an externalized
parameter.

Select Externalize and, on the next screen, enter {{endpoint}} as Address.

9. Choose De ne Value and enter any value starting with /.

10. Choose OK.

The local integration process should now look something like this:

Click in the area outside the integration process and the local integration process shapes and select Externalized Parameters.

You will nd the two parameters that you have already de ned as externalized parameters (one from the Content Modi er on
the More tab and the endpoint address of the ProcessDirect adapter on the Receiver tab).

De ning the Router, Process Call, and Filter Steps


Now that you have de ned the local integration process, you can continue with the design of the main integration process.

1. In the main integration process, add a Router step to the right of the message mapping. You can nd the step type in the
palette under Message Routing Router .

2. Add another end message event (from the palette under Events) and place it below the existing one.

3. Connect the Router step with the second end message event.
This is custom documentation. For more information, please visit the SAP Help Portal 145
6/14/2023
4. Click the upper route (connection of router step and upper end message event) and, on the Processing tab, select
Default Route.

5. Click the lower route and, on the Processing tab, specify the following:

Select Non-XML as Expression Type.

Under Condition, enter the following routing condition:

${property.custom_extension_enabled} = 'true'

This condition will be evaluated at runtime in the following way: The value of the (externalized) parameter
custom_extension_enabled is checked. If the value is true, this route will be processed. If not, the default
route is processed (which means that message is not subjected to any further processing after the standard
mapping step).

6. In the lower route, add a Process Call step (which you can nd in the palette under Call Local Call ).

Select the Process Call shape and, on the Processing tab, choose Select. You can now select the local integration
process that you have already de ned in a preceding step.

7. In the lower route, after the Process Call shape, add a Filter step (you can nd this in the palette under
Transformation Filter ).

This part of the integration ow model should now look like this:

This is custom documentation. For more information, please visit the SAP Help Portal 146
6/14/2023

8. On the properties sheet of the Filter step. under Processing, add the following expressing in the XPath Expression eld:

/p2:Messages/p2:Message1/p1:Order_MT

Note that this setting contains two different namespace pre xes, p1 and p2. The mapping of these pre xes with the
relevant namespaces is de ned on the Runtime Con guration tab of the integration ow (as shown in De ning the
Standard Message Mapping).

Using different namespace pre xes and addressing them correctly as described is necessary to make sure that the
correct parts of the message are ltered. Note that this Filter step comes after the Process Call step, and so it gets the
message processed in the post-exit integration ow as input.

Creating the Custom Integration Flow with the Post-Exit


Mapping
 Note
This section is targeted at the customer who is doing a mapping extension.

This integration ow is kept very simple.

The sender shape in this model represents the standard integration ow (which is the source integration or producer
integration ow). The custom integration ow receives the message from the producer integration ow through the
ProcessDirect adapter (as both integration ows are deployed on the same tenant).

The post-exit message mapping step contains the mapping as explained under Post-Exit Mapping.

Related Information
This is custom documentation. For more information, please visit the SAP Help Portal 147
6/14/2023
Con guring the ProcessDirect Sender Adapter
Creating the Custom Mapping

Con guring the ProcessDirect Sender Adapter


1. Create a new integration ow (this will be the custom integration ow).

2. Remove the receiver component.

3. Connect the sender shape with the start message event and select ProcessDirect as Adapter Type.

4. Con gure the address of the ProcessDirect adapter as an externalized parameter in the same way as described in
De ning the Local Integration Process for the ProcessDirect receiver adapter in the standard integration ow.

Creating the Custom Mapping


It is a prerequisite for the custom mapping that you upload the WSDL les de ning the source and target message structures
to the Resources tab of the integration ow (as shown for the standard mapping in De ning the Standard Message Mapping).
As you can see, three message structures, A, B, and C, are involved in the mapping, and the corresponding resource les
(WSDLs) have to be made available to the integration ow.

To make it easy for you to de ne the mapping step, we provide the content of the WSDL les below.

You can use this content to create the WSDL le for the source and target message of the custom mapping:

For the source message, import two WSDL les:

The WSDL le describing the original message A (as contained in the standard integration content)

Use le A.wsdl from De ning the Standard Message Mapping.

The WSDL le describing the message structure after the standard mapping (message B)

Use le B.wsdl from De ning the Standard Message Mapping.

However, note one important detail: In this WSDL le, you need the original namespace pre x p1. Otherwise, message
processing results in a namespace con ict and the mapping step cannot be executed without an error.

Correspondingly, to de ne the WSDL le for message B (B.wsdl), copy the following content:

 Sample Code

<?xml version="1.0" encoding="UTF-8"?>


<wsdl:definitions name="SendOrder_Async"
targetNamespace="http://cpi.sap.com/demo" xmlns:p1="http://cpi.sap.com/demo"
xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy"
xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utili
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
<wsdl:documentation />
<wsp:UsingPolicy wsdl:required="true" />
<wsp:Policy wsu:Id="OP_SendOrder_Async" />
<wsdl:types>
<xsd:schema targetNamespace="http://cpi.sap.com/demo"
xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://cpi.sap.
<xsd:element name="Order_MT" type="Order_DT" />
<xsd:complexType name="Order_DT">

This is custom documentation. For more information, please visit the SAP Help Portal 148
6/14/2023
<xsd:sequence>
<xsd:element name="orderNumber" type="xsd:string" /
<xsd:element name="supplierName" type="xsd:string"
<xsd:element name="productName" type="xsd:string" /
</xsd:sequence>
</xsd:complexType>
</xsd:schema>
</wsdl:types>
<wsdl:message name="Order_MT">
<wsdl:documentation />
<wsdl:part name="Order_MT" element="p1:Order_MT" />
</wsdl:message>
<wsdl:portType name="SendOrder_Async">
<wsdl:documentation />
<wsdl:operation name="SendOrder_Async">
<wsdl:documentation />
<wsp:Policy>
<wsp:PolicyReference URI="#OP_SendOrder_Async" />
</wsp:Policy>
<wsdl:input message="p1:Order_MT" />
</wsdl:operation>
</wsdl:portType>
<wsdl:binding name="SendOrder_AsyncBinding" type="p1:SendOrder_Async">
<soap:binding style="document"
transport="http://schemas.xmlsoap.org/soap/http" xmlns:soap="http:/
<wsdl:operation name="SendOrder_Async">
<soap:operation soapAction="http://sap.com/xi/WebService/soap1.1"
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" />
<wsdl:input>
<soap:body use="literal" xmlns:soap="http://schemas.xmlsoap
</wsdl:input>
</wsdl:operation>
</wsdl:binding>
</wsdl:definitions>

 Note
Both WSDL les together de ne the structure of the merged message (A, B), which is passed on from the standard
integration ow (as you will see when de ning the message mapping).

For target message C, create a WSDL le with the following content and import it to the integration ow Resources tab:

 Sample Code

<?xml version="1.0" encoding="UTF-8"?>


<wsdl:definitions name="SendOrder_Async"
targetNamespace="http://cpi.sap.com/demo" xmlns:p1="http://cpi.sap.com/demo"
xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy"
xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
<wsdl:documentation />
<wsp:UsingPolicy wsdl:required="true" />
<wsp:Policy wsu:Id="OP_SendOrder_Async" />

This is custom documentation. For more information, please visit the SAP Help Portal 149
6/14/2023
<wsdl:types>
<xsd:schema targetNamespace="http://cpi.sap.com/demo"
xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://cpi.sap.com/de
<xsd:element name="Order_MT" type="Order_DT" />
<xsd:complexType name="Order_DT">
<xsd:sequence>
<xsd:element name="orderNumber" type="xsd:string" />
<xsd:element name="supplierName" type="xsd:string" />
<xsd:element name="productName" type="xsd:string" />
<xsd:element name="additionalField" type="xsd:string" />
</xsd:sequence>
</xsd:complexType>
</xsd:schema>
</wsdl:types>
<wsdl:message name="Order_MT">
<wsdl:documentation />
<wsdl:part name="Order_MT" element="p1:Order_MT" />
</wsdl:message>
<wsdl:portType name="SendOrder_Async">
<wsdl:documentation />
<wsdl:operation name="SendOrder_Async">
<wsdl:documentation />
<wsp:Policy>
<wsp:PolicyReference URI="#OP_SendOrder_Async" />
</wsp:Policy>
<wsdl:input message="p1:Order_MT" />
</wsdl:operation>
</wsdl:portType>
<wsdl:binding name="SendOrder_AsyncBinding" type="p1:SendOrder_Async">
<soap:binding style="document"
transport="http://schemas.xmlsoap.org/soap/http" xmlns:soap="http://schem
<wsdl:operation name="SendOrder_Async">
<soap:operation soapAction="http://sap.com/xi/WebService/soap1.1"
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" />
<wsdl:input>
<soap:body use="literal" xmlns:soap="http://schemas.xmlsoap.org/w
</wsdl:input>
</wsdl:operation>
</wsdl:binding>
</wsdl:definitions>

Note that message structure C is similar to message structure B; it has one additional eld additionalField. Save the le
with the name C.wsdl.

Perform the following steps to de ne the mapping:

1. Add a message mapping shape between the start message and the end message event.

Choose the + icon and de ne a name for the message mapping.

This is custom documentation. For more information, please visit the SAP Help Portal 150
6/14/2023

2. Choose Create.

The mapping editor opens.

3. Select Add source message and browse to the le A.wsdl.

4. Choose the Edit message icon.

The Source and Target Messages editor opens.

The structure of message A is already displayed under Source Messages.

5. Choose the + icon beneath Source Messages and add le B.wsdl.

6. In the same way, choose the + icon beneath Target Messages and add le C.wsdl.

After this step, messages A and B are shown under Source Messages and message C is shown under Target Messages.

7. Choose OK to go back to the mapping editor.

8. In the source message structure on the left side, open the nodes under ns1:Message2 (the lower part of the source
structure), and on the right side open the nodes of the target structure. Then, connect each eld of the source structure
to the eld with the same name in the target structure. Leave out the eld additionalField in the target structure.

This is custom documentation. For more information, please visit the SAP Help Portal 151
6/14/2023
9. Now, open the upper part of the source structure and connect the eld supplierSurname in the source structure with
the eld additionalField in the target structure.

The gure below shows the nal mapping and also indicates which parts are associated with the messages A, B, and C.

10. Finally, to apply the mapping function for the connection of the elds supplierSurname (source structure) and
AdditionalField (target structure), open the mapping expression Text toLowerCase . Connect the source and
target eld in the following way: supplierSurname with toLowerCase and connect the latter with
AdditionalField.

11. Choose OK to return to the integration ow model.

12. Save and deploy the integration ow.

Executing the Scenario


To execute the scenario, you need to install a SOAP client (for example, SoapUi) and con gure it accordingly. You need to
con gure the SOAP client so that it calls the endpoint address of the standard integration ow.

More information: Set Up the SOAP Client and Start Message Processing

To de ne the inbound message (sent by the SOAP client), upload the le A.wsdl in the SOAP client. When the SOAP client has
been con gured accordingly, and the message structure is shown, you can enter any values for the elements, for example:

 Sample Code

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:demo="http://cp


<soapenv:Header/>
<soapenv:Body>
<demo:Order_MT>
<orderNumber>1</orderNumber>
<supplierForename>WALTER</supplierForename>
<supplierSurname>SMITH</supplierSurname>
<productName>Notebook</productName>
</demo:Order_MT>
</soapenv:Body>
</soapenv:Envelope>

1. Con gure the standard integration ow (open the standard integration ow and choose Con gure).

2. Specify a value for the Address parameter of the ProcessDirect adapter (or leave the default value as it is).

This is custom documentation. For more information, please visit the SAP Help Portal 152
6/14/2023

3. Go to the More tab and leave the default value for the custom_extension_enabled parameter as false.

4. Choose Save and then Deploy.

5. Choose the Operations view of the Web UI and under Manage Integration Content check the deploy status of your
standard integration ow.

6. As soon as the integration ow deployment has nished (status Started), copy the endpoint address to your clipboard
and paste it into the address eld of your SOAP client.

7. Now con gure and deploy the custom integration ow. Make sure that you con gure the same ProcessDirect adapter
Address parameter as in the standard integration ow.

When the custom integration ow is also deployed, trigger message processing from your SOAP client as explained in
Set Up the SOAP Client and Start Message Processing.

The SOAP client should receive a response where the standard mapping has been applied to the original message.

The elds supplierForename and supplierSurname of the original message have been concatenated in the eld
supplierName.

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" ...>


<soap:Header/>
<soap:Body>
<ns0:Order_MT xmlns:ns0="http://cpi.sap.com/demo">
<orderNumber>1</orderNumber>
<supplierName>WALTER / SMITH</supplierName>
<productName>Notebook</productName>
</ns0:Order_MT>
</soap:Body>
</soap:Envelope>

8. Repeat all these steps, but with the externalized parameter custom_extension_enabled of the standard integration ow
speci ed as true.

9. The SOAP client should receive a response in which the custom mapping has been applied.

The eld additionalField is available and contains the content from the original eld supplierSurname (but
uppercase characters have been transformed to lowercase characters).

This is custom documentation. For more information, please visit the SAP Help Portal 153
6/14/2023

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" ...>


<soap:Header/>
<soap:Body>
<ns0:Order_MT xmlns:ns0="http://cpi.sap.com/demo">
<orderNumber>1</orderNumber>
<supplierName>WALTER / SMITH</supplierName>
<productName>Notebook</productName>
<additionalField>smith</additionalField>
</ns0:Order_MT>
</soap:Body>
</soap:Envelope>

Mapping Extension Step by Step (Example from SAP Hybris


C4C)
This section explains how to do mapping extensions based on a real example from the product area SAP Hybris Cloud for
Customer (C4C).

 Note
This section is targeted at the customer who is doing a mapping extension.

 Note
For more background information regarding this example, check out the following blog in SAP Community: Extending
standard integration ow to support Customer extensions .

Let's assume that you want to do a mapping extension that also includes the extension of the source message structure. This
means that both a pre-exit and a post-exit are involved. The integration ows discussed in this section have the same structure
as those explained in Integration Flow Extension - Concepts.

We also assume the following:

The sender is an SAP ERP system sending an IDoc message to Cloud Integration. An IDoc adapter is used as the sender
channel for the standard integration ow.

The receiver is an SAP Cloud application that expects a SOAP message (through the SOAP adapter).

You also need to extend the source IDoc message. To support this use case, the standard integration ow contains a pre-
exit. The pre-exit step will then enable you to design a corresponding pre-exit integration ow in order to map the
extended source message to the original message structure. The message processed by the pre-exit integration ow
can then be consumed by the standard mapping.

You need to create two integration ows, one for the pre-exit mapping and another one for the post-exit mapping. We explain
the required steps to extend the mapping and to connect the custom integration ows with the standard integration ow.

The following gure shows the overall message ow between the standard integration ow and the pre-exit and post-exit
integration ows, including sender and receiver.

This is custom documentation. For more information, please visit the SAP Help Portal 154
6/14/2023

The following message structures are involved in the extension scenario:

Message A

Contains the original source message structure that is de ned by the requirements of the sender system and can be
consumed by the standard mapping.

Message A'

Contains an extended source structure (de ned by the customer-speci c requirements with regard to the sender
system).

Typically, the customer derives message structure A' from message structure A by adding additional elds. In our
example, the sender system is an SAP ERP system that sends an IDoc to SAP Cloud for Customer.

Messages A and A' are IDoc messages.

Message B

This is the target structure of the standard mapping. In other words, the standard integration ow maps message A to
message B.

In order to enable the standard mapping to consume the inbound message in the customer-speci c scenario, message A'
rst has to be mapped to the original message structure A, which is de ned in the standard integration ow. For this
purpose, the message is passed to the pre-exit integration ow and mapped to message A, which can then be mapped
within the standard integration ow.

Message C

This is the message that results from the post-exit mapping.

Note that the letters A, A', and so on correspond to the notation as used in the general concept description in Integration Flow
Extension - Concepts.

This is custom documentation. For more information, please visit the SAP Help Portal 155
6/14/2023

Related Information
Prerequisites
Creating the Pre-Exit Integration Flow
Creating the Post-Exit Integration Flow
Connecting Pre-Exit and Post-Exit Integration Flows with the Standard Integration Flow

Prerequisites

Standard Integration Flow with Customer Exits


The standard integration ow (provided as part of a predelivered integration content package) with both a pre-exit and a post-
exit has the following design. The message ow as explained above is also depicted.

Required Integration Flow Resources (WSDLs)


Prerequisite: You have copied the integration package with the standard integration ow into your own workspace.

We also assume that you, the customer, have already de ned the source message structure (the extended IDoc structure A')
and the target message structure that depends on the intended nal mapping (this is referred to as message C).

 Note
The WSDL les de ning the message structures A and B (source and target message of the standard mapping) are
contained as part of the standard integration ow (from the predelivered integration package).

You can get these by deploying the standard integration ow (from the predelivered integration package) on your customer
tenant, opening the standard integration ow, clicking in the area outside the (local) integration process shapes, and
selecting the Resources tab. Here, you will nd the related WSDL les and you can download them.

The following gure shows the resources as uploaded to the standard integration ow:

This is custom documentation. For more information, please visit the SAP Help Portal 156
6/14/2023

COD_STOCK_REPLICATE.COD_STOCK_REPLICATE01.wsdl describes the original source structure for the standard


mapping, which is an IDoc message (message A).

DOC_INTF_II_STOCK_LOCATION_REPLIC_IN.wsdl describes the target structure of the standard mapping


(message B)

The standard integration ow contains a mapping that transforms message A to message B. The following gure shows this
mapping as displayed in the mapping editor:

 Note
You must not change the standard integration ow.

Creating the Pre-Exit Integration Flow

Creating the Pre-Exit Mapping


Let's assume that you want to extend the source structure by additional elds.

1. Extend the source structure of the message (to get message A').

You want to add additional elements to the source message, for example, the following element: Z101YANEXT2.

Edit the WSDL le for message A (COD_STOCK_REPLICATE.COD_STOCK_REPLICATE01.wsdl) accordingly (using


the WSDL for message A from the Resources tab of the standard integration ow).

Save the new WSDL le under any name (for example, YANCOD_STOCK_REPLICATE01.wsdl).

2. Create a new integration ow.

We recommend that you add this new integration ow to the package that contains the standard integration ow (both
have to be deployed on the same tenant).

3. Model the integration ow according to the following gure:

This is custom documentation. For more information, please visit the SAP Help Portal 157
6/14/2023

4. When connecting the sender shape with the message start event, select the ProcessDirect adapter type.

Go to the Connection tab of the ProcessDirect adapter and as Address enter any value starting with a slash (/), for
example /preexit_flow.

5. In the integration ow editor, click somewhere outside the Integration Process shape and select Resources.

6. Choose Add Schema WSDL and browse to the WSDL le de ning the source message (message A', this is le
YANCOD_STOCK_REPLICATE01.wsdl).

In the same way, add the WSDL le for message A to the integration ow ( le
COD_STOCK_REPLICATE.COD_STOCK_REPLICATE01.wsdl).

7. Repeat these steps for the target message (here, add the WSDL le for message A). Note that the pre-exit steps map
the extended source message A' to the original message A. As mentioned above, you get the resource for message A
from the standard integration ow, whereas the resource for message A' depends on the speci c enhancements of the
source structure. Typically, it is similar to message A, but contains additional custom elds.

8. In the integration ow model, select the Message Mapping shape from the palette (under Mapping) and place it in the
model between the message start and message end event.

This is custom documentation. For more information, please visit the SAP Help Portal 158
6/14/2023

9. Choose the + icon next to the message mapping shape and enter a name for the message mapping (for example,
pre_exit_mapping).

10. Choose Create.

11. The graphical mapping editor is opened.

12. Choose Add source message and browse to the WSDL le of the source message (message A'). Choose Upload from le
system.

13. Choose Add target message and repeat the steps with the WSDL le for the target message (message A).

14. Connect all elds that are identical in the source and target mapping without assigning any mapping function. Do not
connect the additional elds (which have no equivalence in the target message A) to any target eld.

This is custom documentation. For more information, please visit the SAP Help Portal 159
6/14/2023

15. Save and deploy the integration ow.

Creating the Post-Exit Integration Flow

Creating the Post-Exit Mapping


Create another integration ow with the same shapes as in the pre-exit integration ow (also within the same integration
package). Make the following speci c settings:

In the Address eld of the ProcessDirect adapter, enter a string that is different to the one in the pre-exit integration
ow, for example /postexit_flow.

Click in the area outside the integration process shape, go to the Resources tab, and upload the WSDL les for the
messages A', B, and C.

Note that you get the resource for message B from the standard integration ow, whereas the resource for message C
depends on the speci c custom enhancements related to the target structure. Typically, message C is similar to
message B, but contains additional elds.

Con gure the message mapping in the following way:

For the source message, upload both resource les for messages A' and B. For the target message, upload the resource
le for message C.

You can proceed in the same way as described for the demo example in Creating the Custom Mapping.

This is custom documentation. For more information, please visit the SAP Help Portal 160
6/14/2023
You will notice that the source message consists of two messages, A' and B.

Connect all elds in the structure below Message2 with the corresponding elds in the target structure.

De ne connections between selected (additional) elds of the extended original message A' (in the structure below
Message1) and selected elds in the target message C (typically, using elds that have been added in the target
structure).

Connecting Pre-Exit and Post-Exit Integration Flows with the


Standard Integration Flow

Connecting Custom Integration Flows with the Standard Integration Flow


To make sure that the standard integration ow and post- and pre-exit integration ows are processed in conjunction as
expected, make sure that the ProcessDirect adapter addresses match in the right way.

The ProcessDirect adapter address of the pre-exit integration ow must match the ProcessDirect adapter address in the pre-
exit of the standard integration ow.

The same applies for the ProcessDirect adapter address of the post-exit integration ow and the corresponding ProcessDirect
adapter address in the post-exit of the standard integration ow.

Con gure Integration Flow Components


Cloud Integration allows you to con gure integration ow components in an editor.

Components of the Integration Flow Editor

Component Allows you to...

General Provide a name for the integration ow artifact and give a brief
description about the ow.

Runtime Con guration You can specify general properties of the integration ow. For more
information, see Specify the Runtime Con guration.

Error Con guration De ne how to handle errors when message processing fails at
runtime. For more information, see De ne Error Con guration.

Resources Manage different different categories of le types associated within


an integration content. For more information, see Manage Resources
of an Integration Flow.

Externalized Parameters Con gure an integration ow individually or multiple integration


ows at once. For more information, see Con gure Externalized
Parameters of an Integration Flow.

Problems See all errors and warnings associated with integration components
and resources. For more information, see Problems View.

Overview of Integration Flow Editor


Cloud Integration provides an integration ow editor that comes with highly responsive features. It helps you to work efficiently
in the development of an integration scenario.

This is custom documentation. For more information, please visit the SAP Help Portal 161
6/14/2023

Integration Flow Editor


The editor displays and allows you to edit the content of the currently opened integration ow. It also displays tabs of the
property sheet, so that you can move between them easily. The editor view provides sufficient space for modeling your
integration scenarios. For more information about using components in the editor view, see De ne Settings for the Integration
Flow.

The palette shows all the options required to model an integration ow. For more information about the using different
components during the development, see Con gure Integration Flow Components.

Bene ts of the Integration Flow Editor


The editor comes with a simpli ed approach and provides you the following bene ts:

Horizontal placement of palette gives more space for the modeling area.

You can see the minimized property sheet to have a better modeling area by design.

Double click to open the property sheet whenever you want to navigate to the detail section.

Availability of simulation tool in the palette helps you to simulate the integration ow during any phase of the
development.

The search eld in the palette helps you to search or choose the ow steps. It reduces your development time.

Integration Flow Editor Palette


The following table shows the icons in the palette and their actions.

Icon Name of the Icon Action

 Copy Allows you to copy ow steps from your


integration ow.

This is custom documentation. For more information, please visit the SAP Help Portal 162
6/14/2023

Icon Name of the Icon Action

 Paste Allows you to paste the copied ow steps


within and across integration ows.
Supports 2 pasting options:

explicit selection – you paste the


copied ow steps at a speci c
point of your choice within or across
integration ows.

without explicit selection – you


paste within the integration ow
without moving the mouse to a
speci c point. The pasted ow step
overlaps the source ow step.

 Participants Specify the end points or sender and


receiver participants. For more information,
see Assign Sender and Receiver
Components.

 Process De ne different processes, which are


required to process the message transfer
between the sender and receiver systems,
to simplify your integration process and
identify any exceptions appears in the
integration process. For more information,
see De ne Process Shapes.

 Events De ne different events of message


processing. For more information, see
De ne Events.

 Connectors Establish connection between the 2 ow


steps.

 Delete Delete the selected component or the


integration ow step.

 Mapping De ne different kinds of mapping, if you


want to de ne an association between
elds of messages with different
structuring you use message mapping. If
you want to relate an Outbound service
interface operation with an Inbound service
interface operation, you use operation
Mapping. For more information, see Working
with Mapping.

 Message Transformers Convert messages from a format to another.


For more information, see De ne Message
Transformer Steps.

Call De ne various steps that execute a call into


a remote (external) component or into a sub
process of the integration ow. For more
information, see De ne Call Steps.

 Message Routing De ne the message path to perform


different operations like splitting and
routing messages. For more information,
see De ne Routing Steps.

This is custom documentation. For more information, please visit the SAP Help Portal 163
6/14/2023

Icon Name of the Icon Action

 Security Elements Encrypt, decrypt, sign, and verify


messages in the integration ow. For more
information, see De ne Security-Related
Steps.

 Persistence De ne different steps to access your tenant


database. You can share data across
different integration ows and store the
messages. For more information, see De ne
Message Persistence Steps.

 Message Validator Check the content of the message against a


de ned schema. For more information, see
De ne Validator Steps.

 Run Simulation Run the simulation once the start and end
point have been de ned. For more
information, see Simulation of an Integration
Flow.

 Clear Simulation Remove all the simulation elements such as


the start point, end point, and message
processing output. For more information,
see Con gure Simulation.

 Context Sensitive Help Access the help information of a particular


Flow step. It gives direct access to the
information.

Search Step Easy way to search a required ow step.


You can either type in the search eld or
scroll down to select the ow step.

Capabilities of the Integration Flow Editor

Zoom

You can easily zoom in and out of the editor with your mouse scroll or the '+' and '-' action buttons on the top right of the editor.
This feature is helpful when you've to edit large and complex integration ows.

Quick Action Buttons for Integration Flow Steps

All integration ow steps and adapters provide quick action buttons that help you to connect, delete, view information, or do
more such quick actions. These buttons are helpful in quickly building an integration ow. For example, when you want to delete
an adapter, you just need to select the channel and then select the Delete () icon in the palette. This process just takes 2
clicks with the editor.

Auto Layout

The editor helps you automatically prettify the ow steps within the Process Pools.

Select an Integration Process pool and choose either  (Arrange Horizontally) or  (Arrange Vertically) to automatically arrange
the ow steps inside the process pool.

If your choice of adding ow steps within an Integration Process pool is from left to right, then you can use  (Arrange
Horizontally). If your choice of adding ow steps within an Integration Process pool is from top to bottom, then you can use 

This is custom documentation. For more information, please visit the SAP Help Portal 164
6/14/2023
(Arrange Vertically).

As a best practice, we recommend to save your design changes and con gurations rst and then use the auto layout feature.
Such a practice would help you avoid losing your recent changes.

Overview Mode

When you've a large integration ow, you need a visualization that helps you see the entire integration ow and navigate to a
speci c area in that ow. The overview mode provides you that option. By choosing the dedicated button on the bottom right of
the screen, you get a bird's eye view of the integration ow.

Modeling Constraints

The editor also has some constraints to help you ensure that you don’t make a mistake while modeling an integration ow. For
example, the editor doesn't allow you to add integration ow steps outside the integration process.

The editor also prevents you from adding multiple incoming messages to integration ow steps. Currently, isn’t supported for
Request Reply, Content Enricher and Send steps.

Search for Steps

You use search step to nd the required ow step during the development of an integration scenario. You can search the step
with free text. For example, lter, sender, content modi er etc. When you enter a text as a search, the system looks for it and
displays the ow step. You can just select and drop it in the modeling area.

Double Click

You use double click to open the properties view of a step and integration ow. You can use the following methods to open the
properties view:

Use splitter icon located at the bottom of the screen to move properties view up and down.

Use  Restore button to open properties view.

Auto-Save

Consider a scenario where you’ve exited the integration editor while modeling an integration ow or encountered a session
timeout. In both these cases, you'ven’t saved the changes made to the integration ow. To identify an unsaved integration ow
artifact, you can nd the Unsaved Changes text appearing under the name of the artifact.

In such scenarios, the Auto-Save functionality helps you recover the unsaved version of the integration ow. The next time when
you open the speci c integration ow in the WebUI, a popup appears asking if you would like to recover the unsaved integration
ow. If you choose Recover, the application restores the integration ow you were working on before. If you don’t want to keep a
previous version, then choose Discard.

 Note
The Auto-save also helps you to recover the unsaved version of your script or an XSLT resource.

This feature prevents you from losing work and by default, the application saves your work for every 60 seconds.

Copy and Paste Adapter Con gurations

You can copy and paste adapter con gurations within an integration ow.

This is custom documentation. For more information, please visit the SAP Help Portal 165
6/14/2023
Copy and paste only works between 2 sender adapters and 2 receiver adapters. Copy of a sender adapter details to a receiver
adapter (or vice versa) isn’t supported.

 Example
To copy and paste the con guration between 2 receiver adapters, navigate to the Design tab, and under your integration
package, open an artifact in Edit mode. Select one of the receiver adapters and choose the Copy  button to copy its
con guration details. Choose another receiver adapter and click on Paste  button. The con guration details are copied
into this receiver adapter.

 Note

The paste function overwrites any existing con guration on the adapter including its type.

The copy and paste only works between 2 sender adapters and 2 receiver adapters. Copy of a sender adapter details
to a receiver adapter or the vice versa, isn’t supported.

This Copy-Paste feature is available only for adapter within the communication channel.

Copy and Paste Flow Steps

You can copy and paste ow steps within and across integration ows.

Allows you to paste the copied ow step. Supports 2 pasting options:

explicit selection – you paste the copied ows step using CTRL + V or palette action at a speci c point of your choice
either within or across integration ows. To paste in a different integration ow, you must rst choose a container like
Integration Process or Local Integration process and then paste within the chosen container.

without explicit selection – you paste using CTRL + V or palette action within the integration ow without moving your
mouse to a speci c point. The pasted ow step overlaps the source ow step.

Copy and Paste of multiple shapes: You can copy multiple shapes and paste them in one go. For example, this is helpful when
you want to copy a message routing shape like multicast or router and all of its paths. Select multiple shapes and sequence
ows using the Shift key. Later, paste the copied multiple shapes inside a container. If you copy only the sequence ow step and
attempt pasting, the sequence ow step along with the previous and next shapes gets pasted.

Pasting within and across integration ows:

Pasting
within an
integration
Scope ow Pasting across integration ows

Reuse the nonexternalized Yes Yes


parameters from the copied step.

Reuse the externalized parameters Yes Checks the existence of the parameters in the target integration ow. If the value
from the copied step. doesn't exist, creates the parameter. If the value exists in the target integration ow,
the editor reuses the same parameter.

Reuse the local resources (like Yes No


message mapping, scripts) from
the copied step.

This is custom documentation. For more information, please visit the SAP Help Portal 166
6/14/2023

Pasting
within an
integration
Scope ow Pasting across integration ows

Reuse the referenced resources Yes No


(like message mapping, scripts)
from the copied step.

 Remember

Copy and Paste actions follows the modeling constraint rules so that you don’t make mistakes while performing the
paste operation.

The copy action copies the associated resources, con gurations, and externalized parameters of the ow step.

Pasted ow step maintains a unique name.

Copying a ow step works in both read and edit modes of the artifact.

Pasting a ow step works only in edit mode of the artifact.

Multiple paste actions are possible after copying once.

Copy and paste aren't supported across browser types.

Context-sensitive help

Context-sensitive help paves a way for accessing the help information of a particular adapter or ow step, hence reducing the
time spent in searching for the information.

Consider a scenario where you need to know more about how to de ne a script for message processing. Select the Script shape
in the editor and click Help  icon in the property sheet. Context-speci c information in a new window or tab.

 Note

The context-sensitive help can be accessed in both read-only and editable mode of an integration ow. This feature is
available only for integration ow artifacts and not for OData artifacts.

This feature can also be accessed in Discover and Monitor views.

This feature isn’t available for custom adapters.

De ne Settings for the Integration Flow


When clicking the area outside the Integration Process shape, you can con gure settings that are related to the whole
integration ow.

Related Information
Specify the Runtime Con guration
De ne Error Con guration
Manage Resources of an Integration Flow
Externalized Parameters View
This is custom documentation. For more information, please visit the SAP Help Portal 167
6/14/2023
Problems View

Specify the Runtime Con guration


Specify the runtime properties of the integration ow.

Procedure
1. Open the integration ow and select the graphical area outside the integration ow model.

2. Choose the Runtime Con guration tab.

3. Specify the following properties.

With the property Runtime Pro le, you choose the target runtime environment for the integration content designed with
the application.

A runtime pro le de nes a set of capabilities for Cloud integration content design supported by a speci c target
integration platform. For example, a speci c runtime pro le supports the con guration of a speci c set of adapter types
and integration ow steps. See: Runtime Pro les.

Runtime Configuration Properties

Property Allows you to ...

Namespace Mapping Map a pre x to a namespace at runtime.

Enter a namespace-pre x pair with a format xmlns:<prefix>=<namespace>.

This parameter is required for elements such as the content-based router, content modi er or content
lter that can use namespaces in their con guration. You can either enter the namespace-pre x pair
or the tool automatically lls the namespace-pre x pair whenever a lookup is performed for the
assigned WSDL.

You can also enter multiple namespace-pre xes as shown in the example:
xmlns:test=http://sapcd.com/testABC;xmlns:test2=http://sapcd.com/testPQR.

 Note
xmlns:ns0=https://hcischemas.netweaver.neo.com/hciflow

Here, ns0 is the pre x and https://hcischemas.netweaver.neo.com/hciflow is the


namespace. That way, in a router, you can specify the routing condition for an XML message as:

/ns0:HCIMessage/SenderID='Sender01'

Message Processing Log Con gure the log level to display in the Monitoring editor.

Select one of the log levels from the Message Processing Log dropdown.

All Events: Allows all messages to be logged and displayed.

Error Events: Allows only error messages to be logged and displayed.

No Logging: Hides logging information.

This is custom documentation. For more information, please visit the SAP Help Portal 168
6/14/2023

Property Allows you to ...

Allowed Header(s) Specify the headers to be retained when the incoming message is processed.

 Note
Enter one or more names of headers by separating them with the pipe character (|). Ensure that
the header names separated with the pipe character don't have any whitespaces in between.

As a smart way to specify several headers with similar names, you can use regular expressions
(regex).

Examples:

The expression ab. matches ab and any three-character string starting with ab (for
example: abc, abd).

The expression ab?cd matches acd or abcd.

The expression AB_[0-9][0-9][0-9][0-9] matches AB_ followed by 4 digits, for


example, AB_1234, AB_5678.

The expression AB_[0-9]|CD_[0-9] matches AB_ followed by one digit or CD_


followed by one digit, for example: AB_1, AB_2, CD_9.

Note that contants separated with the pipe character (|) (as mentioned above) is also a
regular expression.

You can also combine contant values with regular expressions, separated by the pipe
character (|).

Example: AB_[0-9]|ABC

Additionally to using regex, you can use a single wildcard (*) to allow all headers.

In general, headers used by the runtime components are retained and other headers are removed
during message processing. This eld is useful when you need speci c header information along with
the message body.

For inbound SSL connections (when a sender calls SAP Cloud Integration), senders have to
authenticate against a load balancer component. The load balancer sets the following message
header elds: SSL_CLIENT_CERT (contains the Base64-encoded sender client certi cate) and
SSL_CLIENT_USER. Entering these values in the Allowed Header(s) eld, allows you to forward
these headers during message processing.

 Remember
When you want to use Principal Propagation as the authentication method to connect with an on-
premise system, don't pass any authorization headers. Follow the approach recommended by SAP
BTP Connectivity. See: Authentication to the On-Premise System.

This is custom documentation. For more information, please visit the SAP Help Portal 169
6/14/2023

Property Allows you to ...

HTTP Session Reuse Choose one of the following options:

None

Session handling is switched off.

On Exchange

Each exchange corresponds to a single session (use this option for stateful services).

On Integration Flow

Only one session will be used across the whole integration ow (only use this option for
stateless services).

 Note
Once an HTTP session has been initialized, there is usually no further authentication for
the duration of the session (one of the advantages of using sessions). This means that all
further HTTP requests on that server are processed in the context of the user that was
logged on when the session was initialized. If this behavior doesn't meet your
requirements (for example, the user is dynamic and can change from request to request),
you can select either an exchange session scope (if the user remains the same for at least
the processing of a single message) or no session.

 Note
SuccessFactors (OData V4) and SuccessFactors (REST) adapters do not support HTTP
session handling.

In the case of OData API artifacts, you can only specify the Namespace Mapping property.

4. Save the changes.

Related Information
Runtime Pro les
De ne Content Modi er

De ne Error Con guration


You can de ne how to handle errors when message processing fails at runtime.

Context
Error messages can include sensible data about systems. Therefore, error messages aren't directly returned to the sender by
default. Instead, an error template is returned. With this template, you can access the error message after authenticating
against Cloud Integration. You can enable this setting if you want to provide the error message to the sender without any
indirection.

Procedure
1. Open the integration ow and select the graphical area outside the integration ow model.

2. Choose the Error Con guration tab.

This is custom documentation. For more information, please visit the SAP Help Portal 170
6/14/2023
3. Specify the error handling strategy.

If you select Return Exception to Sender, certain adapters send the complete exception information back to the sender
in case of an error. This setting is not recommended for security reasons as, when selected, internal details of the Cloud
Integration runtime can be exposed.

If you like to ensure that no detailed exception information is sent back to the sender, make sure that Return Exception
to Sender is deselected (which is the default setting). In this case, an error template is returned to the sender that
contains the message processing log ID for further error analysis.

Manage Resources of an Integration Flow


Use Resources to manage different resources associated within an integration content optimally. The term "resources" refers
to a collection of different categories of le types. A table in the resources view displays les grouped by categories and their
lenames alphabetically sorted. Expanding each resource category shows the les within the category.

Resource les with a link allow you to view or modify the content in a le-speci c editor. You can modify the le content only
when the integration content is in edit mode.

 Note
Mouseover the lename to view the access path.

Category File Type Extensions

Archives Archive .jar

Mappings Message Mapping .mmap

Operation Mapping .opmap

XSLT Mapping .xslt

.xsl

Scripts Groovy Script .gsh

.gy

.groovy

Java Script .js

Schemas XSD .xsd

WSDL .wsdl

EDMX .edmx

.xml

Adding Local Resources


To add les from the le system, do the following:

You can add multiple resources from the le system. Also, archive the parent along with its dependent resources in a single
*.zip le and add.

This is custom documentation. For more information, please visit the SAP Help Portal 171
6/14/2023
But you can't add multiple archive (*.zip) les or an archive le along with other resource les, only resources with the
following extensions and dependencies are uploaded:

Resource Type Dependent Resources You can...

WSDL WSDL, XSD Upload individual les or an archive le


that contains multiple WSDL or XSD or both
type resources.

XSD XSD Upload individual les or an archive le


that contains only XSD resources.

EDMX EDMX, XML Upload individual EDMX or XML les, or an


archive le that contains multiple EDMX or
XML les or both type resources.

Ensure that your XML le contains the valid


EDMX tag.

XSLT mapping XSL Upload individual les or an archive le


that contains only XSL resources.

 Note
The resource view uploaders are supported for Remote APIs as well.

1. In the Local tab, choose Add and select a le type.

2. Select File System as the source.

3. Choose Browse to select one or more les from the le system.

4. Choose Add to upload the les.

To add les from an integration ow project, do the following:

1. In the Local tab, choose Add and select a le type.

2. Select Integration Flow as the source.

3. To import les from other integration projects, select the relevant Package and the Integration Flows.

4. In the All Resources table, select one or more les and choose Add to upload the les.

5. To add dependent resources, select Include Additional Resources.

 Note
MMAP les can be added from ESR. To know more, see: Importing Mapping Content from ES Repository

You can also copy MMAP les from other integration ows. While adding an MMAP le, the dependent resources get
copied along with the le. You get to see a summary of the list of dependent resources in a dialog box before adding
the le.

6. In the All Resources table, select one or more dependent les and choose Add to upload the les.

Referencing Resources
Apart from adding resources that are local your integration ow, you can also refer to reusable message mappings and script
collections. You can refer to such artifacts from the package that you're in and other packages too. This way, when the reusable

This is custom documentation. For more information, please visit the SAP Help Portal 172
6/14/2023
artifact is updated in the source, all referring integration ows are also automatically updated.

1. In the References tab, choose Add References and select a reusable artifact type.

2. Select one or more integration packages.

You see a list of available reusable artifacts from the selected packages.

3. In the Artifacts table, select one or more les.

4. Choose OK to create reference for the selected reusable artifacts.

Quick Actions
You can perform the following actions for managing resource les:

Actions Description

 (Delete) Removes relevant resource le from the integration ow. Before


deleting make sure that the selected le isn't being referred in
other integration ows.

 (Download) Downloads the respective resource le to your local le system.

(Applicable only for local resources)


 Note
While downloading an MMAP le, all dependent resources get
downloaded along with the le in a ZIP format.

Read the blog and know more about download and upload of
Message Mapping.

Externalized Parameters View


Use this view to compare the default and con gured values of the integration ow. The advantage of this view is that you can
see the consolidated view of all parameter values externalized.

Context
The integration developer uses this externalized parameter view to compare the default and con gured values for quality
assurance.

Default values of parameters can be updated from the Externalized Parameters view and the con gured value displayed in the
read-only fashion.

 Note
Modifying the default value of a parameter replaces the current value at all locations. Con gured values are always
preceded by the default value. Select Con gure option if any changes are required to the con gured value.

This view offers two more options. You can use Filter by Name/Value option to lter externalized parameter values either
by entering name or by values.

You can use Remove Used option to remove unused externalized parameters. This option allows you to permanently remove
the parameters that aren’t consumed by any components of an integration ow.

This is custom documentation. For more information, please visit the SAP Help Portal 173
6/14/2023
For more information, see Externalize Parameters of an Integration Flow.

Procedure
To view and edit externalized parameters, perform the following steps:

1. Choose the Externalized Parameters tab from the Integration Flow section, and the table displays all the used and
unused externalized parameters.

2. You can search for and modify the parameter values.

3. Choose Save to save all your changes.

Problems View
Use this view to see all errors and warnings associated with integration components and resources.

The Problems view displays all issues related to integration components and resources occurred during design time. This helps
you identify and resolve issues that have an impact during runtime.

The rst column in the table displays the Severity status of an issue. In the second column, there is a Description of the issue.
The third column highlights the Location of the integration component or resource where the issue was encountered. When you
click the location ID, the application redirects you to the affected con guration of the integration component or to the affected
resource.

 Example
Consider a location is displayed as SFTP [Receiver_1]. Here the issue is related to a SFTP receiver adapter. This is identi ed
by noticing the name and ID displayed in brackets, sometimes components may only have ID displayed. You must note that
for resources ID's are not displayed.

 Note
Content validation issues of resources when edited in their respective editors are not propagated to the Integration Flow.

Deployment Status View


Use this view to see the deployment information of the integration ows and easily navigate to the Monitor view to see the
runtime status.

In the Deployment Status view, you can see whether the artifact is deployed or not. The following attributes are displayed:

Attribute Description

Deployment Status Indicates if integration ow artifact is deployed on worker node.

The following values are possible: Deployed, Not Deployed.

If the status is Deployed, a link is shown. Click the link to navigate


to the Monitor view of the artifact.

This is custom documentation. For more information, please visit the SAP Help Portal 174
6/14/2023

Attribute Description

Runtime Status Indicates if deployed integration ow artifact is ready to operate


and process messages.

An entry is shown only if Deployment Status is Deployed.

The runtime status can have the values as described under


Runtime Status.

Deployed By User who deployed the artifact

An entry is shown only if Deployment Status is Deployed.

Deployed On Time when artifact was deployed

An entry is shown only if Deployment Status is Deployed.

Deployed Version Version of artifact that is deployed

An entry is shown only if Deployment Status is Deployed.

Additionally, on the header of integration ow editor, next to the artifact name, you see the deployment status, irrespective of
which tab in the property sheet you're in.

Bene ts of the Deployment Status View

Upon a trigger for deployment, you see the deployment status in the integration ow editor itself. You need not open the
Monitor view to see this status.

The link next to the deployment status points you to the Monitor view for integration ow, saving you clicks and time to
see the runtime status.

If the runtime status of the artifact goes into an error, you get to see an error message explaining the reason for the
error. You need not open the Monitor view to see the details of the error.

Related Information
Runtime Status

De ne Process Shapes

Related Information
De ne Integration Processes
De ne Local Integration Process
De ne Exception Subprocess

De ne Integration Processes
You use an Integration Process to de ne the steps to process the message transfer between the sender and receiver systems.

An integration ow template contains the following shapes: Sender (this represents your sender system), Receiver (this
represents a receiver system), and Integration Process. The Integration Process shape contains a Start event and an End
event.

This is custom documentation. For more information, please visit the SAP Help Portal 175
6/14/2023
The following values are displayed in the General tab.

General

Parameter Description

Name If you want to provide a name for the integration process, enter a
name here. The default is set to Integration Process.

Select the Processing tab and provide values in the elds as follows.

Transaction Management

Parameter Description

Transaction Handling Select the relevant transactional database processing:

Required for JDBC

Required for JMS

Not Required

 Note
See De ning Transaction Handling for more information.

Timeout (in min) (only if Required for JDBC or Required for JMS Enter the time in minutes.
is selected in Transaction Handling)
 Note
This value refers to the transaction itself (for example, data
base operations). The timeout will only terminate processes
referenced in the transaction, not any other operations that are
part of the integration ow.

De ne Local Integration Process


You use the local integration process to simplify your integration process. You can break down the main integration process into
smaller fragments by using local integration processes. You combine these fragments to achieve your main integration process.

Prerequisites
You are editing an integration ow containing local integration process element.

Context
You use the Local Integration Process to de ne an integration process that is speci c to the integration ow in which it is
created. You can use this integration process with the Process Call step.

 Restriction
You cannot use the following integration ow steps within the Local Integration Process step:

Another Local Integration Process

End Message

This is custom documentation. For more information, please visit the SAP Help Portal 176
6/14/2023
Sender

Receiver

Procedure
1. Choose the local integration process element you want to con gure.

2. If you want to provide a name for the local integration process element, in the Name eld under the General tab, enter
name.

3. If you want to specify the transaction handling of the message, choose a value for Transaction Handling under the
Processing tab.

To know more about Transcation Handling, see: De ning Transaction Handling

4. If you want to con gure the elements inside the local integration process, refer to the documentation relevant to those
elements.

 Note
There should not be any empty element in the Local Integration Process.

5. If you want to add the local integration process to a process call element, perform the following substeps:

a. Select the process call element in integration ow editor.

b. In Local Integration Process eld, choose Select.

c. In Select Local Integration Process window, select the local integration process you want to assign to the process
call.

 Note
You can use an Error End event to throw the exception to default exception handlers.

6. Save or deploy the con guration.

De ne Exception Subprocess
Context
You use this element to catch any exceptions thrown in the integration process and handle them.

 Note
To learn how to implement exception handling, check out the integration ow design guidelines provided for this topic under
Handle Errors Gracefully.

The integration ow design guidelines provide both documentation and prede ned integration content. You can deploy and
run the integration content out-of-the-box to learn basic concepts of Cloud Integration. You can also access the integration
ows from SAP API Business Hub as described in How to Work with the Example Integration Flows.

Procedure
1. Open your integration ow in the editor.

2. To add an exception subprocess to the integration ow, choose Process Exception Subprocess from the palette.
The subprocess can be dropped into the integration process and should not be connected to any of the elements of the
integration ow.

This is custom documentation. For more information, please visit the SAP Help Portal 177
6/14/2023
3. Select the exception subprocess.

a. In the property sheet specify a name.

4. Start the process with Error Start event always.

5. End the process with either End Message or Error End or Escalation event.

 Note
You can use an End Message event to wrap the exception in a fault message and send it back to the sender in
the payload.

You can use an Error End event to throw the exception to default exception handlers.

6. You can also add other ow elements between the start and end events .

 Note

For example, you can choose Add Service Call from the context menu of a connection within the pool. This
enables you to call another system to handle the exception.

The following elements are not supported within an Exception Subprocess:

Another Exception Subprocess

Integration Process

Local Integration Process

Sender

Receiver

Start Message

Terminate Message

Timer Start

Start Event

End Event

Router

If a Data Store Write step fails because the entry already exists (duplicate key exception), this exception
cannot be handled by an Exception subprocess. The reason is that the database transaction is rolled back even
if an Exception subprocess is used.

7. Save the changes.

 Note
The message processing log will be in an error state even if a user catches an exception and performs
additional processing on it.

You can get more details on exception using ${exception.message} or ${exception.stacktrace}.

You cannot catch exceptions of local integration process in the main integration process.

When an error is thrown during integration runtime and the same is caught by the Exception Subprocess, the
processing gets terminated.

Related Information
Handle Exceptions
This is custom documentation. For more information, please visit the SAP Help Portal 178
6/14/2023

Assign Sender and Receiver Components


You use the Sender and Receiver elements to model remote systems that are connected to your integration ow (either as
sender or receiver of messages).

Context

Procedure
1. Open the integration ow in the editor.

2. From the palette, choose Participants () and then Sender or Receiver.

Next Steps
You can now connect the Sender or Receiver shape with an integration ow Start Message or End Message event. When
performing this step, you also select the desired adapter type.

Assign Adapter to Communication Channel

Prerequisites
You are editing an integration ow.

Context
You must create a communication channel between Cloud Integration and the sender/receiver system to facilitate
communication between them.

 Note
You must click on the participant’s name of sender and receiver elements, to view the header and property information. Also,
you must drag and drop message ow over the participant's name, to assign communication channels.

You use this procedure if you want to change the adapter assigned to the communication channel in integration ows.

Procedure
1. Choose Design.

2. Select the integration package that contains the integration ow or create a new one.

3. Select the integration ow and choose Edit.

 Note
In the case of OData API artifacts in integration packages, you have to edit the OData API artifact in order to edit the
required integration ow.

4. If you want to de ne a sender channel, choose Sender, click on the arrow icon, and drag to Start.

 Note
In the case of integration ows in OData API artifacts, you cannot change the OData sender adapter.

This is custom documentation. For more information, please visit the SAP Help Portal 179
6/14/2023
5. If you want to de ne receiver channel, choose End, click on the arrow icon, and drag to Receiver.

6. In Adapter Type dialog, select the adapter you want to assign. Choose the message protocol that you want to use, if
prompted.

7. Save or deploy the changes after con guring the adapter and other integration ow elements.

 Note
In the case of integration ows in OData API artifacts, you can save the integration ow and deploy the OData API.

Consuming Integration Adapters from SAP API Business Hub


Learn about adapters available in the SAP API Business Hub.

Adapters in SAP API Business Hub

SAP Cloud Integration has a rich set of prebundled adapters that help you to connect to a multitude of cloud and on-premise
systems. Apart from these adapters, there are also adapters available in the SAP API Business Hub.

Finding and Consuming the Adapters

Like consuming the prebundled adapters, consuming these integration adapters is also simple. Cloud Integration takes care of
fetching and deploying the adapter from SAP API Business Hub. All that you've to do is to choose the adapter in your integration
ow design. For more information, see Import Integration Adapters.

Adapter and Its Package

Each adapter that is available in the SAP API Business Hub in contained in a package that is exclusively created for containing
only the adapter. When you consume an adapter from SAP API Business Hub, Cloud Integration creates a package in your
design workspace along with the adapter.

 Remember

While importing the adapter and its package from SAP API Business Hub to your design workspace, Cloud Integration
looks out for an already existing package with the same name. If a package with same name exists, then the import of
adapter fails. Else, import and deploy of the adapter is successful upon which you can use the adapter for your design.

You can also copy the package that contains the adapter from the Discover section like you do for standard
prepackaged content. This way, you need not import from SAP API Business Hub during design time.

You can reuse a deployed adapter multiple times. That is, if the adapter (and its package) from SAP API Business Hub
is already available in your tenant, the adapter gets picked upon selecting it. You need not import and deploy every
time you want to use it.

You can't edit or add new artifacts to the adapter's package.

For the purpose of protecting the intellectual property, you can't download the adapter.

Adapters Lifecycle

Like other prebundled standard packages, the package that contains the adapter supports SAP API Business Hub lifecycle
operations. Every time a new version of the adapter is published to the Hub, you see Update Available information for the
package in your design workspace. You can easily update the package and use the latest version of the adapter. Upon updating
the adapter, your already deployed integration ows continue to work well with the older version of the adapter without any
disruption. If you wish, you can edit the deployed integration ows to use the newer version of the adapter.

This is custom documentation. For more information, please visit the SAP Help Portal 180
6/14/2023

Adapters Availability

The availability of these custom adapters is dependent on your SAP Integration Suite service plan. For more information about
different service plans and their supported feature set, see SAP Notes 2903776 and 3188446 .

Import Integration Adapters


Import and auto-deploy the adapters that are published in the SAP API Business Hub in your design workspace.

Procedure
1. In the Integration Flow Editor, do one of the following based on your requirement:

a. Choose Sender, select the connector, and drag to Start.

b. Choose End, select the connector, and drag to Receiver.

2. In the Adapter Type dialog, select the adapter that you want to assign.

You see a list that includes both preshipped adapters and the ones from SAP API Business Hub. Though you haven't
imported adapters from SAP API Business Hub, Cloud Integration shows you all the adapters that are available from the
Hub.

If you select an adapter from SAP API Business Hub, Cloud Integration automatically imports the adapter and its
package to your design workspace, and deploys the adapter for consumption across your tenant.

3. Save or deploy your changes after con guring the adapter. See Con gure Adapter in Communication Channels.

Related Information
Assign Adapter to Communication Channel

Con gure Adapter in Communication Channels


You should con gure the adapters assigned to communication channels before deploying the integration ow.

The following adapter types are available:

Adapter

Feature Description

AmazonWebServices Connects SAP Cloud Integration to Amazon Web Services.

Sender adapter The adapter supports the following protocols:

S3: Simple Cloud Storage

SQS: Simple Queue Service

See: AmazonWebServices Sender Adapter

This is custom documentation. For more information, please visit the SAP Help Portal 181
6/14/2023

Feature Description

AmazonWebServices Connects SAP Cloud Integration to Amazon Web Services.

Receiver adapter The adapter supports the following protocols:

S3: Simple Cloud Storage

SQS: Simple Queue Service

SNS: Simple Noti cation Service

SWF: Simple Work ow Service

See: AmazonWebServices Receiver Adapter

AMQP Enables SAP Cloud Integration to consume messages from queues or topic subscriptions in an external
messaging system.
Sender adapter
Supported message protocol: AMQP (Advanced Message Queuing Protocol) 1.0

Supported transport protocols: TCP, WebSocket

See: Con gure the AMQP Sender Adapter

AMQP Enables SAP Cloud Integration to send messages to queues or topics in an external messaging system.

Receiver adapter Supported message protocol: AMQP (Advanced Message Queuing Protocol) 1.0

Supported transport protocols: TCP, WebSocket

See: Con gure the AMQP Receiver Adapter

AMQP for SAP Event Enables SAP Cloud Integration to consume messages from SAP Event Mesh.
Mesh
Supported message protocol: AMQP (Advanced Message Queuing Protocol) 1.0
Sender adapter
Supported transport protocol: WebSocket

See: AMQP Sender for SAP Event Mesh

AMQP for SAP Event Enables SAP Cloud Integration to send messages to SAP Event Mesh.
Mesh
Supported message protocol: AMQP (Advanced Message Queuing Protocol) 1.0
Receiver adapter
Supported transport protocol: WebSocket

See: AMQP Receiver for SAP Event Mesh

AMQP for Microsoft Enables SAP Cloud Integration to consume messages from Microsoft Azure Service Bus.
Azure Service Bus
Supported message protocol: AMQP (Advanced Message Queuing Protocol) 1.0
Sender adapter
Supported transport protocol: TCP

See: AMQP Sender for Microsoft Azure Service Bus

AMQP for Microsoft Enables SAP Cloud Integration to send messages to Microsoft Azure Service Bus.
Azure Service Bus
Supported message protocol: AMQP (Advanced Message Queuing Protocol) 1.0
Receiver adapter
Supported transport protocol: TCP

See: AMQP Receiver for Microsoft Azure Service Bus

AMQP for Solace Enables SAP Cloud Integration to consume messages from Solace PubSub+.
PubSub+
Supported message protocol: AMQP (Advanced Message Queuing Protocol) 1.0
Sender adapter
Supported transport protocol: TCP

See: AMQP Sender for Solace PubSub+

This is custom documentation. For more information, please visit the SAP Help Portal 182
6/14/2023

Feature Description

AMQP for Solace Enables SAP Cloud Integration to send messages to Solace PubSub+.
PubSub+
Supported message protocol: AMQP (Advanced Message Queuing Protocol) 1.0
Receiver adapter
Supported transport protocol: TCP

See: AMQP Receiver for Solace PubSub+

AMQP for Apache Enables SAP Cloud Integration to consume messages from Apache Qpid Broker-J.
Qpid Broker-J
Supported message protocol: AMQP (Advanced Message Queuing Protocol) 1.0
Sender adapter
Supported transport protocol: TCP, WebSocket

See: AMQP Sender for Apache Qpid Broker-J

AMQP for Apache Enables SAP Cloud Integration to send messages to Apache Qpid Broker-J.
Qpid Broker-J
Supported message protocol: AMQP (Advanced Message Queuing Protocol) 1.0
Receiver adapter
Supported transport protocol: TCP, WebSocket

See: AMQP Receiver for Apache Qpid Broker-J

AMQP for Apache Enables SAP Cloud Integration to consume messages from Apache ActiveMQ 5 / Apache ActiveMQ Artemis.
ActiveMQ 5 /
Supported message protocol: AMQP (Advanced Message Queuing Protocol) 1.0
Apache ActiveMQ
Artemis Supported transport protocol: TCP

Sender adapter See: AMQP Sender for Apache ActiveMQ 5 and Apache ActiveMQ Artemis

AMQP for Apache Enables SAP Cloud Integration to send messages to Apache ActiveMQ 5 / Apache ActiveMQ Artemis.
ActiveMQ 5 /
Supported message protocol: AMQP (Advanced Message Queuing Protocol) 1.0
Apache ActiveMQ
Artemis Supported transport protocol: TCP

Receiver adapter See: AMQP Receiver for Apache ActiveMQ 5 and Apache ActiveMQ Artemis

AMQP for IBM MQ Enables SAP Cloud Integration to consume messages from IBM MQ.

Sender adapter Supported message protocol: AMQP (Advanced Message Queuing Protocol) 1.0

Supported transport protocol: TCP

See: AMQP Sender for IBM MQ

AMQP for IBM MQ Enables SAP Cloud Integration to send messages to IBM MQ.

Receiver adapter Supported message protocol: AMQP (Advanced Message Queuing Protocol) 1.0

Supported transport protocol: TCP

See: AMQP Receiver for IBM MQ

Ariba Connects SAP Cloud Integration to the Ariba Network. Using this adapter, SAP and non-SAP cloud applications
can receive business-speci c documents in commerce eXtensible Markup Language (cXML) format from the
Sender adapter
Ariba network.

The sender adapter allows you to de ne a schedule for polling data from Ariba.

See: Con gure the Ariba Sender Adapter

Ariba Connects SAP Cloud Integration to the Ariba network. Using this adapter, SAP and non-SAP cloud applications
can send business-speci c documents in commerce eXtensible Markup Language (cXML) format to the Ariba
Receiver adapter
network.Receiver adapter

See: Con gure the Ariba Receiver Adapter

This is custom documentation. For more information, please visit the SAP Help Portal 183
6/14/2023

Feature Description

AS2 Enables SAP Cloud Integration to exchange business-speci c documents with a partner through the Applicability
Statement 2 (AS2) protocol.
Sender adapter
Sender adapter: Can return an electronic receipt to the sender of the AS2 message (in the form of a Message
Disposition Noti cation (MDN))

See: Con gure the AS2 Sender Adapter

AS2 Enables SAP Cloud Integration to exchange business-speci c documents with a partner through the Applicability
Statement 2 (AS2) protocol.
Receiver adapter
See: Con gure the AS2 Receiver Adapter

AS4 Enables SAP Cloud Integration to securely process incoming AS4 messages using Web Services. The AS4 sender
adapter is based on the ebMS 3.0 speci cation that supports the ebMS handler conformance pro le.
Sender adapter
Supports one-way/ebMS3 push message exchange pattern (MEP).

Support on-way/ebMS3 pull that allows the message party to pick the corresponding message from the
partner.

Supports signature veri cation and decryption of the message.

Generates receipts after processing the incoming AS4 message.

Allows you to set a size limit for the body and attachment of an incoming message.

See: AS4 Sender Adapter

AS4 Enables SAP Cloud Integration to establish a connection between any two message service handlers (MSHs) for
exchanging business documents. The AS4 receiver adapter uses the Light Client conformance policy and
Receiver adapter
supports only message pushing for the sending MSH and selective message pulling for the receiving MSH.

Receiver adapter:

Supports one-way/push message exchange pattern (MEP) that involves the transfer of business
documents from a sending MSH to a receiving MSH.

Supports one-way/selective-pull message exchange pattern (MEP) that involves the receiving MSH
initiating a selective pull request to the sending MSH. The sending MSH responds by sending the speci c
user message.

Supports storing and veri cation of receipts.

See: AS4 Receiver Adapter

Data Store Enables SAP Cloud Integration to consume messages from a data store.

Sender adapter See: Data Store Sender Adapter

ELSTER Enables SAP Cloud Integration to send a tax document to the ELSTER server.

Receiver adapter ELSTER (acronym for the German term Elektronische Steuererklärung) is used in German scal management to
process tax declarations exchanged over the Internet.

The adapter supports the following operations: Getting the version of the ERiC (ELSTER Rich Client) library,
validating a tax document, and sending a tax document.

See: ELSTER Receiver Adapter

Facebook Enables SAP Cloud Integration to access and extract information from Facebook based on certain criteria such as
keywords or user data.
Receiver adapter
Using OAuth, the SAP BTP tenant can access resources on Facebook on behalf of a Facebook user.

See: Facebook Receiver Adapter

This is custom documentation. For more information, please visit the SAP Help Portal 184
6/14/2023

Feature Description

FTP Enables SAP Cloud Integration to connect to a remote system using TCP (Transmission Control Protocol) to
receive les from the system.
Sender adapter
FTP stands for File Transfer Protocol.

The sender adapter allows you to de ne a schedule for polling data from the connected system.

See: Con gure the FTP Sender Adapter

FTP Enables SAP Cloud Integration to connect to a remote system using TCP (Transmission Control Protocol) to write
les to the system.
Receiver adapter
FTP stands for File Transfer Protocol.

See: Con gure the FTP Receiver Adapter

HTTPS Establishes an HTTPS connection between SAP Cloud Integration and a sender system.

Sender adapter See: HTTPS Sender Adapter

HTTP Establishes an HTTP connection between SAP Cloud Integration and a receiver system.

Receiver adapter Receiver adapter:

Supports HTTP 1.1 only (target system must support chunked transfer encoding and may not rely on the
existence of the HTTP Content-Length header)

Supports the following methods: DELETE, GET, HEAD, POST, PUT, TRACE

Method can also be determined dynamically by reading a value from a message header or property
during runtime.

See: HTTP Receiver Adapter

IDoc Allows SAP Cloud Integration to exchange Intermediate Document (IDoc) messages with a sender system that
supports communication via SOAP Web services.
Sender adapter
A size limit for the inbound message can be con gured for the sender adapter.

See: Con gure the IDoc Sender Adapter

IDoc Allows SAP Cloud Integration to exchange Intermediate Document (IDoc) messages with a receiver system that
supports communication via SOAP Web services.
Receiver adapter
See: Con gure the IDoc Receiver Adapter

JDBC Allows SAP Cloud Integration to connect to a JDBC (Java Database Connectivity) database and to execute SQL
commands on the database.
Receiver adapter
See: JDBC Receiver Adapter

JDBC for DB2 (On- Allows SAP Cloud Integration to connect to DB2 (On-Premise) using JDBC (Java Database Connectivity) and to
Premise) execute SQL commands on the database.

Receiver adapter See: JDBC for DB2 (On-Premise)

JDBC for Microsoft Allows SAP Cloud Integration to connect to Microsoft SQL Server (Cloud) using JDBC (Java Database
SQL Server (Cloud) Connectivity) and to execute SQL commands on the database.

Receiver adapter See: JDBC for Microsoft SQL Server (Cloud)

JDBC for Microsoft Allows SAP Cloud Integration to connect to Microsoft SQL Server (On-Premise) using JDBC (Java Database
SQL Server (On- Connectivity) and to execute SQL commands on the database.
Premise)
See: JDBC for Microsoft SQL Server (On-Premise)
Receiver adapter

This is custom documentation. For more information, please visit the SAP Help Portal 185
6/14/2023

Feature Description

JDBC for Oracle Allows SAP Cloud Integration to connect to Oracle (Cloud) using JDBC (Java Database Connectivity) and to
(Cloud) execute SQL commands on the database.

Receiver adapter See: JDBC for Oracle (Cloud)

JDBC for Oracle Allows SAP Cloud Integration to connect to Oracle (On-Premise) using JDBC (Java Database Connectivity) and to
(On-Premise) execute SQL commands on the database.

Receiver adapter See: JDBC for Oracle (On-Premise)

JDBC for Allows SAP Cloud Integration to connect to PostgreSQL (Cloud) using JDBC (Java Database Connectivity) and to
PostgreSQL (Cloud) execute SQL commands on the database.

Receiver adapter See: JDBC for PostgreSQL (Cloud)

JDBC for SAP ASE Allows SAP Cloud Integration to connect to SAP ASE Service (Neo) using JDBC (Java Database Connectivity) and
Service (Neo) to execute SQL commands on the database.

Receiver adapter See: JDBC for SAP ASE Service (Neo)

JDBC for SAP HANA Allows SAP Cloud Integration to connect to SAP HANA Cloud using JDBC (Java Database Connectivity) and to
Cloud execute SQL commands on the database.

Receiver adapter See: JDBC for SAP HANA (Cloud)

JDBC for SAP HANA Allows SAP Cloud Integration to connect to SAP HANA Platform (On-Premise) using JDBC (Java Database
Platform (On- Connectivity) and to execute SQL commands on the database.
Premise)
See: JDBC for SAP HANA Platform (On-Premise)
Receiver adapter

JDBC for SAP HANA Allows SAP Cloud Integration to connect to SAP HANA Service (Neo) using JDBC (Java Database Connectivity)
Service (Neo) and to execute SQL commands on the database.

Receiver adapter See: JDBC for SAP HANA Service (Neo)

JMS Enables asynchronous messaging by using message queues.

Sender adapter The sender adapter consumes messages from a queue. The messages are processed concurrently.

To prevent situations where the JMS adapter tries again and again to process a failed (large) message, you can
store messages (where the processing stopped unexpectedly) in a dead-letter queue after two retries.

Certain constraints apply with regard to the number and capacity of involved queues, as well as for the headers
and exchange properties de ned in the integration ow before the message is saved to the queue (as described
in the product documentation).

See: Con gure the JMS Sender Adapter

JMS Enables asynchronous messaging by using message queues.

Receiver adapter The receiver adapter stores messages and schedules them for processing in a queue. The messages are
processed concurrently.

See: Con gure the JMS Receiver Adapter

Kafka Allows SAP Cloud Integration to connect to an external Kafka broker via Kafka protocol and to fetch Kafka records
(messages).
Sender adapter
See: Con gure the Kafka Sender Adapter

Kafka Allows SAP Cloud Integration to connect to an external Kafka broker via Kafka protocol and to send Kafka records
(messages).
Receiver adapter
See: Con gure the Kafka Receiver Adapter

This is custom documentation. For more information, please visit the SAP Help Portal 186
6/14/2023

Feature Description

Mail Sender for Enables SAP Cloud Integration to read e-mails from an e-mail server using the Internet Message Access Protocol
IMAP (IMAP) protocol.

Sender adapter To authenticate against the e-mail server, you can send the user name and password in plain text or encrypted
(the latter only if the e-mail server supports this option).

You can protect inbound e-mails at the transport layer with IMAPS and STARTTLS.

The sender adapter allows you to de ne a schedule for polling data from the connected system.

For more information on possible threats when processing e-mail content with the Mail adapter, see the product
documentation.

See: Mail Sender for IMAP

Mail Sender for Enables SAP Cloud Integration to read e-mails from an e-mail server using the Post Office Protocol (POP3)
POP3 protocol.

Sender adapter To authenticate against the e-mail server, you can send the user name and password in plain text or encrypted
(the latter only if the e-mail server supports this option).

You can protect inbound e-mails at the transport layer with POP3S and STARTTLS.

The sender adapter allows you to de ne a schedule for polling data from the connected system.

For more information on possible threats when processing e-mail content with the Mail adapter, see the product
documentation.

See: Mail Sender for POP3

Mail Enables SAP Cloud Integration to send e-mails to an e-mail server.

Receiver adapter To authenticate against the e-mail server, you can send the user name and password in plain text or encrypted
(the latter only if the e-mail server supports this option).

You can protect outbound e-mails at the transport layer with STARTTLS or SMTPS.

You can encrypt outbound e-mails using S/MIME (supported content encryption algorithms:
AES/CBC/PKCS5Padding, DESede/CBC/PKCS5Padding).

See: Con gure the Mail Receiver Adapter

Microsoft Dynamics Connects SAP Cloud Integration to Microsoft Dynamics Customer Relationship Management (CRM).
CRM
See: Microsoft Dynamics CRM Receiver Adapter
Receiver adapter

OData Connects SAP Cloud Integration to systems using the Open Data (OData) protocol in either ATOM or JSON format
(only synchronous communication is supported).
Sender adapter
Supported versions: OData version 2.0

The adapter receives incoming requests in either ATOM or JSON format.

Supported operations: Create (POST), Delete (DELETE), Query (GET), Read (GET), Update (PUT)

Using the GET or POST method, the sender adapter can also invoke operations that are not covered by
the standard CRUD (Create, Retrieve, Update, and Delete) methods (function import).

See: Con gure the OData Sender Adapter

This is custom documentation. For more information, please visit the SAP Help Portal 187
6/14/2023

Feature Description

OData Connects SAP Cloud Integration to systems using the Open Data (OData) protocol.

Receiver adapter Supported versions:

OData version 2.0

Supported operations: Create (POST), Delete (DELETE), Merge (MERGE), Query (GET), Read (GET),
Update (PUT), Patch (PATCH)

OData version 4.0

Supported operations: Create (POST), Query (GET), Update (PUT)

The outgoing request payload must be in XML format.

See:

Con gure the OData V2 Receiver Adapter

Con gure the OData V4 Receiver Adapter

ODC Connects SAP Cloud Integration to SAP Gateway OData Channel (through transport protocol HTTPS).

Receiver adapter Supported operations: Create (POST), Delete (DELETE), Merge (MERGE), Query (GET), Read (GET), Update
(PUT)

See: ODC Receiver Adapter

OpenConnectors Connects SAP Cloud Integration to more than 150 non-SAP Cloud applications that are supported by SAP Open
Connectors.
Receiver adapter
Uses APIs to fetch data from speci c third-party applications.

Is designed to handle large volumes of incoming data.

Supports messages in both JSON and XML format, for request and response calls.

Allows you to de ne speci c values for variables.

See: OpenConnectors Receiver Adapter

ProcessDirect Connects an integration ow with another integration ow deployed on the same tenant.

Sender adapter An integration ow with a ProcessDirect sender adapter (as consumer) consumes data from another integration
ow.

N:1 cardinality of producer and consumer integration ows is supported.

See: Con gure the ProcessDirect Sender Adapter

ProcessDirect Connects an integration ow with another integration ow deployed on the same tenant.

Receiver adapter An integration ow with a ProcessDirect receiver adapter (as producer) sends data to another integration ow.

N:1 cardinality of producer and consumer integration ows is supported.

See: Con gure the ProcessDirect Receiver Adapter

RFC Connects SAP Cloud Integration to a remote receiver system using Remote Function Call (RFC).

Receiver adapter RFC is the standard interface used for integrating on-premise ABAP systems to the systems hosted on the cloud
using SAP Cloud Connector.

The adapter supports SAP NetWeaver, version 7.31 or higher.

See: RFC Receiver Adapter

This is custom documentation. For more information, please visit the SAP Help Portal 188
6/14/2023

Feature Description

Salesforce Connects SAP Cloud Integration to Salesforce.

Sender adapter See: Salesforce Sender Adapter

Salesforce Connects SAP Cloud Integration to Salesforce.

Receiver adapter See: Salesforce Receiver Adapter

ServiceNow Connects SAP Cloud Integration to ServiceNow. Supports basic authentication and OAuth.

Receiver adapter See: ServiceNow Receiver Adapter

SFTP Connects SAP Cloud Integration to a remote system using the SSH File Transfer protocol to read les from the
system. SSH File Transfer protocol is also referred to as Secure File Transfer protocol (or SFTP).
Sender adapter
Supported versions:

SSH version 2 (as speci ed at http://tools.ietf.org/html/rfc4251 ), SSH File Transfer Protocol (SFTP) version 3
or higher

The sender adapter allows you to de ne a schedule for polling data from the connected system.

See: Con gure the SFTP Sender Adapter

SFTP Connects SAP Cloud Integration to a remote system using the SSH File Transfer protocol to write les to the
system. SSH File Transfer protocol is also referred to as Secure File Transfer protocol (or SFTP).
Receiver adapter
Supported versions:

SSH version 2 (as speci ed at http://tools.ietf.org/html/rfc4251 ), SSH File Transfer Protocol (SFTP) version 3
or higher

See: Con gure the SFTP Receiver Adapter

SOAP SOAP 1.x Exchanges messages with a sender system that supports Simple Object Access Protocol (SOAP) 1.1 or SOAP 1.2.

Sender adapter The message exchange patterns supported by the sender adapter are one-way messaging or request-reply.

The adapter supports Web services Security (WS-Security).

A size limit for the inbound message can be con gured for the sender adapter.

See: Con gure the SOAP (SOAP 1.x) Sender Adapter

SOAP SOAP 1.x Exchanges messages with a receiver system that supports Simple Object Access Protocol (SOAP) 1.1 or SOAP
1.2.
Receiver adapter
The adapter supports Web services Security (WS-Security).

See: Con gure the SOAP (SOAP 1.x) Receiver Adapter

SOAP SAP RM Exchanges messages with a sender system based on the SOAP communication protocol and SAP Reliable
Messaging (SAP RM) as the message protocol. SAP RM is a simpli ed communication protocol for asynchronous
Sender adapter
Web service communication that does not require the use of Web Service Reliable Messaging standards.

A size limit for the inbound message can be con gured for the sender adapter.

See: Con gure the SOAP (SAP RM) Sender Adapter

SOAP SAP RM Exchanges messages with a receiver system based on the SOAP communication protocol and SAP Reliable
Messaging (SAP RM) as the message protocol. SAP RM is a simpli ed communication protocol for asynchronous
Receiver adapter
Web service communication that does not require the use of Web Service Reliable Messaging standards.

See: Con gure the SOAP (SAP RM) Receiver Adapter

This is custom documentation. For more information, please visit the SAP Help Portal 189
6/14/2023

Feature Description

SuccessFactors Connects SAP Cloud Integration to a SuccessFactors sender system using the REST message protocol.
REST
The adapter supports the following operations: GET
Sender adapter
See: Con gure the SuccessFactors REST Sender Adapter

SuccessFactors Connects SAP Cloud Integration to a SuccessFactors receiver system using the REST message protocol.
REST
The adapter supports the following operations: GET, POST
Receiver adapter
See: Con gure the SuccessFactors REST Receiver Adapter

SuccessFactors Connects SAP Cloud Integration to SOAP-based Web services of a SuccessFactors sender system (synchronous
SOAP or asynchronous communication).

Sender adapter The adapter supports the following operations: Query

See: Con gure the SuccessFactors (SOAP) Sender Adapter

SuccessFactors Connects SAP Cloud Integration to SOAP-based Web services of a SuccessFactors receiver system (synchronous
SOAP or asynchronous communication).

Receiver adapter The adapter supports the following operations: Insert, Query, Update, Upsert

See: Con gure the SuccessFactors SOAP Receiver Adapter

SuccessFactors Connects SAP Cloud Integration to a SuccessFactors system using OData V2.
OData V2
Features of OData version 2.0 supported by the adapter:
Receiver adapter
Operations: GET (get single entity as an entry document), PUT (update existing entry with an entry
document), POST (create new entry from an entry document), DELETE (Delete an entry from an entry
document), UPSERT (combination of Update OR Insert)

Query options: $expand, $skip,and $top

Server-side pagination

Client-side pagination

Pagination enhancement: Data retrieved in chunks and sent to Cloud Integration

Deep insert: Creates a structure of related entities in one request

Authentication options: Basic authentication

Reference links: Link two entities using the <link> tag

See: Con gure the SuccessFactors OData V2 Receiver Adapter

SuccessFactors Connects SAP Cloud Integration to a SuccessFactors system using OData V4.
OData V4
Features of OData version 4.0 supported by the adapter:
Receiver adapter
Operations: GET, POST, PUT, DELETE

Navigation

Primitive types supported according to OData V4 speci cation

Structural types supported for create/update operations:

Edm.ComplexType, Edm:EnumType, Collection(Edm.PrimitiveType) and Collection(Edm.ComplexType)

See: SuccessFactors OData V4 Receiver Adapter

SugarCRM Connects SAP Cloud Integration to SugarCRM.

Receiver adapter See: SugarCRM Receiver Adapter

This is custom documentation. For more information, please visit the SAP Help Portal 190
6/14/2023

Feature Description

Twitter Enables SAP Cloud Integration to access Twitter and read or post tweets.

Receiver adapter Using OAuth, SAP Cloud Integration can access resources on Twitter on behalf of a Twitter user.

See: Twitter Receiver Adapter

Workday Connects SAP Cloud Integration to Workday. Supports Workday SOAP API with basic authentication.

Receiver adapter See: Workday Receiver Adapter

XI Connects SAP Cloud Integration to a remote sender system that can process the XI message protocol.

Sender adapter See: Con gure the XI Sender Adapter

XI Connects SAP Cloud Integration to a remote receiver system that can process the XI message protocol.

Receiver adapter See: Con gure the XI Receiver Adapter

If you are quick con guring an integration ow, you can con gure a few adapter parameters. Refer to the relevant adapter
con guration details for information on those parameters.

If you are developing an OData API, you can con gure a SOAP, OData or HTTP adapter assigned to the receiver channel and the
OData adapter assigned to the sender channel.

 Note
Note regarding the timeout behavior for HTTP communication:

In HTTP communication spanning multiple components (for example, from a sender, through the load balancer, to a Cloud
Integration tenant, and from there to a receiver), the actual timeout period is in uenced by each of the timeout settings of
the individual components that are interconnected between sender and receiver (precisely spoken, of those components
that can control the Transmission Control Protocol (TCP) session). The component or device with the lowest number set for
the idle session timeout will determine the timer that will be used.

When considering inbound communication (through HTTP-based sender adapters), note that in particular the load
balancer has an own timeout setting that has an in uence on the overall timeout. For the inbound side, SAP Cloud
Integration supports no communication that waits for longer than 10 minutes.

When considering outbound communication, note that in the involved HTTP-based receiver channel you can con gure
a dedicated timeout. However, timeout setting has no in uence on the TCP timeout when the receiver or any
additional component interconnected between the Cloud Integration tenant and the receiver have a lower timeout.
For example, consider that you have con gured a receiver channel timeout of 10 minutes and there is another
component involved with a timeout of 5 minutes. In case, nothing is transferred for a certain time, the connection will
be closed after the 5th minute.

 Remember
Connecting to an on-premise system:

When con guring a receiver adapter to connect with an on-premise system via SAP Cloud Connector, only
connections/URLs with <http://<virtual-url> in the SAP Cloud Connector are supported. The connection between Cloud
Integration and cloud part of the SAP Cloud Connector happens inside an SAP BTP account, which is a secured digital space.
Hence, <http://<virtual-url> endpoints, instead of <https://<virtual-url>, are sufficient.

Related Information

This is custom documentation. For more information, please visit the SAP Help Portal 191
6/14/2023
AMQP Adapter
Ariba Adapter
AS2 Adapter
AS4 Sender Adapter
AS4 Receiver Adapter
AmazonWebServices Sender Adapter
AmazonWebServices Receiver Adapter
ELSTER Receiver Adapter
Facebook Receiver Adapter
FTP Adapter
HTTP Receiver Adapter
HTTPS Sender Adapter
IDoc Adapter
JDBC Receiver Adapter
JMS Adapter
Kafka Adapter
LDAP Receiver Adapter
Mail Adapter
Microsoft Dynamics CRM Receiver Adapter
OData Adapter
ODC Receiver Adapter
OpenConnectors Receiver Adapter
ProcessDirect Adapter
RFC Receiver Adapter
Salesforce Receiver Adapter
ServiceNow Receiver Adapter
SFTP Adapter
SOAP (SAP RM) Adapter
SOAP (SOAP 1.x) Adapter
SuccessFactors OData V2 Adapter
SuccessFactors OData V4 Receiver Adapter
SuccessFactors REST Adapter
SuccessFactors SOAP Adapter
SugarCRM Receiver Adapter
Twitter Receiver Adapter
Workday Receiver Adapter
XI Adapter

AMQP Adapter
In many integration scenarios, messages or events have to be exchanged between applications or systems via message
brokers. With the Advanced Message Queuing Protocol (AMQP) adapter, SAP Cloud Integration can be used as a provider or a
consumer of such messages or events. Cloud Integration can connect to external message brokers using the AMQP protocol,
consume messages or events using the AMQP sender adapter, or store messages or events in the message broker using the
AMQP receiver adapter.

 Note
Note that customer-speci c headers with pre x JMS aren’t allowed. These headers aren’t forwarded by the message
brokers.

This is custom documentation. For more information, please visit the SAP Help Portal 192
6/14/2023

 Note
Queues, topics, and messages can only be created and monitored by using tools provided by the message broker provider.
Those monitors aren’t integrated into Cloud Integration. In Cloud Integration, the integration ows using the AMQP adapter
are monitored and the messages are sent to or consumed from the message broker.

Related Information
Con gure the AMQP Sender Adapter
Con gure the AMQP Receiver Adapter

Con gure the AMQP Sender Adapter


You use the Advanced Message Queuing Protocol (AMQP) sender adapter to consume messages in SAP Cloud Integration from
queues or topic subscriptions in an external message broker.

 Note
In the following cases certain features might not be available for your current integration ow:

You are using a runtime pro le other than the one expected. See: Runtime Pro les.

A feature for a particular adapter or step was released after you created the corresponding shape in your integration
ow.

To use the latest version of a ow step or adapter – edit your integration ow, delete the ow step or adapter, add the
step or adapter, and con gure the same. Finally, redeploy the integration ow. See: Updating your Existing Integration
Flow.

 Note
Queues, topics, and messages can only be monitored by using tools provided by the message broker provider. Those
monitors are not integrated into SAP Cloud Integration. In SAP Cloud Integration, the integration ows using the AMQP
adapter are monitored and the messages are sent to or consumed from the message broker.

 Note
To be able to connect to queues or topics, you have to create queues and/or topics in the message broker. This needs to be
done in the message broker, with the con guration tools provided by the message broker. In some messaging systems, you
need to con gure a Lock Duration to make sure that the message is not consumed more than once. This timeout must be
longer than the expected processing time of the message, otherwise this would lead to duplicate messages.

 Note
This adapter exchanges data with a remote component that might be outside the scope of SAP. Make sure that the data
exchange complies with your company’s policies.

Once you have created a sender channel and selected the AMQP sender adapter (TCP or WebSocket), you can con gure the
following attributes. See Overview of Integration Flow Editor.

This is custom documentation. For more information, please visit the SAP Help Portal 193
6/14/2023
The following values are displayed in the General tab after a channel has been established. If you want to change the
con gurations, you need to con gure a new channel.

General

Parameter Description

Name/Adapter Type AMQP

Transport Protocol The protocol that the message broker supports:

TCP

WebSocket

Message Protocol AMQP 1.0

Select the Connection tab and provide values in the elds as follows:

Connection

Parameter Description

Host Specify the hostname of the message broker.

Port Specify the port of the message broker.

Proxy Type The type of proxy that you’re using to connect to the target system.

Select Internet if you’re connecting directly to the message broker.

Select On-Premise if you’re connecting to an on-premise message


broker.

For more information, see Using SAP Cloud Connector with Cloud
Integration Adapters.

Path (only if WebSocket is selected as the Transport Protocol in Specify the access path of the message broker.
the General tab)

Connect with TLS Select if Transport Layer Security (TLS) has to be used for the
connection.

You can't con gure this parameter if Client Certi cate is selected
for Authentication. In this case, TLS is automatically used.

Location ID (only if On-Premise is selected for Proxy Type) To connect to an SAP Cloud Connector instance associated with
your account, enter the location ID that you de ned for this instance
in the destination con guration on the cloud side.

This is custom documentation. For more information, please visit the SAP Help Portal 194
6/14/2023

Parameter Description

Authentication Select the authentication method the message broker supports.


SASL is selected by default.

SASL

Select to use Simple Authentication and Security Layer


(SASL).

OAuth2 Client Credentials (only when WebSocket has


been selected for Transport Protocol while creating the
connection)

Select to use OAuth 2.0 client credentials grant. At runtime,


Cloud Integration gets access to the protected resources in
two steps: After presenting a set of client credentials,
Cloud Integration fetches an access token from a token
service. In a subsequent step, Cloud Integration uses the
access token to get access to the protected resources in
the connected system.

More information: OAuth 2.0 Client Credentials Grant

Client Certi cate (only when TCP has been selected for
Transport Protocol while creating the connection and if
Internet is selected for Proxy Type)

At runtime, Cloud Integration authenticates itself against


the connected system using a client certi cate.

It's a prerequisite that the required key pair is installed and


added to a keystore. This keystore has to be deployed on
the related tenant. The receiver side has to be con gured
appropriately.

 Note
This authentication option implies that Transport Layer
Security (TLS) is used for the connection.

More information:

None

Select when not to use any authentication.

Credential Name (only if SASL or OAuth2 Client Credentials are Specify the alias of the deployed credentials.
selected for Authentication)

Private Key Alias (only if Client Certi cate is selected for Alias to identify the private key in the keystore used for client
Authentication) certi cate authentication.

Select the Processing tab and provide values in the elds as follows.

Processing

Parameter Description

This is custom documentation. For more information, please visit the SAP Help Portal 195
6/14/2023

Parameter Description

Queue Name Specify the name of the queue or topic subscription to consume from.

Note that topics are not supported in the sender adapter, only queues and topic subscriptions.

 Note
Topics are not supported in the sender adapter, only queues and topic subscriptions.

 Note
If SAP Event Mesh is used as connected message broker, use the following expression to de ne
the queue name:

queue:<queue name>

Number of Current Processes Specify the number of processes used for parallel message processing. Note, that these
processes are started from each worker node.

 Note
The maximum number of parallel processes cannot exceed 99. The default is set to 1.

Max. Number of Prefechted Enter the max. number of messages that may be prefechted by one worker. The allowed value
Messages range is 1 to 100.

The prefetch value is the number of messages that the sender adapter fetches in advance from the
broker, and then gradually processes. The prefetch reduces the communication overhead and
ensures that when a message has been processed, another is already there and is ready for
processing.

If the integration ows that are triggered by the AMQP sender adapter run for longer than a few
seconds, it makes sense to set a lower prefetch value. In particular, if the integration ow runs for
more than a minute, you should consider setting the value to 1. You can expect then a performance
deterioration in the two-digit millisecond range, per message. On the other hand, load balancing
between several nodes works better even with short backlogs.

If you need to process a large number of messages with the integration ow, and the processing of
the individual message only runs for a few milliseconds, it can be useful to increase the prefetch
value.

 Note
If you increase the value, this can lead to lock timeouts and the load balancing between the
nodes deteriorates. In return, you can expect performance gains in the three-digit microsecond
range, per message. For example, with a prefetch value of 100, 10000 messages process
approximately a second or two faster.

Consume Expired Messages Select if the adapter is to consume already expired messages.

By default, this option is deactivated.

This is custom documentation. For more information, please visit the SAP Help Portal 196
6/14/2023

Parameter Description

Max. Number of Retries De ne the number of retries to be executed before a different delivery status is sent to the
message broker.

Default nalue is set to 0, maximum value is 99.

 Note
With the default setting (0), any message that is marked as a retried message is directly
returning the outcome con gured in Delivery Status After Max. Retries to the message broker
and does not even start processing the message. Be aware of the fact that any delivery attempt
by the message broker, even a failed one (for example, due to network issues), increases the
delivery counter of the message sent by the message broker.

If the value is set to a number bigger than 0, the AMQP adapter returns the outcome con gured
in Delivery Status After Max. Retries to the message broker if the delivery count of the
message exceeds the con gured value. Otherwise, it processes the message and returns a
released outcome in case of an error and an accepted outcome in case of a successful
message processing.

The consequences of the provided outcome depend on the message broker and the queue
con guration on the message broker. An accepted outcome usually removes the message from
the queue. A released outcome usually triggers a redelivery. A rejected outcome may trigger a
redelivery or move the message to a dead letter queue (maybe only if the message was
rejected for a con gured number of times). The same applies to a modi ed outcome with the
undeliverable ag set, which also might transit the message on the message broker to some
undeliverable state.

If the message broker is not con gured properly, this behavior can lead to unwanted side
effects. For example, the messaging system constantly re-sends the message, no other
messages are being processed, and no additional message processing logs are written. As
consequence, this can result in an unplanned high load of your tenant and message broker.

Delivery Status After Max. Retries De ne one delivery status that is to be sent to the message broker after the maximum number of
retries. Choose between the following options:

REJECTED

MODIFIED_FAILED_UNDELIVERABLE

 Note
See this general information on AMQP on delivery statuses and their meaning.

See this blog for a summary of the capabilities supported by the different brokers.

Related Information
Blog: SAP Cloud Integration – Connecting to Messaging Systems using the AMQP Adapter
Blog: SAP Cloud Integration – How to Connect to an On-Premise AMQP server via Cloud Connector

AMQP Sender for SAP Event Mesh


Enables SAP Cloud Integration to consume messages from queues or topic subscriptions in SAP Event Mesh.

 Note
In the following cases certain features might not be available for your current integration ow:

This is custom documentation. For more information, please visit the SAP Help Portal 197
6/14/2023
You are using a runtime pro le other than the one expected. See: Runtime Pro les.

A feature for a particular adapter or step was released after you created the corresponding shape in your integration
ow.

To use the latest version of a ow step or adapter – edit your integration ow, delete the ow step or adapter, add the
step or adapter, and con gure the same. Finally, redeploy the integration ow. See: Updating your Existing Integration
Flow.

 Note
Queues, topics, and messages can only be monitored by using tools provided by the message broker provider. Those
monitors are not integrated into SAP Cloud Integration. In SAP Cloud Integration, the integration ows using the AMQP
adapter are monitored and the messages are sent to or consumed from the message broker.

 Note
To be able to connect to queues or topics, you have to create queues and/or topics in the message broker. This needs to be
done in the message broker, with the con guration tools provided by the message broker. In some messaging systems, you
need to con gure a Lock Duration to make sure that the message is not consumed more than once. This timeout must be
longer than the expected processing time of the message, otherwise this would lead to duplicate messages.

 Note
This adapter exchanges data with a remote component that might be outside the scope of SAP. Make sure that the data
exchange complies with your company’s policies.

To connect Cloud Integration to SAP Event Mesh, make sure to specify the following parameters in the described way:

When creating the channel (see Overview of Integration Flow Editor), select adapter type AMQP WebSocket .

The following values are displayed in the General tab after a channel has been established. If you want to change the
con gurations, you need to con gure a new channel.

General

Parameter Description

Name/Adapter Type AMQP

Transport Protocol The protocol that the message broker supports:

WebSocket

Message Protocol AMQP 1.0

Select the Connection tab and provide values in the elds as follows:

Connection

Parameter Description

Host Specify the hostname of the message broker.

Port Specify the port of the message broker.

Enter 443.

This is custom documentation. For more information, please visit the SAP Help Portal 198
6/14/2023

Parameter Description

Proxy Type The type of proxy that you’re using to connect to the target system.

Select Internet if you’re connecting directly to the message broker.

Select On-Premise if you’re connecting to an on-premise message


broker.

For more information, see Using SAP Cloud Connector with Cloud
Integration Adapters.

Path Specify the access path of the message broker.

Enter /protocols/amqp10ws.

Connect with TLS Select this option.

Location ID (only if On-Premise is selected for Proxy Type) To connect to an SAP Cloud Connector instance associated with
your account, enter the location ID that you de ned for this instance
in the destination con guration on the cloud side.

Authentication Select OAuth2 Client Credentials.

Credential Name Specify the name of the OAuth2 Client Credentials artifact.

Select the Processing tab and provide values in the elds as follows.

Processing

Parameter Description

Queue Name Specify the name of the queue or topic subscription to consume from.

 Note
Use the following expression to de ne the queue name:

queue:<queue name>

 Note
Topics are not supported in the sender adapter, only queues and topic subscriptions.

Technically, the AMQP sender adapter allows you to consume from queues only. The adapter
doesn’t allow you to directly subscribe to a topic. If you like to work with topic subscriptions,
subscribe a queue to a topic and consume from this queue.

Number of Current Processes Specify the number of processes used for parallel message processing. Note, that these
processes are started from each worker node.

 Note
The maximum number of parallel processes cannot exceed 99. The default is set to 1.

This is custom documentation. For more information, please visit the SAP Help Portal 199
6/14/2023

Parameter Description

Max. Number of Prefechted Enter the max. number of messages that may be prefechted by one worker. The allowed value
Messages range is 1 to 100.

The prefetch value is the number of messages that the sender adapter fetches in advance from the
broker, and then gradually processes. The prefetch reduces the communication overhead and
ensures that when a message has been processed, another is already there and is ready for
processing.

If the integration ows that are triggered by the AMQP sender adapter run for longer than a few
seconds, it makes sense to set a lower prefetch value. In particular, if the integration ow runs for
more than a minute, you should consider setting the value to 1. You can expect then a performance
deterioration in the two-digit millisecond range, per message. On the other hand, load balancing
between several nodes works better even with short backlogs.

If you need to process a large number of messages with the integration ow, and the processing of
the individual message only runs for a few milliseconds, it can be useful to increase the prefetch
value.

 Note
If you increase the value, this can lead to lock timeouts and the load balancing between the
nodes deteriorates. In return, you can expect performance gains in the three-digit microsecond
range, per message. For example, with a prefetch value of 100, 10000 messages process
approximately a second or two faster.

Consume Expired Messages Select if the adapter is to consume already expired messages.

By default, this option is deactivated.

Max. Number of Retries De ne the number of retries to be executed before a different delivery status is sent to the
message broker.

 Note
With the default setting (0), any message that is marked as a retried message is directly
returning the outcome con gured in Delivery Status After Max. Retries to the message broker
and does not even start processing the message. Be aware of the fact that any delivery attempt
by the message broker, even a failed one (for example, due to network issues), increases the
delivery counter of the message sent by the message broker.

If the value is set to a number bigger than 0, the AMQP adapter returns the outcome con gured
in Delivery Status After Max. Retries to the message broker if the delivery count of the
message exceeds the con gured value. Otherwise, it processes the message and returns a
released outcome in case of an error and an accepted outcome in case of a successful
message processing.

The consequences of the provided outcome depend on the message broker and the queue
con guration on the message broker. An accepted outcome usually removes the message from
the queue. A released outcome usually triggers a redelivery. A rejected outcome may trigger a
redelivery or move the message to a dead letter queue (maybe only if the message was
rejected for a con gured number of times). The same applies to a modi ed outcome with the
undeliverable ag set, which also might transit the message on the message broker to some
undeliverable state.

If the message broker is not con gured properly, this behavior can lead to unwanted side
effects. For example, the messaging system constantly re-sends the message, no other
messages are being processed, and no additional message processing logs are written. As
consequence, this can result in an unplanned high load of your tenant and message broker.

This is custom documentation. For more information, please visit the SAP Help Portal 200
6/14/2023

Parameter Description

Delivery Status After Max. Retries De ne one delivery status that is to be sent to the message broker after the maximum number of
retries. Choose between the following options:

Select REJECTED.

Make sure to con gure the dead letter queue and the maximum redeliveries in the message broker
as well.

Don't select MODIFIED_FAILED_UNDELIVERABLE.

 Note
See this general information on AMQP on delivery statuses and their meaning.

See this blog for a summary of the capabilities supported by the different brokers.

Further Constraints
The following constraints and limitations apply when using the AMQP adapter to connect Cloud Integration to SAP Event Mesh:

You can con gure retry by setting the header JMSRedelivered.

You can't use header JMSXDeliveryCount.

See also: Headers and Exchange Properties Provided by the Integration Framework

Furthermore, consider the following restrictions:

The maximum number of connections supported per service instance is: 50.

The maximum number of connections combined for all service instances and subscription (per subaccount) is: 1000.

As a consequence from this restriction, it's recommended that you use 1 service instance per queue.

For more information, see:

For more information and an example scenario using this option, see the following SAP Community blog:
https://blogs.sap.com/2019/11/20/cloud-integration-connecting-to-external-messaging-systems-using-the-amqp-
adapter/ .

For more information on the constraints of SAP Event Mesh, see Scope and Limitations (for SAP Event Mesh).

AMQP Sender for Microsoft Azure Service Bus


Enables to consume messages from queues or topic subscriptions in Microsoft Azure Service Bus.

 Note
In the following cases certain features might not be available for your current integration ow:

You are using a runtime pro le other than the one expected. See: Runtime Pro les.

A feature for a particular adapter or step was released after you created the corresponding shape in your integration
ow.

This is custom documentation. For more information, please visit the SAP Help Portal 201
6/14/2023
To use the latest version of a ow step or adapter – edit your integration ow, delete the ow step or adapter, add the
step or adapter, and con gure the same. Finally, redeploy the integration ow. See: Updating your Existing Integration
Flow.

 Note
Queues, topics, and messages can only be monitored by using tools provided by the message broker provider. Those
monitors are not integrated into SAP Cloud Integration. In SAP Cloud Integration, the integration ows using the AMQP
adapter are monitored and the messages are sent to or consumed from the message broker.

 Note
To be able to connect to queues or topics, you have to create queues and/or topics in the message broker. This needs to be
done in the message broker, with the con guration tools provided by the message broker. In some messaging systems, you
need to con gure a Lock Duration to make sure that the message is not consumed more than once. This timeout must be
longer than the expected processing time of the message, otherwise this would lead to duplicate messages.

 Note
This adapter exchanges data with a remote component that might be outside the scope of SAP. Make sure that the data
exchange complies with your company’s policies.

 Note
This adapter enables you to connect SAP Cloud Integration to a remote message broker. SAP can’t give advice on how to
con gure the external system nor does SAP provide support related to this.

To connect Cloud Integration to Microsoft Azure Service Bus, make sure to specify the following parameters in the described
way:

When creating the channel (see Overview of Integration Flow Editor), select adapter type AMQP TCP .

The following values are displayed in the General tab after a channel has been established. If you want to change the
con gurations, you need to con gure a new channel.

General

Parameter Description

Name/Adapter Type AMQP

Transport Protocol The protocol that the message broker supports:

TCP

Message Protocol AMQP 1.0

Select the Connection tab and provide values in the elds as follows:

Connection

Parameter Description

Host Specify the hostname of the message broker.

This is custom documentation. For more information, please visit the SAP Help Portal 202
6/14/2023

Parameter Description

Port Specify the port of the message broker.

Enter 5671.

Proxy Type The type of proxy that you’re using to connect to the target system.

Select Internet if you’re connecting directly to the message broker.

Select On-Premise if you’re connecting to an on-premise message


broker.

For more information, see Using SAP Cloud Connector with Cloud
Integration Adapters.

Connect with TLS Select this option.

Location ID (only if On-Premise is selected for Proxy Type) To connect to an SAP Cloud Connector instance associated with
your account, enter the location ID that you de ned for this instance
in the destination con guration on the cloud side.

Authentication Select the authentication method supported by the message


broker. Make sure that SASL is selected (default setting).

Credential Name Specify the name of the User Credentials artifact.

Select the Processing tab and provide values in the elds as follows.

Processing

Parameter Description

Queue Name Specify the name of the queue or topic subscription to consume from.

 Note
You can access topic subscriptions as separate entities with the following syntax:

[topic name]/subscriptions/[subscription name]

Multiple subscriptions for a single topic can exist.

Number of Current Processes Specify the number of processes used for parallel message processing. Note, that these
processes are started from each worker node.

 Note
The maximum number of parallel processes cannot exceed 99. The default is set to 1.

This is custom documentation. For more information, please visit the SAP Help Portal 203
6/14/2023

Parameter Description

Max. Number of Prefechted Enter the max. number of messages that may be prefechted by one worker. The allowed value
Messages range is 1 to 100.

The prefetch value is the number of messages that the sender adapter fetches in advance from the
broker, and then gradually processes. The prefetch reduces the communication overhead and
ensures that when a message has been processed, another is already there and is ready for
processing.

If the integration ows that are triggered by the AMQP sender adapter run for longer than a few
seconds, it makes sense to set a lower prefetch value. In particular, if the integration ow runs for
more than a minute, you should consider setting the value to 1. You can expect then a performance
deterioration in the two-digit millisecond range, per message. On the other hand, load balancing
between several nodes works better even with short backlogs.

If you need to process a large number of messages with the integration ow, and the processing of
the individual message only runs for a few milliseconds, it can be useful to increase the prefetch
value.

 Note
If you increase the value, this can lead to lock timeouts and the load balancing between the
nodes deteriorates. In return, you can expect performance gains in the three-digit microsecond
range, per message. For example, with a prefetch value of 100, 10000 messages process
approximately a second or two faster.

Consume Expired Messages Select if the adapter is to consume already expired messages.

By default, this option is deactivated.

Max. Number of Retries De ne the number of retries to be executed before a different delivery status is sent to the
message broker.

 Note
With the default setting (0), any message that is marked as a retried message is directly
returning the outcome con gured in Delivery Status After Max. Retries to the message broker
and does not even start processing the message. Be aware of the fact that any delivery attempt
by the message broker, even a failed one (for example, due to network issues), increases the
delivery counter of the message sent by the message broker.

If the value is set to a number bigger than 0, the AMQP adapter returns the outcome con gured
in Delivery Status After Max. Retries to the message broker if the delivery count of the
message exceeds the con gured value. Otherwise, it processes the message and returns a
released outcome in case of an error and an accepted outcome in case of a successful
message processing.

The consequences of the provided outcome depend on the message broker and the queue
con guration on the message broker. An accepted outcome usually removes the message from
the queue. A released outcome usually triggers a redelivery. A rejected outcome may trigger a
redelivery or move the message to a dead letter queue (maybe only if the message was
rejected for a con gured number of times). The same applies to a modi ed outcome with the
undeliverable ag set, which also might transit the message on the message broker to some
undeliverable state.

If the message broker is not con gured properly, this behavior can lead to unwanted side
effects. For example, the messaging system constantly re-sends the message, no other
messages are being processed, and no additional message processing logs are written. As
consequence, this can result in an unplanned high load of your tenant and message broker.

This is custom documentation. For more information, please visit the SAP Help Portal 204
6/14/2023

Parameter Description

Delivery Status After Max. Retries De ne one delivery status that is to be sent to the message broker after the maximum number of
retries. Both options are supported:

REJECTED.

MODIFIED_FAILED_UNDELIVERABLE

 Note
See this general information on AMQP on delivery statuses and their meaning.

See this blog for a summary of the capabilities supported by the different brokers.

Further Constraints
Note the following when using the AMQP adapter to connect Cloud Integration to Microsoft Azure Service Bus:

You can con gure retry by setting the header JMSRedelivered.

You can also use header JMSXDeliveryCount.

See: Headers and Exchange Properties Provided by the Integration Framework

For more information and an example scenario using this option, see the following SAP Community blog:
https://blogs.sap.com/2019/11/20/cloud-integration-connecting-to-external-messaging-systems-using-the-amqp-adapter/ .

AMQP Sender for Solace PubSub+


Enables SAP Cloud Integration to consume messages from queues or topic subscriptions in Solace PubSub+.

 Note
In the following cases certain features might not be available for your current integration ow:

You are using a runtime pro le other than the one expected. See: Runtime Pro les.

A feature for a particular adapter or step was released after you created the corresponding shape in your integration
ow.

To use the latest version of a ow step or adapter – edit your integration ow, delete the ow step or adapter, add the
step or adapter, and con gure the same. Finally, redeploy the integration ow. See: Updating your Existing Integration
Flow.

 Note
Queues, topics, and messages can only be monitored by using tools provided by the message broker provider. Those
monitors are not integrated into SAP Cloud Integration. In SAP Cloud Integration, the integration ows using the AMQP
adapter are monitored and the messages are sent to or consumed from the message broker.

 Note
To be able to connect to queues or topics, you have to create queues and/or topics in the message broker. This needs to be
done in the message broker, with the con guration tools provided by the message broker. In some messaging systems, you

This is custom documentation. For more information, please visit the SAP Help Portal 205
6/14/2023
need to con gure a Lock Duration to make sure that the message is not consumed more than once. This timeout must be
longer than the expected processing time of the message, otherwise this would lead to duplicate messages.

 Note
This adapter exchanges data with a remote component that might be outside the scope of SAP. Make sure that the data
exchange complies with your company’s policies.

 Note
This adapter enables you to connect SAP Cloud Integration to a remote message broker. SAP can’t give advice on how to
con gure the external system nor does SAP provide support related to this.

To connect Cloud Integration to Solace PubSub+, make sure to specify the following parameters in the described way:

When creating the channel (see Overview of Integration Flow Editor), select adapter type AMQP TCP .

The following values are displayed in the General tab after a channel has been established. If you want to change the
con gurations, you need to con gure a new channel.

General

Parameter Description

Name/Adapter Type AMQP

Transport Protocol The protocol that the message broker supports:

TCP

Message Protocol AMQP 1.0

Select the Connection tab and provide values in the elds as follows:

Connection

Parameter Description

Host Specify the hostname of the message broker.

Port Specify the port of the message broker.

Proxy Type The type of proxy that you’re using to connect to the target system.

Select Internet if you’re connecting directly to the message broker.

Select On-Premise if you’re connecting to an on-premise message


broker.

For more information, see Using SAP Cloud Connector with Cloud
Integration Adapters.

Connect with TLS Select if TLS has to be used for the connection.

Location ID (only if On-Premise is selected for Proxy Type) To connect to an SAP Cloud Connector instance associated with
your account, enter the location ID that you de ned for this instance
in the destination con guration on the cloud side.

Authentication Select the authentication method supported by the message


broker. Make sure that SASL is selected (default setting).

This is custom documentation. For more information, please visit the SAP Help Portal 206
6/14/2023

Parameter Description

Credential Name Specify the name of the User Credentials artifact.

Select the Processing tab and provide values in the elds as follows.

Processing

Parameter Description

Queue Name Specify the name of the queue or topic subscription to consume from.

 Note
Topics are not supported in the sender adapter, only queues and topic subscriptions.

Technically, the AMQP sender adapter allows you to consume from queues only. The adapter
doesn’t allow you to directly subscribe to a topic. If you like to work with topic subscriptions,
subscribe a queue to a topic and consume from this queue.

Number of Current Processes Specify the number of processes used for parallel message processing. Note, that these
processes are started from each worker node.

 Note
The maximum number of parallel processes cannot exceed 99. The default is set to 1.

Max. Number of Prefechted Enter the max. number of messages that may be prefechted by one worker. The allowed value
Messages range is 1 to 100.

The prefetch value is the number of messages that the sender adapter fetches in advance from the
broker, and then gradually processes. The prefetch reduces the communication overhead and
ensures that when a message has been processed, another is already there and is ready for
processing.

If the integration ows that are triggered by the AMQP sender adapter run for longer than a few
seconds, it makes sense to set a lower prefetch value. In particular, if the integration ow runs for
more than a minute, you should consider setting the value to 1. You can expect then a performance
deterioration in the two-digit millisecond range, per message. On the other hand, load balancing
between several nodes works better even with short backlogs.

If you need to process a large number of messages with the integration ow, and the processing of
the individual message only runs for a few milliseconds, it can be useful to increase the prefetch
value.

 Note
If you increase the value, this can lead to lock timeouts and the load balancing between the
nodes deteriorates. In return, you can expect performance gains in the three-digit microsecond
range, per message. For example, with a prefetch value of 100, 10000 messages process
approximately a second or two faster.

Consume Expired Messages Select if the adapter is to consume already expired messages.

By default, this option is deactivated.

This is custom documentation. For more information, please visit the SAP Help Portal 207
6/14/2023

Parameter Description

Max. Number of Retries De ne the number of retries to be executed before a different delivery status is sent to the
message broker.

 Note
With the default setting (0), any message that is marked as a retried message is directly
returning the outcome con gured in Delivery Status After Max. Retries to the message broker
and does not even start processing the message. Be aware of the fact that any delivery attempt
by the message broker, even a failed one (for example, due to network issues), increases the
delivery counter of the message sent by the message broker.

If the value is set to a number bigger than 0, the AMQP adapter returns the outcome con gured
in Delivery Status After Max. Retries to the message broker if the delivery count of the
message exceeds the con gured value. Otherwise, it processes the message and returns a
released outcome in case of an error and an accepted outcome in case of a successful
message processing.

The consequences of the provided outcome depend on the message broker and the queue
con guration on the message broker. An accepted outcome usually removes the message from
the queue. A released outcome usually triggers a redelivery. A rejected outcome may trigger a
redelivery or move the message to a dead letter queue (maybe only if the message was
rejected for a con gured number of times). The same applies to a modi ed outcome with the
undeliverable ag set, which also might transit the message on the message broker to some
undeliverable state.

If the message broker is not con gured properly, this behavior can lead to unwanted side
effects. For example, the messaging system constantly re-sends the message, no other
messages are being processed, and no additional message processing logs are written. As
consequence, this can result in an unplanned high load of your tenant and message broker.

Delivery Status After Max. Retries De ne one delivery status that is to be sent to the message broker after the maximum number of
retries. The following option is supported:

REJECTED.

Don't use option MODIFIED_FAILED_UNDELIVERABLE. If selected, it can lead to errors during


message processing.

 Note
See this general information on AMQP on delivery statuses and their meaning.

See this blog for a summary of the capabilities supported by the different brokers.

Further Constraints
Note the following when using the AMQP adapter to connect Cloud Integration to Solace PubSub+:

You can con gure retry by setting the header JMSRedelivered.

You can't use header JMSXDeliveryCount.

See: Headers and Exchange Properties Provided by the Integration Framework

For more information and an example scenario using this option, see the following SAP Community blog:
https://blogs.sap.com/2019/11/20/cloud-integration-connecting-to-external-messaging-systems-using-the-amqp-adapter/ .

AMQP Sender for Apache Qpid Broker-J


This is custom documentation. For more information, please visit the SAP Help Portal 208
6/14/2023
Enables SAP Cloud Integration to consume messages from queues or topic subscriptions in Apache Qpid Broker-J.

 Note
In the following cases certain features might not be available for your current integration ow:

You are using a runtime pro le other than the one expected. See: Runtime Pro les.

A feature for a particular adapter or step was released after you created the corresponding shape in your integration
ow.

To use the latest version of a ow step or adapter – edit your integration ow, delete the ow step or adapter, add the
step or adapter, and con gure the same. Finally, redeploy the integration ow. See: Updating your Existing Integration
Flow.

 Note
Queues, topics, and messages can only be monitored by using tools provided by the message broker provider. Those
monitors are not integrated into SAP Cloud Integration. In SAP Cloud Integration, the integration ows using the AMQP
adapter are monitored and the messages are sent to or consumed from the message broker.

 Note
To be able to connect to queues or topics, you have to create queues and/or topics in the message broker. This needs to be
done in the message broker, with the con guration tools provided by the message broker. In some messaging systems, you
need to con gure a Lock Duration to make sure that the message is not consumed more than once. This timeout must be
longer than the expected processing time of the message, otherwise this would lead to duplicate messages.

 Note
This adapter exchanges data with a remote component that might be outside the scope of SAP. Make sure that the data
exchange complies with your company’s policies.

 Note
This adapter enables you to connect SAP Cloud Integration to a remote message broker. SAP can’t give advice on how to
con gure the external system nor does SAP provide support related to this.

To connect Cloud Integration to Apache Qpid Broker-J, make sure to specify the following parameters in the described way:

When creating the channel (see Overview of Integration Flow Editor), select adapter type AMQP TCP or AMQP
WebSocket .

The following values are displayed in the General tab after a channel has been established. If you want to change the
con gurations, you need to con gure a new channel.

General

Parameter Description

Name/Adapter Type AMQP

This is custom documentation. For more information, please visit the SAP Help Portal 209
6/14/2023

Parameter Description

Transport Protocol The protocol that the message broker supports:

TCP

WebSocket

Message Protocol AMQP 1.0

Select the Connection tab and provide values in the elds as follows:

Connection

Parameter Description

Host Specify the hostname of the message broker.

Port Specify the port of the message broker.

Proxy Type The type of proxy that you’re using to connect to the target system.

Select Internet if you’re connecting directly to the message broker.

Select On-Premise if you’re connecting to an on-premise message


broker.

For more information, see Using SAP Cloud Connector with Cloud
Integration Adapters.

Path (only if WebSocket is selected as the Transport Protocol in Specify the access path of the message broker.
the General tab)

Connect with TLS Select if TLS has to be used for the connection.

Location ID (only if On-Premise is selected for Proxy Type) To connect to an SAP Cloud Connector instance associated with
your account, enter the location ID that you de ned for this instance
in the destination con guration on the cloud side.

Authentication Select the authentication method supported by the message


broker. Make sure that SASL is selected (default setting).

Credential Name (only if SASL or OAuth2 Client Credentials are Specify the name of the User Credentials artifact.
selected for Authentication)

Select the Processing tab and provide values in the elds as follows.

Processing

Parameter Description

Queue Name Specify the name of the queue or topic subscription to consume from.

 Note
Topics are not supported in the sender adapter, only queues and topic subscriptions.

Technically, the AMQP sender adapter allows you to consume from queues only. The adapter
doesn’t allow you to directly subscribe to a topic. If you like to work with topic subscriptions,
subscribe a queue to a topic and consume from this queue.

This is custom documentation. For more information, please visit the SAP Help Portal 210
6/14/2023

Parameter Description

Number of Current Processes Specify the number of processes used for parallel message processing. Note, that these
processes are started from each worker node.

 Note
The maximum number of parallel processes cannot exceed 99. The default is set to 1.

Max. Number of Prefechted Enter the max. number of messages that may be prefechted by one worker. The allowed value
Messages range is 1 to 100.

The prefetch value is the number of messages that the sender adapter fetches in advance from the
broker, and then gradually processes. The prefetch reduces the communication overhead and
ensures that when a message has been processed, another is already there and is ready for
processing.

If the integration ows that are triggered by the AMQP sender adapter run for longer than a few
seconds, it makes sense to set a lower prefetch value. In particular, if the integration ow runs for
more than a minute, you should consider setting the value to 1. You can expect then a performance
deterioration in the two-digit millisecond range, per message. On the other hand, load balancing
between several nodes works better even with short backlogs.

If you need to process a large number of messages with the integration ow, and the processing of
the individual message only runs for a few milliseconds, it can be useful to increase the prefetch
value.

 Note
If you increase the value, this can lead to lock timeouts and the load balancing between the
nodes deteriorates. In return, you can expect performance gains in the three-digit microsecond
range, per message. For example, with a prefetch value of 100, 10000 messages process
approximately a second or two faster.

Consume Expired Messages Select if the adapter is to consume already expired messages.

By default, this option is deactivated.

This is custom documentation. For more information, please visit the SAP Help Portal 211
6/14/2023

Parameter Description

Max. Number of Retries De ne the number of retries to be executed before a different delivery status is sent to the
message broker.

 Note
With the default setting (0), any message that is marked as a retried message is directly
returning the outcome con gured in Delivery Status After Max. Retries to the message broker
and does not even start processing the message. Be aware of the fact that any delivery attempt
by the message broker, even a failed one (for example, due to network issues), increases the
delivery counter of the message sent by the message broker.

If the value is set to a number bigger than 0, the AMQP adapter returns the outcome con gured
in Delivery Status After Max. Retries to the message broker if the delivery count of the
message exceeds the con gured value. Otherwise, it processes the message and returns a
released outcome in case of an error and an accepted outcome in case of a successful
message processing.

The consequences of the provided outcome depend on the message broker and the queue
con guration on the message broker. An accepted outcome usually removes the message from
the queue. A released outcome usually triggers a redelivery. A rejected outcome may trigger a
redelivery or move the message to a dead letter queue (maybe only if the message was
rejected for a con gured number of times). The same applies to a modi ed outcome with the
undeliverable ag set, which also might transit the message on the message broker to some
undeliverable state.

If the message broker is not con gured properly, this behavior can lead to unwanted side
effects. For example, the messaging system constantly re-sends the message, no other
messages are being processed, and no additional message processing logs are written. As
consequence, this can result in an unplanned high load of your tenant and message broker.

Delivery Status After Max. Retries De ne one delivery status that is to be sent to the message broker after the maximum number of
retries. Both options are supported:

REJECTED.

MODIFIED_FAILED_UNDELIVERABLE

 Note
See this general information on AMQP on delivery statuses and their meaning.

See this blog for a summary of the capabilities supported by the different brokers.

Retry Con guration


Note the following when using the AMQP adapter to connect Cloud Integration to Apache Qpid Broker-J:

You can con gure retry by setting the header JMSRedelivered.

You can also use header JMSXDeliveryCount.

See: Headers and Exchange Properties Provided by the Integration Framework

For more information and an example scenario using this option, see the following SAP Community blog:
https://blogs.sap.com/2019/11/20/cloud-integration-connecting-to-external-messaging-systems-using-the-amqp-adapter/ .

This is custom documentation. For more information, please visit the SAP Help Portal 212
6/14/2023

AMQP Sender for Apache ActiveMQ 5 and Apache ActiveMQ


Artemis
Enables SAP Cloud Integration to consume messages from queues or topic subscriptions in Apache ActiveMQ 5 / Apache
ActiveMQ Artemis.

 Note
In the following cases certain features might not be available for your current integration ow:

You are using a runtime pro le other than the one expected. See: Runtime Pro les.

A feature for a particular adapter or step was released after you created the corresponding shape in your integration
ow.

To use the latest version of a ow step or adapter – edit your integration ow, delete the ow step or adapter, add the
step or adapter, and con gure the same. Finally, redeploy the integration ow. See: Updating your Existing Integration
Flow.

 Note
Queues, topics, and messages can only be monitored by using tools provided by the message broker provider. Those
monitors are not integrated into SAP Cloud Integration. In SAP Cloud Integration, the integration ows using the AMQP
adapter are monitored and the messages are sent to or consumed from the message broker.

 Note
To be able to connect to queues or topics, you have to create queues and/or topics in the message broker. This needs to be
done in the message broker, with the con guration tools provided by the message broker. In some messaging systems, you
need to con gure a Lock Duration to make sure that the message is not consumed more than once. This timeout must be
longer than the expected processing time of the message, otherwise this would lead to duplicate messages.

 Note
This adapter exchanges data with a remote component that might be outside the scope of SAP. Make sure that the data
exchange complies with your company’s policies.

 Note
This adapter enables you to connect SAP Cloud Integration to a remote message broker. SAP can’t give advice on how to
con gure the external system nor does SAP provide support related to this.

To connect Cloud Integration to Apache ActiveMQ 5 and Apache ActiveMQ Artemis, make sure to specify the following
parameters in the described way:

When creating the channel (see Overview of Integration Flow Editor), select adapter type AMQP TCP .

The following values are displayed in the General tab after a channel has been established. If you want to change the
con gurations, you need to con gure a new channel.

General

Parameter Description

This is custom documentation. For more information, please visit the SAP Help Portal 213
6/14/2023

Parameter Description

Name/Adapter Type AMQP

Transport Protocol The protocol that the message broker supports:

TCP

Message Protocol AMQP 1.0

Select the Connection tab and provide values in the elds as follows:

Connection

Parameter Description

Host Specify the hostname of the message broker.

Port Specify the port of the message broker.

Proxy Type The type of proxy that you’re using to connect to the target system.

Select Internet if you’re connecting directly to the message broker.

Select On-Premise if you’re connecting to an on-premise message


broker.

For more information, see Using SAP Cloud Connector with Cloud
Integration Adapters.

Path (only if WebSocket is selected as the Transport Protocol in Specify the access path of the message broker.
the General tab)

Connect with TLS Select if TLS has to be used for the connection.

Location ID (only if On-Premise is selected for Proxy Type) To connect to an SAP Cloud Connector instance associated with
your account, enter the location ID that you de ned for this instance
in the destination con guration on the cloud side.

Authentication Select the authentication method supported by the message


broker. Make sure that SASL is selected (default setting).

Credential Name (only if SASL or OAuth2 Client Credentials are Specify the name of the User Credentials artifact.
selected for Authentication)

Select the Processing tab and provide values in the elds as follows.

Processing

Parameter Description

Queue Name Specify the name of the queue or topic subscription to consume from.

 Note
Topics are not supported in the sender adapter, only queues and topic subscriptions.

Technically, the AMQP sender adapter allows you to consume from queues only. The adapter
doesn’t allow you to directly subscribe to a topic. If you like to work with topic subscriptions,
subscribe a queue to a topic and consume from this queue.

This is custom documentation. For more information, please visit the SAP Help Portal 214
6/14/2023

Parameter Description

Number of Current Processes Specify the number of processes used for parallel message processing. Note, that these
processes are started from each worker node.

 Note
The maximum number of parallel processes cannot exceed 99. The default is set to 1.

Max. Number of Prefechted Enter the max. number of messages that may be prefechted by one worker. The allowed value
Messages range is 1 to 100.

The prefetch value is the number of messages that the sender adapter fetches in advance from the
broker, and then gradually processes. The prefetch reduces the communication overhead and
ensures that when a message has been processed, another is already there and is ready for
processing.

If the integration ows that are triggered by the AMQP sender adapter run for longer than a few
seconds, it makes sense to set a lower prefetch value. In particular, if the integration ow runs for
more than a minute, you should consider setting the value to 1. You can expect then a performance
deterioration in the two-digit millisecond range, per message. On the other hand, load balancing
between several nodes works better even with short backlogs.

If you need to process a large number of messages with the integration ow, and the processing of
the individual message only runs for a few milliseconds, it can be useful to increase the prefetch
value.

 Note
If you increase the value, this can lead to lock timeouts and the load balancing between the
nodes deteriorates. In return, you can expect performance gains in the three-digit microsecond
range, per message. For example, with a prefetch value of 100, 10000 messages process
approximately a second or two faster.

Consume Expired Messages Select if the adapter is to consume already expired messages.

By default, this option is deactivated.

This is custom documentation. For more information, please visit the SAP Help Portal 215
6/14/2023

Parameter Description

Max. Number of Retries De ne the number of retries to be executed before a different delivery status is sent to the
message broker.

 Note
With the default setting (0), any message that is marked as a retried message is directly
returning the outcome con gured in Delivery Status After Max. Retries to the message broker
and does not even start processing the message. Be aware of the fact that any delivery attempt
by the message broker, even a failed one (for example, due to network issues), increases the
delivery counter of the message sent by the message broker.

If the value is set to a number bigger than 0, the AMQP adapter returns the outcome con gured
in Delivery Status After Max. Retries to the message broker if the delivery count of the
message exceeds the con gured value. Otherwise, it processes the message and returns a
released outcome in case of an error and an accepted outcome in case of a successful
message processing.

The consequences of the provided outcome depend on the message broker and the queue
con guration on the message broker. An accepted outcome usually removes the message from
the queue. A released outcome usually triggers a redelivery. A rejected outcome may trigger a
redelivery or move the message to a dead letter queue (maybe only if the message was
rejected for a con gured number of times). The same applies to a modi ed outcome with the
undeliverable ag set, which also might transit the message on the message broker to some
undeliverable state.

If the message broker is not con gured properly, this behavior can lead to unwanted side
effects. For example, the messaging system constantly re-sends the message, no other
messages are being processed, and no additional message processing logs are written. As
consequence, this can result in an unplanned high load of your tenant and message broker.

Delivery Status After Max. Retries De ne one delivery status that is to be sent to the message broker after the maximum number of
retries. The following options are supported:

REJECTED.

MODIFIED_FAILED_UNDELIVERABLE

 Note
See this general information on AMQP on delivery statuses and their meaning.

See this blog for a summary of the capabilities supported by the different brokers.

Further Constraints
Note the following when using the AMQP adapter to connect Cloud Integration to Apache ActiveMQ 5 and Apache ActiveMQ
Artemis:

You can con gure retry by setting the header JMSRedelivered.

You can also use header JMSXDeliveryCount.

See: Headers and Exchange Properties Provided by the Integration Framework

For more information and an example scenario using this option, see the following SAP Community blog:
https://blogs.sap.com/2019/11/20/cloud-integration-connecting-to-external-messaging-systems-using-the-amqp-adapter/ .

This is custom documentation. For more information, please visit the SAP Help Portal 216
6/14/2023

AMQP Sender for IBM MQ


Enables SAP Cloud Integration to consume messages from queues or topic subscriptions in IBM MQ.

 Note
This adapter works only with IBM MQ version 9.2 and above.

 Note
In the following cases certain features might not be available for your current integration ow:

You are using a runtime pro le other than the one expected. See: Runtime Pro les.

A feature for a particular adapter or step was released after you created the corresponding shape in your integration
ow.

To use the latest version of a ow step or adapter – edit your integration ow, delete the ow step or adapter, add the
step or adapter, and con gure the same. Finally, redeploy the integration ow. See: Updating your Existing Integration
Flow.

 Note
Queues, topics, and messages can only be monitored by using tools provided by the message broker provider. Those
monitors are not integrated into SAP Cloud Integration. In SAP Cloud Integration, the integration ows using the AMQP
adapter are monitored and the messages are sent to or consumed from the message broker.

 Note
To be able to connect to queues or topics, you have to create queues and/or topics in the message broker. This needs to be
done in the message broker, with the con guration tools provided by the message broker. In some messaging systems, you
need to con gure a Lock Duration to make sure that the message is not consumed more than once. This timeout must be
longer than the expected processing time of the message, otherwise this would lead to duplicate messages.

 Note
This adapter exchanges data with a remote component that might be outside the scope of SAP. Make sure that the data
exchange complies with your company’s policies.

 Note
This adapter enables you to connect SAP Cloud Integration to a remote message broker. SAP can’t give advice on how to
con gure the external system nor does SAP provide support related to this.

To connect Cloud Integration to IBM MQ, make sure to specify the following parameters in the described way:

When creating the channel (see Overview of Integration Flow Editor), select adapter type AMQP TCP .

The following values are displayed in the General tab after a channel has been established. If you want to change the
con gurations, you need to con gure a new channel.

General

Parameter Description

This is custom documentation. For more information, please visit the SAP Help Portal 217
6/14/2023

Parameter Description

Name/Adapter Type AMQP

Transport Protocol The protocol that the message broker supports:

TCP

Message Protocol AMQP 1.0

Select the Connection tab and provide values in the elds as follows:

Connection

Parameter Description

Host Specify the hostname of the message broker.

Port Specify the port of the message broker.

Proxy Type The type of proxy that you’re using to connect to the target system.

Select Internet if you’re connecting directly to the message broker.

Select On-Premise if you’re connecting to an on-premise message


broker.

For more information, see Using SAP Cloud Connector with Cloud
Integration Adapters.

Path (only if WebSocket is selected as the Transport Protocol in Specify the access path of the message broker.
the General tab)

Connect with TLS Select if TLS has to be used for the connection.

Location ID (only if On-Premise is selected for Proxy Type) To connect to an SAP Cloud Connector instance associated with
your account, enter the location ID that you de ned for this instance
in the destination con guration on the cloud side.

Authentication Select the authentication method supported by the message


broker. Make sure that SASL is selected (default setting).

Credential Name (only if SASL or OAuth2 Client Credentials are Specify the name of the User Credentials artifact.
selected for Authentication)

Select the Processing tab and provide values in the elds as follows.

Processing

Parameter Description

Queue Name Specify the name of the queue or topic subscription to consume from.

Number of Current Processes Specify the number of processes used for parallel message processing. Note, that these
processes are started from each worker node.

 Note
The maximum number of parallel processes cannot exceed 99. The default is set to 1.

This is custom documentation. For more information, please visit the SAP Help Portal 218
6/14/2023

Parameter Description

Max. Number of Prefechted Enter the max. number of messages that may be prefechted by one worker. The allowed value
Messages range is 1 to 100.

The prefetch value is the number of messages that the sender adapter fetches in advance from the
broker, and then gradually processes. The prefetch reduces the communication overhead and
ensures that when a message has been processed, another is already there and is ready for
processing.

If the integration ows that are triggered by the AMQP sender adapter run for longer than a few
seconds, it makes sense to set a lower prefetch value. In particular, if the integration ow runs for
more than a minute, you should consider setting the value to 1. You can expect then a performance
deterioration in the two-digit millisecond range, per message. On the other hand, load balancing
between several nodes works better even with short backlogs.

If you need to process a large number of messages with the integration ow, and the processing of
the individual message only runs for a few milliseconds, it can be useful to increase the prefetch
value.

 Note
If you increase the value, this can lead to lock timeouts and the load balancing between the
nodes deteriorates. In return, you can expect performance gains in the three-digit microsecond
range, per message. For example, with a prefetch value of 100, 10000 messages process
approximately a second or two faster.

Consume Expired Messages Select if the adapter is to consume already expired messages.

By default, this option is deactivated.

Max. Number of Retries De ne the number of retries to be executed before a different delivery status is sent to the
message broker.

 Note
With the default setting (0), any message that is marked as a retried message is directly
returning the outcome con gured in Delivery Status After Max. Retries to the message broker
and does not even start processing the message. Be aware of the fact that any delivery attempt
by the message broker, even a failed one (for example, due to network issues), increases the
delivery counter of the message sent by the message broker.

If the value is set to a number bigger than 0, the AMQP adapter returns the outcome con gured
in Delivery Status After Max. Retries to the message broker if the delivery count of the
message exceeds the con gured value. Otherwise, it processes the message and returns a
released outcome in case of an error and an accepted outcome in case of a successful
message processing.

The consequences of the provided outcome depend on the message broker and the queue
con guration on the message broker. An accepted outcome usually removes the message from
the queue. A released outcome usually triggers a redelivery. A rejected outcome may trigger a
redelivery or move the message to a dead letter queue (maybe only if the message was
rejected for a con gured number of times). The same applies to a modi ed outcome with the
undeliverable ag set, which also might transit the message on the message broker to some
undeliverable state.

If the message broker is not con gured properly, this behavior can lead to unwanted side
effects. For example, the messaging system constantly re-sends the message, no other
messages are being processed, and no additional message processing logs are written. As
consequence, this can result in an unplanned high load of your tenant and message broker.

This is custom documentation. For more information, please visit the SAP Help Portal 219
6/14/2023

Parameter Description

Delivery Status After Max. Retries De ne one delivery status that is to be sent to the message broker after the maximum number of
retries. Choose between the following options:

REJECTED

MODIFIED_FAILED_UNDELIVERABLE

 Note
See this general information on AMQP on delivery statuses and their meaning.

See this blog for a summary of the capabilities supported by the different brokers.

Further Constraints
Note the following when using the AMQP adapter to connect Cloud Integration to IBM MQ:

Dead letter queue handling based on delivery status isn't supported.

You can con gure retry by setting the header JMSRedelivered (with version >= 9.2).

You can use header JMSXDeliveryCount (with version >= 9.2)..

See: Headers and Exchange Properties Provided by the Integration Framework

For more information and an example scenario using this option, see the following SAP Community blog:
https://blogs.sap.com/2019/11/20/cloud-integration-connecting-to-external-messaging-systems-using-the-amqp-adapter/ .

Con gure the AMQP Receiver Adapter


You se the Advanced Message Queuing Protocol (AMQP) receiver adapter to send messages from SAP Cloud Integration to
queues or topics in an external message broker.

 Note
In the following cases certain features might not be available for your current integration ow:

You are using a runtime pro le other than the one expected. See: Runtime Pro les.

A feature for a particular adapter or step was released after you created the corresponding shape in your integration
ow.

To use the latest version of a ow step or adapter – edit your integration ow, delete the ow step or adapter, add the
step or adapter, and con gure the same. Finally, redeploy the integration ow. See: Updating your Existing Integration
Flow.

 Note
To be able to connect to queues or topics, you have to create queues and/or topics in the message broker. This needs to be
done in the message broker with the con guration tools provided by the message broker.

 Note

This is custom documentation. For more information, please visit the SAP Help Portal 220
6/14/2023
Queues, topics, and messages can only be monitored using tools provided by the message broker. Those monitors are not
integrated into SAP Cloud Integration. In SAP Cloud Integration, the integration ows using the AMQP adapter are
monitored and the messages send to or consumed from the message broker.

 Note
This adapter exchanges data with a remote component that might be outside the scope of SAP. Make sure that the data
exchange complies with your company’s policies.

Once you have created a receiver channel and selected the AMQP receiver adapter (TCP or WebSocket), you can con gure the
following attributes. See Overview of Integration Flow Editor.

The following values are displayed in the General tab after a channel has been established. To change the con gurations, you
need to con gure a new channel.

General

Parameter Description

Name/Adapter Type AMQP

Transport Protocol The protocol that the message broker supports:

TCP

WebSocket

Message Protocol AMQP 1.0

Select the Connection tab and provide values in the elds as follows.

Connection

Parameter Description

Host Specify the hostname of the message broker.

Port Specify the port of the message broker.

Proxy Type The type of proxy that you’re using to connect to the target system.

Select Internet if you’re connecting directly to the message broker.

Select On-Premise if you’re connecting to an on-premise message


broker.

For more information, see Using SAP Cloud Connector with Cloud
Integration Adapters.

Path (only if WebSocket is selected as the Transport Protocol in Specify the access path of the message broker.
the General tab)

Connect with TLS Select if Transport Layer Security (TLS) has to be used for the
connection.

You can't con gure this parameter if Client Certi cate is selected
for Authentication. In this case, TLS is automatically used.

Location ID (only if On-Premise is selected for Proxy Type) To connect to an SAP Cloud Connector instance associated with
your account, enter the location ID that you de ned for this instance
in the destination con guration on the cloud side.

This is custom documentation. For more information, please visit the SAP Help Portal 221
6/14/2023

Parameter Description

Authentication Select the authentication method the message broker supports.


SASL is selected by default.

SASL

Select to use Simple Authentication and Security Layer


(SASL).

OAuth2 Client Credentials (only when WebSocket has


been selected for Transport Protocol while creating the
connection)

Select to use OAuth 2.0 client credentials grant. At runtime,


Cloud Integration gets access to the protected resources in
two steps: After presenting a set of client credentials,
Cloud Integration fetches an access token from a token
service. In a subsequent step, Cloud Integration uses the
access token to get access to the protected resources in
the connected system.

More information: OAuth 2.0 Client Credentials Grant

Client Certi cate (only when TCP has been selected for
Transport Protocol while creating the connection and if
Internet is selected for Proxy Type)

At runtime, Cloud Integration authenticates itself against


the connected system using a client certi cate.

It's a prerequisite that the required key pair is installed and


added to a keystore. This keystore has to be deployed on
the related tenant. The receiver side has to be con gured
appropriately.

 Note
This authentication option implies that Transport Layer
Security (TLS) is used for the connection.

More information:

None

Select when not to use any authentication.

Credential Name (only if SASL or OAuth2 Client Credentials is Specify the alias of the deployed credentials.
selected for Authentication)

Private Key Alias (only if Client Certi cate is selected for Alias to identify the private key in the keystore used for client
Authentication) certi cate authentication.

Select the Processing tab and provide values in the elds as follows.

Processing

Parameter Description

Destination Type Specify if messages should be sent to queues or topics in the


message broker.

This is custom documentation. For more information, please visit the SAP Help Portal 222
6/14/2023

Parameter Description

Destination Name Enter the name of the queue or topic.

This value can be de ned dynamically by using the following


expressions: ${header.queueabc} or
${property.queueabc}.

Expiration Period (in s) Specify the Time to Live (TTL) for the message. If nothing is
speci ed, the setting for the queue or topic subscription in the
message broker applies.

Delivery Specify whether the message broker has to make sure that the
message is not lost, even in case of unexpected terminations.

Persistent

Non-Persistent

Message Type De ne the message type to be used for sending the message to the
message broker. Choose between the following options:

Automatic (recommended): In this case, the adapter sets


the message type based on the message format before the
receiver channel.

Binary: In this case, the adapter converts the message into


a binary message before sending.

Text: In this case, the adapter converts the message into a


string before sending.

 Note
Select Binary or Text only if your application receiving the
message requires a speci c message type.

Also, if you select Binary or Text, you can de ne the character


encoding with the help of CamelCharsetName (either header
or property) in the Content Modi er. In case you don't set the
CamelCharsetName header or property, the transformation
will use UTF-8 character encoding. See Content Modi er Basics
and About Headers and Exchange Properties.

Header Format Handling There are two options for forwarding the message header name:

Passthrough (default option):

Choose this option to pass the message header without


transformation. For example, message-header.1 is
forwarded as message-header.1.

Replace:

Choose this option to replace dots and hyphens of a


message header with _HYPHEN_ and _DOT_. For example,
message-header.1 is forwarded as
message_HYPHEN_header_DOT_1.

Related Information
Blog: Cloud Integration – Connecting to Messaging Systems using the AMQP Adapter

This is custom documentation. For more information, please visit the SAP Help Portal 223
6/14/2023
Blog: Cloud Integration – How to Connect to an On-Premise AMQP server via Cloud Connector

AMQP Receiver for SAP Event Mesh


Enables SAP Cloud Integration to send messages to queues or topics in SAP Event Mesh.

 Note
In the following cases certain features might not be available for your current integration ow:

You are using a runtime pro le other than the one expected. See: Runtime Pro les.

A feature for a particular adapter or step was released after you created the corresponding shape in your integration
ow.

To use the latest version of a ow step or adapter – edit your integration ow, delete the ow step or adapter, add the
step or adapter, and con gure the same. Finally, redeploy the integration ow. See: Updating your Existing Integration
Flow.

 Note
To be able to connect to queues or topics, you have to create queues and/or topics in the message broker. This needs to be
done in the message broker with the con guration tools provided by the message broker.

 Note
Queues, topics, and messages can only be monitored using tools provided by the message broker. Those monitors are not
integrated into SAP Cloud Integration. In SAP Cloud Integration, the integration ows using the AMQP adapter are
monitored and the messages send to or consumed from the message broker.

 Note
This adapter exchanges data with a remote component that might be outside the scope of SAP. Make sure that the data
exchange complies with your company’s policies.

To connect Cloud Integration to SAP Event Mesh, make sure to specify the following parameters in the described way:

When creating the channel (see Overview of Integration Flow Editor), select adapter type AMQP WebSocket .

The following values are displayed in the General tab after a channel has been established. To change the con gurations, you
need to con gure a new channel.

General

Parameter Description

Name/Adapter Type AMQP

Transport Protocol The protocol that the message broker supports:

WebSocket

Message Protocol AMQP 1.0

Select the Connection tab and provide values in the elds as follows.

This is custom documentation. For more information, please visit the SAP Help Portal 224
6/14/2023

Connection

Parameter Description

Host Specify the hostname of the message broker.

Port Specify the port of the message broker.

Enter 443.

Proxy Type The type of proxy that you’re using to connect to the target system.

Select Internet if you’re connecting directly to the message broker.

Select On-Premise if you’re connecting to an on-premise message


broker.

For more information, see Using SAP Cloud Connector with Cloud
Integration Adapters.

Path Specify the access path of the message broker.

Enter /protocols/amqp10ws.

Connect with TLS Select this option to ensure that TLS is used for the connection.

Location ID (only if On-Premise is selected for Proxy Type) To connect to an SAP Cloud Connector instance associated with
your account, enter the location ID that you de ned for this instance
in the destination con guration on the cloud side.

Authentication Select the authentication method the message broker supports.


SASL is selected by default.

Select OAuth2 Client Credentials.

 Note
Option OAuth2 Client Credentials is only available for
WebSocket.

Credential Name (only if SASL or OAuth2 Client Credentials is Specify the OAuth2 Client Credentials artifact.
selected for Authentication)

Select the Processing tab and provide values in the elds as follows.

Processing

Parameter Description

Destination Type Specify if messages should be sent to queues or topics in the


message broker.

You can select Topic or Queue.

Both options are supported by SAP Event Mesh.

This is custom documentation. For more information, please visit the SAP Help Portal 225
6/14/2023

Parameter Description

Destination Name Enter the name of the queue or topic.

When you've selected Queue as Destination Type, specify the


queue name as: queue:<queue name>

When you've selected Topic as Destination Type, specify the topic


name as: topic:<topic name>

This value can be de ned dynamically by using the following


expressions: ${header.queueabc} or
${property.queueabc}.

Expiration Period (in s) Specify the Time to Live (TTL) for the message. If nothing is
speci ed, the setting for the queue or topic subscription in the
message broker applies.

Delivery Specify whether the message broker has to make sure that the
message is not lost, even in case of unexpected terminations.

Persistent

Non-Persistent

Message Type De ne the message type to be used for sending the message to the
message broker. Choose between the following options:

Automatic (recommended): In this case, the adapter sets


the message type based on the message format before the
receiver channel.

Binary: In this case, the adapter converts the message into


a binary message before sending.

Text: In this case, the adapter converts the message into a


string before sending.

 Note
Select Binary or Text only if your application receiving the
message requires a speci c message type.

Also, if you select Binary or Text, you can de ne the character


encoding with the help of CamelCharsetName (either header
or property) in the Content Modi er. In case you don't set the
CamelCharsetName header or property, the transformation
will use UTF-8 character encoding. See Content Modi er Basics
and About Headers and Exchange Properties.

Header Format Handling There are two options for forwarding the message header name:

Passtrough (default option):

Choose this option to pass the message header without


transformation. For example, message-header.1 is
forwarded as message-header.1.

Replace:

Choose this option to replace dots and hyphens of a


message header with _HYPHEN_ and _DOT_. For example,
message-header.1 is forwarded as
message_HYPHEN_header_DOT_1.

This is custom documentation. For more information, please visit the SAP Help Portal 226
6/14/2023

Further Constraints
The following constraints and limitations apply when using the AMQP adapter to connect Cloud Integration to SAP Event Mesh:

Exclusive queues are supported.

Message groups aren't supported.

Topic subscriptions are supported, which means: You can subscribe queues to topics.

Furthermore, consider the following restrictions:

The maximum number of connections supported per service instance is: 50.

The maximum number of connections combined for all service instances and subscription (per subaccount) is: 1000.

As a consequence from this restriction, it's recommended that you use 1 service instance per queue.

For more information, see:

For more information and an example scenario using this option, see the following SAP Community blog:
https://blogs.sap.com/2019/11/20/cloud-integration-connecting-to-external-messaging-systems-using-the-amqp-
adapter/ .

For more information on the constraints of SAP Event Mesh, see Scope and Limitations (for SAP Event Mesh).

AMQP Receiver for Microsoft Azure Service Bus


Enables SAP Cloud Integration to send messages to queues or topics in Microsoft Azure Service Bus.

 Note
In the following cases certain features might not be available for your current integration ow:

You are using a runtime pro le other than the one expected. See: Runtime Pro les.

A feature for a particular adapter or step was released after you created the corresponding shape in your integration
ow.

To use the latest version of a ow step or adapter – edit your integration ow, delete the ow step or adapter, add the
step or adapter, and con gure the same. Finally, redeploy the integration ow. See: Updating your Existing Integration
Flow.

 Note
To be able to connect to queues or topics, you have to create queues and/or topics in the message broker. This needs to be
done in the message broker with the con guration tools provided by the message broker.

 Note
Queues, topics, and messages can only be monitored using tools provided by the message broker. Those monitors are not
integrated into SAP Cloud Integration. In SAP Cloud Integration, the integration ows using the AMQP adapter are
monitored and the messages send to or consumed from the message broker.

This is custom documentation. For more information, please visit the SAP Help Portal 227
6/14/2023

 Note
This adapter exchanges data with a remote component that might be outside the scope of SAP. Make sure that the data
exchange complies with your company’s policies.

 Note
This adapter enables you to connect SAP Cloud Integration to a remote message broker. SAP can’t give advice on how to
con gure the external system nor does SAP provide support related to this.

Note the following when using the AMQP adapter to connect Cloud Integration to Microsoft Azure Service Bus:

Exclusive queues are supported.

Message groups aren't supported.

Topic subscriptions are supported, which means: You can subscribe queues to topics.

To connect Cloud Integration to Microsoft Azure Service Bus, make sure to specify the following parameters in the described
way:

When creating the channel (see Overview of Integration Flow Editor), select adapter type AMQP TCP .

The following values are displayed in the General tab after a channel has been established. To change the con gurations, you
need to con gure a new channel.

General

Parameter Description

Name/Adapter Type AMQP

Transport Protocol The protocol that the message broker supports:

TCP

Message Protocol AMQP 1.0

Select the Connection tab and provide values in the elds as follows.

Connection

Parameter Description

Host Specify the hostname of the message broker.

Port Specify the port of the message broker.

Enter 5671.

Proxy Type The type of proxy that you’re using to connect to the target system.

Select Internet if you’re connecting directly to the message broker.

Select On-Premise if you’re connecting to an on-premise message


broker.

For more information, see Using SAP Cloud Connector with Cloud
Integration Adapters.

Path (only if WebSocket is selected as the Transport Protocol in Specify the access path of the message broker.
the General tab)

This is custom documentation. For more information, please visit the SAP Help Portal 228
6/14/2023

Parameter Description

Connect with TLS Select this option to ensure that TLS is used for the connection.

Location ID (only if On-Premise is selected for Proxy Type) To connect to an SAP Cloud Connector instance associated with
your account, enter the location ID that you de ned for this instance
in the destination con guration on the cloud side.

Authentication Select the authentication method the message broker supports.


Make sure that SASL is selected (default setting).

Credential Name (only if SASL or OAuth2 Client Credentials is Specify the name of the User Credentials artifact.
selected for Authentication)

Select the Processing tab and provide values in the elds as follows.

Processing

Parameter Description

Destination Type Specify if messages should be sent to queues or topics in the


message broker.

You can select Topic or Queue.

Both options are supported by Microsoft Azure Service Bus.

Destination Name Enter the name of the queue or topic.

This value can be de ned dynamically by using the following


expressions: ${header.queueabc} or
${property.queueabc}.

Expiration Period (in s) Specify the Time to Live (TTL) for the message. If nothing is
speci ed, the setting for the queue or topic subscription in the
message broker applies.

Delivery Specify whether the message broker has to make sure that the
message is not lost, even in case of unexpected terminations.

Persistent

Non-Persistent

This is custom documentation. For more information, please visit the SAP Help Portal 229
6/14/2023

Parameter Description

Message Type De ne the message type to be used for sending the message to the
message broker. Choose between the following options:

Automatic (recommended): In this case, the adapter sets


the message type based on the message format before the
receiver channel.

Binary: In this case, the adapter converts the message into


a binary message before sending.

Text: In this case, the adapter converts the message into a


string before sending.

 Note
Select Binary or Text only if your application receiving the
message requires a speci c message type.

Also, if you select Binary or Text, you can de ne the character


encoding with the help of CamelCharsetName (either header
or property) in the Content Modi er. In case you don't set the
CamelCharsetName header or property, the transformation
will use UTF-8 character encoding. See Content Modi er Basics
and About Headers and Exchange Properties.

Header Format Handling There are two options for forwarding the message header name:

Passtrough (default option):

Choose this option to pass the message header without


transformation. For example, message-header.1 is
forwarded as message-header.1.

Replace:

Choose this option to replace dots and hyphens of a


message header with _HYPHEN_ and _DOT_. For example,
message-header.1 is forwarded as
message_HYPHEN_header_DOT_1.

For more information and an example scenario using this option, see the following SAP Community blog:
https://blogs.sap.com/2019/11/20/cloud-integration-connecting-to-external-messaging-systems-using-the-amqp-adapter/ .

AMQP Receiver for Solace PubSub+


Enables SAP Cloud Integration to send messages to queues or topics in Solace PubSub+.

 Note
In the following cases certain features might not be available for your current integration ow:

You are using a runtime pro le other than the one expected. See: Runtime Pro les.

A feature for a particular adapter or step was released after you created the corresponding shape in your integration
ow.

To use the latest version of a ow step or adapter – edit your integration ow, delete the ow step or adapter, add the
step or adapter, and con gure the same. Finally, redeploy the integration ow. See: Updating your Existing Integration

This is custom documentation. For more information, please visit the SAP Help Portal 230
6/14/2023
Flow.

 Note
To be able to connect to queues or topics, you have to create queues and/or topics in the message broker. This needs to be
done in the message broker with the con guration tools provided by the message broker.

 Note
Queues, topics, and messages can only be monitored using tools provided by the message broker. Those monitors are not
integrated into SAP Cloud Integration. In SAP Cloud Integration, the integration ows using the AMQP adapter are
monitored and the messages send to or consumed from the message broker.

 Note
This adapter exchanges data with a remote component that might be outside the scope of SAP. Make sure that the data
exchange complies with your company’s policies.

 Note
This adapter enables you to connect SAP Cloud Integration to a remote message broker. SAP can’t give advice on how to
con gure the external system nor does SAP provide support related to this.

Note the following when using the AMQP adapter to connect Cloud Integration to Solace PubSub+:

Exclusive queues are supported.

Message groups aren't supported.

To connect Cloud Integration to Solace PubSub+, make sure to specify the following parameters in the described way:

When creating the channel (see Overview of Integration Flow Editor), select adapter type AMQP TCP .

The following values are displayed in the General tab after a channel has been established. To change the con gurations, you
need to con gure a new channel.

General

Parameter Description

Name/Adapter Type AMQP

Transport Protocol The protocol that the message broker supports:

TCP

Message Protocol AMQP 1.0

Select the Connection tab and provide values in the elds as follows.

Connection

Parameter Description

Host Specify the hostname of the message broker.

This is custom documentation. For more information, please visit the SAP Help Portal 231
6/14/2023

Parameter Description

Port Specify the port of the message broker.

Proxy Type The type of proxy that you’re using to connect to the target system.

Select Internet if you’re connecting directly to the message broker.

Select On-Premise if you’re connecting to an on-premise message


broker.

For more information, see Using SAP Cloud Connector with Cloud
Integration Adapters.

Path (only if WebSocket is selected as the Transport Protocol in Specify the access path of the message broker.
the General tab)

Connect with TLS Select if TLS has to be used for the connection.

Location ID (only if On-Premise is selected for Proxy Type) To connect to an SAP Cloud Connector instance associated with
your account, enter the location ID that you de ned for this instance
in the destination con guration on the cloud side.

Authentication Select the authentication method the message broker supports.


Make sure that SASL is selected (default setting).

Credential Name (only if SASL or OAuth2 Client Credentials is Specify the name of the User Credentials artifact.
selected for Authentication)

Select the Processing tab and provide values in the elds as follows.

Processing

Parameter Description

Destination Type Specify if messages should be sent to queues or topics in the


message broker.

You can select Topic or Queue.

Both options are supported by Solace PubSub+.

Destination Name Enter the name of the queue or topic.

This value can be de ned dynamically by using the following


expressions: ${header.queueabc} or
${property.queueabc}.

Expiration Period (in s) Specify the Time to Live (TTL) for the message. If nothing is
speci ed, the setting for the queue or topic subscription in the
message broker applies.

Delivery Specify whether the message broker has to make sure that the
message is not lost, even in case of unexpected terminations.

Persistent

Non-Persistent

This is custom documentation. For more information, please visit the SAP Help Portal 232
6/14/2023

Parameter Description

Message Type De ne the message type to be used for sending the message to the
message broker. Choose between the following options:

Automatic (recommended): In this case, the adapter sets


the message type based on the message format before the
receiver channel.

Binary: In this case, the adapter converts the message into


a binary message before sending.

Text: In this case, the adapter converts the message into a


string before sending.

 Note
Select Binary or Text only if your application receiving the
message requires a speci c message type.

Also, if you select Binary or Text, you can de ne the character


encoding with the help of CamelCharsetName (either header
or property) in the Content Modi er. In case you don't set the
CamelCharsetName header or property, the transformation
will use UTF-8 character encoding. See Content Modi er Basics
and About Headers and Exchange Properties.

Header Format Handling There are two options for forwarding the message header name:

Passtrough (default option):

Choose this option to pass the message header without


transformation. For example, message-header.1 is
forwarded as message-header.1.

Replace:

Choose this option to replace dots and hyphens of a


message header with _HYPHEN_ and _DOT_. For example,
message-header.1 is forwarded as
message_HYPHEN_header_DOT_1.

For more information and an example scenario using this option, see the following SAP Community blog: Topic subscriptions are
supported, which means: You can subscribe queues to topics.https://blogs.sap.com/2019/11/20/cloud-integration-connecting-
to-external-messaging-systems-using-the-amqp-adapter/ .

AMQP Receiver for Apache Qpid Broker-J


Enables SAP Cloud Integration to send messages to queues or topics in Apache Qpid Broker-J.

 Note
In the following cases certain features might not be available for your current integration ow:

You are using a runtime pro le other than the one expected. See: Runtime Pro les.

A feature for a particular adapter or step was released after you created the corresponding shape in your integration
ow.

This is custom documentation. For more information, please visit the SAP Help Portal 233
6/14/2023
To use the latest version of a ow step or adapter – edit your integration ow, delete the ow step or adapter, add the
step or adapter, and con gure the same. Finally, redeploy the integration ow. See: Updating your Existing Integration
Flow.

 Note
To be able to connect to queues or topics, you have to create queues and/or topics in the message broker. This needs to be
done in the message broker with the con guration tools provided by the message broker.

 Note
Queues, topics, and messages can only be monitored using tools provided by the message broker. Those monitors are not
integrated into SAP Cloud Integration. In SAP Cloud Integration, the integration ows using the AMQP adapter are
monitored and the messages send to or consumed from the message broker.

 Note
This adapter exchanges data with a remote component that might be outside the scope of SAP. Make sure that the data
exchange complies with your company’s policies.

 Note
This adapter enables you to connect SAP Cloud Integration to a remote message broker. SAP can’t give advice on how to
con gure the external system nor does SAP provide support related to this.

Note the following when using the AMQP adapter to connect Cloud Integration to Apache Qpid Broker-J:

Exclusive queues are supported.

Message groups are supported.

Topic subscriptions are supported, which means: You can subscribe queues to topics.

To connect Cloud Integration to Apache Qpid Broker-J, make sure to specify the following parameters in the described way:

When creating the channel (see Overview of Integration Flow Editor), select adapter type AMQP TCP or AMQP
WebSocket .

The following values are displayed in the General tab after a channel has been established. To change the con gurations, you
need to con gure a new channel.

General

Parameter Description

Name/Adapter Type AMQP

Transport Protocol The protocol that the message broker supports:

TCP

WebSocket

Message Protocol AMQP 1.0

Select the Connection tab and provide values in the elds as follows.
This is custom documentation. For more information, please visit the SAP Help Portal 234
6/14/2023

Connection

Parameter Description

Host Specify the hostname of the message broker.

Port Specify the port of the message broker.

Proxy Type The type of proxy that you’re using to connect to the target system.

Select Internet if you’re connecting directly to the message broker.

Select On-Premise if you’re connecting to an on-premise message


broker.

For more information, see Using SAP Cloud Connector with Cloud
Integration Adapters.

Path (only if WebSocket is selected as the Transport Protocol in Specify the access path of the message broker.
the General tab)

Connect with TLS Select if TLS has to be used for the connection.

Location ID (only if On-Premise is selected for Proxy Type) To connect to an SAP Cloud Connector instance associated with
your account, enter the location ID that you de ned for this instance
in the destination con guration on the cloud side.

Authentication Select the authentication method the message broker supports.


Make sure that SASL is selected (default setting).

Credential Name (only if SASL or OAuth2 Client Credentials is Specify the name of the User Credentials artifact.
selected for Authentication)

Select the Processing tab and provide values in the elds as follows.

Processing

Parameter Description

Destination Type Specify if messages should be sent to queues or topics in the


message broker.

You can select Topic or Queue.

Both options are supported by Apache Qpid Broker-J.

Destination Name Enter the name of the queue or topic.

This value can be de ned dynamically by using the following


expressions: ${header.queueabc} or
${property.queueabc}.

Expiration Period (in s) Specify the Time to Live (TTL) for the message. If nothing is
speci ed, the setting for the queue or topic subscription in the
message broker applies.

Delivery Specify whether the message broker has to make sure that the
message is not lost, even in case of unexpected terminations.

Persistent

Non-Persistent

This is custom documentation. For more information, please visit the SAP Help Portal 235
6/14/2023

Parameter Description

Message Type De ne the message type to be used for sending the message to the
message broker. Choose between the following options:

Automatic (recommended): In this case, the adapter sets


the message type based on the message format before the
receiver channel.

Binary: In this case, the adapter converts the message into


a binary message before sending.

Text: In this case, the adapter converts the message into a


string before sending.

 Note
Select Binary or Text only if your application receiving the
message requires a speci c message type.

Also, if you select Binary or Text, you can de ne the character


encoding with the help of CamelCharsetName (either header
or property) in the Content Modi er. In case you don't set the
CamelCharsetName header or property, the transformation
will use UTF-8 character encoding. See Content Modi er Basics
and About Headers and Exchange Properties.

Header Format Handling There are two options for forwarding the message header name:

Passtrough (default option):

Choose this option to pass the message header without


transformation. For example, message-header.1 is
forwarded as message-header.1.

Replace:

Choose this option to replace dots and hyphens of a


message header with _HYPHEN_ and _DOT_. For example,
message-header.1 is forwarded as
message_HYPHEN_header_DOT_1.

For more information and an example scenario using this option, see the following SAP Community blog:
https://blogs.sap.com/2019/11/20/cloud-integration-connecting-to-external-messaging-systems-using-the-amqp-adapter/ .

AMQP Receiver for Apache ActiveMQ 5 and Apache ActiveMQ


Artemis
Enables SAP Cloud Integration to send messages to queues or topics in Apache ActiveMQ 5 / Apache ActiveMQ Artemis.

 Note
In the following cases certain features might not be available for your current integration ow:

You are using a runtime pro le other than the one expected. See: Runtime Pro les.

A feature for a particular adapter or step was released after you created the corresponding shape in your integration
ow.

This is custom documentation. For more information, please visit the SAP Help Portal 236
6/14/2023
To use the latest version of a ow step or adapter – edit your integration ow, delete the ow step or adapter, add the
step or adapter, and con gure the same. Finally, redeploy the integration ow. See: Updating your Existing Integration
Flow.

 Note
To be able to connect to queues or topics, you have to create queues and/or topics in the message broker. This needs to be
done in the message broker with the con guration tools provided by the message broker.

 Note
Queues, topics, and messages can only be monitored using tools provided by the message broker. Those monitors are not
integrated into SAP Cloud Integration. In SAP Cloud Integration, the integration ows using the AMQP adapter are
monitored and the messages send to or consumed from the message broker.

 Note
This adapter exchanges data with a remote component that might be outside the scope of SAP. Make sure that the data
exchange complies with your company’s policies.

 Note
This adapter enables you to connect SAP Cloud Integration to a remote message broker. SAP can’t give advice on how to
con gure the external system nor does SAP provide support related to this.

Note the following when using the AMQP adapter to connect Cloud Integration to Apache ActiveMQ 5 and Apache ActiveMQ
Artemis:

Exclusive queues aren't supported.

Message groups are supported.

Topic subscriptions are supported, which means: You can subscribe queues to topics.

To connect Cloud Integration to Apache ActiveMQ 5 and Apache ActiveMQ Artemis, make sure to specify the following
parameters in the described way:

When creating the channel (see Overview of Integration Flow Editor), select adapter type AMQP TCP .

The following values are displayed in the General tab after a channel has been established. To change the con gurations, you
need to con gure a new channel.

General

Parameter Description

Name/Adapter Type AMQP

Transport Protocol The protocol that the message broker supports:

TCP

Message Protocol AMQP 1.0

Select the Connection tab and provide values in the elds as follows.

This is custom documentation. For more information, please visit the SAP Help Portal 237
6/14/2023
Connection

Parameter Description

Host Specify the hostname of the message broker.

Port Specify the port of the message broker.

Proxy Type The type of proxy that you’re using to connect to the target system.

Select Internet if you’re connecting directly to the message broker.

Select On-Premise if you’re connecting to an on-premise message


broker.

For more information, see Using SAP Cloud Connector with Cloud
Integration Adapters.

Path (only if WebSocket is selected as the Transport Protocol in Specify the access path of the message broker.
the General tab)

Connect with TLS Select if TLS has to be used for the connection.

Location ID (only if On-Premise is selected for Proxy Type) To connect to an SAP Cloud Connector instance associated with
your account, enter the location ID that you de ned for this instance
in the destination con guration on the cloud side.

Authentication Select the authentication method the message broker supports.


Make sure that SASL is selected (default setting).

Credential Name (only if SASL or OAuth2 Client Credentials is Specify the name of the User Credentials artifact.
selected for Authentication)

Select the Processing tab and provide values in the elds as follows.

Processing

Parameter Description

Destination Type Specify if messages should be sent to queues or topics in the


message broker.

You can select Topic or Queue.

Both options are supported by Apache ActiveMQ 5 and Apache


ActiveMQ Artemis.

Destination Name Enter the name of the queue or topic.

This value can be de ned dynamically by using the following


expressions: ${header.queueabc} or
${property.queueabc}.

Expiration Period (in s) Specify the Time to Live (TTL) for the message. If nothing is
speci ed, the setting for the queue or topic subscription in the
message broker applies.

Delivery Specify whether the message broker has to make sure that the
message is not lost, even in case of unexpected terminations.

Persistent

Non-Persistent

This is custom documentation. For more information, please visit the SAP Help Portal 238
6/14/2023

Parameter Description

Message Type De ne the message type to be used for sending the message to the
message broker. Choose between the following options:

Automatic (recommended): In this case, the adapter sets


the message type based on the message format before the
receiver channel.

Binary: In this case, the adapter converts the message into


a binary message before sending.

Text: In this case, the adapter converts the message into a


string before sending.

 Note
Select Binary or Text only if your application receiving the
message requires a speci c message type.

Also, if you select Binary or Text, you can de ne the character


encoding with the help of CamelCharsetName (either header
or property) in the Content Modi er. In case you don't set the
CamelCharsetName header or property, the transformation
will use UTF-8 character encoding. See Content Modi er Basics
and About Headers and Exchange Properties.

Header Format Handling There are two options for forwarding the message header name:

Passtrough (default option):

Choose this option to pass the message header without


transformation. For example, message-header.1 is
forwarded as message-header.1.

Replace:

Choose this option to replace dots and hyphens of a


message header with _HYPHEN_ and _DOT_. For example,
message-header.1 is forwarded as
message_HYPHEN_header_DOT_1.

For more information and an example scenario using this option, see the following SAP Community blog:
https://blogs.sap.com/2019/11/20/cloud-integration-connecting-to-external-messaging-systems-using-the-amqp-adapter/ .

AMQP Receiver for IBM MQ


Enables SAP Cloud Integration to send messages to queues or topics in IBM MQ.

 Note
This adapter works only with IBM MQ version 9.2 and above.

 Note
In the following cases certain features might not be available for your current integration ow:

You are using a runtime pro le other than the one expected. See: Runtime Pro les.

This is custom documentation. For more information, please visit the SAP Help Portal 239
6/14/2023
A feature for a particular adapter or step was released after you created the corresponding shape in your integration
ow.

To use the latest version of a ow step or adapter – edit your integration ow, delete the ow step or adapter, add the
step or adapter, and con gure the same. Finally, redeploy the integration ow. See: Updating your Existing Integration
Flow.

 Note
To be able to connect to queues or topics, you have to create queues and/or topics in the message broker. This needs to be
done in the message broker with the con guration tools provided by the message broker.

 Note
Queues, topics, and messages can only be monitored using tools provided by the message broker. Those monitors are not
integrated into SAP Cloud Integration. In SAP Cloud Integration, the integration ows using the AMQP adapter are
monitored and the messages send to or consumed from the message broker.

 Note
This adapter exchanges data with a remote component that might be outside the scope of SAP. Make sure that the data
exchange complies with your company’s policies.

 Note
This adapter enables you to connect SAP Cloud Integration to a remote message broker. SAP can’t give advice on how to
con gure the external system nor does SAP provide support related to this.

Note the following when using the AMQP adapter to connect Cloud Integration to IBM MQ:

Exclusive queues are supported as of version 9.2.

 Note
Set parameter Max. Number of Prefetched Messages in AMQP sender channel to 0.

The Poll status in the deployed artifacts monitor show an error if multiple workers are running on your tenant. The
reason is that one consumer is allowed for the exclusive queue. The second worker runs into an error when trying to
connect.

Message groups aren't supported.

Topic subscriptions are supported, which means: You can subscribe queues to topics.

To connect Cloud Integration to IBM MQ, make sure to specify the following parameters in the described way:

When creating the channel (see Overview of Integration Flow Editor), select adapter type AMQP TCP .

The following values are displayed in the General tab after a channel has been established. To change the con gurations, you
need to con gure a new channel.

General

Parameter Description

This is custom documentation. For more information, please visit the SAP Help Portal 240
6/14/2023

Parameter Description

Name/Adapter Type AMQP

Transport Protocol The protocol that the message broker supports:

TCP

Message Protocol AMQP 1.0

Select the Connection tab and provide values in the elds as follows.

Connection

Parameter Description

Host Specify the hostname of the message broker.

Port Specify the port as de ned in the IBM MQ broker.

Proxy Type The type of proxy that you’re using to connect to the target system.

Select Internet if you’re connecting directly to the message broker.

Select On-Premise if you’re connecting to an on-premise message


broker.

For more information, see Using SAP Cloud Connector with Cloud
Integration Adapters.

Path (only if WebSocket is selected as the Transport Protocol in Specify the access path of the message broker.
the General tab)

Connect with TLS Select if TLS has to be used for the connection.

Location ID (only if On-Premise is selected for Proxy Type) To connect to an SAP Cloud Connector instance associated with
your account, enter the location ID that you de ned for this instance
in the destination con guration on the cloud side.

Authentication Select the authentication method the message broker supports.


Make sure that SASL is selected (default setting).

Credential Name (only if SASL or OAuth2 Client Credentials is Specify the name of the User Credentials artifact.
selected for Authentication)

Select the Processing tab and provide values in the elds as follows.

Processing

Parameter Description

Destination Type Specify if messages should be sent to queues or topics in the


message broker.

You can select Topic or Queue (queues supported as of version


9.2).

Both options are supported by IBM MQ.

Destination Name Enter the name of the queue or topic.

This value can be de ned dynamically by using the following


expressions: ${header.queueabc} or
${property.queueabc}.

This is custom documentation. For more information, please visit the SAP Help Portal 241
6/14/2023

Parameter Description

Expiration Period (in s) Specify the Time to Live (TTL) for the message. If nothing is
speci ed, the setting for the queue or topic subscription in the
message broker applies.

Delivery Specify whether the message broker has to make sure that the
message is not lost, even in case of unexpected terminations.

Persistent

Non-Persistent

Message Type De ne the message type to be used for sending the message to the
message broker. Choose between the following options:

Automatic (recommended): In this case, the adapter sets


the message type based on the message format before the
receiver channel.

Binary: In this case, the adapter converts the message into


a binary message before sending.

Text: In this case, the adapter converts the message into a


string before sending.

 Note
Select Binary or Text only if your application receiving the
message requires a speci c message type.

Also, if you select Binary or Text, you can de ne the character


encoding with the help of CamelCharsetName (either header
or property) in the Content Modi er. In case you don't set the
CamelCharsetName header or property, the transformation
will use UTF-8 character encoding. See Content Modi er Basics
and About Headers and Exchange Properties.

Header Format Handling There are two options for forwarding the message header name:

Passtrough (default option):

Choose this option to pass the message header without


transformation. For example, message-header.1 is
forwarded as message-header.1.

Replace:

Choose this option to replace dots and hyphens of a


message header with _HYPHEN_ and _DOT_. For example,
message-header.1 is forwarded as
message_HYPHEN_header_DOT_1.

For more information and an example scenario using this option, see the following SAP Community blog:
https://blogs.sap.com/2019/11/20/cloud-integration-connecting-to-external-messaging-systems-using-the-amqp-adapter/ .

This blog also provides more information on the supported versions of IBM MQ broker.

Ariba Adapter

This is custom documentation. For more information, please visit the SAP Help Portal 242
6/14/2023
You use this procedure to con gure a sender and receiver channel of an integration ow with the Ariba Network adapter. These
channels enable the SAP and non-SAP cloud applications to send and receive business-speci c documents in cXML format to
and from the Ariba Network. Examples of business documents are purchase orders and invoices.

 Restriction
An integration ow you deploy in SAP Cloud Integration deploys in multiple IFLMAP worker nodes. Polling is triggered from
only one of the worker nodes. The message monitoring currently displays the process status from the worker nodes where
the Scheduler is not started. This results in the message monitor displaying messages with less than a few milliseconds,
where the schedule was not triggered. These entries contain renow=true in the log. You can ignore these entries.

Related Information
Con gure the Ariba Sender Adapter
Con gure the Ariba Receiver Adapter

Con gure the Ariba Sender Adapter


The Ariba sender adapter connects SAP Cloud Integration to the Ariba Network. Using this adapter, SAP and non-SAP cloud
applications can receive business-speci c documents in commerce eXtensible Markup Language (cXML) format from the Ariba
network. The sender adapter allows you to de ne a schedule for polling data from Ariba.

 Note
In the following cases certain features might not be available for your current integration ow:

You are using a runtime pro le other than the one expected. See: Runtime Pro les.

A feature for a particular adapter or step was released after you created the corresponding shape in your integration
ow.

To use the latest version of a ow step or adapter – edit your integration ow, delete the ow step or adapter, add the
step or adapter, and con gure the same. Finally, redeploy the integration ow. See: Updating your Existing Integration
Flow.

 Note
This adapter exchanges data with a remote component that might be outside the scope of SAP. Make sure that the data
exchange complies with your company’s policies.

Once you have created a sender channel and selected the Ariba sender adapter, you can con gure the following attributes. See
Overview of Integration Flow Editor.

Select the General tab and provide values in the elds as follows.

General

Parameter Description

Name Enter the name of the channel.

Select the Processing tab and provide values in the elds as follows.

Processing
This is custom documentation. For more information, please visit the SAP Help Portal 243
6/14/2023

Parameter Description

Ariba Network ID Enter the ID associated with the Ariba Network. The default value is
set to AN01000000001.

cXML version Default value provided by SAP is 1.2.025. If you are entering the
version, it must be above 1.2.018.

User Agent Enter the user agent details. The convention is a textual string
representing the client system conducting the cXML conversation.
It must consist of the software company name and the product
name.

Language Language used for constructing the cXML conversation. The only
language supported is EN.

Select the Connection tab and provide values in the elds as follows.

Connection

Parameter Description

Ariba Network URL Specify the URL to which the cXML requests are posted, or from
where the cXMLs are polled.

Connection Mode Select one of the options based on the description given below:

Production: If you select this option, the Ariba Network


processes the messages. This connection mode is set as
the default deployment mode.

Test: If you select this option, the Ariba Network will not
process the messages, and treats the messages as test
data.

Account Type Select one of the options based on the description given below:

Buyer: Select this option, if you hold a buyer account on the


Ariba Network.

Supplier: Select this option, if you hold a supplier account


on the Ariba Network.

Request Type Select one of the options based on the request types of
buyer/supplier that you want to poll.

Use Quote Message to poll the quote request for Buyer account
type.

Maximum Messages Enter the number of messages to be polled from the Ariba Network
for the above-selected Request Type. The maximum allowed value
is 200.

System ID Provide the System ID for receiving the requests from a speci c
ERP system belonging to a supplier. If the system ID is not
provided, then the adapter fetches all requests from every ERP
systems belonging to that speci c supplier.

 Note
If the buyers’ account is enabled with multi-ERP. It is mandatory
to provide the system ID for multi-ERP systems belonging to
the buyer.

This is custom documentation. For more information, please visit the SAP Help Portal 244
6/14/2023

Parameter Description

Authentication Domain Select one of the options based on the description given below:

Network ID: A unique alphanumeric value assigned to every


organization registered on Ariba SN; for example,
AN01000000001.

Network User ID: A login name of an Ariba SN user. These


names typically have the format of an e-mail address; for
example, [email protected].

Authentication Select one of the options based on the description given below:

Shared Key: If you have set the shared key in your Ariba
account.

Client Certi cate: If you have con gured your certi cate
from a trusted certi cate authority in the Ariba account.

Credential Name Enter a name. This name is treated as an alias to the secure store
where the user credentials are deployed. This value should be set
according to the Authentication selected above. If you have
selected Client Certi cate, then enter the alias details in the
Private Key Alias eld.

This alias is used to identify the keystore credentials deployed on


the SAP Cloud Integration account.

Select the Scheduler tab and provide values in the elds as follows.

Scheduler

Parameter Description

Schedule on Day Specify a date and time or interval for executing the data polling.

Schedule to Recur Specify a recurring pattern for consistently running the polling
process. It can be scheduled on daily, weekly, or monthly basis.

Daily: Run message polling every day to fetch data from the
Ariba system.

Weekly: Run the message polling every week on speci ed


days of the week to fetch data from the Ariba system.

Monthly: Execute the message polling every month on the


speci ed date to fetch data from the Ariba server.

 Note
If the speci ed date is not applicable in a particular
month, the data polling is not executed in that month.
For example, if the 30th day is selected, polling will not
be executed in the month of February, as 30th is not a
valid day for February.

On Date (only if Schedule on Day is selected) Speci c date on which the data polling process has to be initiated
to fetch data from the Ariba system.

On Time The time at which the data polling cycle has to be initiated. For
example, if you want the data polling to be started at 4:10 p.m.,
enter 16:10. Note that the time must be entered in 24-hour format.

This is custom documentation. For more information, please visit the SAP Help Portal 245
6/14/2023

Parameter Description

Every xx minutes between HH hours and HH hours The connector fetches data from the Ariba system every ʻxx’
minutes between HH hours and HH hours.

 Note
If you want the polling to run for the entire day, enter 1 and 59.

Time Zone Select the time zone you want to use as reference for scheduling
the data polling cycle.

Con gure the Ariba Receiver Adapter


The Ariva receiver adapter connects SAP Cloud Integration to the Ariba network. Using this adapter, SAP and non-SAP cloud
applications can send business-speci c documents in commerce eXtensible Markup Language (cXML) format to the Ariba
network.

 Note
In the following cases certain features might not be available for your current integration ow:

You are using a runtime pro le other than the one expected. See: Runtime Pro les.

A feature for a particular adapter or step was released after you created the corresponding shape in your integration
ow.

To use the latest version of a ow step or adapter – edit your integration ow, delete the ow step or adapter, add the
step or adapter, and con gure the same. Finally, redeploy the integration ow. See: Updating your Existing Integration
Flow.

 Note
This adapter exchanges data with a remote component that might be outside the scope of SAP. Make sure that the data
exchange complies with your company’s policies.

Once you have created a receiver channel and selected the Ariba receiver adapter, you can con gure the following attributes.
See Overview of Integration Flow Editor.

Select the General tab and provide values in the elds as follows.

General

Parameter Description

Name Enter the name of the channel.

Select the Processing tab and provide values in the elds as follows.

Processing

Parameter Description

Ariba Network ID Enter the ID associated with the Ariba Network. The default value is
set to AN01000000001.

This is custom documentation. For more information, please visit the SAP Help Portal 246
6/14/2023

Parameter Description

cXML Version Default value provided by SAP is 1.2.025. If you are entering the
version, it must be above 1.2.018.

User Agent Enter the user agent details. The convention is a textual string
representing the client system conducting the cXML conversation.
It must consist of the software company name and the product
name.

Language Language used for constructing the cXML conversation. The only
language supported is EN.

Select the Connection tab and provide values in the elds as follows.

Connection

Parameter Description

Ariba Network URL Specify the URL to which the cXML requests are posted, or from
where the cXMLs are polled.

Connection Mode Select one of the options based on the description given below:

Production: If you select this option, the Ariba Network


processes the messages. This connection mode is set as
the default deployment mode.

Test: If you select this option, the Ariba Network will not
process the messages, and treats the messages as test
data.

Account Type Select one of the options based on the description given below:

Buyer: Select this option, if you hold a buyer account on the


Ariba Network.

Supplier: Select this option, if you hold a supplier account


on the Ariba Network.

Authentication Domain Select one of the options based on the description given below:

Network ID: A unique alphanumeric value assigned to every


organization registered on Ariba SN; for example,
AN01000000001.

Network User ID: A login name of an Ariba SN user. These


names typically have the format of an e-mail address; for
example, [email protected].

Authentication Select one of the options based on the description given below:

Shared Key: If you have set the shared key in your Ariba
account.

Client Certi cate: If you have con gured your certi cate
from a trusted certi cate authority in the Ariba account.

This is custom documentation. For more information, please visit the SAP Help Portal 247
6/14/2023

Parameter Description

Credential Name Enter a name. This name is treated as an alias to the secure store
where the user credentials are deployed. This value should be set
according to the Authentication selected above. If you have
selected Client Certi cate, then enter the alias details in the
Private Key Alias eld.

This alias is used to identify the keystore credentials deployed on


the SAP Cloud Integration account.

AS2 Adapter
You use the AS2 adapter to exchange business documents with your partner using the AS2 protocol. You can use this adapter to
encrypt/decrypt, compress/decompress, and sign/verify the documents.

 Note
If you (the tenant admin) want to provision the message broker to use AS2 adapter scenarios, you must have the Enterprise
Edition license. You have to set up a cluster to use the message broker. For more information, see Activating Enterprise
Messaging.

 Note
There are certain limitations with regard to the usage of JMS resources.

More information: JMS Resource Limits and Optimizing their Usage

 Caution
Do not use this adapter type together with Data Store Operations steps, Aggregator steps, or global variables, as this can
cause issues related to transactional behavior.

 Restriction
If you deploy an integration ow in SAP Cloud Integration, it deploys in multiple IFLMAP worker nodes. Polling is triggered
from only one of these nodes. The message monitor displays the process status for the worker nodes in which the Scheduler
has not started. This results in the message monitor displaying messages with less than a few milliseconds, where the
scheduler was not triggered. These entries contain renow=true in the log. You can ignore these entries.

 Note
When you deploy an integration ow with AS2/ AS2 MDN adapter, you can see the endpoint information of this integration
ow in Manage Integration Content section of the operations view.

Related Information
Con gure the AS2 Sender Adapter
Con gure the AS2 Receiver Adapter

Con gure the AS2 Sender Adapter

This is custom documentation. For more information, please visit the SAP Help Portal 248
6/14/2023

 Remember
This component or some of its features might not be available in the Cloud Foundry environment. For more information on
the limitations, see SAP Note 2752867 .

 Note
In the following cases certain features might not be available for your current integration ow:

You are using a runtime pro le other than the one expected. See: Runtime Pro les.

A feature for a particular adapter or step was released after you created the corresponding shape in your integration
ow.

To use the latest version of a ow step or adapter – edit your integration ow, delete the ow step or adapter, add the
step or adapter, and con gure the same. Finally, redeploy the integration ow. See: Updating your Existing Integration
Flow.

 Note
This adapter exchanges data with a remote component that might be outside the scope of SAP. Make sure that the data
exchange complies with your company’s policies.

 Note
If you are con guring the sender channel to receive AS2 messages, select the AS2 message protocol.

If you want to call the AS2 sender channel, then use the pattern https://<host>:<port>/as2/as2; to call the
AS2 MDN sender channel, use https://<host>:<port>/as2/mdn .

The JMS queue name contains the name of the AS2 sender channel. To analyze a troubleshooting scenario better, it's
recommended to specify the name of the AS2 sender channel.

You must activate Enterprise Messaging/ Message Queue to use AS2 Sender adapter version 1.6 and below. From
version 1.7 and above, the activation is not required if you select Quality of Service as Best Effort.

The expiration period for stored messages is 90 days, after which the messages are deleted.

The retention threshold for alerting is two days, by which the messages have to be fetched before an alert is raised.

Once you have created a sender channel and selected the AS2 adapter, you can con gure the following attributes. See
Overview of Integration Flow Editor.

The General tab shows general information such as the adapter type, its direction (sender or receiver), the transport protocol,
and the message protocol.

Select the Connection tab and provide the sender system information.

Connection

Parameter Description

Address Specify the relative path of the endpoint URL.

For example, if the URL is https://<tenant


address>/as2/<mdn or as2>/orders, then enter the value
as /orders

This is custom documentation. For more information, please visit the SAP Help Portal 249
6/14/2023

Parameter Description

Authorization Speci es the authorization option for the sender.

Client Certi cate Authorization

Allows you to select one or more client certi cates (based


on which the inbound authorization is checked).

Choose Add to add a new certi cate for inbound


authorization for the selected adapter. You can then select a
certi cate stored locally on your computer. You can also
delete certi cates from the list.

For each certi cate, the following attributes are displayed:


Subject DN (information used to authorize the sender) and
Issuer DN (information about the certi cate authority that
issues the certi cate).

Select Client Certi cate if you want to authorize a sender


based on a certi cate.

User Role

Select this option if you want to authorize a sender based


on the roles de ned on the tenant for the user associated
with inbound request.

The role ESBMessaging.send is provided by default. It is a


prede ned role provided by SAP, which authorizes a sender
system to process messages on a tenant.

User Role The user role that you are using for inbound authorization. Choose
Select to get a list of all the available user roles for your tenant and
(only if you select User Role for Authorization)
select the one that you want to use.

The default value is ESBMessaging.send. This role authorizes a


sender system to process messages on a tenant.

 Caution
The role name must not contain any umlaut characters (for
example, ä).

For more information on user roles, seeTasks and Permissions .

Client Certi cate Authorization The client certi cates that you are using for inbound authorization.
Choose Add to add a new row and then choose Select to select a
(only if you select Client Certi cate for Authorization).
certi cate stored locally on your computer. You can also delete
certi cates from the list.

Select the Processing tab and provide values in the elds as follows.

Processing

Parameter Description

This is custom documentation. For more information, please visit the SAP Help Portal 250
6/14/2023

Parameter Description

Source Select among the following values to determine the source of


Partner ID:

AS2 Partner ID Header: to use the AS2 Partner ID header


as partner ID.

Authorized User: to fetch the partner ID from values


speci ed in partner directory.

Dynamic: if you select dynamic, you must specify


authorizedUser or as2PartnerID value in
SAP_AS2_Pid_Resolution_Mode parameter of partner
directory.

 Note
This eld will have no impact on any Private Key Alias elds.

Message ID Left Part Specify the left side of the AS2 message ID. Regular expression or
'.*' is allowed.

Message ID Right Part Specify the right side of the AS2 message ID. Regular expression or
'.*' is allowed.

Partner AS2 ID Specify your partner's AS2 ID. Regular expression or '.*' is allowed.

Own AS2 ID Specify your own AS2 ID. Regular expression or '.*' is allowed.

Message Subject Specify the AS2 message subject. Regular expression or '.*' is
allowed.

Number of Concurrent Processes De ne how many processes can run in parallel for each worker
node. The value depends on the number of worker nodes, the
number of queues on the tenant, and the incoming load, and must
be less than 99.

Message Settings

Mandatory File Name Select to check that the incoming AS2 message containsthe a
lename. If not found, then a negative MDN is sent as per the
request of the AS2 sender.

Duplicate Message ID Select to ensure that the AS2 message with the same message ID
isn't processed more than once.

De ne the Persist Duration instant in minutes to store messages


for duplicate check. You can also select the appropriate MDN
Response type when you encounter a duplicate message ID.

 Tip
We recommend you enable duplicate message handling on the
receiver system to prevent duplicate messages being
processed in the overall integration scenario.

Duplicate File Name Select to ensure that the AS2 message with the same lename isn't
processed more than once.

De ne the Persist Duration instant in minutes to store messages


for duplicate check. You can also select the appropriate MDN
Response type when you encounter a duplicate lename.

This is custom documentation. For more information, please visit the SAP Help Portal 251
6/14/2023

 Note

Ensure that the combination of Message ID Left Part, Message ID Right Part, Partner AS2 ID, Own AS2 ID, and
Message Subject parameters is unique across all AS2 sender channels.

If you use regular expressions for the above-mentioned AS2 sender parameters, then you must ensure that the
regular expression con guration is unique across the endpoints.

The runtime identi es the relevant channel and integration ow for the incoming AS2 sender message based on the
above-mentioned parameters.

Select the Security tab and provide values in the elds as follows.

Security

Parameter Description

Decryption Con guration Type Select the type of decryption con guration.
Channel Con guration: Decryption is determined from the input of
Decrypt Message checkbox.

Incoming AS2 Headers: Decryption is determined by the incoming


message (headers) at the runtime.

Dynamic: If you select Dynamic, you must de ne


incomingAS2Headers or channelConfiguration value in
pd:SAP_AS2_Inbound_Decryption_Configuration_Type.

Decrypt Message Select this checkbox to ensure that the message is decrypted.
You can also set the value of this attribute dynamically by specifying
SAP_AS2_Inbound_Decrypt_Message parameter in partner directory.

The valid values are:

true

false

 Note
If the value is set in partner directory, it takes precedence over the
actual value con gured in the channel.

Private Key Alias Specify the private key alias to decrypt the AS2 message. To fetch details
from partner directory, use pd:xxxx or pd:AS2OwnId:<certalias> syntax.
(only if you select Decrypt Message or Decryption
Con guration Type as Dynamic or Incoming AS2  Note
Headers). The private key alias for Cloud Integration is,
sap_cloudintegrationcertificate

This is custom documentation. For more information, please visit the SAP Help Portal 252
6/14/2023

Parameter Description

Verify Signature Select this checkbox to ensure that the signature is veri ed using one of the
following options:

Not Required

Trusted Certi cate: Used to verify the Signature.

Trusted Root Certi cate: The trust chain begins with the use of the
public alias as an intermediate certi cate to verify the inbound
certi cate. After successful veri cation the inbound certi cate is
used to verify the Signature.

 Note
If Trusted Root Certi cate is selected, mention the public key
alias immediate root certi cate of the incoming message.

When veri cation is successful by using trusted root certi cate the
following exchange properties are generated:

SAP_AS2_Inbound_Certi cate

SAP_AS2_Inbound_Certi cate_DN

You can also set the value of this attribute dynamically by specifying
SAP_AS2_Inbound_Verify_Signature parameter in partner
directory. The valid values are:

notRequired

trustedCerti cate

trustedRootCerti cate

 Note
If the value is set in partner directory, it takes precedence over the
actual value con gured in the channel.

Public Key Alias Specify the public key alias to verify the signature of the AS2 message. To
fetch details from partner directory, use pd:<certAlias> syntax.
(only if you select Verify Signature).

Public Key Aliases Specify the public key alias values (comma separated) to verify the
signature of the AS2 message. To fetch details from partner directory, use
(only if you select Verify Signature as Trusted Root pd:<certAlias> or pd:AS2PartnerId:<certalias> syntax.
Certi cate).

Select the MDN tab and provide values in the elds as follows.

MDN

Parameter Description

Private Key Alias for Signature Specify the private key alias to sign the MDN on partner's request.
To fetch details from partner directory, use pd:xxxx syntax.

This is custom documentation. For more information, please visit the SAP Help Portal 253
6/14/2023

Parameter Description

Signature Encoding Select the MDN signature encoding type.


binary

base64

Dynamic

To de ne this attribute dynamically, set <binary> or <base64>


value in SAP_AS2_Inbound_Signature_Encoding key in
partner directory.

Propagate MDN Details to Exchange Select whether to include the generated MDN details in Camel
Exchange property.
Required

Not Required

Dynamic

To de ne this attribute dynamically, set <required> or


<notRequired> value in
SAP_AS2_Inbound_Propagate_MDN_Details key in partner
directory.

Proxy Type Select the type of proxy you want to use to connect asynchronously
to an AS2 sender system.

Select Internet if you are connecting to a cloud system.

Select On-Premise if you are connecting to an on-premise


system.

If you select Dynamic, you must de ne <default> or


<sapcc> value in SAP_AS2_Inbound_Proxy_Type key
in partner directory.

Location ID If you use the SAP Cloud Connector to connect to your on-premise
system, specify the virtual address that is con gured in the SAP
(only if Proxy Type is On-Premise or Dynamic)
Cloud Connector settings. To fetch details from partner directory,
use pd:xxxx syntax.

Authentication Select the authentication type for asynchronous MDN.


You can select one of the following authentication methods:

None

Basic Authentication

Client Certi cate (only if Proxy Type Internet or Dynamic)

If you select Dynamic, you must de ne


<BasicAuthentication> or <ClientCerti cate> or <None>
value in SAP_AS2_Inbound_Authentication key in
partner directory.

Credential Name Specify the deployed user credentials alias for basic
authentication. The tenant authenticates itself against the receiver
(only if you select Authentication as Basic Authentication or
using user credentials (user name and password).
Dynamic.
It'sis a prerequisite that user credentials are speci ed in a Basic
Authentication artifact and deployed on the related tenant.

This is custom documentation. For more information, please visit the SAP Help Portal 254
6/14/2023

Parameter Description

Private Key Alias Specify the private key alias for client certi cate authentication. To
fetch details from partner directory, use pd:xxxx syntax.
(only if you select Authentication as Client Certi cate or Dynamic.

Timeout (in ms) Specify how long in milliseconds the client has to accept the
asynchronous MDN. Enter the value '0' if you want the client to wait
inde nitely.

Select the Delivery Assurance tab and specify the parameters as follows.

Delivery Assurance

Parameter Description

Quality of Service De nes how the message from the AS2 sending partner is
processed by the tenant.

Based on your requirements you can select one of the following


options:

Exactly Once

The AS2 message is temporarily stored in the JMS queue


and an MDN is transmitted to the sending partner. If an
error occurs during processing, the message is retried from
the JMS queue.

Best Effort

This option allows you to transmit customized MDN


acknowledgments to the AS2 sending partner. The AS2
messages are processed immediately and the MDN is only
transmitted to the sending partner if the processing is
successful.

By introducing a Script into the integration ow, you can


customize the original MDN found in the exchange property
SAP_AS2_MDN. For more information, see De ne a Local
Script Step.

Retry Interval (in min) De ne how many minutes to wait before retrying message delivery.

Exponential Backoff Select this checkbox to double the retry interval after each
unsuccessful retry.

Maximum Retry Interval (in min) Specify the maximum amount of time to wait before retrying
message delivery.

Dead-Letter Queue Select this checkbox to store those messages that cannot be
successfully processed after the second retry during a tenant
crash. This helps you to analyze and resolve the cause of failure.

Encrypt Message During Persistence Select this option to encrypt the message in the data store.

Select the Conditions tab and provide values in the elds as follows.

Conditions

Parameter Description

This is custom documentation. For more information, please visit the SAP Help Portal 255
6/14/2023

Parameter Description

The parameters in allowingMaximum Message Size you to set a maximum size limit for processing inbound messages. All inbound
messages that exceed the con gured limit are rejected from further processing and the sender receives an error message.

 Note
The minimum allowable size limit is 1 MB.

Body Size (in MB) De ne the allowable size limit for processing the message body.

Attachments Size (in MB) De ne the allowable size limit for processing the attachment.

The AS2 sender passes the following headers to the integration ow for message processing:

AS2PartnerID

AS2OwnID

AS2MessageSubject

AS2Filename

AS2MessageID

AS2PartnerEmail

AS2MessageContentType

Use the following attributes to reference the values that are associated with MPL:

AS2 sender adapter attributes:

AdapterId

adapterMessageId

ReceiverAS2Name

MessageDirection

MDNType

MDNStatus

MPL ID

MDNRequested

SenderAS2Name

AS2MessageID

For example:

{AdapterId=AS2 Sender,
adapterMessageId=<define _AS2-147665710-6@endionAS2_CPIAS2>,
ReceiverAS2Name=HCIAS2,
MessageDirection=Inbound,
MDNType=Sending,
MDNStatus=Success,
MPL ID=AFgsPspcD-eYhvHFdfOZYKydBmzw,
MDNRequested=Synchronous,

This is custom documentation. For more information, please visit the SAP Help Portal 256
6/14/2023
SenderAS2Name=endionAS2,
AS2MessageID=<define _AS2-147665710-6@endionAS2_HCIAS2>}

Con gure the AS2 MDN Sender Adapter


 Note
If you are con guring the sender channel to receive asynchronous AS2 MDN, select the AS2 MDN message protocol.

If you want to call the AS2 MDN sender channel, use http://<host>:<port>/as2/mdn .

You must activate Enterprise Messaging/ Message Queue to use this adapter.

Once you have created a sender channel and selected the AS2 MDN adapter, you can con gure the following attributes. See
Overview of Integration Flow Editor.

The General tab shows general information such as the adapter type, its direction (sender or receiver), the transport protocol,
and the message protocol.

Select the Connection tab and provide the sender system information.

Connection

Parameter Description

Address Specify the relative path of the endpoint URL.

For example, if the URL is http://<tenant


address>/as2/<mdn or as2>/orders, then enter the value
as /orders

Authorization Speci es the authorization option for the sender.

Client Certi cate

Allows you to select one or more client certi cates (based


on which the inbound authorization is checked).

Choose Add to add a new certi cate for inbound


authorization for the selected adapter. You can then select a
certi cate stored locally on your computer. You can also
delete certi cates from the list.

For each certi cate, the following attributes are displayed:


Subject DN (information used to authorize the sender) and
Issuer DN (information about the certi cate authority that
issues the certi cate).

Select Client Certi cate if you want to authorize a sender


based on a certi cate.

User Role

Select this option if you want to authorize a sender based


on the roles de ned on the tenant for the user associated
with the inbound request.

The role ESBMessaging.send is provided by default. It is a


prede ned role provided by SAP, which authorizes a sender
system to process messages on a tenant.

This is custom documentation. For more information, please visit the SAP Help Portal 257
6/14/2023

Parameter Description

User Role The user role that you are using for inbound authorization. Choose
Select to get a list of all the available user roles for your tenant and
(only if you select User Role for Authorization)
select the one that you want to use.

The default value is ESBMessaging.send. This role authorizes a


sender system to process messages on a tenant.

 Caution
The role name must not contain any umlaut characters (for
example, ä).

For more information on user roles, see Tasks and Permissions.

Client Certi cate Authorization The client certi cates that you are using for inbound authorization.
Choose Add to add a new row and then choose Select to select a
(only if you select Client Certi cate for Authorization).
certi cate stored locally on your computer. You can also delete
certi cates from the list.

Select the Processing tab and provide values in the elds as follows.

Processing

Parameter Description

Source Select among the following values to determine the source of


Partner ID:

AS2 Partner ID Header: to use the AS2 Partner ID header


as partner ID.

Authorized User: to fetch the partner ID from values


speci ed in partner directory.

Dynamic: if you select dynamic, you must specify


authorizedUser or as2PartnerID value in
SAP_AS2_MDN_Inbound_Pid_Resolution_Mode
parameter of partner directory.

 Note
The source of partner ID determines the behaviour of other
dynamic supported elds of AS2 MDN Sender adapter like
Verify Signature, Verify MIC and Public Key Alias.

Partner AS2 ID Specify your partner's AS2 ID. Regular expression or '.*' is allowed.

Own AS2 ID Specify your own AS2 ID. Regular expression or '.*' is allowed.

Number of Concurrent Processes De ne how many processes can run in parallel for each worker
node. The value depends on the number of worker nodes, the
number of queues on the tenant, and the incoming load, and must
be less than 99.

Verify Signature Enable this option to verify AS2 MDN Signature. You can set the
value of this attribute dynamically by specifying
SAP_AS2_Inbound_Mdn_Verify_Signature parameter in
partner directory. The valid values are <true> and <false>.

Pulic Key Alias(only if you select Verify Signature) Specify Public Key Alias to verify AS2 MDN Signature. To fetch
details from partner directory, use pd:xxxx syntax.

This is custom documentation. For more information, please visit the SAP Help Portal 258
6/14/2023

Parameter Description

Verify MIC Enable this option to verify Message Integrity Check (MIC) from
AS2 MDN. You can set the value of this attribute dynamically by
specifying SAP_AS2_Inbound_Mdn_Verify_Mic parameter in
partner directory. The valid values are <true> and <false>.

Message Failure on Negative MDN Enable this option to set the message status to Failed to negative
MDN.

Select the Retry tab and specify the parameters as follows.

Retry

Parameter Description

Retry Interval (in min) De ne how many minutes to wait before retrying message delivery.

Exponential Backoff Select this checkbox to double the retry terval after each
unsuccessful retry.

Maximum Retry Interval (in min) (onlz if zou select Exponential Specify the maximum amount of time to wait before retrying
Backoff) message delivery.

Dead-Letter Queue Select this checkbox to store those messages that cannot be
successfully processed after the second retry during a tenant
crash. This helps you to analyze and resolve the cause of failure.

Encrypt Message During Persistence Select this option to encrypt the message in the data store.

The AS2 MDN sender passes the following headers to the integration ow for message processing:

AS2PartnerID

AS2OwnID

AS2MessageID

AS2MessageContentType

AS2OriginalMessageID

Use the following attributes to reference the values that are associated with MPL:

AS2 MDN sender adapter attributes:

AdapterId

adapterMessageId

SAP_MplCorrelationId

MDNStatus

Message Id

ErrorDescription

For example:

{AdapterId=AS2 MDN Sender,


adapterMessageId=<qwesdt_123sourcewe_AS2-1479283341389-0@endionAS2_CPIAS2>,
SAP_MplCorrelationId=AFgsEou7oJYm7AqQHsV2lM2T6iTT,
MDNStatus=error,

This is custom documentation. For more information, please visit the SAP Help Portal 259
6/14/2023
Message Id=<c31b53255-d799-4219-9f1c-5e63a044e4@CPIAS2>,
ErrorDescription=insufficient-message-security}

Con gure the AS2 Receiver Adapter


 Remember
This component or some of its features might not be available in the Cloud Foundry environment. For more information on
the limitations, see SAP Note 2752867 .

 Note
In the following cases certain features might not be available for your current integration ow:

You are using a runtime pro le other than the one expected. See: Runtime Pro les.

A feature for a particular adapter or step was released after you created the corresponding shape in your integration
ow.

To use the latest version of a ow step or adapter – edit your integration ow, delete the ow step or adapter, add the
step or adapter, and con gure the same. Finally, redeploy the integration ow. See: Updating your Existing Integration
Flow.

 Note
This adapter exchanges data with a remote component that might be outside the scope of SAP. Make sure that the data
exchange complies with your company’s policies.

 Note
In Neo environment, AS2 Receiver adapter version 1.7 and above can be used without Enterprise Messaging/ Message
Queue activation.

In Cloud Foundry environment, all versions of the adapter can be used without Enterprise Messaging/ Message Queue
activation.

Once you have created a receiver channel and selected the AS2 receiver adapter, you can con gure the following attributes.
See Overview of Integration Flow Editor.

The General tab shows general information such as the adapter type, its direction (sender or receiver), the transport protocol,
and the message protocol.

Select the Connection tab and provide the recipient information.

Connection

Parameter Description

Receipient URL Enter the URL of the receiver system.

URL Parameters Pattern De ne query parameters that are attached to the end of recipient
URL.

This is custom documentation. For more information, please visit the SAP Help Portal 260
6/14/2023

Parameter Description

Proxy Type Select the type of proxy you want to use for connecting to receiver
system.

Internet

On-Premise

Dynamic

You can also set the value of this attribute dynamically using the
header SAP_AS2_Outbound_Proxy_Type. The allowed values
are <sapcc> and <default>.

Location ID(only if On-Premise is selected for Proxy Type.) Enter the location ID to identify a speci c Cloud Connector that is
unique to your subaccount.

Authentication Type Select one of the following authentication methods:

None

Basic authentication

Client Certi cate (only if Internet is selected for Proxy


Type.)

Dynamic

You can also set the value of this attribute dynamically using the
header SAP_AS2_Outbound_Authentication_Type. The
allowed values are <None>, <BasicAuthentication>, and
<ClientCerti cate>.

Private Key Alias(only if you select Client Certi cate.) Enter the private key alias that enables the system to fetch the
private key from keystore for authentication.

Credential Name(only if you select Basic authentication.) Provide the name of the User Credentials artifact that contains the
credentials for basic authentication.

Timeout (in ms) Specify the maximum time (in milliseconds) the adapter waits for
receiving a response before terminating the connection.

Select the Processing tab and provide values in the elds as follows.

Processing

Parameter Description

File Name Specify the AS2 le name. If no le name is speci ed, the default
le name <Own AS2 ID>_File is used. Simple expressions,
${header.<header-name>}, or ${property.<property-
name>} are allowed.

Message ID Left Part Specify the left side of the AS2 message ID. Regular expression or
'.*' is allowed.

Message ID Right Part Specify the right side of the AS2 message ID. Regular expression or
'.*' is allowed.

Own AS2 ID Specify your own AS2 ID. Regular expression or '.*' is allowed.

Partner AS2 ID Specify your partner's AS2 ID. Regular expression or '.*' is allowed.

Message Subject Specify the AS2 message subject. Regular expression or '.*' is
allowed.

This is custom documentation. For more information, please visit the SAP Help Portal 261
6/14/2023

Parameter Description

Own E-mail Address Specify your own e-mail ID. Simple expressions, ${header.
<header-name>}, or ${property.<property-name>} are
allowed.

Content Type Specify the content type of the outgoing message. For example:
application/edi-x12. Simple expressions, ${header.<header-
name>}, or ${property.<property-name>} are allowed.

You can also set the value of this attribute dynamically using the
header SAP_AS2_Outbound_Content_Type.

 Note
If the header value is set, it takes precedence over the actual
value con gured in the channel.

Custom Headers Pattern Specify a regular expression to pick message headers and add
them as AS2 custom headers.

For example, if you want to pick all EDI headers starting with the
name EDI, specify the expression as EDI.*.

Content Transfer Encoding Specify the AS2 message encoding type as:

base64

binary

You can also set the value of this attribute dynamically using the
header SAP_AS2_Outbound_Content_Transfer_Encoding.

The allowed values are <binary> and <base64>.

Select the Security tab and provide values in the elds as follows.

Security

Parameter Description

Compress Message Select this checkbox to ensure that the outgoing AS2 message is
compressed.
You can also set the value of this attribute dynamically using the
header SAP_AS2_Outbound_Compress_Message.

The valid values are:

true

false

 Note
If the header value is set, it takes precedence over the actual
value con gured in the channel.

This is custom documentation. For more information, please visit the SAP Help Portal 262
6/14/2023

Parameter Description

Sign Message Select this checkbox to ensure that the outgoing AS2 message is
signed.
You can also set the value of this attribute dynamically using the
header SAP_AS2_Outbound_Sign_Message.

The valid values are:

true

false

 Note
If the header value is set, it takes precedence over the actual
value con gured in the channel.

Algorithm Select the AS2 message signing algorithm.

(only if you select Sign Message.) You can also set the value of this attribute dynamically using the
header SAP_AS2_Outbound_Signing_Algorithm.

The valid values are:

SHA1

SHA224

SHA256

SHA384

SHA512

MD5

 Note
If the header value is set, it takes precedence over the actual
value con gured in the channel.

Private Key Alias Specify the private key alias to sign the AS2 message. Simple
expressions, ${header.<header-name>}, or ${property.
(only if you select Sign Message.)
<property-name>} are allowed.

You can also set the value of this attribute dynamically using the
header SAP_AS2_Outbound_Signing_Private_Key_Alias.

Encrypt Message Select this checkbox to ensure that the message is encrypted.
You can also set the value of this attribute dynamically using the
header SAP_AS2_Outbound_Encrypt_Message.

The valid values are:

true

false

 Note
If the header value is set, it takes precedence over the actual
value con gured in the channel.

This is custom documentation. For more information, please visit the SAP Help Portal 263
6/14/2023

Parameter Description

Algorithm Select the AS2 message encryption algorithm.

(only if you select Encrypt Message). You can also set the value of this attribute dynamically using the
header SAP_AS2_Outbound_Encryption_Algorithm.

The valid values are:

3DES

AES128

AES192

AES256

RC2

 Note
If the header value is set, it takes precedence over the actual
value con gured in the channel.

Public Key Alias Specify the public key alias to encrypt the AS2 message. Simple
expressions, ${header.<header-name>}, or ${property.
(only if you select Encrypt Message).
<property-name>} are allowed. The header or property can
contain a public key alias or X509 certi cate.

Key Length Specify the public key length.


You can also set the value of this attribute dynamically using the
(only if you select Encrypt Message and select RC2 in the
header SAP_AS2_Outbound_Encryption_Key_Length.
Algorithm eld).

 Note
If the header value is set, it takes precedence over the actual
value con gured in the channel.

Select the MDN tab and provide values in the elds as follows.

MDN

Parameter Description

Type Enable this option to request the partner to send a Message


Integrity Check (MIC) in AS2 MDN.

You can also set the value of this attribute dynamically using the
header SAP_AS2_Outbound_Mdn_Type. The allowed values are
<synchronous>, <asynhronous>, and <none>.

 Note
If the header value is set, it takes precedence over the actual
value con gured in the channel.

Target URL Specify the URL where the AS2 MDN will be received from the
partner. Simple expressions, ${header.<header-name>}, or
(only if you select the Asynchronous MDN type).
${property.<property-name>} are allowed.

This is custom documentation. For more information, please visit the SAP Help Portal 264
6/14/2023

Parameter Description

Request Signing Enable this option to request the partner to sign AS2 MDN.

(only if you select the Asynchronous or Synchronous MDN type.) You can also set the value of this attribute dynamically using the
header SAP_AS2_Outbound_Mdn_Request_Signing.

Algorithm Select the appropriate algorithm.

(only if you enable the Request Signing option.) You can also set the value of this attribute dynamically using the
header SAP_AS2_Outbound_Mdn_Signing_Algorithm.

 Note
If the header value is set, it takes precedence over the actual
value con gured in the channel.

Verify Signature You can enable this option to verify the signature of AS2 MDN.

(only if you select the Synchronous MDN type.) You can also set the value of this attribute dynamically using the
header SAP_AS2_Outbound_Mdn_Verify_Signature

Public Key Alias Specify the public key alias to verify the MDN signature. Simple
expressions, ${header.<header-name>}, or ${property.<property-
(only if you select Verify Signature.)
name>} are allowed. The header or property can contain a public
key alias or X509 certi cate.

Request MIC Enable this option if you want to request an integrity check.

You can also set the value of this attribute dynamically using the
header SAP_AS2_Outbound_Mdn_Request_Mic.

Verify MIC Enable this option to verify the MIC of AS2 MDN.

(only if you select the Synchronous MDN type.) You can also enable this option if you enable the Request MIC
option and want to verify the integrity of the message.

You can also set the value of this attribute dynamically using the
header SAP_AS2_Outbound_Mdn_Verify_Mic.

Message Failure on Negative MDN Enable this option to set message status to Failed on negative
MDN.
(only if you select the Synchronous MDN type.)

 Note

You can con gure the AS2 receiver channel for the Request-Reply integration ow element. The AS2 receiver adapter
(version 1.8 and above) will set the exchange header Sap_AS2MessageID with originalMessageID.

If you request synchronous MDN, the adapter sets the received MDN response as the message payload.

If you request synchronous MDN in the receiver channel, you may receive positive or negative MDN. In both cases, the
status of the message on the Message Monitoring tab is COMPLETED. You can process the MDN message on your
own and take the required action for positive or negative MDN, post AS2 call for synchronous MDN.

Alternatively, you can also enable Message Failure on Negative MDN checkbox to set the message status to Failed on
negative MDN.

In an MDN message, positive MDN is represented as follows:

 Sample Code

This is custom documentation. For more information, please visit the SAP Help Portal 265
6/14/2023

<?xml version="1.0" encoding="UTF-8"?>


<MDNDeliveryReport>

................

<MDNDispositionNotification>

...............

<Disposition>

<DispositionMode ActionMode="automatic-action" SendingMode="MDN-sent-automatically"/>


<DispositionType>processed</DispositionType>

</Disposition>

<ReceivedContentMIC mic="9I2W0DSFpQOVRH75/1sLGpWAgtc=" alg="sha1"></ReceivedContentMIC>

</MDNDispositionNotification>

</MDNDeliveryReport>

In an MDN message, negative MDN is represented as follows:

 Sample Code

<?xml version="1.0" encoding="UTF-8"?>


<MDNDeliveryReport>

................

<MDNDispositionNotification>

................

<Disposition>

<DispositionType>processed</DispositionType>
<DispositionModifier>error</DispositionModifier></Disposition>
<Error>insufficient-message-security</Error>

</Disposition>

<ReceivedContentMIC mic="9I2W0DSFpQOVRH75/1sLGpWAgtc=" alg="sha1"></ReceivedContentMIC>

</MDNDispositionNotification>

</MDNDeliveryReport>

If MDN signature validation fails or an incorrect message integrity check (MIC) is received, the status of the message
is FAILED.

This is custom documentation. For more information, please visit the SAP Help Portal 266
6/14/2023

AS4 Sender Adapter


You use AS4 message exchange protocol to securely process incoming business documents using Web services.

The SAP Applicability Statement4 (AS4) sender adapter is based on the ebMS speci cation that supports the ebMS handler
conformance pro le. For more information, see AS4 Pro le of ebMS 3.0 Version 1.0 .

Let's look at how a message is processed: the incoming AS4 message consists of a SOAP body and the business payload as an
attachment. During processing, the payload is extracted from the attachment and allocated to the related Camel routes. To get
a more detailed understanding of the functionality of the AS4 adapter,explained with a scenario, read the blog on Cloud
Integration – Working with AS4 adapter .

 Note
It is expected that the incoming AS4 message has an empty SOAP body, otherwise processing-related errors can occur.

Related Information
Con guring Sender Channel with ebMS3 Pull
Con guring Sender Channel with ebMS3 Push
Con guring Sender Channel with ebMS3 Receipt

Con guring Sender Channel with ebMS3 Pull


Con gure the sender channel with the AS4 adapter with ebMS3 Pull as a sending Message Service Handler (MSH).

Context

 Note
In the following cases certain features might not be available for your current integration ow:

You are using a runtime pro le other than the one expected. See: Runtime Pro les.

A feature for a particular adapter or step was released after you created the corresponding shape in your integration
ow.

To use the latest version of a ow step or adapter – edit your integration ow, delete the ow step or adapter, add the
step or adapter, and con gure the same. Finally, redeploy the integration ow. See: Updating your Existing Integration
Flow.

 Note
This adapter exchanges data with a remote component that might be outside the scope of SAP. Make sure that the data
exchange complies with your company’s policies.

You use AS4 message exchange protocol to securely process incoming business documents using Web services.

Connection

Parameter Description

This is custom documentation. For more information, please visit the SAP Help Portal 267
6/14/2023

Parameter Description

Address Specify the relative endpoint of the receiving MSH. For example,
/orders.

 Note
When you specify the endpoint address /path, a sender can also
call the integration ow through the endpoint address
/path/<any string> (for example, /path/test/).

Be aware of the following related implication: When you in


addition deploy an integration ow with endpoint address
/path/test/, a sender using the /path/test endpoint
address will now call the newly deployed integration ow with the
endpoint address /path/test/. When you now undeploy the
integration ow with endpoint address /path/test, the sender
again calls the integration ow with endpoint address /path
(original behavior). Therefore, be careful reusing paths of
services. It is better using completely separated endpoints for
services.

Agreement De ne the message exchange pattern agreed between the MSHs. For
example,
urn:fdc:peppol.eu:2017:agreements:tia:ap_provider.

Authorization Select User Role if you want to authorize a user to send message
based on the ESBMessaging.send.

Select Client Certi cate if you want to authorize a user to send


message based on a certi cate. If you select this option, you have to
add and enter the Subject DN (information used to authorize the
sender) and Issuer DN (information about the Certi cate Authority
who issues the certi cate).

Select the Processing tab and provide values in the elds as described.

Processing

Parameter Description

Initiator Party: Party ID Specify the ID of the initiating partner. For example,
APP_10000000100.

Initiator Party: Party Type Specify a party type to identify the initiating partner. For example,
urn:fdc:peppol.eu:2017:identifiers:ap

Initiator Party: Role Specify the role of the initiating partner. For example,
http://docs.oasis-open.org/ebxml-
msg/ebms/v3.0/ns/core/200704/initiator

Responder Party: Party ID Specify the ID of the responding partner. For example,
APP_10000000200.

Responder Party: Party Type Specify a party type to identify the responding partner. For
example, urn:fdc:peppol.eu:2017:identifiers:ap

Responder Party: Role Specify the role of the responding partner. For example,
p://docs.oasis-open.org/ebxml-
msg/ebms/v3.0/ns/core/200704/responder

This is custom documentation. For more information, please visit the SAP Help Portal 268
6/14/2023

Parameter Description

Service Specify the process identi er of the business document. For


example, urn:www.cenbii.eu:profile:bii01:ver2.0.

Service Type Specify the process identi er schema of the business document.
For example, cenbii-procid-ublui.

Action Specify the document type identi er of the business document


with the following format:
urn:www.cenbii.eu:profile:bii01:ver2.0 .

Attachment Name De ne the name for the payload attached to the AS4 message.

Additional Message Properties De ne a key and value to modify an existing message parameter in
the property sheet. For example, if you want to modify the MSH
details, you must de ne a key and its value.

Payload Properties De ne a key and value to modify the payload attached to AS4
message.

Select the Security tab and provide values in the elds as follows.

Security

Parameter Description

Verify Signature Select the checkbox to ensure that the signature is veri ed using
one of the following options:

Not Required

Trusted Certi cate: Used to verify the signature.

Trusted Root Certi cate: The trust chain begins with the
use of the public alias as an intermediate certi cate to
verify the inbound certi cate. After successful veri cation,
the inbound certi cate is used to verify the signature.

 Note
If Trusted Root Certi cate is selected, mention the
immediate root certi cate of the public key alias of the
incoming message.

Public Key Alias De ne the public key alias or aliases to verify the signature of the
AS4 message.
(only if you select Trusted Certi cate.)

Public Key Aliases

(only if you select Trusted Root Certi cate.)

Select the Response tab and provide values in the elds as follows.

Response

Parameter Description

Compress Message Compresses the AS4 message.

This is custom documentation. For more information, please visit the SAP Help Portal 269
6/14/2023

Parameter Description

WS-Security Type Specify either of the folllowing WS-Security type to protect


message integrity and con dentiality:

None

Sign and Encrypt Message: Signs and encrypts the


payload of a message (to be decrypted by the receiver).

Sign Message: Signs the payload of a message (to be


veri ed by the receiver).

 Note
For exchange of message speci c communication rules apply
as been agreed between the administrators of the Web service
client and Web service provider (for example, if certi cates are
to be sent with the message).

Private Key Alias for Signing Specify the private key alias to sign the AS4 message.

Signature Algorithm Use the relevant algorithm to sign the AS4 message.

Public Key Alias for Encryption Specify the public key alias to sign the AS4 message.

(only if you select Sign and Encrypt Message.)

Encryption Algorithm Select the algorithm you want to use to encrypt the payload.

(only if you select Sign and Encrypt Message.)

Key Encryption Algorithm Select the key encryption algorithm and the system uses the
related mask generation functions (MGFs) to encrypt the payload.
(only if you select Sign and Encrypt Message.)

Security Token Type Select the type of security token reference to encode the payload.

Select the Conditions tab and provide values in the elds as follows.

Conditions

Parameter Description

The parameters in Maximum Message Size allow you to set a maximum size limit for processing inbound messages. Any inbound
message that exceeds the con gured limit is rejected from further processing and the sender receives an error message.

Body Size (in MB) De ne the size limit for processing the message body.

Attachment Size (in MB) De ne the size limit for processing the attachment.

Con guring Sender Channel with ebMS3 Push


Allows you con gure the sender channel with the AS4 adapter with ebMS3 Push as a receiving Message Service Handler
(MSH).

Context
You use AS4 message exchange protocol to securely process incoming business documents using Web services.

 Note
This is custom documentation. For more information, please visit the SAP Help Portal 270
6/14/2023
In the following cases certain features might not be available for your current integration ow:

You are using a runtime pro le other than the one expected. See: Runtime Pro les.

A feature for a particular adapter or step was released after you created the corresponding shape in your integration
ow.

To use the latest version of a ow step or adapter – edit your integration ow, delete the ow step or adapter, add the
step or adapter, and con gure the same. Finally, redeploy the integration ow. See: Updating your Existing Integration
Flow.

 Note
This adapter exchanges data with a remote component that might be outside the scope of SAP. Make sure that the data
exchange complies with your company’s policies.

Connection

Parameter Description

Address Specify the relative endpoint of the receiving MSH. For example,
/orders.

 Note
When you specify the endpoint address /path, a sender can also
call the integration ow through the endpoint address
/path/<any string> (for example, /path/test/).

Be aware of the following related implication: When you in


addition deploy an integration ow with endpoint address
/path/test/, a sender using the /path/test endpoint
address will now call the newly deployed integration ow with the
endpoint address /path/test/. When you now undeploy the
integration ow with endpoint address /path/test, the sender
again calls the integration ow with endpoint address /path
(original behavior). Therefore, be careful reusing paths of
services. It is better using completely separated endpoints for
services.

Agreement De ne the message exchange pattern agreed between the MSHs. For
example,
urn:fdc:peppol.eu:2017:agreements:tia:ap_provider.

Authorization Select User Role if you want to authorize a user to send message
based on the ESBMessaging.send.

Select Client Certi cate if you want to authorize a user to send


message based on a certi cate. If you select this option, you have to
add and enter the Subject DN (information used to authorize the
sender) and Issuer DN (information about the Certi cate Authority
who issues the certi cate).

Select the Processing tab and provide values in the elds as follows.

Processing

Parameter Description

This is custom documentation. For more information, please visit the SAP Help Portal 271
6/14/2023

Parameter Description

Initiator Party: Party ID Specify the ID of the initiating partner. For example,
APP_10000000100.

Initiator Party: Party Type Specify a party type to identify the initiating partner. For example,
urn:fdc:peppol.eu:2017:identifiers:ap

Initiator Party: Role Specify the role of the initiating partner. For example,
http://docs.oasis-open.org/ebxml-
msg/ebms/v3.0/ns/core/200704/initiator

Responder Party: Party ID Specify the ID of the responding partner. For example,
APP_10000000200.

Responder Party: Party Type Specify a party type to identify the responding partner. For
example, urn:fdc:peppol.eu:2017:identifiers:ap

Responder Party: Role Specify the role of the responding partner. For example,
p://docs.oasis-open.org/ebxml-
msg/ebms/v3.0/ns/core/200704/responder

Service Specify the process identi er of the business document. For


example, urn:www.cenbii.eu:profile:bii01:ver2.0.

Service Type Specify the process identi er schema of the business document.
For example, cenbii-procid-ublui.

Action Specify the document type identi er of the business document


with the following format:
urn:www.cenbii.eu:profile:bii01:ver2.0 .

Select the Security tab and provide values in the elds as follows.

Security

Parameter Description

Verify Signature Select the checkbox to ensure that the signature is veri ed using
one of the following options:

Not Required

Trusted Certi cate: Used to verify the signature.

Trusted Root Certi cate: The trust chain begins with the
use of the public alias as an intermediate certi cate to
verify the inbound certi cate. After successful veri cation,
the inbound certi cate is used to verify the signature.

 Note
If Trusted Root Certi cate is selected, mention the
immediate root certi cate of the public key alias of the
incoming message.

Decrypt Message Used to decrypt AS4 message.

Private Key Alias Determine the private key alias to decrypt the AS4 message.

Public Key Alias De ne the public key alias or aliases to verify the signature of the
AS4 message.
(only if you select Trusted Certi cate.)

This is custom documentation. For more information, please visit the SAP Help Portal 272
6/14/2023

Parameter Description

Public Key Aliases

(only if you select Trusted Root Certi cate.)

Select the Receipt tab and provide values in the elds as follows.

Receipt

Parameter Description

Signing Ensures that the outgoing AS4 message is signed.

Private Key Alias Specify the private key alias to sign the AS4 message.

(only if you select Required in Signing.)

Signature Algorithm Use the relevant algorithm to sign the AS4 message.

(only if you select Required in Signing.)

Select the Response tab and provide values in the elds as follows.

Response

Parameter Description

Type Specify the response type.

The following options are available only if you select Push and Push in Type.

Target URL Specify receipient's URL to which the AS4 message is transmitted.

Agreement Provide the message exchange pattern agreed between the MSHs.
For example,
https://sbr.gov.au/agreement/Gateway/1.0/Push/PKI.

This is custom documentation. For more information, please visit the SAP Help Portal 273
6/14/2023

Parameter Description

Authentication Type De nes the tenant authenticates itself against the sender.

There are the following options:

None

No authentication is con gured.

Basic Authentication

The tenant authenticates itself against the sender based on


user credentials (user and password).

 Note
When this authentication option is selected, the required
security artifact (User Credentials) has to be deployed on
the tenant.

Client Certi cate

The sender authenticates itself (as trusted server) against


the tenant when the connection is being set up.

 Note
As prerequisite for this authentication process, the client
root certi cate of the tenant has to be imported into the
senders keystore (prior to the connection set up).

Credential Name Provide the alias you used while deploying basic authentication
credentials.
(only if you select Basic Authentication.)

Private Key Alias Specify the private key alias, used to sign the incoming AS4
message.
(only if you select Client Certi cate.)

Compress Message Compresses the AS4 message.

WS-Security Type Specify either of the folllowing WS-Security type to protect message
integrity and con dentiality:

None

Sign and Encrypt Message: Signs and encrypts the payload


of a message (to be decrypted by the receiver).

Sign Message: Signs the payload of a message (to be


veri ed by the receiver).

 Note
For exchange of message speci c communication rules apply as
been agreed between the administrators of the Web service client
and Web service provider (for example, if certi cates are to be
sent with the message).

Private Key Alias for Signing Specify the private key alias to sign the AS4 message.

Signature Algorithm Use the relevant algorithm to sign the AS4 message.

This is custom documentation. For more information, please visit the SAP Help Portal 274
6/14/2023

Parameter Description

Public Key Alias for Encryption Specify the public key alias to sign the AS4 message.

(only if you select Sign and Encrypt Message.)

Encryption Algorithm Select the algorithm you want to use to encrypt the payload.

(only if you select Sign and Encrypt Message.)

Key Encryption Algorithm Select the key encryption algorithm and the system uses the related
mask generation functions (MGFs) to encrypt the payload.
(only if you select Sign and Encrypt Message.)

Save Receipt Check to save the receipt in the message store.

Select the Delivery Assurance tab and provide values in the elds as follows.

Delivery Assurance

Parameter Description

Quality of Service De nes how the message is processed by the tenant.


There are the following options:

Best Effort

The message is sent synchronously; this means that the tenant waits for a response
before it continues processing.

No temporary storage of the message needs to be con gured, as message request


and response are processed immediately after another.

At Least Once

The message is sent asynchronously. This means that the tenant does not wait for a
response before continuing processing. It is expected that the receiver guarantees that
the message is processed exactly once.

This option guarantees that the message is processed at least once on the tenant. If a
message with identical message ID is received multiple times from a sender, all of
them will be processed.

If you choose this option, the message needs to be temporarily stored on the tenant (in
the storage con gured under Temporary Storage). As soon as the message is store
there, the sender receives successfully received status message. If an error occurs,
the message is retried from the temporary storage.

Exactly Once (Only possible if as Temporary Storage the option Data Store is
selected)

The message is sent asynchronously. This means that the tenant does not wait for a
response before continuing processing.

This option guarantees that the message is processed exactly once on the tenant. If a
message with identical message ID is received multiple times from a sender, only the
rst one will be processed. The subsequent messages can be identi ed as duplicates
and will not be processed.

If you choose this option, the message needs to be temporarily stored on the tenant (in
the storage con gured under Temporary Storage). As soon as the message is store
there, the sender receives successfully received status message. If an error occurs,
the message is retried from the temporary storage.

This is custom documentation. For more information, please visit the SAP Help Portal 275
6/14/2023

Parameter Description

Temporary Storage Temporary storage location for messages that are processed asynchronously. Messages for
which processing runs into an error can be retried from the temporary storage.
(only if as Quality of Service the option
Exactly Once or At Least Once is You can choose among the following storage types:
selected)
Data Store

The message is temporarily stored in the database of the tenant (in case of an error).
In case of successful message processing, the message is immediately removed from
the data store.

You can monitor the content of the data store in the Monitor section of the Web UI
under Manage Stores in the Data Stores tile.

 Note
The data store name is automatically generated and contains the following parts:

<name of participant connected with AS4 adapter>_< AS4


channel name>

This automatically generated name is subject to a length restriction and must be


no more than 40 characters (including the underscore). If the data store name
exceeds this limit, you must shorten the participant name or channel name
accordingly.

Below the data store name, you nd a reference to the associated integration ow
in the following form: <integration flow name>/AS4

JMS Queue

The message is stored temporarily in a JMS queue on the con gured message broker.

If possible, use this option as it comes with a better performance.

You can monitor the content of the data store in the Monitor section of the Web UI
under Manage Stores in the Message Queues tile.

 Note
The name of the JMS queue is automatically generated and contains the following
parts:

AS4.<Integration Flow Name>.<Channel Name>.<Guide>

 Note
This option is only available if you have an Enterprise Edition license.

Lock Timeout (in min) Enter a value for the retry timeout of the in-progress repository.

(only con gurable if Data Store is


selected

Retry Interval (in min) Enter a value for the amount of time to wait before retrying message delivery.

Exponential Backoff Select this option to double the retry interval after each unsuccessful retry.

Maximum Retry Interval (in min) You can set an upper limit on that value to avoid an endless increase of the retry interval. The
default value is 60 minutes. The minimum value is 10 minutes.
(only con gurable when Exponential
Backoff is selected)

This is custom documentation. For more information, please visit the SAP Help Portal 276
6/14/2023

Parameter Description

Dead-Letter Queue Select this option to place the message in the dead-letter queue if it cannot be processed
after three retries caused by an out-of-memory. Processing of the message is stopped then.
(only if as Temporary Storage the
option JMS Queue is selected) In such cases, a lock entry is created which you can view and release in the Monitor section of
the Web UI under Managing Locks.

Use this option to avoid out-of-memory situations (caused in many cases by large messages).

For more information, read the SAP Community blog Cloud Integration – Con gure Dead Letter
Handling in JMS Adapter .

Encrypt Message During Persistence Select this option in case the messages should be stored in an encrypted way during certain
processing steps.

Select the Conditions tab and provide values in the elds as follows.

Conditions

Parameter Description

The parameters in Maximum Message Size allow you to set a maximum size limit for processing inbound messages. Any inbound
message that exceeds the con gured limit is rejected from further processing and the sender receives an error message.

Body Size (in MB) De ne the size limit for processing the message body.

Attachment Size (in MB) De ne the size limit for processing the attachment.

Con guring Sender Channel with ebMS3 Receipt


Allows the sender channel to transmit the receipt for an incoming push message.

Context
You con gure with the AS4 sender adapter with ebMS3 Receipt to support non-repudiation of receipt, which assures the
receiver has received the message without being modi ed during the message exchange.

 Note
In the following cases certain features might not be available for your current integration ow:

You are using a runtime pro le other than the one expected. See: Runtime Pro les.

A feature for a particular adapter or step was released after you created the corresponding shape in your integration
ow.

To use the latest version of a ow step or adapter – edit your integration ow, delete the ow step or adapter, add the
step or adapter, and con gure the same. Finally, redeploy the integration ow. See: Updating your Existing Integration
Flow.

 Note
This adapter exchanges data with a remote component that might be outside the scope of SAP. Make sure that the data
exchange complies with your company’s policies.

Connection
This is custom documentation. For more information, please visit the SAP Help Portal 277
6/14/2023

Parameter Description

Agreement De ne the message exchange pattern agreed between the MSHs.

Address Specify the relative endpoint of the receiving MSH. For example,
/orders.

 Note
When you specify the endpoint address /path, a sender can
also call the integration ow through the endpoint address
/path/<any string> (for example, /path/test/).

Be aware of the following related implication: When you in


addition deploy an integration ow with endpoint address
/path/test/, a sender using the /path/test endpoint
address will now call the newly deployed integration ow with
the endpoint address /path/test/. When you now undeploy
the integration ow with endpoint address /path/test, the
sender again calls the integration ow with endpoint address
/path (original behavior). Therefore, be careful reusing paths
of services. It is better using completely separated endpoints
for services.

Authorization Select User Role if you want to authorize a user to send message
based on the ESBMessaging.send.

Select Client Certi cate if you want to authorize a user to send


message based on a certi cate. If you select this option, you have
to add and enter the Subject DN (information used to authorize the
sender) and Issuer DN (information about the Certi cate Authority
who issues the certi cate).

User Role Select a role to authorize the user to access the receiving MSH
endpoint.
(only if you select User Role in Authorization)

Select the Security tab and provide values in the elds as follows.

Security

Parameter Description

Save Incoming Receipt Saves the incoming receipt in the message store.

Verify the Receipt Signature Veri es the signature of the incoming receipt.

Public Key Alias De ne the public key alias or aliases to verify the signature of the
AS4 message.

Select the Delivery Assurance tab and provide values in the elds as follows.

Delivery Assurance

Parameter Description

This is custom documentation. For more information, please visit the SAP Help Portal 278
6/14/2023

Parameter Description

Quality of Service De nes how the message is processed by the tenant.


There are the following options:

Best Effort

The message is sent synchronously; this means that the tenant waits for a response
before it continues processing.

No temporary storage of the message needs to be con gured, as message request


and response are processed immediately after another.

At Least Once

The message is sent asynchronously. This means that the tenant does not wait for a
response before continuing processing. It is expected that the receiver guarantees that
the message is processed exactly once.

This option guarantees that the message is processed at least once on the tenant. If a
message with identical message ID is received multiple times from a sender, all of
them will be processed.

If you choose this option, the message needs to be temporarily stored on the tenant (in
the storage con gured under Temporary Storage). As soon as the message is store
there, the sender receives successfully received status message. If an error occurs,
the message is retried from the temporary storage.

Exactly Once (Only possible if as Temporary Storage the option Data Store is
selected)

The message is sent asynchronously. This means that the tenant does not wait for a
response before continuing processing.

This option guarantees that the message is processed exactly once on the tenant. If a
message with identical message ID is received multiple times from a sender, only the
rst one will be processed. The subsequent messages can be identi ed as duplicates
and will not be processed.

If you choose this option, the message needs to be temporarily stored on the tenant (in
the storage con gured under Temporary Storage). As soon as the message is store
there, the sender receives successfully received status message. If an error occurs,
the message is retried from the temporary storage.

This is custom documentation. For more information, please visit the SAP Help Portal 279
6/14/2023

Parameter Description

Temporary Storage Temporary storage location for messages that are processed asynchronously. Messages for
which processing runs into an error can be retried from the temporary storage.
(only if as Quality of Service the option
Exactly Once or At Least Once is You can choose among the following storage types:
selected)
Data Store

The message is temporarily stored in the database of the tenant (in case of an error).
In case of successful message processing, the message is immediately removed from
the data store.

You can monitor the content of the data store in the Monitor section of the Web UI
under Manage Stores in the Data Stores tile.

 Note
The data store name is automatically generated and contains the following parts:

<name of participant connected with AS4 adapter>_< AS4


channel name>

This automatically generated name is subject to a length restriction and must be


no more than 40 characters (including the underscore). If the data store name
exceeds this limit, you must shorten the participant name or channel name
accordingly.

Below the data store name, you nd a reference to the associated integration ow
in the following form: <integration flow name>/AS4

JMS Queue

The message is stored temporarily in a JMS queue on the con gured message broker.

If possible, use this option as it comes with a better performance.

You can monitor the content of the data store in the Monitor section of the Web UI
under Manage Stores in the Message Queues tile.

 Note
The name of the JMS queue is automatically generated and contains the following
parts:

AS4.<Integration Flow Name>.<Channel Name>.<Guide>

 Note
This option is only available if you have an Enterprise Edition license.

Lock Timeout (in min) Enter a value for the retry timeout of the in-progress repository.

(only con gurable if Data Store is


selected

Retry Interval (in min) Enter a value for the amount of time to wait before retrying message delivery.

Exponential Backoff Select this option to double the retry interval after each unsuccessful retry.

Maximum Retry Interval (in min) You can set an upper limit on that value to avoid an endless increase of the retry interval. The
default value is 60 minutes. The minimum value is 10 minutes.
(only con gurable when Exponential
Backoff is selected)

This is custom documentation. For more information, please visit the SAP Help Portal 280
6/14/2023

Parameter Description

Dead-Letter Queue Select this option to place the message in the dead-letter queue if it cannot be processed
after three retries caused by an out-of-memory. Processing of the message is stopped then.
(only if as Temporary Storage the
option JMS Queue is selected) In such cases, a lock entry is created which you can view and release in the Monitor section of
the Web UI under Managing Locks.

Use this option to avoid out-of-memory situations (caused in many cases by large messages).

For more information, read the SAP Community blog Cloud Integration – Con gure Dead Letter
Handling in JMS Adapter .

Encrypt Message During Persistence Select this option in case the messages should be stored in an encrypted way during certain
processing steps.

Select the Conditions tab and provide values in the elds as follows.

Conditions

Parameter Description

The parameters in Maximum Message Size allow you to set a maximum size limit for processing inbound messages. Any inbound
message that exceeds the con gured limit is rejected from further processing and the sender receives an error message.

Body Size (in MB) De ne the size limit for processing the message body. Default
value is 40 MB.

Attachment Size (in MB) De ne the size limit for processing the attachment. Default value is
100 MB.

AS4 Receiver Adapter


Provides basic insights on how the AS4 messaging protocol enables message exchange between message service handlers
(MSHs).

Use
The SAP Applicability Statement 4 (AS4) receiver adapter is a secure, reliable, and payload-agnostic protocol. It uses Web
services to transmit business-to-business documents. For more information on AS4 conformance pro le de ned by OASIS
standard, see AS4 Pro le of ebMS 3.0 Version 1.0 .

The SAP AS4 receiver adapter uses the Light Client conformance pro le to address the functional requirements of e-commerce
and e-governance services. The pro le only supports message pushing for sending MSH and selective message pulling for
receiving MSH. The adapter uses secure SAML tokens for authentication and authorization between two MSHs.

Message Exchange Patterns (MEPs)


The AS4 receiver adapter uses the following message exchange patterns (MEPs) for exchanging business documents:

One-way/push: In this pattern, the AS4 receiver adapter is the sending MSH (initiator) that transfers business
documents to the receiving MSH. The initiator receives a acknowledgment as part of the HTTP response.

This is custom documentation. For more information, please visit the SAP Help Portal 281
6/14/2023

One-way/selective pull: In this pattern, the AS4 receiver adapter is the receiving MSH (initiator) and sends a selective
pull request to the sending MSH. The sending MSH initiates the pull request by identi ng the speci c user message
using the message ID provided by the initiator.

Visit the blog , to understand how to integrate Business-to-Authority (B2A) Manager of SAP with ATO (Australian Taxation
Office).

Related Information
Con gure Receiver Channel with Push Message Protocol
Con gure Receiver Channel with Pull Message Protocol

Con gure Receiver Channel with Push Message Protocol


Con gure the AS4 receiver channel as a sending Message Service Handler (MSH) to send business documents.

Prerequisites
You must deploy the private key pair in theCloud Integration keystore for signing the AS4 message.

You must have con gured an integration ow in the editor. For more information, see Overview of Integration Flow
Editor.

Context
Use the ebMS3 Push message protocol to transmit AS4 message.

This is custom documentation. For more information, please visit the SAP Help Portal 282
6/14/2023

 Note
In the following cases certain features might not be available for your current integration ow:

You are using a runtime pro le other than the one expected. See: Runtime Pro les.

A feature for a particular adapter or step was released after you created the corresponding shape in your integration
ow.

To use the latest version of a ow step or adapter – edit your integration ow, delete the ow step or adapter, add the
step or adapter, and con gure the same. Finally, redeploy the integration ow. See: Updating your Existing Integration
Flow.

 Note
This adapter exchanges data with a remote component that might be outside the scope of SAP. Make sure that the data
exchange complies with your company’s policies.

Connection

Select the Connectiontab and provide values in the elds as follows.

Configure the Connection Details of the Receiving MSH

Parameter Description

Address De ne the endpoint URL of the receiving MSH.

Agreement De ne the type of the message exchange pattern as agreed


between the MSHs for a speci c type of business transaction.

Authentication Type Select the authentication type to process the outbound message:

None

Basic Authentication

Client Certi cate

SAML Authentication

You can also set the value of this attribute dynamically using the
header SAP_AS4_Outbound_Authentication_Type.

The valid values are:

saml

basic

clientCert

none

SAML Endpoint URL Provide the speci c endpoint URL to support SAML-based
authentication that allows access to the sending MSH.

Private Key Alias Determine the private key alias for SAML authentication.

Timeout (in sec.) Provide a connection timeout period (in seconds) to de ne how
long the receiving MSH waits for the AS4 message to be received
by the sending MSH.

This is custom documentation. For more information, please visit the SAP Help Portal 283
6/14/2023

Parameter Description

Compress Message Enable if you want to compress the message.

Select the Processingtab and provide values in the elds as follows.

Processing

Parameter Description

Initiator Party: Party ID De ne the ID of the sending MSH.

Initiator Party: Party Type Provide the type of the sending MSH. For example:
http://abr.gov.au/PartyIdType/ABN

Initiator Party: Role De ne the role of the sending MSH. For example:
http://sbr.gov.au/ato/Role/Business

Responder Party: Party ID De ne the ID of the receiving MSH.

Responder Party: Party Type Provide the type of the receiving MSH. For example:
http://abr.gov.au/PartyIdType/ABN

Responder Party: Role De ne the role of the receiving MSH. For example:
http://sbr.gov.au/agency

Message Partition Channel Specify the partner channel details to enable the partitioned
transfer of AS4 messages between AS4 exchange partners.

Service De ne the business service of the recipient. For example, payment


details of employees for a speci c year:
http://sbr.gov.au/ato/payevnt/2017

Service Type De ne the type of service from the recipient.

Action De ne the type of action that the user message is intended to


invoke. For example: Submit.002.00

Attachment Name De ne the name for the payload attached to the AS4 message.

Additional Properties Specify the Key, Kype, and Value attributes to modify an existing
parameter in the property sheet. For example, if you want to modify
the MSH details, you must de ne a key and its value. The Type
attribute is used in AS4 message in order to identify the payload.

Payload Properties De ne a key and value to modify the payload attached to AS4
message.

Select the Security tab and provide values in the elds as follows.

Security

Parameter Description

WS-Security Type Ensures security implemented in web services for SOAP based
messages.

This is custom documentation. For more information, please visit the SAP Help Portal 284
6/14/2023

Parameter Description

Sign and Enrypt Message Used to sign and encrypt the payload.

You can also set the value of this attribute dynamically by using the
header SAP_AS4_Outbound_Security_Type.

The valid values are:

sign

signAndEncrypt

none

Sign Message Ensures that the outgoing AS4 message is signed.

You can also set the value of this attribute dynamically by using the
header SAP_AS4_Outbound_Sign_Message.

The valid values are:

true

false

Private Key Alias for Signing Specify an alias for the tenant private key that is to be used to sign
the message. The tenant private key is used to sign the request
message (that is sent to the WS provider (receiver)). The tenant
private key has to be part of the tenant keystore.

Signature Algorithm Use the relevant algorithm to sign the AS4 message.

You can also set the value of this attribute dynamically by using the
header SAP_AS4_Outbound_Signing_Algorithm.

The valid values are:

SHA256/RSA

SHA384/RSA

SHA512/RSA

Public Key Alias for Encryption Specify an alias for the public key that is to be used to encrypt the
message.
(only if you select Sign and Encrypt Message)
The receiver (WS provider) public key is used to encrypt the
request message (that is sent to the receiver). This key has to be
part of the tenant keystore.

You can also set the value of this attribute dynamically by using the
header SAP_AS4_Outbound_Encryption_Cert. Use this
header to set the certi cate value to X509 certi cate object.

This is custom documentation. For more information, please visit the SAP Help Portal 285
6/14/2023

Parameter Description

Encryption Algorithm Specify a encryption algorithm to be applied when encrypting the


message.
(only if you enable Sign and Encrypt Message)
You can also set the value of this attribute dynamically using the
header SAP_AS4_Outbound_Encryption_Algorithm.

The valid values are:

3DES

AES128

AES256

Select the Receipt tab and provide values in the elds as follows.

Receipt

Parameter Description

Save Incoming Receipt Saves incoming receipt in the Message Store for 90 days. You can
refer these receipts for auditing purposes.

You can also set the value of this attribute dynamically using the
header SAP_AS4_Outbound_Save_Receipt.

The valid values are:

true

false

Verify Receipt Signature Veri es the incoming receipt signature against the public key alias.

You can also set the value of this attribute dynamically using the
header SAP_AS4_Outbound_Verify_Receipt.

true

false

 Note
You can use the
SAP_AS4_Outbound_Verify_Receipt_Cert header to set
the certi cate value to X509 certi cate object.

Public Key Alias Enter an alias name to select a public key and corresponding
certi cate.

 Note
Set the value, provided by ATO, to the SAP_AS4_Outbound_ATO_SAML_AppliesTo header for AppliesTo parameter to
fetch SAML token from Vanguard.

Related Information
Externalize Parameters of an Integration Flow

This is custom documentation. For more information, please visit the SAP Help Portal 286
6/14/2023

Con gure Receiver Channel with Pull Message Protocol


Con gure the AS4 receiver channel as a receiving MSH to exchange business documents.

Prerequisites
You must deploy the public certi cate in the Cloud Integration keystore for veri cation of the business response.

You must have con gured an integration ow in the editor. For more information, see Overview of Integration Flow
Editor.

Context

 Note
In the following cases certain features might not be available for your current integration ow:

You are using a runtime pro le other than the one expected. See: Runtime Pro les.

A feature for a particular adapter or step was released after you created the corresponding shape in your integration
ow.

To use the latest version of a ow step or adapter – edit your integration ow, delete the ow step or adapter, add the
step or adapter, and con gure the same. Finally, redeploy the integration ow. See: Updating your Existing Integration
Flow.

 Note
This adapter exchanges data with a remote component that might be outside the scope of SAP. Make sure that the data
exchange complies with your company’s policies.

Use the ebMS3 Pull message protocol to receive AS4 message (User Message).

Select the Connection tab and provide values in the elds as follows.

Connection

Parameter Description

Address De ne the endpoint URL of the sending MSH.

Reference Message ID De ne the reference ID of the signal message.

Message Partition Channel De ne the partition for the AS4 message that needs to be
exchanged between the participants.

Authentication Type Authentication method that you want to use for connecting to the
sending MSH. You can select one of the following:

None

Basic Authentication

Client Certi cate

SAML Authentication

This is custom documentation. For more information, please visit the SAP Help Portal 287
6/14/2023

Parameter Description

Credential Name Provide the alias you used while deploying basic authentication
credentials.
(only if you select Basic Authentication.)

Private Key Alias Specify the private key alias to sign the message.

(only if you select Client Certi cate.)

SAML Endpoint URL Provide the speci c endpoint URL to support SAML-based
authentication that allows access to the sending MSH.
(only if you select SAML Authentication.)

Private Key Alias Determine the private key alias for SAML authentication.

Timeout (in sec.) Provide a connection timeout period (in seconds) to de ne how
long the sending MSH waits for the AS4 message to be received by
the receiving MSH.

Select the Securitytab and provide values in the elds as follows.

Security

Paramter Description

Sign Message Ensures that the outgoing message is signed.

You can also set the value of this attribute dynamically by using the
header SAP_AS4_Inbound_Sign_Message.

The valid values are:

true

false

Private Key Alias Specify the private key alias to sign the AS4 message.

(only if Sign Message is enabed)

Signature Algorithm Use the relevant algorithm to sign the AS4 message.

(only if Sign Message is enabled) You can also set the value of this attribute dynamically by using the
header SAP_AS4_Inbound_Signing_Algorithm.

The valid values are:

sha256rsa

sha384rsa

sha512rsa

Verify Signature Ensures that the signature is veri ed.

You can also set the value of this attribute dynamically by using the
header SAP_AS4_Inbound_Verify_Sign.

The valid values are:

true

false

This is custom documentation. For more information, please visit the SAP Help Portal 288
6/14/2023

Paramter Description

Public Key Alias Provide the public key alias to verify the signature of the AS4
message.
(only if Verify Signature is enabled)

Decrypt Message Select to decrypt outgoing AS4 message.

Private Key Alias Provide the private key alias used to decipher the outgoing AS4
message.
(only if Decrypt Message is enabled)

 Note
Set the value, provided by ATO, to the SAP_AS4_Outbound_ATO_SAML_AppliesTo header for AppliesTo parameter to
fetch SAML token from Vanguard.

Select the Receipttab and provide values in the elds as follows.

Receipt

Parameter Description

Receipt Ensures that the outgoing AS4 message is signed.

Target URL Provide the URL of the relevant host system for authenticating the
user against the system.

Authentication Type De nes the tenant authenticates itself against the receiver.

There are the following options:

None

No authentication is con gured.

Basic Authentication

The tenant authenticates itself against the receiver based


on user credentials (user and password).

 Note
When this authentication option is selected, the required
security artifact (User Credentials) has to be deployed
on the tenant.

Client Certi cate

The receiver authenticates itself (as trusted server) against


the tenant when the connection is being set up.

 Note
As prerequisite for this authentication process, the
client root certi cate of the tenant has to be imported
into the receiver keystore (prior to the connection set
up).

Credential Name Provide the alias you used while deploying basic authentication
credentials.
(only if you select Required in Basic Authentication.)

This is custom documentation. For more information, please visit the SAP Help Portal 289
6/14/2023

Parameter Description

Private Key Alias Specify the private key alias to sign the AS4 message.

(only if you select Required in Client Certi cate.)

Timeout (in sec) Speci es the time (in seconds) that the client will wait for a
response before the connection is interrupted.

Signing Select Required if you want to sign the outgoing AS4 message.
This guarantees your identity by signing the messages with one or
more private keys using a signature algorithm.

Private Key Alias Provide an alias for selecting a private key from the keystore.

Signature Algorithm Use the relevant algorithm to sign the AS4 message.

(only if you select Required in Signing.)

Related Information
Externalize Parameters of an Integration Flow

AmazonWebServices Sender Adapter


Amazon Web Services (AWS) sender adapter enables SAP Cloud Integration to do transfer of data with AWS cloud platform.

 Note
In the following cases certain features might not be available for your current integration ow:

You are using a runtime pro le other than the one expected. See: Runtime Pro les.

A feature for a particular adapter or step was released after you created the corresponding shape in your integration
ow.

To use the latest version of a ow step or adapter – edit your integration ow, delete the ow step or adapter, add the
step or adapter, and con gure the same. Finally, redeploy the integration ow. See: Updating your Existing Integration
Flow.

 Note
This adapter exchanges data with a remote component that might be outside the scope of SAP. Make sure that the data
exchange complies with your company’s policies.

Use the sender adapter to accelerate the implementation time and reduce the complexity of connecting to AWS. The adapter
supports the following protocols:

S3: Simple Cloud Storage

SQS: Simple Queue Service

 Note
You need to download the adapter from SAP Software Download Center. You can nd more information on the download
navigation path here .

This is custom documentation. For more information, please visit the SAP Help Portal 290
6/14/2023
After you complete the download, uncompress and extract the les to your local system. Then deploy the adapter on your
tenant.

For more information on deploying the adapter in multicloud environment, see Importing Custom Integration
Adapter.

For tenants hosted on Neo environment, you must import the adapter to your Eclipse tool and deploy the adapter
project. For more information see, Develop Adapter.

The following tables describe the parameters that you need to con guration for a selected protocol.

S3 Protocol

Connection

Parameter Description

Region Name Select the AWS Region. If the region doesn’t exist in the
precon gured list, then the user can manually enter the region
name in the text box.

Bucket Name Specify the name of the bucket to be used.

Polling Interval (in ms) Speci es the value of the Polling Interval in milliseconds.

The default value is 300000.

Access Key Alias Specify the name of the Secure Parameter artifact that contains the
AWS access key needed to connect to AWS.

Secret Key Alias Specify the name of the Secure Parameter artifact that contains the
AWS secret key needed to connect to AWS.

Requester Pays Select the checkbox to make the requester pay for the data
transfer and the request.

Processing

Parameter Description

Directory Specify the location on the S3 bucket where the le is written.

 Example
Directory/SubDirectory

 Note
You can use an exchange header or a property to dynamically
read the value.

This is custom documentation. For more information, please visit the SAP Help Portal 291
6/14/2023

Parameter Description

File Name Specify the name of the le to be written. If the eld is left blank,
the lename is created using the Cloud Integration message ID.

 Example
Test.json

 Note
You can use an exchange header or a property to dynamically
read the value.

Sorting Specify which property should be used for sorting while polling
les. The sorting will be done in ascending order of the selected
property. It is possible to choose from the following options:

None

File Name

File Size

Time Stamp

Include Sub-Directories Select to read all the les in the directory and subdirectory.

Post-Processing Select the action that should be taken after the le has been
processed. It is possible to choose from the following options:

Delete File

Keep File and Process Again

Move File to an Archive directory

Copy le to an Archive Bucket

Move le to an Archive Bucket

Optional S3 Metadata Specify the property parameter to be populated from S3 object


metadata. If speci ed, then a property with the name will be
created in Cloud Integration.

S3 Pre-Signed URL Select this option to generate a pre-signed URL. Select the HTTP
method and the expiration duration of the pre-signed URL.

HTTP Method of Pre-Signed URL Select the HTTP method that should be used for the pre-signed
URL. Select from the following options:

GET

DELETE

HEAD

PATCH

POST

PUT

Expired Duration of Pre-Signed URL (secs) Specify the duration in seconds for the Pre-Signed URL to expire.
The default value is 86400.

This is custom documentation. For more information, please visit the SAP Help Portal 292
6/14/2023

Parameter Description

Customer Decryption Key Alias Specify the name of the secured parameter that contains the
decryption key for the Amazon S3 to decrypt data.

SQS Protocol

Connection

Parameter Description

Region Name Select the AWS Region. If the region doesn’t exist in the
precon gured list, then the user can manually enter the region
name in the text box.

Account Number Specify the 12-digit AWS account number for the queue.

Queue Name Specify the AWS Queue name where the data needs to be written.

Access Key Alias Specify the name of the Secure Parameter artifact that contains the
AWS access key needed to connect to AWS.

Secret Key Alias Specify the name of the Secure Parameter artifact that contains the
AWS secret key needed to connect to AWS.

Processing

Parameter Description

Max Number of Messages Speci es the maximum number of messages to be read from the
queue. Possible values can be between 1 and 10. The default value
is set to 10.

Wait Time (in sec) Speci es the duration in seconds to wait for a message to arrive in
the queue. The default value is set to 20.

Visibility Timeout (in sec) Speci es the duration in seconds that the message is hidden from
subsequent retrieval requests. The default value is set to 30.

Post-Processing Speci es the action to be performed after the message processing


in the queue. It is possible to choose from the following options:

Keep Message in the queue

Delete Message from the queue

Optional SQS Metadata Specify the header parameters to be populated from SQS object
metadata. Separate the metadata with comma “,”.

AmazonWebServices Receiver Adapter


Amazon Web Services (AWS) receiver adapter enables SAP Cloud Integration to transfer of data with AWS cloud platform.

 Note
In the following cases certain features might not be available for your current integration ow:

You are using a runtime pro le other than the one expected. See: Runtime Pro les.

This is custom documentation. For more information, please visit the SAP Help Portal 293
6/14/2023
A feature for a particular adapter or step was released after you created the corresponding shape in your integration
ow.

To use the latest version of a ow step or adapter – edit your integration ow, delete the ow step or adapter, add the
step or adapter, and con gure the same. Finally, redeploy the integration ow. See: Updating your Existing Integration
Flow.

 Note
This adapter exchanges data with a remote component that might be outside the scope of SAP. Make sure that the data
exchange complies with your company’s policies.

Use the receiver adapter to accelerate the implementation time and reduce the complexity of connecting to AWS. You con gure
the receiver channel with the AWS adapter, based on a desired protocol, to streamline Outbound data transfer to AWS platform.
The adapter supports the following protocols:

S3: Simple Cloud Storage

SQS: Simple Queue Service

SNS: Simple Noti cation Service

SWF: Simple Work ow Service

 Note
You need to download the adapter from SAP Software Download Center. You can nd more information on the download
navigation path here .

After you complete the download, uncompress and extract the les to your local system. Then deploy the adapter on your
tenant.

For more information on deploying the adapter in multicloud environment, see Importing Custom Integration
Adapter.

For tenants hosted on Neo environment, you must import the adapter to your Eclipse tool and deploy the adapter
project. For more information see, Develop Adapter.

The following tables describe the parameters that you need to con guration for a selected protocol.

S3 Protocol

Connection

Parameter Description

Region Name Select the AWS Region. If the region doesn’t exist in the
precon gured list, then the user can manually enter the region
name in the text box.

Bucket Name Specify the name of the bucket to be used.

Access Key Alias Specify the name of the Secure Parameter artifact that contains the
AWS access key needed to connect to AWS.

Secret Key Alias Specify the name of the Secure Parameter artifact that contains the
AWS secret key needed to connect to AWS.

This is custom documentation. For more information, please visit the SAP Help Portal 294
6/14/2023

Parameter Description

Requester Pays Select the checkbox to make the requester pay for the data
transfer and the request.

Processing

Parameter Description

Operation Select to specify if the les are written or read from the S3 bucket.
The default value is Write Operation. Select from the following
options:

Write Operation

Read Operation

Directory Specify the location on the S3 bucket where the le is written.

 Example
Directory/SubDirectory

 Note
You can use an exchange header or a property to dynamically
read the value.

File Name Specify the name of the le to be written. If the eld is left blank,
the lename is created using the Cloud Integration message ID.

 Example
Test.json

 Note
You can use an exchange header or a property to dynamically
read the value.

Append Timestamp Select to append the date and timestamp to the lename.

Content Type Specify the MIME type of the le to be written.

 Example
"application/xml" or "text/plain"

 Note
You can use an exchange header or a property to dynamically
read the value.

This is custom documentation. For more information, please visit the SAP Help Portal 295
6/14/2023

Parameter Description

Content Encoding Specify the content encoding of the le.

 Example
gzip

 Note
You can use an exchange header or a property to dynamically
read the value.

Storage Class Select the AWS Storage Class from the following options:

Glacier

Glacier Deep Archive

Intelligent-Tiering

One Zone-Infrequent Access

Reduced Redundancy

Standard

Standard-Infrequent Access

Existing File Handling Select the le handling behavior, if a le with the same name exists
in the directory, from the following options:

Fail: Select this option to raise an exception

Ignore: Select this option to ignore the le

Overwrite: Select this option to overwrite the existing le

Post-Processing Specify the action taken after the le is processed. Select from the
following options:
(only if Operation is Write Operation)
Delete File

Keep File

Move File to an Archive directory

Copy le to an Archive Bucket

Move le to an Archive Bucket

Customer Decryption Key Alias Specify the name of the secured parameter that contains the
decryption key for the Amazon S3 to decrypt data.
(only if Operation is Write Operation)

Advanced

Parameter Description

This is custom documentation. For more information, please visit the SAP Help Portal 296
6/14/2023

Parameter Description

Encryption Option Select the server-side encryption, used for storing the le in AWS,
from the following options:

SSE-C (with Customer-Provided Key)

SSE-KMS (with Customer Master Keys Stored in AWS Key


Management Service)

SSE-S3 (with Amazon S3-Managed Keys)

The default value is NONE

Custom Metadata Specify any additional header name-value pairs that you want to
send to AWS.

 Note
You can use an exchange header or a property to dynamically
read the value.

SQS Protocol

Connection

Parameter Description

Region Name Select the AWS Region. If the region doesn’t exist in the
precon gured list, then the user can manually enter the region
name in the text box.

Account Number Specify the 12-digit AWS account number for the queue.

Queue Name Specify the AWS Queue name where the data needs to be written.

Access Key Alias Specify the name of the Secure Parameter artifact that contains the
AWS access key needed to connect to AWS.

Secret Key Alias Specify the name of the Secure Parameter artifact that contains the
AWS secret key needed to connect to AWS.

Processing

Parameter Description

Delays Specify the duration (in seconds) after which messages become
available for processing. Valid values: 0–900 .

Message Deduplication ID Specify the message deduplication ID.

 Note
You can use an exchange header or a property to dynamically
read the value.

Message Group ID Specify the message group ID.

 Note
You can use an exchange header or a property to dynamically
read the value.

This is custom documentation. For more information, please visit the SAP Help Portal 297
6/14/2023
Advanced

Parameter Description

Message Attribute Specify any additional message attribute name-value pairs that
you can send to AWS.

SNS Protocol

Connection

Parameter Description

Region Name Select the AWS Region. If the region doesn’t exist in the
precon gured list, then the user can manually enter the region
name in the text box.

Account Number Specify the 12-digit AWS account number for the queue.

Topic Name Specify the AWS Topic name where the data needs to be written.

Access Key Alias Specify the name of the Secure Parameter artifact that contains the
AWS access key needed to connect to AWS.

Secret Key Alias Specify the name of the Secure Parameter artifact that contains the
AWS secret key needed to connect to AWS.

Processing

Parameter Description

Subject Specify the subject of the message.

 Note
You can use an exchange header or a property to dynamically
read the value.

Message Structure Select the structure of the message from the following options:

Identical Payload for all Delivery Protocols

Custom Payload for each Delivery Protocol

Message Attribute Specify any additional message attribute name-value pairs that
you can send to AWS.

Response Specify the format of the response message sent by AWS. Possible
values include Application/XML and Application/JSON. The default
value is Application/XML.

SWF Protocol

Connection

Parameter Description

Region Name Select the AWS Region. If the region doesn’t exist in the
precon gured list, then the user can manually enter the region
name in the text box.

Access Key Alias Specify the name of the Secure Parameter artifact that contains the
AWS access key needed to connect to AWS.

This is custom documentation. For more information, please visit the SAP Help Portal 298
6/14/2023

Parameter Description

Secret Key Alias Specify the name of the Secure Parameter artifact that contains the
AWS secret key needed to connect to AWS.

Processing

Parameter Description

Action Select the API action to be performed in AWS Simple Work ow.

 Example
List Domains, List Activity Types.

Request Specify the format of the request message to send to AWS.


Possible values include Application/XML and Application/JSON.
The default value is Application/XML.

Response Specify the format of the response message sent by AWS. Possible
values include Application/XML and Application/JSON. The default
value is Application/XML.

Data Store Sender Adapter


This adapter enables Cloud Integration to consume messages from a data store. This feature helps you to enable asynchronous
decoupling of inbound and outbound processing by using the data store as temporary storage.

To understand the concept of asynchronous decoupling, assume that a sender sends a message to Cloud Integration (inbound
processing). If there's an error in outbound processing (for example, a receiver can't be reached temporarily), the middleware
(Cloud Integration) retries message processing independently. There's no need that the sender triggers a reprocessing of the
message as soon as the error situation is xed. The sender relies on the middleware to do that. To support this scenario, Cloud
Integration stores the message received from the sender in the data store. To implement this step, you can design a dedicated
integration ow that receives the sender's message and uses a Data Store Write step to store it in the data store (see De ne
Data Store Write Operations).

Furthermore, you model outbound processing in an integration ow that initially consumes the message from the data store
(using the Data Store sender adapter). The outbound integration ow retries the message from the data store as long as the
error situation lasts.

The following gure depicts the described example setup.

This is custom documentation. For more information, please visit the SAP Help Portal 299
6/14/2023

You can model the steps that write into the data store and those that consume message from it also in the same integration
ow.

If multiple worker nodes are set up, there's no parallel processing of the same data store entry by these multiple worker nodes.

 Tip
You can use this feature to implement scenarios with quality of service Exactly Once for cases when the sender hasn't any
mechanism in place to retry messages.

See: Quality of Service Exactly Once

For more information on the data store, see:

De ne Data Store Operations

Using Data Storage Features When Designing Integration Flows

 Note
Availability of this feature:

This is custom documentation. For more information, please visit the SAP Help Portal 300
6/14/2023
Cloud Foundry environment: Availability of this feature depends upon the SAP Integration Suite service plan that you
use. For more information about different service plans and their supported feature set, see SAP Note 2903776 .

Neo environment: This feature is available for all editions.

 Note
In the following cases certain features might not be available for your current integration ow:

You are using a runtime pro le other than the one expected. See: Runtime Pro les.

A feature for a particular adapter or step was released after you created the corresponding shape in your integration
ow.

To use the latest version of a ow step or adapter – edit your integration ow, delete the ow step or adapter, add the
step or adapter, and con gure the same. Finally, redeploy the integration ow. See: Updating your Existing Integration
Flow.

To use this adapter type in an integration ow, connect a Sender with a Start Message shape and select adapter type Data
Store.

Once you've created a Data Store sender channel, you can con gure the following attributes.

Go to the General tab to con gure the following adapter parameters.

General

Parameter Description

Name Enter the name of the channel.

Go to the Connection tab to con gure the following adapter parameters.

Connection

Parameter Description

Data Store Name Speci es the name of the data store (no white spaces).

The maximum length allowed for the data store name is 40 characters. If you enter a
longer string, a validation error is raised. Note that this length restriction applies to the
value that is used for this parameter at runtime.

Visibility De nes whether the data store is shared by all integration ows (deployed on the
tenant) or only by one speci c integration ow.

Global: Data store is shared across all integration ows deployed on the
tenant.

Integration Flow (default setting): Only a single integration ow uses the data
store. A data store con gured with this setting is also referred to as local data
store.

For more information and guidelines how to use this parameter, see Anticipate
Message Throughput When Choosing a Storage Option.

This is custom documentation. For more information, please visit the SAP Help Portal 301
6/14/2023

Parameter Description

Poll Interval (in s) Specify the poll interval in seconds to wait before consuming messages from the data
store. The default is set to 10 s. The minimum is set to 1 s. The maximum is set to
300 s.

The adapter continuously consumes messages from the data store if the data store
contains entries that are ready to be processed.

The poll interval only becomes effective as soon as the data store doesn't contain
such entries anymore. From that point in time, the adapter waits for the time speci ed
by the Poll Interval parameter and then again tries to consume messages from the
data store.

 Note
The smaller the poll interval (for example, 1 s or less), the more load is put on the
data store.

Retry Interval (in min) Enter a value for the amount of time to wait before retrying message delivery. The
default is set to 1 min. The minimum is set to 1 min. The maximum is set to 1440 min
(24 hours).

Exponential Backoff Select this option to double the retry interval after each unsuccessful retry. By default,
this option is deselected.

Maximum Retry Interval (in min) You can set an upper limit on that value to avoid an endless increase of the retry
interval. The default value is 60 minutes. The minimum value is 10 minutes. The
maximum is set to 1440 min (24 hours).

Lock Timeout (in min): Enter a value for the timeout of the in-progress repository. After this time, a message
is retried in case of a cluster outage. The default value is 10 minutes. The minimum
value is 1 minute. The maximum is set to 300 min (5 hours).

ELSTER Receiver Adapter


This adapter enables an SAP BTP tenant to send a tax document to the ELSTER server.

 Note
In the following cases certain features might not be available for your current integration ow:

You are using a runtime pro le other than the one expected. See: Runtime Pro les.

A feature for a particular adapter or step was released after you created the corresponding shape in your integration
ow.

To use the latest version of a ow step or adapter – edit your integration ow, delete the ow step or adapter, add the
step or adapter, and con gure the same. Finally, redeploy the integration ow. See: Updating your Existing Integration
Flow.

 Note
This adapter exchanges data with a remote component that might be outside the scope of SAP. Make sure that the data
exchange complies with your company’s policies.

This is custom documentation. For more information, please visit the SAP Help Portal 302
6/14/2023
ELSTER (acronym for the German term Elektronische Steuererklärung) is used by the German scal management to process
tax declarations exchanged over the Internet.

To enable a client to send tax data to German tax authorities, those organizations provide the ERiC (ELSTER Rich Client ) library
for sending tax documents. The ELSTER adapter is designed that way that it complies with the requirements of this library and,
therefore, enables Cloud Integration to connect as a client to the ELSTER server.

 Note
Using this adapter makes only sense in the context of a standard integration scenario (prede ned by SAP or an SAP
partner) that includes the communication with German tax authorities.

The adapter supports validate and send operations.

The input payload for the ELSTER adapter is supposed to be a complete, valid payload (tax document) including the transfer
header. Note that, however, the XML document can have an arbitrary encoding (if this is properly de ned in the XML preamble).
The adapter ensures that the payload is converted to the encoding the ELSTER server supports (currently ISO-8859-15 , in future
versions this will change to UTF-8).

The output payload (sent by Cloud Integration through the ELSTER receiver adapter) will be validated by the ELSTER server.

The inclusion of the transfer header implies that only applications that are registered with the German tax authorities and have
a valid vendor ID can actually send messages through the ELSTER adapter.

 Note
This software collects personal data according to Article 4, Number 1 and Article 9, Paragraph 1 of the German General Data
Protection Regulation (Datenschutzgrundverordnung, DSGVO). In addition to data that is required for the assessment of
taxes, this software also collects data related to the kind of operating system used by the user and transfers it to the scal
authorities. This information ensures the proper processing of the data and avoids errors in the process.

This data is used by the scal authorities according to Article 6, Paragraph 1, Letter e in connection with Paragraph 3,
Subparagraph 1, Letter b DSGVO in connection with federal and state tax regulations and exclusively for the purposes
mentioned.

Headers
The validate and send operation of the ELSTER receiver adapter sets a header (SAP_ERiCResponse) that contains a technical
status created by the ERiC library.

The adapter does not read any headers.

Once you have created a receiver channel and selected the Elster Receiver Adapter, you can con gure the following attributes.
See Overview of Integration Flow Editor.

Select the General tab and provide values in the elds as follows.

General

Parameter Description

Name Enter the name of the channel.

Select the Connection tab and provide values in the elds as follows.

This is custom documentation. For more information, please visit the SAP Help Portal 303
6/14/2023
Connection

Parameter Description

Operation The following operations are supported:

Get Version

Gets the versions of the ERiC library provided by the


server.

The response contains the major, minor, and micro ERiC


version (for example, 29.6.2).

Validate

Validates the tax document.

Validation of a tax document without sending it only


requires the document type (Data Type). Key aliases
(Private Key Alias for Encryption and Private Key Alias
for Signing) are not required in that case.

Validate and Send

Validates the tax document sent to the ELSTER server. In


case the server cannot accept the document (maybe it is
wrong formatted) or in case the server is down, an error
message is provided. In such a case, check the message
processing log and, in case you need more information, the
default trace.

Data Type Indicates the type of the document provided as payload.


Information about the type is required by the ELSTER server to
determine the method to be applied by the tax authority.

For example, if the value LStA_2019 is speci ed, the method


ElsterAnmeldung can be executed by the server for the year 2019.
Other examples are: DUeAbmelden, DUeAnmelden,
UStVA_2018 or UStVA_2019.

You can also dynamically con gure this parameter with an


expression such like ${header.datatype} or
${property.datatype} to retrieve the data format
dynamically at runtime.

Private Key Alias for Encryption Alias for the key to be used for message encryption

Note that X.509 key pair needs to be uploaded to the tenant


keystore to set up this scenario.

You can also dynamically con gure this parameter with an


expression such like ${header.encryptionkey} or
${property.encryptionkey} to dynamically retrieve its
value at runtime.

This is custom documentation. For more information, please visit the SAP Help Portal 304
6/14/2023

Parameter Description

Private Key Alias for Signing Alias for the key pair (private part) to be used for message signing.
Note that X.509 key pair needs to be uploaded to the tenant
keystore

Alias for the key pair (private part) to be used for message signing.
Note that X.509 key pair needs to be uploaded to the tenant
keystore.

You can also dynamically con gure this parameter with an


expression such like ${header.signaturekey} or
${property.signaturekey} to dynamically retrieve its value
at runtime.

You can also dynamically con gure this parameter with an


expression such like ${header.signaturekey} to dynamically retrieve
its value at runtime.

Facebook Receiver Adapter


You use the Facebook receiver adapter to extract information from Facebook (which is the receiver platform) based on certain
criteria such as keywords, user data, for example. As one example, you can use this feature in social marketing activities to do
social media data analysis based on Facebook content.

 Note
In the following cases certain features might not be available for your current integration ow:

You are using a runtime pro le other than the one expected. See: Runtime Pro les.

A feature for a particular adapter or step was released after you created the corresponding shape in your integration
ow.

To use the latest version of a ow step or adapter – edit your integration ow, delete the ow step or adapter, add the
step or adapter, and con gure the same. Finally, redeploy the integration ow. See: Updating your Existing Integration
Flow.

 Note
This adapter exchanges data with a remote component that might be outside the scope of SAP. Make sure that the data
exchange complies with your company’s policies.

 Note

Facebook applications that access content of public pages need to request Page Public Content Access feature and
require review by Facebook.

A user can only query their own comments. Other users' comments are unavailable due to privacy concerns.

The connection works that way that the tenant logs on to Facebook based on an OAuth authentication mechanism and searches
for information based on criteria as con gured in the adapter at design time. OAuth allows a the tenant to access someone
else’s resources (of a speci c Facebook user) on behalf of the tenant. As illustrated in the gure, the tenant (through the

This is custom documentation. For more information, please visit the SAP Help Portal 305
6/14/2023
Facebook receiver adapter) calls the Facebook API to access resources of a speci c Facebook user. For more information on the
Facebook API, go to: https://developers.facebook.com/ .

 Note
You can also use headers to provide values in Connection settings of Facebook adapter. You can use both exchange headers
(see Dynamic Parameters (Example) for more information) and Apache Camel headers (see Facebook Component in
Apache Camel for more information ).

Once you have created a receiver channel and selected the Facebook receiver adapter, you can con gure the following
attributes. See Overview of Integration Flow Editor.

Select the General tab and provide values in the elds as follows.

General

Parameter Description

Name Enter the name of the channel.

Select the Connection tab and provide values in the elds as follows.

 Tip
You can obtain the values required for the Facebook adapter con guration in the Facebook for Developers page.

Login to Facebook for Developers . Choose My Apps <Your Facebook App> Roles Test Users . In this page, you will
get details like User/Page ID.

To get the Post ID, you should fetch the posts using Get Posts. This will have the Post ID

Connection

Parameter Description

This is custom documentation. For more information, please visit the SAP Help Portal 306
6/14/2023

Parameter Description

Endpoint To access Facebook content, you can choose among the following
general options.

Get Posts

Allows you to fetch speci c Facebook posts.

Get Post Comments

Allows you to fetch speci c Facebook post comments.

Get Users

Allows you to fetch details of a speci c user.

Get Feeds

Allows you to fetch feeds of a speci c user or a page.

User/Page ID Speci es the Facebook user from which account the information is
to be extracted.

Timeout (ms) Speci es a timeout (in miliseconds) after which the connection to
te Facebook platform should be terminated.

Application ID An alias by which the consumer (tenant) that requests Facebook


resources is identi ed.

Application Secret Alias An alias by which the shared secret is identi ed (that is used to to
de ne the token of the consumer (tenant)).

Access Token An alias by which the access token for the Facebook user is
identi ed.

In order to make authorized calls to the Facebook API, your


application must rst obtain an OAuth access token on behalf of a
Facebook user.

Proxy Type Select between the two options given:

Internet

Manual

The authorization is based on shared secret technology. This method relies on the fact that all parties of a communication share
a piece of data that is known only to the parties involved. Using OAuth in the context of this adapter, the Consumer (that calls
the API of the receiver platform on behalf of a speci c user of this platform) identi es itself using its Consumer Key and
Consumer Secret, while the context to the user itself is de ned by an Access Token and an Access Token Secret. These
artifacts are to be generated for the receiver platform app (consumer) and should be con gured that way that they will never
expire. This adapter only supports consumer key/secret and access token key/secret artifacts that do not expire.

To nish the con guration of a scenario using this adapter, the generated consumer key/secret and access token key/secret
artifacts are to be deployed as Secure Parameter artifact on the related tenant. To do this, use the Integration Operations
feature, position the cursor on the tenant and chosen Deploy Artifact .... As artifact type, choose Secure Parameter.

FTP Adapter
In many integration scenarios, messages or events have to be exchanged between applications or systems via FTP servers. The
FTP adapter allows you to con gure transport protocol FTP/FTPS for the connection to the FTP server to send messages to the

This is custom documentation. For more information, please visit the SAP Help Portal 307
6/14/2023
FTP server or to receive messages from the FTP server.

Related Information
Con gure the FTP Sender Adapter
Con gure the FTP Receiver Adapter

Con gure the FTP Sender Adapter


The FTP (File Transfer Protocol) sender adapter connects SAP Cloud Integration to a remote system using TCP (Transmission
Control Protocol) to receive les from the system.

 Note
In the following cases certain features might not be available for your current integration ow:

You are using a runtime pro le other than the one expected. See: Runtime Pro les.

A feature for a particular adapter or step was released after you created the corresponding shape in your integration
ow.

To use the latest version of a ow step or adapter – edit your integration ow, delete the ow step or adapter, add the
step or adapter, and con gure the same. Finally, redeploy the integration ow. See: Updating your Existing Integration
Flow.

 Note
This adapter exchanges data with a remote component that might be outside the scope of SAP. Make sure that the data
exchange complies with your company’s policies.

 Note
Consider the following when operating with the FTP sender adapter:

This adapter does not support connections to SFTP servers.

See: Con gure the SFTP Sender Adapter.

 Note
Consider the following when using the FTP sender adapter:

Only the passive mode is supported for the FTP sender adapter.

The transfer mode is BINARY.

You can establish a connection to your on-premise system by using Cloud Connector: SAP Connectivity Service.

This adapter doesn’t support connections to SFTP servers.

See Con gure the SFTP Sender Adapter.

This is custom documentation. For more information, please visit the SAP Help Portal 308
6/14/2023
Once you have created a sender channel and selected the FTP sender adapter, you can con gure the following attributes.
Select the General tab and provide values in the elds as follows.

General

Parameter Description

Name Enter the name of the FTP channel.

Select the Source tab and provide values in the elds as follows.

Source

Parameter Description

Directory Use the relative path to read the le from a directory.

Example:parentdirectory/childdirectory

This is custom documentation. For more information, please visit the SAP Help Portal 309
6/14/2023

Parameter Description

File Name Name of the le to be read.

 Note
If you do not enter a le name and the parameter remains blank,
all the les in the speci ed directory are read.

 Note
Usage of le name pattern:

Expressions, such as ab*, a.*, *a*, ?b, and so on, are


supported.

The expression * replaces no character or an arbitrary number


of characters.

The expression ? replaces exactly one arbitrary character.

Examples:

If you specify file*.txt as the File Name, the following les


are polled by the adapter: file1.txt, file2.txt, as well as
file.txtExample: and file1234.txt, and so on.

If you specify file?.txt as the File Name, the following les


are polled by the adapter: file1.txt, file2.txt, and so on,
but not the les file.txt or file1234.txt.

Although you can con gure this feature, it is not supported when
using the corresponding integration content with the SAP
Process Orchestration (SAP PO) runtime in releases lower than
SAP PO 7.5 SP5.

 Caution
Files with le names longer than 100 characters will be
processed with the following limitations:

If two les with names longer than 100 characters are


available for processing, only one of these les is
processed at a time. This means that both les are
processed, but not in parallel. This is also the case if
two runtime nodes/workers are available. If the
node/worker fails multiple times while processing a le
with a le name longer than 100 characters, none of the
les sharing the rst 100 characters with that le can be
executed without manual intervention from the
administrator.

The option Keep File and Mark as Processed in


Idempotent Repository (for sender channels under
Processing) will not work for these les.

Address Host name or IP address of the FTP server and an optional port, for
example, wdfd00213123:21.

This is custom documentation. For more information, please visit the SAP Help Portal 310
6/14/2023

Parameter Description

Proxy Type The type of proxy that you are using to connect to the target
system.

Select Internet if you are connecting directly to the FTP


server.

Select On-Premise if you are connecting to an on-premise


system.

See Using SAP Cloud Connector with Cloud Integration


Adapters.

Location ID To connect to an SAP Cloud Connector instance associated with


your account, enter the location ID that you de ned for this instance
(only if On-Premise is selected for Proxy Type) in the destination con guration of SAP BTP cockpit.

Encryption Specify the transport encryption. You can choose between the
following options:

Explicit FTPS: After an initial connection, the client with


send AUTH TLS command to the server and initial the
handshake this way. Afterwards, the communication will be
encrypted. Unless you speci ed a port in the address, the
default port will be 21.

Implicit FTPS: The client will connect to the server with an


TLS connection. This means the client starts the handshake
at the beginning of the communication. Unless you
speci ed a port in the address, the default port is 990.

Plain FTP - no encryption: No encryption will be applied,


for productive use (not recommended). Unless you
speci ed a port in the address, the default port is 21.

Credential Name Name of the User Credentials artifact that contains the user name
and password.

Timeout (in ms) Maximum time (in milliseconds) to wait for the FTP server to be
contacted while establishing connection or performing a read
operation.

Default value: 10000

The timeout should be more than 0, but less than ve minutes.

Maximum Reconnect Attempts Maximum number of attempts allowed to reconnect to the FTP
server.

Default value: 3

Enter 0 to disable this behavior.

Reconnect Delay (in ms) Time (in milliseconds) the system waits before attempting to
reconnect to the FTP server.

Default Value: 1000

Automatically Disconnect Disconnect from the FTP server after each message processing.

Select the Processing tab and provide values in the elds as follows.

Processing

This is custom documentation. For more information, please visit the SAP Help Portal 311
6/14/2023

Parameter Description

Read Lock Strategy Prevents les that are in the process of being written from being read from
the FTP server. The endpoint waits until it has an exclusive read lock on a le
before reading it.

Select one of the following options based on the capabilities of the FTP
server:

None (default): Does not use a read lock, which means that the
endpoint can immediately read the le. None is the simplest option if
the FTP server guarantees that a le only becomes visible on the
server once the process of writing it to the server has been nished.

Content Change: Monitors changes in the le length/modi cation


timestamp to determine if the write operation on the le is complete
and the le is ready to be read. If you have selected this option, the
system waits for at least one second until there are no more le
changes. Therefore, if you select this option, les cannot be read as
quickly as with the other two options.

Done File Expected : Uses a speci c le to signal that the le to be


processed is ready for consumption.

If you have selected this option, enter the name of the done le. The
done le signals that the le to be processed is ready for
consumption. This le must be in the same folder as the le to be
processed. Placeholders are allowed.

Default:

${file:name}.done

Rename: Renames the le on the FTP server before reading it.

Sorting Select the type of sorting to use to poll les from the FTP server:

Choose between the following options:

None (default): The sorting is speci ed by the TFP server.

File Name: Files are polled sorted by le name.

File Size: Files are polled sorted by le size.

Time Stamp: Files are polled sorted by the modi cation time stamp
of the le.

Sorting Order Choose from the following options:

(only if File Name, File Size, or File Stamp is selected for Ascending
Sorting)
Descending

This is custom documentation. For more information, please visit the SAP Help Portal 312
6/14/2023

Parameter Description

Max. Messages per Poll Maximum number of messages to gather in each poll. Consider how long it
will take to process this number of messages, and make sure that you set a
higher value for Lock Timeout (in min). The messages are picked up
sequentially.

Default: 20

Example: 1000 can be set as a limit.

 Note
The adapter processes the complete list of messages speci ed by this
parameter before the subsequent poll (according to the settings under
Scheduler) starts.

 Note
If you are using the sender FTP adapter in combination with an Aggregator
step and you expect a high message load, consider the following
recommendation:

Set the value for Max. Messages per Poll to a small number larger than 0
(for example, 20). This ensures proper logging of the message processing
status at runtime.

Lock Timeout (in min.) Specify how long to wait before trying to process the le again in the event of
a Cloud Integration outage. If it takes a very long time to process the scenario,
you may need to increase the timeout to avoid parallel processing of the same
le. This value should be higher than the processing time required for the
number of messages speci ed by Max. Messages per Poll in the Processing
tab. The default is set to 15 minutes.

Change Directories Stepwise Select this option to change directory levels step by step.

Include Subdirectories Select this option to look for les in all subdirectories of the directory.

Flatten File Names Flatten the le path by removing the directory levels so that only the le
names are considered.
(only if Include Subdirectories is selected)

Post-Processing Allows you to specify how les are to be handled after processing.

 Note
Note that only successfully processed messages can be post-processed.
If message processing fails, the Post-Processing settings are not
effective.

You can select one of the following options from the dropdown list:

Delete File (default): The le is deleted after it has been read.

If you have also selected Done File Expected as Read Lock Strategy,
the le to be processed as well as the done le is deleted.

Keep File and Mark as Processed in Idempotent Repository:


Prevents a le from being consumed twice. For that purpose, an
idempotent repository is activated.

The idempotent repository contains information about les already


been consumed from the SFTP server. Being stored in the idempotent
repository, a le can be identi ed by the le name. When Cloud
Integration tries to process the le, the system can detect if the le

This is custom documentation. For more information, please visit the SAP Help Portal 313
6/14/2023

Parameter Description

has already been consumed (based on its idempotent repository


entry) and that way can prevent it from being consumed a second
time from the FTP server.

Select this option for FTP servers that do not allow deletion or moving
of les, but the les are to be read only once.

Note that when you choose this option, the system only takes into
account the le name to decide whether it is the same le or not.
Attributes such like le size, timestamp, hash value, for example, are
ignored.

If you have also selected Done File Expected as Read Lock Strategy,
an entry will be created in the idempotent repository; the done le will
not be deleted.

Keep File and Process Again: The le is kept on the FTP server and
le processing is repeated. You can use this option for testing
purposes, for example.

If you choose this option, the le is processed with every message


processing run, even in case it has not be changed.

Move File: The le is moved to another directory.

If you select this option, you need to specify the target directory.

Make sure that you specify a relative le path for the target directory.
Note that the speci ed le path is de ned relative to the directory
speci ed with the Directory parameter.

 Note
If you specify an absolute le path, it may occur that the le
cannot be stored correctly at runtime.

You can also specify the target directory dynamically, for example,
using the timestamp of the message. The following example uses
backup folders with timestamps and replaces the le extension with
bak:
backup/${date:now:yyyyMMdd}/${file:name.noext}.bak

If you have also selected Done File Expected as Read Lock Strategy,
only the le to be processed is moved and the done le will be
deleted.

This is custom documentation. For more information, please visit the SAP Help Portal 314
6/14/2023

Parameter Description

Idempotent Repository You can select one of the following idempotent repository options:

(only if Keep File and Mark as Processed in Idempotent Database(default): Stores the le names in a database to synchronize
Repository is selected for Post-Processing) between multiple worker nodes and to prevent the les from being
read again when the runtime node is restarted. File name entries are
deleted by default after 90 days.

 Note
The idempotent repository uses the username, host name, and le
name as key values to identify les uniquely across integration
ows of a tenant.

In Memory: Keeps the le names in the memory. Files are read again
from the FTP server when the runtime node is restarted. It is not
recommended to use the In Memory option if multiple runtime nodes
are used. In this case the other nodes would pick the le and process
it because the memory is speci c to the runtime node.

Archive Directory Speci es the target directory where to move the le.

(only if Move File is selected for Post-Processing)

Select the Scheduler tab and provide values in the elds as follows.

Scheduler

Scheduler Option Field Description

Schedule on Day On Date Specify the date on which you want the
operation to be executed.

At Time Specify the time at which you want the


operation to be executed.

Every Specify a time period (for example, every


hour) in a dedicated time window.

Time Zone Select the time zone that you want the
scheduler to use as a reference for the date
and time settings.

Schedule to Recur Daily Select the time or interval and time zone for
the schedule to recur.

Weekly Select the checkboxes to indicate the days


of the week on which the operation has to
be executed. Also, specify the time or
interval for the schedule to recur.

Monthly Select the day of the month on which the


operation has to be executed. Also indicate
the time or the interval for the schedule to
recur.

Con gure the FTP Receiver Adapter

This is custom documentation. For more information, please visit the SAP Help Portal 315
6/14/2023
The FTP (File Transfer Protocol) receiver adapter connects SAP Cloud Integration to a remote system using TCP (Transmission
Control Protocol) to write les to the system.

 Note
In the following cases certain features might not be available for your current integration ow:

You are using a runtime pro le other than the one expected. See: Runtime Pro les.

A feature for a particular adapter or step was released after you created the corresponding shape in your integration
ow.

To use the latest version of a ow step or adapter – edit your integration ow, delete the ow step or adapter, add the
step or adapter, and con gure the same. Finally, redeploy the integration ow. See: Updating your Existing Integration
Flow.

 Note
This adapter exchanges data with a remote component that might be outside the scope of SAP. Make sure that the data
exchange complies with your company’s policies.

How the FTP Receiver Adapter Works

If you’ve con gured a receiver FTP adapter, message processing is performed as follows at runtime: The tenant sends a request
to an FTP server (think of this as the receiver system), and the data ow is in the same direction, from the tenant to the FTP
server. In other words, the tenant writes les to the FTP server (from where the communication partner can read them).

 Note
In the following cases certain features might not be available for your current integration ow:

You are using a runtime pro le other than the one expected. See: Runtime Pro les.

A feature for a particular adapter or step was released after you created the corresponding shape in your integration
ow.

To use the latest version of a ow step or adapter – edit your integration ow, delete the ow step or adapter, add the
step or adapter, and con gure the same. Finally, redeploy the integration ow. See: Updating your Existing Integration
Flow.

This is custom documentation. For more information, please visit the SAP Help Portal 316
6/14/2023
Overview of Integration Flow Editor.

 Note
Please consider the following when operating with the FTP Receiver Adapter:

Only the passive mode is supported for the FTP Receiver Adapter.

The transfer mode is BINARY. You can set the charset by setting the camelcharsetname header.

You can establish a connection to your on-premise system by using Cloud Connector: SAP Connectivity Service.

This adapter doesn’t support connections to SFTP servers.

See Con gure the SFTP Receiver Adapter.

Once you’ve created a receiver channel and selected the FTP receiver adapter, you can con gure the following attributes.
Select the General tab and provide values in the elds as follows.

General

Parameter Description

Name Enter the name of the FTP channel.

Select the Target tab and provide values in the elds as follows.

Target

Parameters Description

Directory Use the relative path to write the le to a directory.

Example: parentdirectory/childdirectory

You can con gure this parameter by entering a dynamic expression


such like ${property.property_name} or
${header.header_name} (see: Dynamically Con gure
Integration Flow Parameters).

This is custom documentation. For more information, please visit the SAP Help Portal 317
6/14/2023

Parameters Description

File Name Name of the le to be written.

You can con gure this parameter by entering a dynamic expression


such like ${property.property_name} or
${header.header_name} (see: Dynamically Con gure
Integration Flow Parameters).

 Note
If you don’t enter a le name and the parameter remains blank,
the content of the CamelFileName header isn’tused as le
name. If this header is speci ed, the Exchange ID is used as le
name.

The endpoint URL that is actually used at runtime is displayed in


the message processing log (MPL) in the message monitoring
application (MPL property ProduceFile). Note that you can
manually con gure the endpoint URL using the FileName attribute
of the FTP adapter. However, you can dynamically override the
value of this attribute by using the Camel header
CamelFileName.

Append Timestamp and dynamically con guring File Name


(through a Camel simple expression) must not be used together.
The reason is that using the Append Timestamp option results in
generating a simple expression for the date. Both simple
expressions result in an invalid expression that can’t be processed
correctly.

Append Timestamp Appends a timestamp at the end of the le name.

If the le has an extension (for example, .xml), the timestamp is


appended to the le extension itself. Example: If the le name is
myfile.xml, the Append Timestamp option (assuming the
timestamp is Nov 30, 2015, 10:10:20) generates the
following le name:

myfile20151201170800.xml

 Note
Be aware of the following behavior if you’ve con gured the le
name dynamically: Ifyou’ve selected the Append Timestamp
option, the timestamp overrides the le name de ned
dynamically via the header (CamelFileName).

Append Timestamp and dynamically con guring File Name


(through a Camel simple expression) must not be used together.
The reason is that using the Append Timestamp option results
in generating a simple expression for the date. Both simple
expressions result in an invalid expression that can’t be
processed correctly.

 Caution
Note that in case les are processed quickly, the Append
Timestamp option might not guarantee unique le names.

This is custom documentation. For more information, please visit the SAP Help Portal 318
6/14/2023

Parameters Description

Address Host name or IP address of the FTP server and an optional port, for
example, my.host.org:21.

You can con gure this parameter by entering a dynamic expression


such like ${property.property_name} or
${header.header_name} (see: Dynamically Con gure
Integration Flow Parameters).

Proxy Type The type of proxy that you’re using to connect to the target system.

Select Internet if you’re connecting directly to the FTP


server.

Select On-Premise if you are connecting to an on-premise


system.

For more information, see Using SAP Cloud Connector with


Cloud Integration Adapters.

For more information on how to use the On-Premise option


to connect to an on-premise FTP server, check out the SAP
Community blog Cloud Integration – How to Connect to an
On-Premise sftp server via Cloud Connector .

Select Dynamic to let the system determine at runtime


which proxy type to use. The value of property
SAP_FtpProxyType is used for that purpose (possible
values internet or onPremise).

If you’ve selected this option and if the property is not


de ned (for example, in a preceding step), an error is
raised at runtime.

Location ID To connect to an SAP Cloud Connector instance associated with


your account, enter the location ID that you de ned for this instance
(only if On-Premise or Dynamic is selected for Proxy Type
in the destination con guration on the cloud side.

You can con gure this parameter by entering a dynamic expression


such like ${property.property_name} or
${header.header_name} (see: Dynamically Con gure
Integration Flow Parameters).

This is custom documentation. For more information, please visit the SAP Help Portal 319
6/14/2023

Parameters Description

Encryption Specify the transport encryption. You can choose between the
following options:

Dynamic: Select this option to let the system determine at


runtime which encryption to use. The value of property
SAP_FtpEncryption is used for that purpose. Possible
values are ftp, ftps or ftpes.

ftp: Plain FTP – no encryption

ftps: Implicit FTPS

ftpes: Explicit FTPS

If you’ve selected this option and if the property isn’t


de ned (for example, in a preceding step), an error is
raised at runtime.

Explicit FTPS: After an initial connection, the client with


send AUTH TLS command to the server and initial the
handshake this way. Afterwards, the communication will be
encrypted. Unless you speci ed a port in the address, the
default port will be 21.

Implicit FTPS: The client will connect to the server with a


TLS connection. This means the client starts the handshake
at the beginning of the communication. Unless you
speci ed a port in the address, the default port is 990.

Plain FTP - no encryption: No encryption will be applied,


for productive use (not recommended). Unless you
speci ed a port in the address, the default port is 21.

Credential Name Name of the User Credential artifact that contains the user name
and password.

You can con gure this parameter by entering a dynamic expression


such like ${property.property_name} or
${header.header_name} (see: Dynamically Con gure
Integration Flow Parameters).

 Note
The FTP receiver adapter supports the possibility of logging in
anonymously: In Manage Security Material, choose Add User
Credentials and provide a user name ANONYMOUS and an
empty password (or a different username/password according
to the FTP server’s requirements).

See Deploying a User Credentials Artifact.

This is custom documentation. For more information, please visit the SAP Help Portal 320
6/14/2023

Parameters Description

Timeout (in ms) Maximum time to wait for the FTP server to be contacted while
establishing a connection. The default is set to 10000 ms.

The timeout should be more than 0, but less than ve minutes.

If the property SAP_FtpTimeout is de ned, its value is used to


specify this parameter at runtime.

 Note
There’s another x timeout which is relevant when the client is
waiting for the server to respond to commands. It is set to 5
min.

Maximum Reconnect Attempts Maximum number of attempts allowed to reconnect to the FTP
server.

Default value: 3

Use 0 to disable this behavior.

If the property SAP_FtpMaxReconnect is de ned, its value is


used to specify this parameter at runtime.

Reconnect Delay (in ms) The amount of time the system waits before attempting to
reconnect to the FTP server.

Default Value: 1000ms

If the property SAP_FtpMaxReconDelay is de ned, its value is


used to specify this parameter at runtime.

Automatically Disconnect Disconnect from the FTP server after each message processing.

If the property SAP_FtpDisconnect is de ned, its value is used


to specify this parameter at runtime (possible values: true and
false).

Select the Processing tab and provide values in the elds as follows.

Processing

Parameters Description

Change Directories Stepwise If selected, changes directory levels step by step (selected by
default).

If the property SAP_FtpStepwise is de ned, its value is used to


specify this parameter at runtime (possible values: true and
false).

Create Directories If selected, creates missing directory levels as provided in the


le's pathname (selected by default).

If the property SAP_FtpCreateDir is de ned, its value is used


to specify this parameter at runtime (possible values: true and
false).

This is custom documentation. For more information, please visit the SAP Help Portal 321
6/14/2023

Parameters Description

Flatten File Names Flatten the le path by removing the directory levels so that only
the le names are considered and they are written under a single
directory.

If the property SAP_FtpFlattenFileName is de ned, its value


is used to specify this parameter at runtime (possible values:
true and false).

Prevent Directory Traversal If the le contains any backward path traversals such as \..\ or
/../.., this carries a potential risk of directory traversal. In such
a case, message processing is stopped with an error. The unique
message ID is logged in the message processing log.

 Note
We recommend that you specify the Directory and File Name
elds to avoid any security risks. If you provide these elds, the
header is not considered.

Handling for Existing Files De ne how existing les should be treated.

Append: adds message to existing les

Fail: sends an error message in case les already exists

Ignore: ignores the existing le and doesn't send an error


message

Override: replaces existing le and saves it under existing


name

You can con gure this parameter by entering a dynamic expression


such like ${property.property_name} or
${header.header_name} (see: Dynamically Con gure
Integration Flow Parameters).

Use Temporary File (only if Override is selected for Handling for This option is used to write a le by using a temporary name and
Existing Files) then, after the process has been completed, rename it to the actual
name. It can be used to identify les which are being written. It also
blocks consumers (not using exclusive read locks) from reading
les in progress. It’s often used by the FTP server when uploading
big les.

HTTP Receiver Adapter


Use the HTTP receiver adapter to communicate with target systems using HTTP message protocol.

 Note
In the following cases certain features might not be available for your current integration ow:

You are using a runtime pro le other than the one expected. See: Runtime Pro les.

A feature for a particular adapter or step was released after you created the corresponding shape in your integration
ow.

To use the latest version of a ow step or adapter – edit your integration ow, delete the ow step or adapter, add the
step or adapter, and con gure the same. Finally, redeploy the integration ow. See: Updating your Existing Integration
Flow.

This is custom documentation. For more information, please visit the SAP Help Portal 322
6/14/2023

 Note
This adapter exchanges data with a remote component that might be outside the scope of SAP. Make sure that the data
exchange complies with your company’s policies.

The HTTP Receiver adapter works well with target systems that supports either chunked transfer encoding or rely on the
existence of the HTTP Content-Length header.

 Note

For versions 1.10 and lower, the adapter works only with target systems that support chunked transfer encoding and
may not rely on the existence of the HTTP Content-Length header.

SAP recommends you add content-type header that indicates type of payload before you make an HTTP outbound
call.

The adapter can process payloads having an attachment or MIME multipart messages that are converted to byte
array via script steps. For target systems that supports chunked transfer, you need not convert the payload to a byte
array.

 Note
If you want to dynamically override the con guration of the adapter, you can set the following headers before calling the
HTTP adapter:

CamelHttpUri

Overrides the existing URI set directly in the endpoint.

This header can be used to dynamically change the URI to be called.

CamelHttpQuery

Refers to the query string that is contained in the request URL.

In the context of a receiver adapter, this header can be used to dynamically change the URI to be called.

For example, CamelHttpQuery=abcd=1234.

Content-Type

HTTP content type that ts to the body of the request.

The content type is composed of two parts: a type and a subtype.For example, image/jpeg (where image is the
type and jpeg is the subtype).

Examples:

text/plain for unformatted text

text/html for text formatted with HTML syntax

image/jpeg for a jpeg image le

application/json for data in JSON format to be processed by an application that requires this format

More information on the available types: https://www.w3.org/Protocols/rfc1341/4_Content-Type.html

This is custom documentation. For more information, please visit the SAP Help Portal 323
6/14/2023
The list of available content types is maintained by the Internet Assigned Numbers Authority (IANA). For more
information, see http://www.iana.org/assignments/media-types/media-types.xhtml .

Content-Encoding

HTTP content encoding that indicates the encoding used during message transport (for example, gzip for GZIP le
compression).

This information is used by the receiver to retrieve the media type that is referenced by the content-type header.

If this header is not speci ed, the default value identity (no compression) is used.

More information: https://tools.ietf.org/html/rfc2616 (section 14.11)

The list of available content types is maintained by the Internet Assigned Numbers Authority (IANA). For more
information, see:http://www.iana.org/assignments/http-parameters/http-parameters.xhtml#content-coding .

 Note
If transferring text/* content types, you can also specify the character encoding in the HTTP header using the charset
parameter.

Here is an example of such a header:

Content-Type: text/html; charset=utf-8

The default character encoding that will be applied for text/* content types depends on the HTTP version: us-ascii for
HTTP 1.0 and iso-8859-1 for HTTP 1.1.

If you want to override the character encoding and avoid encoding issues when you use special characters, you can use the
Content Modi er step and specify the CamelCharsetName Exchange property. Consider the following example
con guration:

If you want to send iso-8859-1-encoded data to a receiver, make sure that you specify the CamelCharsetName
Exchange property (either header or property) as iso-8859-1.

 Note
Adapter tracing is supported for HTTP adapter. For more information, see Message Processing Log - Adapter Tracing.

Once you've created a receiver channel and selected the HTTP receiver adapter, you can con gure the following attributes. See
Overview of Integration Flow Editor.

Select the General tab and provide values in the elds as follows.

General

Parameter Description

Name Enter the name of the channel.

Select the Connection tab and provide values in the elds as follows.

Connection Details

Parameter Description

This is custom documentation. For more information, please visit the SAP Help Portal 324
6/14/2023

Parameter Description

Address URL of the target system that you're connecting to, for example,
https://mysystem.com

Note that the authentication method Client Certificate requires the


HTTPS protocol. For Basic authentication, it's recommended that you
use the HTTPS protocol.

You can also specify HTTP parameters in the URL. However, if you select the
HTTP method POST, parameters are sent in the body. You therefore get a
warning message if you con gure the parameter-value combination.

The following URL parameters are currently not allowed for technical reasons:

throwExceptionOnFailure

bridgeEndpoint

transferException

client

clientCon g

binding

sslContextParameters

bufferSize

You can dynamically con gure the Address eld of the HTTP adapter.

When you specify the Address eld of the HTTP adapter as ${header.a},
at runtime the value of header a (as contained in the incoming message) is
written into the Camel header CamelHttpUri.

 Remember
By using an * in the Allowed Headers eld of the Runtime Con guration
tab of the artifact, you allow all headers to pass through, including camel-
speci c headers. This action overwrites the URL set in the adapter that can
lead to runtime errors. To avoid such a scenario when using an *, add a
Content Modi er before the adapter to remove the CamelHttpUri
header.

Also, in case you set the CamelHttpUri header in another process step,
the Address eld gets overwritten.

The endpoint URL that is actually used at runtime is displayed in the message
processing log (MPL) in the message monitoring application (MPL property
RealDestinationUrl). Note that you can manually con gure the endpoint
URL using the Address attribute of the adapter. However, there are several
ways to dynamically override the value of this attribute (for example, by using
the Camel header CamelHttpUri).

This is custom documentation. For more information, please visit the SAP Help Portal 325
6/14/2023

Parameter Description

Query Query string that you want to send with the HTTP request.

Query strings must not be entered in the Address eld.

This parameter can be externalized.

You can dynamically con gure the Query eld of the HTTP adapter.

When you specify the Query eld of the HTTP adapter as ${header.a}, at
runtime the value of header a (as contained in the incoming message) is
written into the Camel header CamelHttpQuery.

 Note
When using HTTP Adapter in a CPI iFlow the parameters to be sent to the
HTTP target are speci ed in the Query eld. Using some special
characters as parameter name or value can result into error during saving
the iFlow or processing the request. The parameters with special values
need to be URL encoded.

Every special character in the Query eld should be URL encoded using
ASCII URL Encoding Reference or similar resources that can be easily
found for ASCII characters encoding.

Example

If URL request to be sent is: https://mysystem.com?


param[1]=test+param&param[2]="somevalue"

then in HTTP Adapter setting it looks like:

Address : https://mysystem.com

Query :
param%5B1%5D=test%2Bparam&param%5B2%5D=%22somevalue%22

Note that %5B , %5D, %2B and %22 are UTF-8 URL encoded values for
special characters [, ], + and " respectively.

Individual parameter-value pairs must be separated with an ”&” and there


must be an “=” between the name of a parameter and its value as shown in
example above.

Some special characters need URL encoding as shown above and some do
not such as &.

This is custom documentation. For more information, please visit the SAP Help Portal 326
6/14/2023

Parameter Description

Proxy Type The type of proxy that you are using to connect to the target system:

Select Internet if you are connecting to a cloud system.

Select On-Premise if you are connecting to an on-premise system.

 Note
If you select the On-Premise option, the following restrictions apply
to other parameter values:

Use HTTP instead of HTTPS when specifying the virtual


system url in the Address eld.

Do not use the option Client Certi cate for the


Authentication parameter, as it leads to errors when
performing consistency checks or during deployment.

 Note
If you select the On-Premise option and use the SAP Cloud
Connector to connect to your on-premise system, the Address eld
of the adapter references a virtual address, which has to be
con gured in the SAP Cloud Connector settings.

If you select Manual, you can manually specify Proxy Host and Proxy
Port (using the corresponding entry elds).

Furthermore, with the parameter URL to WSDL you can specify a Web
Service De nition Language (WSDL) le de ning the WS provider
endpoint (of the receiver). You can specify the WSDL by either
uploading a WSDL le from your computer (option Upload from File
System) or by selecting an integration ow resource (which needs to
be uploaded in advance to the Resources view of the integration ow).

This option is only available if you have chosen a Process


Orchestration product pro le.

Location ID To connect to a cloud connector instance associated with your account, enter
the location ID that you de ned for this instance in the destination
(only if you select On-Premise for Proxy Type.)
con guration on the cloud side. You can also enter ${header.headername}
or ${property.propertyname} to dynamically read the value from a
header or a property.

This is custom documentation. For more information, please visit the SAP Help Portal 327
6/14/2023

Parameter Description

Method Action that the HTTP request must perform.

POST

Requests that the receiver accepts the data enclosed in the request
body.

Delete

Requests that the origin server delete the resource identi ed by the
Request-URl.

Dynamic

The method is determined dynamically by reading a value from a


message header or property such as ${header.abc} or
${property.abc} during runtime.

GET

Sends a GET request to the receiver.

HEAD

Sends a HEAD request that is similar to a GET request but doesn't


return a message body.

PUT

Updates or creates the enclosed data on the receiver side.

PATCH

Partially updates existing resources.

TRACE

Sends a TRACE request to the receiver that sends back the message
to the caller.

Send Body Select this checkbox if you want to send the body of the message with the
request. For methods GET, DELETE, and HEAD, the body isn't sent by default
(only if you select for Method the option GET, DELETE,
because some HTTP servers don't support this function.
HEAD, or Dynamic.)

Expression The expression eld allows you to enter a simple expression that speci es the
HTTP method for the HTTP call . For example, you can de ne that the method
(only if you select for Method the option Dynamic.)
is determined dynamically by reading a value from a message header or
property such as ${header.abc} or ${property.abc}. If the header or
property doesn’t exist or its value is empty, the POST method is used by
default.

Authentication De nes how the tenant (as the HTTP client) authenticates itself against the
receiver.

You can select one of the following authentication methods:

None

When not to use any authentication can include, but not limited to, the
following cases:

If the target system that you want to communicate doesn't


require any authentication.

If you want to set an authorization header via a Content


Modi er step before the adapter.
This is custom documentation. For more information, please visit the SAP Help Portal 328
6/14/2023

Parameter Description

If you want to set an authorization header via a Script step


before the adapter.

Basic

The tenant authenticates itself against the receiver using user


credentials (user name and password).

It's a prerequisite that user credentials are speci ed in a Basic


Authentication artifact and deployed on the related tenant.

Principal Propagation – only if the Proxy Type is On-premise.

The tenant authenticates itself against the receiver by forwarding the


principal of the inbound user to the cloud connector, and from there to
the back end of the relevant on-premise system.

 Remember
When you want to use Principal Propagation as the authentication
method to connect with an on-premise system, don't pass any
authorization headers. Follow the approach recommended by SAP
BTP Connectivity. See: Authentication to the On-Premise System.

 Note
The token for principal propagation expires after 30 minutes. If it
takes longer than 30 minutes to process the data between the
sender and receiver channel, the token for principal propagation
expires, which leads to errors in message processing.

For special use cases, this authentication method can also be used
with the AS2 adapter.

OAuth2 Client Credentials – Use this grant type to access web


resources by authorizing the client application to perform required
actions on behalf of a user. For more information, see Deploying an
OAuth2 Client Credentials Artifact.

 Remember
If the OAuth2 authentication URL that you're going to use is that of
an on-premise system, the token fetch fails. You can overcome this
issue using a workaround. Use an HTTP Receiver Adapter to fetch
the token from your on-premise system and set the token as an
authorization header in a Groovy Script step.

Enabled only if you choose Proxy Type as Internet.

OAuth2 SAML Bearer Assertion

If you've chosen this option, the identity of the logged-in user


associated with the sender application or a dedicated technical user is
forwarded from the sender account to the receiver account. For more
information, see Deploying an OAuth2 SAML Bearer Assertion.

Client Certi cate

The tenant authenticates itself against the receiver using a client


certi cate.

It's a prerequisite that the required key pair is installed and added to a
keystore. This keystore has to be deployed on the related tenant. The
receiver side has to be con gured appropriately.

This is custom documentation. For more information, please visit the SAP Help Portal 329
6/14/2023

Parameter Description

 Note
You can externalize all attributes related to the con guration of the
authentication option. This includes the attributes with which you
specify the authentication option as such, as well as all attributes
with which you specify further security artifacts that are required
for any con gurable authentication option (Private Key Alias or
Credential Name).

Apply one of the following recommendations when externalizing


such attributes.

Externalize all attributes related to the con guration of all


options, for example, Authentication and Credential Name
and Private Key Alias.

Externalize only one of the following attributes: Private Key


Alias or Credential Name.

Avoid incomplete externalization, for example, only externalizing


the attribute for the Authentication parameter but not the related
Credential Name parameter. In such cases, the integration ow
con guration (based on the externalized parameters) cannot work
properly.

The reason for this is the following: If you have externalized the
Authentication parameter and only the Private Key Alias
parameter (but not Credential Name), all authentication options in
the integration ow con guration dialog (Basic, Client Certi cate,
and None) are selectable in a dropdown list. However, if you now
select Basic from the dropdown list, no Credential Name can be
con gured.

Credential Name Identi es the User Credential artifact that contains the credentials (user name
and password) for the Basic authentication. For OAuth2 SAML Bearer
(only if you select for Authentication the option Basic,
Assertion type authentication provides the OAuth2 Credential artifact name.
OAuth2 Client Credentials, or OAuth2 SAML Bearer
For more information see, Deploying an OAuth2 Client Credentials Artifact.
Assertion)
You can dynamically con gure the Credential Name property by specifying
either a header or a parameter name in one of the following ways:
${header.headername} or ${parameter.parametername}. As an
example, you can use a Script step before the adapter where you look up the
User CredentialsAuthorization. The HTTP adapter then uses this header
in the HTTP request.

Although you can con gure this feature, it is not supported when using the
corresponding integration content with the SAP Process Orchestration (SAP
PO) runtime in releases lower than SAP PO 7.5 SP5.

Private Key Alias Enter the private key alias that enables the system to fetch the private key
from keystore for authentication.
(only if you select Client Certi cate for authentication)

 Restriction
The values true and false aren't supported for this eld.

This is custom documentation. For more information, please visit the SAP Help Portal 330
6/14/2023

Parameter Description

Timeout (in ms) Maximum time that the tenant waits for a response before terminating
message processing.

The default value is 60000 milliseconds (1 minute).

Note that the timeout setting has no in uence on the Transmission Control
Protocol (TCP) timeout if the receiver or any additional component
interconnected between the Cloud Integration tenant and the receiver has a
lower timeout. For example, consider that you have con gured a receiver
channel timeout of 10 minutes and there is another component involved with a
timeout of 5 minutes. If nothing is transferred for a period of time, the
connection will be closed after the fth minute. In HTTP communication
spanning multiple components (for example, from a sender, through the load
balancer, to a Cloud Integration tenant, and from there to a receiver), the actual
timeout period is in uenced by each of the timeout settings of the individual
components that are interconnected between the sender and receiver (to be
more exact, of those components that can control the TCP session). The
component or device with the lowest number set for the idle session timeout
will determine the timeout that will be used.

Throw Exception on Failure By default, the option is enabled. This option throws an exception when there
are failed HTTP responses from the remote server. If there are failed HTTP
responses, then the message processing fails too.

To receive the exception and yet continue with the message processing of the
integration scenario, disable the option.

This option allows you to receive all responses irrespective of the HTTP status
code. The failure responses don't include other failure scenarios like timeout,
network, or handshake issues.

 Note
If you use the HTTP Receiver adapter in the End Message Event and
enable this option, the status shown for the message process log is
Completed.

Header Details

Parameter Description

This is custom documentation. For more information, please visit the SAP Help Portal 331
6/14/2023

Parameter Description

Request Headers Enter a list of custom headers, separated by a pipe (|), that you
want to send to the target system. By default, no custom headers
are sent. Alternatively, use an * to send all custom headers to the
target system.

 Remember
Use an * separately. If you use an * and custom header together
that are separated by a pipe (|), only the custom header is
considered.

You must have de ned the custom headers in the previous ow


steps like content modi ers or scripts before you mention them
in the HTTP Receiver Adapter.

The adapter doesn't support regular expressions like SAP*.

All Camel-speci c headers (that starts with camel or


org.apache.camel) and the below listed HTTP protocol
headers are excluded even if you specify them.

content-length

content-type

host

cache-control

connection

pragma

trailer

transfer-encoding

upgrade

via

warning

Response Headers Enter a list of headers coming from the target system's response,
separated by a pipe (|), to be received in the message. Use an * to
receive all the headers from the target system, which is also the
default value.

 Note
If integration ows are OData API artifacts, you can save the integration ow and deploy the OData API.

Related Information
Using SAP Cloud Connector with Cloud Integration Adapters
Dynamic Parameters (Example)
Script Example for Exception Handling in HTTP Receiver
Setting Up Principal Propagation (Example Scenario)

This is custom documentation. For more information, please visit the SAP Help Portal 332
6/14/2023

HTTPS Sender Adapter

Context
You use the HTTPS sender adapter to communicate with receiver systems using HTTPS message protocol.

 Note
In the following cases certain features might not be available for your current integration ow:

You are using a runtime pro le other than the one expected. See: Runtime Pro les.

A feature for a particular adapter or step was released after you created the corresponding shape in your integration
ow.

To use the latest version of a ow step or adapter – edit your integration ow, delete the ow step or adapter, add the
step or adapter, and con gure the same. Finally, redeploy the integration ow. See: Updating your Existing Integration
Flow.

 Note
This adapter exchanges data with a remote component that might be outside the scope of SAP. Make sure that the data
exchange complies with your company’s policies.

Supported Header:

 Remember
The adapter adds the headers that follow and you can't add them manually. The adapter removes any custom header that
you send with the pre x camel even if you add them as Allowed Headers in the Runtime Con guration of the integration
ow.

Also, any query parameter (with a key and value) that you send to the adapter is automatically converted to a header. So, if
you send a query and a header with same name, the adapter appends the query to the header.

SapAuthenticatedUserName

Contains the user name of the client that calls the integration ow.

The following HTTPS request headers for the sample HTTPS endpoint
https://test.bsn.neo.ondemand.com/http/hello?abcd=1234 are added to exchange headers for further
processing in integration ow:

CamelHttpUrl

Refers to the complete URL called, without query parameters.

For example, CamelHttpUrl=https://test.bsn.neo.ondemand.com/http/hello.

CamelHttpQuery

Refers to the query string that is contained in the request URL.

In the context of a receiver adapter, this header can be used to dynamically change the URI to be called.

For example, CamelHttpQuery=abcd=1234.

This is custom documentation. For more information, please visit the SAP Help Portal 333
6/14/2023
CamelHttpMethod

Refers to the incoming method names used to make the request. These methods are GET, POST, PUT, DELETE, and so
on.

CamelServletContextPath

Refers to the path speci ed in the address eld of the channel.

For example, if the address in the channel is /abcd/1234, then CamelServletContextPath is /abcd/1234.

 Note
Adapter tracing is supported for HTTPS adapter. For more information, see Message Processing Log - Adapter
Tracing.

When you deploy an integration ow with HTTPS sender adapter, you can see the endpoint information of this
integration ow in Manage Integration Content section of operations view.

When you have created a sender channel with HTTPS adapter, you can con gure the following attributes:

Connection

Parameters of the HTTPS Sender Adapter

Parameter Description

This is custom documentation. For more information, please visit the SAP Help Portal 334
6/14/2023

Parameter Description

Address Enter the URL of the HTTP system to connect to.

 Note
Use the following pattern: http://<host>:
<port>/http . This should be appended by the
unique address speci ed in the channel.

The eld value supports these characters ~, -, . , $ and


*.

The Address eld should start with '/ ' and can contain
alphanumeric values, '_' and '/ '. For example a valid
address is /test/123.

In the example mentioned above, you can use ~ only for


the address part which succeeds /test/

You can use $ only at the beginning of the address after


/.

You cannot begin address with., - or ~ . Alphanumeric


value or _ must succeed these characters.

You can use * only at the extreme end of the address


and no characters are allowed after *. A * can only be
preceded with /.

If you are using /*, it implies that URI containing the


pre x preceding the /* is supported. For example. if the
address is /Customer/* then URIs supported are
http://<host>:<port>/http/Customer/<Any-url>.

If you are using /path /*, then no other integration ows


with the addresses /path/any-URL or /path/any-
URL/text can be deployed across the tenant.

URIs are case insensitive. So, http://<host>:


<port>/http/test and http://<host>:
<port>/http/Test is treated as same.

 Note

This is custom documentation. For more information, please visit the SAP Help Portal 335
6/14/2023

Parameter Description

Authorization Speci es the authorization option for the sender.

You can select one of the following options:

Client Certi cate: Sender authorization is checked on the


tenant by evaluating the subject/issuer distinguished name
(DN) of the certi cate (sent together with the inbound
request). You can use this option together with the following
authentication option: Client-certi cate authentication
(without certi cate-to-user mapping).

User Role: Sender authorization is checked based on roles


de ned on the tenant for the user associated with the
inbound request. You can use this option together with the
following authentication options:

Basic authentication (using the credentials of the


user)

The authorizations for the user are checked based


on user-to-role assignments de ned on the tenant.

Client-certi cate authentication and certi cate-to-


user mapping

The authorizations for the user derived from the


certi cate-to-user mapping are checked based on
user-to-role assignments de ned on the tenant.

Depending on your choice, you can also specify one of the following
properties:

Client Certi cate Authorization

Allows you to select one or more client certi cates (based


on which the inbound authorization is checked).

Choose Add to add a new certi cate for inbound


authorization for the selected adapter. You can then select a
certi cate stored locally on your computer. You can also
delete certi cates from the list.

For each certi cate, the following attributes are displayed:


Subject DN (information used to authorize the sender) and
Issuer DN (information about the certi cate authority that
issues the certi cate).

User Role

Allows you to enter a role based on which the inbound


authorization is checked.

The role ESBMessaging.send is provided by default. It is a


prede ned role provided by SAP which authorizes a sender
system to process messages on a tenant.

This is custom documentation. For more information, please visit the SAP Help Portal 336
6/14/2023

Parameter Description

CSRF Protected This option prevents Cross-Site Request Forgery (CSRF), which is a
malicious online attack. Such attacks exposes user content without
their authorization.

 Note
During an inbound HTTPS communication, if the sender
adapter receives a GET or HEAD request to fetch the
CSRF token value and you have the enabled CSRF
Protected then the adapter will return the CSRF token
and stop processing the message further.

Include X-CSRF-Token in the HTTP header eld for all


modifying requests and these requests are validated
during runtime. If the validation fails then the server
returns “HTTP 403 Forbidden” status code.

Conditions

The parameters in Maximum Message Size allows you to set a maximum size limit for processing inbound messages. All
inbound messages that exceeds the con gured limit are rejected and the sender receives an error message.

 Note
The minimum allowable size limit is 1MB.

Configure to set size limit

Parameter Description

Body Size (in MB) De ne the allowable size limit for processing the message body.

Save the settings.

 Note
Additional incoming request headers and URL parameters can be added to exchange headers for further processing
in integration ow. You must de ne these headers and paramters in Allowed Headers list at integration ow level.

Once the integration ow processing completes, the HTTPS sender adapter returns header and body to end user and
sets the response code. You can use Content Modi er element to send back speci c http response and customize the
response.

The sample integration ow is as shown below:

Address URLs for http endpoints across integration ow must be unique. If it is not unique then the integration ow
does not start.

Adapter returns the following HTTP response code:

This is custom documentation. For more information, please visit the SAP Help Portal 337
6/14/2023
200 - Processing is successful

503 - Service is not available

500 - Exception during integration ow processing

Also, you can set the header CamelHttpResponseCode to customize the response code.

You can invoke the HTTP endpoints using the syntax <Base URI>/http/<Value of address eld>. You can get Base
URI value from Services tab in Properties view of a worker node.

Atleast one integration ow with SOAP endpoint must be deployed to view details in Services tab.

You should use Script element to customise which headers can be sent in response to the HTTP call. It is a
recommendation that you must remove internal headers and sent back only required headers.

If an exception occurs during a HTTPS call, due to which the message is not processed and you have selected Return
Exception to Sender, then the exception is sent back to the sender. For more information, see De ne Error
Con guration.

If an exception occurs during the HTTPS call and you have not selected Return Exception to Sender, it throws back a
message and MPL ID explaining the exception, rather than displaying the stack trace.

Related Information
Authentication and Authorization Options (Inbound)
OData API
Sender-Initiated Scenario (with HTTPS Sender Adapter)
Setting Up Inbound HTTP Connections (Integration Flow Processing), Neo Environment

IDoc Adapter
The IDoc adapter enables SAP Cloud Integration to exchange Intermediate Document (IDoc) messages with systems that
support communication via SOAP Web services.

Related Information
Con gure the IDoc Sender Adapter
Con gure the IDoc Receiver Adapter

Con gure the IDoc Sender Adapter


The IDoc sender adapter enables SAP Cloud Integration to receive Intermediate Document (IDoc) messages from a sender.

 Note
In the following cases certain features might not be available for your current integration ow:

You are using a runtime pro le other than the one expected. See: Runtime Pro les.

A feature for a particular adapter or step was released after you created the corresponding shape in your integration
ow.

To use the latest version of a ow step or adapter – edit your integration ow, delete the ow step or adapter, add the
step or adapter, and con gure the same. Finally, redeploy the integration ow. See: Updating your Existing Integration

This is custom documentation. For more information, please visit the SAP Help Portal 338
6/14/2023
Flow.

 Note
This adapter exchanges data with a remote component that might be outside the scope of SAP. Make sure that the data
exchange complies with your company’s policies.

 Note
The IDoc sender adapter cannot process composite IDoc messages (bulk messages).

Supported Headers
SapAuthenticatedUserName

Contains the user name of the client that calls the integration ow.

The following speci c headers are set by the IDoc sender adapter and can be used in the subsequent steps of the integration
ow.

SapIDocType

SapIDocTransferId

SapIDocDbId

More information: Headers and Exchange Properties Provided by the Integration Framework

Con guring the Adapter


Once you have created a sender channel and selected the IDoc adapter, you can con gure the following attributes. To change
the con gurations, you need to con gure a new channel.

The General tab shows general information such as the adapter type, its direction (sender or receiver), the transport protocol,
and the message protocol.

Select the Connection tab and provide values in the elds as follows.

Connection

Parameters Description

Address Relative endpoint address on which Cloud Integration can be reached by incoming requests, for
example, /GetEmployeeDetails.

 Note
When you specify the endpoint address /path, a sender can also call the integration ow
through the endpoint address /path/<any string> (for example, /path/test/).

Be aware of the following related implication: When you in addition deploy an integration ow
with endpoint address /path/test/, a sender using the /path/test endpoint address will
now call the newly deployed integration ow with the endpoint address /path/test/. When
you now undeploy the integration ow with endpoint address /path/test, the sender again
calls the integration ow with endpoint address /path (original behavior). Therefore, be careful
reusing paths of services. It is better using completely separated endpoints for services.

This is custom documentation. For more information, please visit the SAP Help Portal 339
6/14/2023

Authorization
Parameters Speci es the authorization option for the sender.
Description

 Note
The option client certi cate is not recommended. Instead, it is recommended to use the more
secure option role-based authorization with certi cate-to-user mapping.

You can select one of the following options:

Client Certi cate: Sender authorization is checked on the tenant by evaluating the
subject/issuer distinguished name (DN) of the certi cate (sent together with the inbound
request). You can use this option together with the following authentication option: Client-
certi cate authentication (without certi cate-to-user mapping).

User Role: Sender authorization is checked based on roles de ned on the tenant for the
user associated with the inbound request. You can use this option together with the
following authentication options:

Basic authentication (using the credentials of the user)

The authorizations for the user are checked based on user-to-role assignments
de ned on the tenant.

Client-certi cate authentication and certi cate-to-user mapping

The authorizations for the user derived from the certi cate-to-user mapping are
checked based on user-to-role assignments de ned on the tenant.

Depending on your choice, you can also specify one of the following properties:

Client Certi cate

Allows you to select one or more client certi cates (based on which the inbound
authorization is checked).

Choose Add to add a new certi cate for inbound authorization for the selected adapter. You
can then select a certi cate stored locally on your computer. You can also delete
certi cates from the list.

For each certi cate, the following attributes are displayed: Subject DN (information used to
authorize the sender) and Issuer DN (information about the certi cate authority that issues
the certi cate).

User Role

Allows you to select a role based on which the inbound authorization is checked.

Choose Select to get a list of all available roles.

The role ESBMessaging.send is provided by default. It is a prede ned role provided by


SAP that authorizes a sender system to process messages on a tenant. However, using SAP
BTP Cockpit, you can also de ne custom roles for the runtime node as well. When you
choose Select, a selection of all custom roles de ned that way is offered.

 Note
Note the following:

You can also type in a role name. This has the same result as selecting the role
from the value help: Whether the inbound request is authenticated depends on
the correct user-to-role assignment de ned in SAP BTP Cockpit.

When you externalize the user role, the value help for roles is offered in the
integration ow con guration as well.

If you have selected a product pro le for SAP Process Orchestration, the value
help will only show the default role ESBMessaging.send.

This is custom documentation. For more information, please visit the SAP Help Portal 340
6/14/2023

Select the Processing tab and provide values in the elds as follows.

Processing

Parameter Description

Invalid XML Character Handling Select how to handle XML documents containing characters which
are not valid in XML version 1.0/1.1. Depending on the XML version
of the source message, the adapter checks the characters against
the respective range allowed. Choose between the following
options:

Throw Error: An error is thrown during runtime.

Remove: Invalid characters are removed.

Substitute: Invalid characters are substituted by #.

If this con guration option is not available (because your are using
an older version, for example), the default behavior is to throw an
exception.

 Note
A character is considered valid, if it is part of the range listed
here:

Character Range for XML 1.0:

#x9 | #xA | #xD | [#x20-#xD7FF] |


[#xE000-#xFFFD] | [#x10000-#x10FFFF] /*
any Unicode character, excluding the surrogate
blocks, FFFE, and FFFF. */

See also: https://www.w3.org/TR/2008/REC-xml-


20081126/#charsets .

Character Range for XML 1.1:

[#x1-#xD7FF] | [#xE000-#xFFFD] |
[#x10000-#x10FFFF] /* any Unicode character,
excluding the surrogate blocks, FFFE, and FFFF. */

See also: https://www.w3.org/TR/2006/REC-xml11-


20060816/#charsets .

Restricted characters will be escaped automatically


when Remove or Substitute is used: [#x1-#x8] |
[#xB-#xC] | [#xE-#x1F] | [#x7F-#x84] |
[#x86-#x9F].

Select the Conditions tab and provide values in the elds as follows.

Conditions

Parameter Description

This is custom documentation. For more information, please visit the SAP Help Portal 341
6/14/2023

Parameter Description

Maximum Message Size This parameter allows you to con gure a maximum size for
inbound messages (smallest value for a size limit is 1 MB). All
inbound messages that exceed the speci ed size (per integration
ow and on the runtime node where the integration ow is
deployed) are blocked.

To con gure the maximum message size, you can specify the
following parameters:

Body Size

Attachment Size

If a message is rejected because it exceeds the con gured limit,


the sender receives an error message.

Related Information
De ning Permissions for Senders to Process Messages on a Runtime Node
Headers and Exchange Properties Provided by the Integration Framework
Setting Up Inbound HTTP Connections (Integration Flow Processing), Neo Environment

Con gure the IDoc Receiver Adapter


The IDoc receiver adapter enables SAP Cloud Integration to send Intermediate Document (IDoc) messages to a receiver.

 Remember
This component or some of its features might not be available in the Cloud Foundry environment. For more information on
the limitations, see SAP Note 2752867 .

 Note
In the following cases certain features might not be available for your current integration ow:

You are using a runtime pro le other than the one expected. See: Runtime Pro les.

A feature for a particular adapter or step was released after you created the corresponding shape in your integration
ow.

To use the latest version of a ow step or adapter – edit your integration ow, delete the ow step or adapter, add the
step or adapter, and con gure the same. Finally, redeploy the integration ow. See: Updating your Existing Integration
Flow.

 Note
This adapter exchanges data with a remote component that might be outside the scope of SAP. Make sure that the data
exchange complies with your company’s policies.

Supported Headers
SOAPAction Header

This is custom documentation. For more information, please visit the SAP Help Portal 342
6/14/2023
This header is part of the Web service speci cation.

The IDoc receiver adapter sends a request and gets an XML response. This response is standardized. It has the same structure
for all IDocs, with the exception of the type.

The following speci c headers are set by the IDoc receiver adapter.

SapIDocType

SapIDocTransferId

SapIDocDbId

SapMessageId

More information: Headers and Exchange Properties Provided by the Integration Framework

Con guring the Adapter


Once you have created a receiver channel and selected the IDoc adapter, you can con gure the following attributes.

The General tab shows general information such as the adapter type, its direction (sender or receiver), the transport protocol,
and the message protocol.

Connection

Parameters Description

Address Endpoint address on which Cloud Integration posts the outbound message, for
example http://<host>:<port>/payment.

You can dynamically con gure this eld by entering an expression such like
${header.a} or ${property.a}, depending on whether you like to use a header
or an Exchange property for dynamic con guration.

If you do that, at runtime the value of (header or exchange property) a, as contained


in the incoming message, will be written into the Camel header
CamelDestinationOverrideUrl and will be used to send the message to.

Also in case the CamelDestinationOverrideUrl header has been set by


another process step (for example, a Content Modi er), its value will be overwritten.

The endpoint URL that is actually used at runtime is displayed in the message
processing log (MPL) in the message monitoring application (MPL property
RealDestinationUrl). Note that you can manually con gure the endpoint URL
using the Address attribute of the adapter. However, there are several ways to
dynamically override the value of this attribute (for example, by using the Camel
header CamelHttpUri).

This is custom documentation. For more information, please visit the SAP Help Portal 343
6/14/2023

Parameters Description

Proxy Type The type of proxy that you are using to connect to the target system:

Select Internet if you are connecting to a cloud system.

Select On-Premise if you are connecting to an on-premise system.

 Note
If you select the On-Premise option, the following restrictions apply to
other parameter values:

Use HTTP instead of HTTPS when specifying the virtual system


url in the Address eld.

Do not use the option Client Certi cate for the Authentication
parameter, as it leads to errors when performing consistency
checks or during deployment.

 Note
If you select the On-Premise option and use the SAP Cloud Connector to
connect to your on-premise system, the Address eld of the adapter
references a virtual address, which has to be con gured in the SAP Cloud
Connector settings.

If you select Manual, you can manually specify Proxy Host and Proxy Port
(using the corresponding entry elds).

Furthermore, with the parameter URL to WSDL you can specify a Web
Service De nition Language (WSDL) le de ning the WS provider endpoint
(of the receiver). You can specify the WSDL by either uploading a WSDL le
from your computer (option Upload from File System) or by selecting an
integration ow resource (which needs to be uploaded in advance to the
Resources view of the integration ow).

This option is only available if you have chosen a Process Orchestration


product pro le.

Location ID only in case On-Premise is selected To connect to a cloud connector instance associated with your account, enter the
for Proxy Type. location ID that you de ned for this instance in the destination con guration on the
cloud side. You can also enter an expression such like ${header.headername} or
${property.propertyname} (example) to dynamically read the value from a
header or a property.

IDoc Content Type There are the following options:

Application/x-sap.doc

Allows only single IDoc record for each request.

Enables message sequencing.

Enables Exactly-Once processing.

 Note
Enables Exactly-Once processing in the backend, if the header
SapMessageId is set.

Text/XML

Allows multiple IDoc records for each request.

This is custom documentation. For more information, please visit the SAP Help Portal 344
6/14/2023

Parameters Description

Authentication You can select one of the following authentication methods:

Basic

The tenant authenticates itself against the receiver using user credentials
(user name and password).

It is a prerequisite that user credentials are speci ed in a User Credentials


artifact and deployed on the related tenant. Enter the name of this artifact in
the Credential Name eld of the adapter.

Client Certi cate

The tenant authenticates itself against the receiver using a client certi cate.

This option is only available if you have selected Internet for the Proxy Type
parameter.

It is a prerequisite that the required key pair is installed and added to a


keystore. This keystore has to be deployed on the related tenant. The
receiver side has to be con gured appropriately.

None

Principal Propagation

The tenant authenticates itself against the receiver by forwarding the


principal of the inbound user to the cloud connector, and from there to the
back end of the relevant on-premise system.

 Remember
When you want to use Principal Propagation as the authentication method
to connect with an on-premise system, don't pass any authorization
headers. Follow the approach recommended by SAP BTP Connectivity.
See: Authentication to the On-Premise System.

 Note
This authentication method can only be used with the following sender
adapters: HTTP, SOAP, IDoc, AS2.

 Note
Note that the token for principal propagation expires after 30 minutes.

If it takes longer than 30 minutes to process the data between the sender
and receiver channel, the token for principal propagation expires, which
leads to errors in message processing.

 Note
You can externalize all attributes related to the con guration of the authentication
option. This includes the attributes with which you specify the authentication
option as such, as well as all attributes with which you specify further security
artifacts that are required for any con gurable authentication option (Private Key
Alias or Credential Name).

Apply one of the following recommendations when externalizing such attributes.

Externalize all attributes related to the con guration of all options, for
example, Authentication and Credential Name and Private Key Alias.

Externalize only one of the following attributes: Private Key Alias or


Credential Name.

This is custom documentation. For more information, please visit the SAP Help Portal 345
6/14/2023

Parameters Description

Avoid incomplete externalization, for example, only externalizing the attribute


for the Authentication parameter but not the related Credential Name
parameter. In such cases, the integration ow con guration (based on the
externalized parameters) cannot work properly.

The reason for this is the following: If you have externalized the Authentication
parameter and only the Private Key Alias parameter (but not Credential Name),
all authentication options in the integration ow con guration dialog (Basic, Client
Certi cate, and None) are selectable in a dropdown list. However, if you now
select Basic from the dropdown list, no Credential Name can be con gured.

Credential Name (only available if you have Name of the User Credentials artifact that contains the credentials for basic
selected Basic for the Authentication parameter) authentication

You can dynamically con gure the Credential Name eld of the adapter by using a
Simple Expression (see http://camel.apache.org/simple.html . For example, you
can dynamically de ne the Credential Name of the receiver adapter by referencing a
message header ${header.MyCredentialName} or a message property
${property.MyCredentialName}.

Private Key Alias (only available if you have Speci es an alias to indicate a speci c key pair to be used for the authentication
selected Client Certi cate for the Authentication step.
parameter)
You can dynamically con gure the Private Key Alias parameter by specifying either
a header or a property name in one of the following ways: $
{header.headername} or $ {property.propertyname}.

Be aware that in some cases this feature can have a negative impact on
performance.

Timeout Speci es the time (in milliseconds) that the client will wait for a response before the
connection is being interrupted.

The default value is 60000 milliseconds (1 minute).

Compress Message Enables the WS endpoint to send compressed request messages to the WS Provider
and to indicate the WS Provider that it can handle compressed response messages.

Allow Chunking Used for enabling HTTP chunking of data while sending messages.

Return HTTP Response Code as Header When selected, writes the HTTP response code received in the response message
from the called receiver system into the header CamelHttpResponseCode.

This feature is disabled by default.

 Note
You can use this header, for example, to analyze the message processing run
(when level Trace has been enabled for monitoring). Furthermore, you can use this
header to de ne error handling steps after the integration ow has called the IDoc
SOAP receiver.

You cannot use the header to change the return code since the return code is
de ned in the adapter and cannot be changed.

Clean-up Request Headers Select this option to clean up the adapter speci c- headers after the receiver call.

Related Information
Headers and Exchange Properties Provided by the Integration Framework
Setting Up Outbound HTTP Connections

This is custom documentation. For more information, please visit the SAP Help Portal 346
6/14/2023

JDBC Receiver Adapter


The JDBC (Java Database Connectivity) adapter enables you to connect SAP Cloud Integration to cloud or on-premise
databases.

Use the JDBC receiver adapter in your integration ow to establish a connection with SAP-managed and third-party databases.
Before deploying the integration ow, you’re required to do the following to establish connection with the database:

Your tenant administrator has uploaded and deployed JDBC drivers. For more information, see Con gure JDBC Drivers.

Create a Data Source, to access the database, based on the uploaded JDBC driver. For more information, see Managing
JDBC Data Sources.

If you're connecting to on-premise database, then you must validate the connection in the Cloud Connector. For more
information, see Con gure Access Control.

Con gure the JDBC adapter to communicate with your database based on the environment that hosts your tenant.

 Note
In the following cases certain features might not be available for your current integration ow:

You are using a runtime pro le other than the one expected. See: Runtime Pro les.

A feature for a particular adapter or step was released after you created the corresponding shape in your integration
ow.

To use the latest version of a ow step or adapter – edit your integration ow, delete the ow step or adapter, add the
step or adapter, and con gure the same. Finally, redeploy the integration ow. See: Updating your Existing Integration
Flow.

 Note
This adapter exchanges data with a remote component that might be outside the scope of SAP. Make sure that the data
exchange complies with your company’s policies.

The JDBC receiver adapter uses XML SQL Format message protocol. The adapter performs operations such as read, write,
update, or delete database entries. For more information on modifying or structuring the content of the message payload, see
De ning XML Documents for Message Protocol XML SQL Format.

 Note

UPSERT operation is currently not supported for XML SQL format. It’s recommended to use stored procedure to
update an existing record. If the record doesn’t exist, then use INSERT.

Currently, only TCP connections are supported.

Deploy the public certi cate in the keystore of your Cloud Integration tenant for verifying the response.

While executing direct SQL queries, it’s recommended to use standard stored procedure method to read XML les.

Standard PI XML format is supported. But the PI XML doesn’t allow function calls to PostgreSQL server.

To try out a simple demo, visit the blog .

Supported Databases
This is custom documentation. For more information, please visit the SAP Help Portal 347
6/14/2023
The following table lists the databases currently supported for Neo or Cloud Foundry tenants.

Database supported for Neo and Cloud Foundry Database supported for Neo only

DB2 SAP ASE Service (Neo)

Microsoft SQL Server (Cloud) SAP HANA Service (Neo)

Microsoft SQL Server (On-Premise)

Oracle (Cloud)

Oracle (On-Premise)

PostgreSQL (Cloud)

JDBC for Postgres (On-Premise)

SAP HANA (Cloud)

SAP HANA Platform (On-Premise)`

JDBC for SAP ASE Service (Cloud)

JDBC for SAP ASE Platform (On-Premise)

Using the JDBC Adapter, Neo Environment


The following diagram shows how the JDBC adapter communicates with an HANA or ASE database that are managed by SAP.

The following diagram shows the supported the databases for Cloud Integration tenants hosted on Neo Environment:

This is custom documentation. For more information, please visit the SAP Help Portal 348
6/14/2023

Generating Access Token for JDBC Data Source

You need to generate tokens for newly deployed JDBC Data Source artifacts for an HANA or ASE database. If the artifacts
already exist, reuse the token until there is at least one artifact deployed for the database and you can’t generate new tokens
for an existing JDBC Data Source. In case you undeployed the last artifact, you need to generate a new token for a new artifact
for the speci c database. Use the following command to list all grants for the speci ed schema:

 Source Code
neo list-schema-access-grants --account owner --host hanatrial.ondemand.com --user myuser --id sc

For more information on allowing access and to generate a one-time access token that permits the requesting application to
access your schema from its subaccount, see Grant Access to Schemas. To list all current schema access grants for a speci ed
subaccount, see list-schema-access-grants.

Using the JDBC Adapter, Cloud Foundry Environment


You’ve a Cloud Integration tenant hosted on a Cloud Foundry or multi-cloud environment that needs access to the on-premise
(SQL server) or cloud databases provided "as-a-service" managed by third-party vendors.

By con guring the JDBC adapter you can connect to these databases. In addition, the adapter supports connection to a
relational database type that provides an easy access point to connect with another databases. Use Amazon Relational
Database Service (Amazon RDS) for accessing and managing the following databases:

PostgreSQL

Microsoft SQL

Oracle

 Note
SAP-managed databases such as HANA and ASE aren’t supported in a multi-cloud environment. As an alternative, you can
connect with SAP HANA Cloud database supported by AWS tenants hosted in the Cloud Foundry environment.

This is custom documentation. For more information, please visit the SAP Help Portal 349
6/14/2023

The following diagram shows the supported the databases for Cloud Integration..

Connection

After adding the JDBC receiver adapter step in your integration ow, set up the connection based on the description mentioned
in the table:

Configure the Connection Details as Per the Description

Field Description

JDBC Data Source Alias Enter the name of the data source, which is created to establish the
connection to your preferred database. For more information, see
Managing JDBC Data Sources.

 Note
Deployment of JDBC Data Source fails if you have
heterogeneous cluster setup, that is the cluster setup
must be con gured with the same runtime pro les.
Combination of different runtime pro les aren’t
supported.

You can use the same JDBC Data Source in different


integration ows con gured with JDBC adapter. But you
can’t use the same JDBC Data Source to con gure
multiple JDBC adapters within an integration ow. You
need to deploy two JDBC Data Source artifacts with
different names for the same database and use them in
the integrations ows having multiple JDBC adapters.

Connection Timeout (in s) Provide a connection timeout, in seconds, to de ne how long the
adapter waits for a server response before the connection retry is
terminated.

Query/Response Timeout (in s) Provide a query timeout, in seconds, to de ne the waiting duration
for receiving a query response. After the elapsed time, the adapter
stops waiting for response.

Maximum Records Determine a value to display the maximum number of fetched


records.

Batch Mode This enables you to process collection queries in a single request.
For more details, see Batch Payload and Operation.

This is custom documentation. For more information, please visit the SAP Help Portal 350
6/14/2023

Field Description

Batch Operation Choose the behavior of batch operation. For more details, see
Batch Payload and Operation.
(only available if Batch Mode is selected)

Payload and Operation


Payload is the data that you are sending through the JDBC receiver adapter. You can perform various operations like INSERT,
UPDATE, DELETE etc on this XML Payload.

Operations
INSERT

 Sample Code

<root>
<Insert_Statement1>
<dbTableName action="INSERT">
<table>test</table>
<access>
<emp_id>121</emp_id>
<emp_name>test121</emp_name>
</access>
<access>
<emp_id>122</emp_id>
<emp_name>test122</emp_name>
</access>
<access>
<emp_id>123</emp_id>
<emp_name>test123</emp_name>
</access>
</dbTableName>
</Insert_Statement1>
</root>

 Output Code

<?xml version="1.0" encoding="UTF-8" standalone="no"?>


<root>
<Insert_Statement1_response>
<insert_count>1</insert_count>
</Insert_Statement1_response>
</root>

UPDATE

 Sample Code
<root>
<Update_Statement1>

This is custom documentation. For more information, please visit the SAP Help Portal 351
6/14/2023
<dbTableName action="UPDATE">
<table>test</table>
<access>
<emp_name>test121</emp_name>
</access>
<key>
<emp_id>121</emp_id>
</key>
</dbTableName>
</Update_Statement1>
</root>

 Output Code
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<root>
<StatementName_response>
<update_count>1</update_count>
</StatementName_response>
</root>

DELETE

 Sample Code
<root>
<Delete_Statement1>
<dbTableName action="DELETE">
<table>TEST</table>
<key>
<emp_id>123</emp_id>
</key>
</dbTableName>
</Delete_Statement1>
</root>

 Output Code
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<root>
<Delete_Statement1_response>
<delete_count>1</delete_count>
</Delete_Statement1_response>
</root>

SELECT

 Sample Code
<root>
<Select_Statement1>
<dbTableName action="SELECT">
<table>TEST</table>
<key>
<emp_id>122</emp_id>
</key>
</dbTableName>
</Select_Statement1>
</root>

EXECUTE

This is custom documentation. For more information, please visit the SAP Help Portal 352
6/14/2023

 Sample Code
<root>
<Select_Statement1>
<dbTableName action="SELECT">
<table>TEST</table>
<key>
<emp_id>1</emp_id>
</key>
</dbTableName>
</Select_Statement1>
</root>

UPDATE INSERT

This operation lets you to update an existing entry. If it does not exist, a new entry is created.

 Sample Code

<root>
<StatementName>
<dbTableName action="UPDATE_INSERT">
<table>test</table>
<access>
<name>test125</name>
<id>125</id>
</access>
<key>
<id>125</id>
</key>
</dbTableName>
</StatementName>
</root>

 Output Code

<?xml version="1.0" encoding="UTF-8" standalone="no"?>


<root>
<StatementName_response>
<update_insert_count>1</update_insert_count>
</StatementName_response>
</root>

 Note
If your database has column names with special characters (like #, * etc), then, you must set ColumnNameAsTag="false"
in the incoming XML payload for JDBC receiver adapter to process these column names without throwing an exception.

 Sample Code
In this example, ColumnNameAsTag is set as false and name and value of the column must be de ned separately under
column tag.

<root>
<insert_statement ColumnNameAsTag="false">

This is custom documentation. For more information, please visit the SAP Help Portal 353
6/14/2023
<dbTableName action="INSERT">
<table>sampletest</table>
<access>
<column>
<name>ID#</name>
<value>112</value>
</column>
<column hasQuot="No">
<name>NAME#</name>
<value>XXX</value></column>
</access>
<access>
<column>
<name>ID#</name>
<value>113</value>
</column>
<column hasQuot="Yes">
<name>NAME#</name>
<value>ABC</value>
</column>
</access>
</dbTableName>
</insert_statement>
</root>

 Output Code

2 Rows inserted

<?xml version="1.0" encoding="UTF-8" standalone="no"?>

<root><insert_statement_response>

<insert_count>2</insert_count>

</insert_statement_response>

</root>

Batch Payload and Operation


Use this option to modify multiple records in a single payload either using INSERT, UPDATE or DELETE modes. This enables you
to process collection queries in a single request.

Batch Payload
Batch mode is supported in following ways:

XML payload is supported in INSERT, UPDATE and DELETE modes only.

This is custom documentation. For more information, please visit the SAP Help Portal 354
6/14/2023

 Sample Code

<root>
<insert_statement1>
<dbTableName action="INSERT">
<table>dbo.employee</table>
<access>
<emp_id>127</emp_id>
<birth_date hasQuot="Yes">1999-02-03</birth_date>
<email hasQuot="Yes">[email protected]</email>
<emp_name hasQuot="Yes">v XXXXX</emp_name>
<join_date hasQuot="Yes">2021-01-25</join_date>
<phone hasQuot="Yes">0123456789</phone>
</access>
</dbTableName>
</insert_statement1>
<insert_statement2>
<dbTableName action="INSERT">
<table>dbo.employee</table>
<access>
<emp_id>128</emp_id>
<birth_date hasQuot="Yes">2008-01-25</birth_date>
<email hasQuot="Yes">[email protected]</email>
<emp_name hasQuot="Yes"> g28</emp_name>
<join_date hasQuot="Yes">2021-10-25</join_date>
<phone hasQuot="Yes">0123456789</phone>
</access>
</dbTableName>
</insert_statement2>
</root>

With JDBC adapter Version 1.5 and above, you can now use multiple access tags with INSERT mode.

 Sample Code

<root>
<Insert_Statement1>
<dbTableName action="INSERT">
<table>TEST</table>
<access>
<emp_id>1</emp_id>
<emp_name>test</emp_name>
<email>[email protected]</email>
</access>
<access>
<emp_id>2</emp_id>
<emp_name>test</emp_name>
<email>[email protected]</email>
</access>
</dbTableName>
</Insert_Statement1>
<Update_Statement2>
<dbTableName action="UPDATE">
<table>TEST</table>

This is custom documentation. For more information, please visit the SAP Help Portal 355
6/14/2023
<access>
<join_date>testuser</join_date>
</access>
<key>
<emp_id>1</emp_id>
</key>
</dbTableName>
</Update_Statement2>
<Delete_Statement3>
<dbTableName action="DELETE">
<table>TEST</table>
<key>
<emp_id>1</emp_id>
</key>
</dbTableName>
</Delete_Statement3>
</root>

 Output Code

<?xml version="1.0" encoding="UTF-8" standalone="no"?>


<root>
<Insert_Statement1>
<table>TEST</table>
<insert_count>2</insert_count>
</Insert_Statement1>
<Update_Statement2>
<table>TEST</table>
<update_count>3</update_count>
</Update_Statement2>
<Delete_Statement3>
<table>TEST</table>
<delete_count>1</delete_count>
</Delete_Statement3>
</root>

Update Insert: This operation lets you to update an existing entry. If it does not exist, a new entry is created.

 Note
Multiple access tags are not supported.

Native Batch for UPSERT statement is not available in SAP HANA Platform and all other databases.

 Sample Code
For successful scenarios:

<?xml version="1.0" encoding="UTF-8"?>


<root>
<UPDATE_INSERT_statement>
<dbTableName action="UPDATE_INSERT">
<table>test</table>

This is custom documentation. For more information, please visit the SAP Help Portal 356
6/14/2023
<access>
<emp_name>test227</emp_name>
<email>[email protected]</email>
</access>
<key>
<emp_id>227</emp_id>
</key>
</dbTableName>
</UPDATE_INSERT_statement>
<UPDATE_INSERT_statement>
<dbTableName action="UPDATE_INSERT">
<table>test</table>
<access>
<emp_name>test228</emp_name>
<email>[email protected]</email>
</access>
<key>
<emp_id>228</emp_id>
</key>
</dbTableName>
</UPDATE_INSERT_statement>

<UPDATE_INSERT_statement>
<dbTableName action="UPDATE_INSERT">
<table>test</table>
<access>
<emp_name>test229</emp_name>
<email>[email protected]</email>
</access>
<key>
<emp_id>229</emp_id>
</key>
</dbTableName>
</UPDATE_INSERT_statement>
</root>

 Output Code

<?xml version="1.0" encoding="UTF-8" standalone="no"?>


<root>
<insert_statement><table>TEST</table>
<update_insert_count>1</update_insert_count></insert_statement>
<insert_statement><table>TEST</table><update_insert_count>1</update_insert_count></insert_s
<insert_statement><table>TEST</table><update_insert_count>1</update_insert_count></insert_s
</root>

 Sample Code
For faliure scenarios:

This is custom documentation. For more information, please visit the SAP Help Portal 357
6/14/2023

<?xml version="1.0" encoding="UTF-8"?>


<root>

<UPDATE_INSERT_statement>
<dbTableName action="UPDATE_INSERT">
<table>saffrontest</table>
<access>
<emp_name>test227</emp_name>
<email>[email protected]</email>
</access>
<key>
<emp_id>227</emp_id>
</key>
</dbTableName>
</UPDATE_INSERT_statement>

<UPDATE_INSERT_statement>
<dbTableName action="UPDATE_INSERT">
<table>saffrontest</table>
<access>
<emp_name>test228</emp_name>
<email>[email protected]</email>
</access>
<key>
<emp_id>228</emp_id>
</key>
</dbTableName>
</UPDATE_INSERT_statement>

<UPDATE_INSERT_statement>
<dbTableName action="UPDATE_INSERT">
<table>saffrontest</table>
<access>
<emp_id>221</emp_id>
<emp_name>test</emp_name>
<email>[email protected]</email>
</access>
<key>
<emp_id>229</emp_id>
</key>
</dbTableName>
</UPDATE_INSERT_statement>
</root>

 Output Code

Error Details

com.sap.it.rt.adapter.http.api.exception.HttpResponseException: An internal server error oc

Statement : UPDATE_INSERT_statement ; Failed Operation : INSERT ; statement sequence : 3 .

The MPL ID for the failed message is : AGO_s9LDIZCVYPn25Ir6mqBK7EJw

This is custom documentation. For more information, please visit the SAP Help Portal 358
6/14/2023

 Note
The above error occurs because the table test already contains a record with 221 (emp_id) as primary key. Hence, the
key 229 cannot be updated as 221, primary key should be unique.

Stored procedures:

 Sample Code

<root>
<StatementName>
<storedProcedureName action="EXECUTE">
<table>samplestoredproc</table>
<emp_id type="INTEGER">3</emp_id>
<emp_name type="VARCHAR">test</emp_name>
</storedProcedureName >
</StatementName>
</root>

 Output Code

<?xml version="1.0" encoding="UTF-8" standalone="no"?>


<root>
<StatementName_response>
<response_1>
<row>
<emp_id>3</emp_id>
<emp_name>test</emp_name>
<email>[email protected]</email>
</row>
</response_1>
</StatementName_response>
</root>

Native SQL queries are supported with prepared statements only. If you are using batch mode with native SQL queries,
ensure:

Message Body contains query.

Message Header contains payload against the parameter name CamelSqlParameters. The data type of the
parameter must be List of List.

A way to achieve this is via Groovy Script.

 Sample Code

import com.sap.gateway.ip.core.customdev.util.Message;
import java.util.HashMap;
import java.util.Arrays;

//Insert script
def Message processData(Message message) {

This is custom documentation. For more information, please visit the SAP Help Portal 359
6/14/2023
//Headers
List paramList = new ArrayList();
paramList.add(Arrays.asList(108, 'test', 2021-01-01,1,1,'[email protected]'));
paramList.add(Arrays.asList(107, 'test', 2021-01-01,1,1,'[email protected]'));
paramList.add(Arrays.asList(111, 'test', 2021-01-01,1,1,'[email protected]'));
paramList.add(Arrays.asList(105, 'test', 2021-01-01,1,1,'[email protected]'));
message.setHeader("CamelSqlParameters",paramList);

//Body
message.setBody("INSERT INTO XIVERI.dbo.saffrontest(emp_id,emp_name,join_date,a1,a2,ema
return message;
}

 Note
If your database has column names with special characters (like #, * etc), then, you must set ColumnNameAsTag="false"
in the incoming XML payload for JDBC receiver adapter to process these column names without throwing an exception.

 Sample Code
In this example, ColumnNameAsTag is set as false and name and value of the column must be de ned separately under
column tag.

<root>
<InsertStatement ColumnNameAsTag="false">
<dbTableName action = "SELECT">
<table> sampletest </table>
<access>
<column>
<name>ID#</name>
<value>112</value>
</column>
<column hasQuot="Yes">
<name>NAME#</name>
<value>XXX</value></column>
</access>
</dbTableName>
</InsertStatement>
<InsertStatement>
<dbTableName action = "SELECT">
<table> sampletest </table>
<access>
<column>
<name>ID#</name>
<value>113</value>
</column>
<column hasQuot="Yes">
<name>NAME#</name>
<value>ABC</value>
</column>
</access>
</dbTableName>
</InsertStatement>

This is custom documentation. For more information, please visit the SAP Help Portal 360
6/14/2023
</root>

Batch Operation
You can select the behavior of Batch operation:

Atomic- Considers each batch operation as a single unit. It updates the whole batch operation successfully or reverts the
entire operation to its initial state if anything in the batch operation fails.

Non-Atomic- This is based on the behavior of the database. It updates all the successfully executed records and throws
an exception if anything fails. It does not revert the failed records to its initial state.

JDBC for DB2 (On-Premise)


JDBC receiver adapter supports DB2 On-Premise database provided by IBM.

 Note
This adapter enables you to connect Cloud Integration to a remote database system. SAP can’t give advice on how to
con gure the external system nor does SAP provide support related to this system.

Database Details

Database Provider IBM

Infrastructure On-Premise

SAP BTP Environment Neo and Cloud Foundry

JDBC URL Pattern jdbc:db2://<host>:


<port>/<database_name>:property1=value1;property2=value2;...

Each property and value pair, including the last one, must end with a semicolon (;).
Don't include space or other white-space characters anywhere within the list of
property and value strings.

JDBC URL Example jdbc:db2://mydb2:5021/mydb2db

Before connecting to this database, you must upload the drivers and then, add the Data Source. For more details, see Con gure
JDBC Drivers and Managing JDBC Data Sources.

Related Information
JDBC Receiver Adapter

JDBC for Microsoft SQL Server (On-Premise)


JDBC receiver adapter supports Microsoft SQL Server On-Premise database provided by Microsoft.

 Note

This is custom documentation. For more information, please visit the SAP Help Portal 361
6/14/2023
This adapter enables you to connect Cloud Integration to a remote database system. SAP can’t give advice on how to
con gure the external system nor does SAP provide support related to this system.

Database Details

Database Provider Microsoft

Infrastructure On-Premise

SAP BTP Environment Neo and Cloud Foundry

JDBC URL Pattern jdbc:sqlserver://[serverName[\instanceName][:portNumber]]


[;property=value[;property=value]]

You can delimit properties by using semicolon (;). You can't duplicate them.

Multi-instance support:

To connect to database, provide the instance name in the URL using property instanceName.

JDBC URL Example jdbc:sqlserver://testmysql:3333;database=testdb;instanceName=SQLEXPRESS

Before connecting to this database, you must upload the drivers and then, add the Data Source. For more details, see Con gure
JDBC Drivers and Managing JDBC Data Sources.

 Note
Connectivity to multi cluster MS-SQL managed azure instance database is not supported.

Related Information
JDBC Receiver Adapter

JDBC for Microsoft SQL Server (Cloud)


JDBC receiver adapter supports Microsoft SQL Server cloud database provided by Amazon RDS.

 Note
This adapter enables you to connect Cloud Integration to a remote database system. SAP can’t give advice on how to
con gure the external system nor does SAP provide support related to this system.

Database Details

Database Amazon RDS Microsoft Azure


Provider

Infrastructure Cloud

SAP BTP Neo and Cloud Foundry


Environment

JDBC URL jdbc:sqlserver://[serverName[\instanceName][:portNumber]] jdbc:sqlser


Pattern [;property=value[;property=value]] [;property=

You can delimit properties by using semicolon (;). You can't duplicate them. You can delimit

JDBC URL jdbc:sqlserver://mysqlserver:1433;databaseName=mysqlserverdb;loginTimeout=0 jdbc:sqlser


Example

This is custom documentation. For more information, please visit the SAP Help Portal 362
6/14/2023
Before connecting to this database, you must upload the drivers and then, add the Data Source. For more details, see Con gure
JDBC Drivers and Managing JDBC Data Sources.

 Note
If your database connection fails, try appending @servername to your username in the User eld while adding the Data
Source. For example, if your username is test, and servername is mysqlserver, enter test@mysqlserver as User and try
establishing the connection.

Related Information
JDBC Receiver Adapter

JDBC for Oracle (Cloud)


JDBC receiver adapter supports Oracle cloud database provided by Amazon RDS.

 Note
This adapter enables you to connect Cloud Integration to a remote database system. SAP can’t give advice on how to
con gure the external system nor does SAP provide support related to this system.

Database Details

Database Provider Amazon RDS

Infrastructure Cloud

SAP BTP Environment Neo and Cloud Foundry

JDBC URL Pattern jdbc:oracle:thin:@<database>

To connect to Oracle Database SID, use:


jdbc:oracle:thin:@<host>[:<port>]:<SID>

JDBC URL Example jdbc:oracle:thin:@myoracle:1521:my_sid

Before connecting to this database, you must upload the drivers and then, add the Data Source. For more details, see Con gure
JDBC Drivers and Managing JDBC Data Sources.

Related Information
JDBC Receiver Adapter

JDBC for Oracle (On-Premise)


JDBC receiver adapter supports Oracle On-Premise database provided by Oracle.

 Note
This adapter enables you to connect Cloud Integration to a remote database system. SAP can’t give advice on how to
con gure the external system nor does SAP provide support related to this system.

Database Details

This is custom documentation. For more information, please visit the SAP Help Portal 363
6/14/2023

Database Provider Oracle

Infrastructure On-Premise

SAP BTP Environment Neo and Cloud Foundry

JDBC URL Pattern jdbc:oracle:thin:@<database>

To connect to Oracle Database SID, use:


jdbc:oracle:thin:@<host>[:<port>]:<SID>

JDBC URL Example jdbc:oracle:thin:@myoracle:1521:my_sid

Before connecting to this database, you must upload the drivers and then, add the Data Source. For more details, see Con gure
JDBC Drivers and Managing JDBC Data Sources.

 Note
Oracle RAC setup is not supported.

Related Information
JDBC Receiver Adapter

JDBC for PostgreSQL (Cloud)


JDBC receiver adapter supports PostgreSQL cloud database provided by Amazon RDS and Microsoft Azure.

 Note
This adapter enables you to connect Cloud Integration to a remote database system. SAP can’t give advice on how to
con gure the external system nor does SAP provide support related to this system.

Database Details

Database Amazon RDS Microsoft Azure


Provider

Infrastructure Cloud

SAP BTP Neo and Cloud Foundry


Environment

JDBC URL jdbc:postgresql://host:port/database? jdbc:postgresql://host:port/database?


Pattern param1=value1&param2=value2&… param1=value1&param2=value2&…

JDBC URL jdbc:postgresql://mypostgresql:5434/mypostgresdb? jdbc:postgresql://mypostgresql:5434/m


Example ssl=false&loglevel=2 ssl=false&loglevel=2

Before connecting to this database, you must add the Data Source. For more details, see Managing JDBC Data Sources.

 Note
JDBC receiver adapter enables you to connect Cloud Integration to a remote database system. SAP can’t give advice on how
to con gure the external system nor does SAP provide support related to this system.

This is custom documentation. For more information, please visit the SAP Help Portal 364
6/14/2023

Related Information
JDBC Receiver Adapter

JDBC for Postgres (On-Premise)


JDBC receiver adapter supports Postgre On-Premise database.

 Note
This adapter enables you to connect Cloud Integration to a remote database system. SAP can’t give advice on how to
con gure the external system nor does SAP provide support related to this system.

Database Details

Database Postgres
Provider

Infrastructure On-Premise

SAP BTP Neo and Cloud Foundry


Environment

JDBC URL jdbc:postgresql://host:port/database? jdbc:postgresql://host:port/database?


Pattern param1=value1&param2=value2&… param1=value1&param2=value2&…

JDBC URL jdbc:postgresql://mypostgresql:5434/mypostgresdb? jdbc:postgresql://mypostgresql:5434/m


Example ssl=false&loglevel=2 ssl=false&loglevel=2

Before connecting to this database, you must add the Data Source. For more details, see Managing JDBC Data Sources.

 Note
Connectivity to Postgres service instance of Business Technology Platform (Cloud Foundry environment) is not supported.

JDBC for SAP ASE Service (Neo)


JDBC receiver adapter supports SAP ASE Service database provided by SAP.

Database Details

Database Provider SAP

Infrastructure Cloud

SAP BTP Environment Neo

This database requires access tokens only. It does not require JDBC URL.

Before connecting to this database, you must add the Data Source. For more details, see Managing JDBC Data Sources.

 Note
This documentation doesn’t provide further advice on how to con gure the connected database system. Check out the
corresponding documentation for more details.

This is custom documentation. For more information, please visit the SAP Help Portal 365
6/14/2023

Related Information
JDBC Receiver Adapter

JDBC for SAP ASE Platform (On-Premise)


JDBC receiver adapter supports SAP ASE Platform On-Premise database provided by SAP.

Database Details

Database Provider SAP

Infrastructure On-Premise

SAP BTP Environment Neo and Cloud Foundry

JDBC URL Pattern jdbc:sybase:Tds:<server>:<port>/<db/schemaName>

JDBC URL Example jdbc:sybase:Tds:aseonprem:1100/NEO_TEST

Before connecting to this database, you must add the Data Source. For more details, see Managing JDBC Data Sources.

 Note
This documentation doesn’t provide further advice on how to con gure the connected database system. Check out the
corresponding documentation for more details.

JDBC for SAP ASE Service (Cloud)


JDBC receiver adapter supports SAP ASE Service cloud database provided by SAP.

Database Details

Database Provider SAP

Infrastructure Cloud

SAP BTP Environment Neo and Cloud Foundry

JDBC URL Pattern jdbc:sybase:Tds:[host]:[port]/[dbname]

JDBC URL Example jdbc:sybase:Tds:aseoncloud:1100/TEST_1

Before connecting to this database, you must add the Data Source. For more details, see Managing JDBC Data Sources.

 Note
This documentation doesn’t provide further advice on how to con gure the connected database system. Check out the
corresponding documentation for more details.

JDBC for SAP HANA (Cloud)


JDBC receiver adapter supports SAP HANA cloud database provided by SAP.

Database Details
This is custom documentation. For more information, please visit the SAP Help Portal 366
6/14/2023

Database Provider SAP

Infrastructure Cloud

SAP BTP Environment Neo and Cloud Foundry

JDBC URL Pattern jdbc:sap://<server>:<port>[/?<options>]

JDBC URL Example jdbc:sap://myhana:30013/?


databaseName=myhanadb&encrypt=true&validateCertificate=trueBefore
connecting to this database, you must add the Data Source. For
more details, see

Managing JDBC Data Sources.

 Note
This documentation doesn’t provide further advice on how to con gure the connected database system. Check out the
corresponding documentation for more details.

JDBC for SAP HANA Platform (On-Premise)


JDBC receiver adapter supports SAP HANA Platform On-Premise database provided by SAP.

Database Details

Database Provider SAP

Infrastructure On-Premise

SAP BTP Environment Neo and Cloud Foundry

JDBC URL Pattern jdbc:sap://<server>:<port>[/?<options>]

JDBC URL Example jdbc:sap://myhana:30013/?databaseName=myhanadb

Before connecting to this database, you must add the Data Source. For more details, see Managing JDBC Data Sources.

 Note
This documentation doesn’t provide further advice on how to con gure the connected database system. Check out the
corresponding documentation for more details.

Related Information
JDBC Receiver Adapter

JDBC for SAP HANA Service (Neo)


JDBC receiver adapter supports SAP HANA Service cloud database provided by SAP.

Database Details

Database Provider SAP

Infrastructure Cloud

This is custom documentation. For more information, please visit the SAP Help Portal 367
6/14/2023

SAP BTP Environment Neo

This database requires access tokens only. It does not require JDBC URL.

Before connecting to this database, you must add the Data Source. For more details, see Managing JDBC Data Sources.

 Note
This documentation doesn’t provide further advice on how to con gure the connected database system. Check out the
corresponding documentation for more details.

Related Information
JDBC Receiver Adapter

JMS Adapter
You con gure the JMS adapter to enable asynchronous messaging using message queues.

You con gure the JMS receiver and sender adapters to enable asynchronous messaging using message queues. The incoming
message is stored temporarily in a queue and scheduled for processing. The processing of messages from the queue isn't
serialized.

The JMS messaging instance that is used in asynchronous messaging scenarios with the JMS, AS2, AS4, or the XI adapter has
limited resources. SAP Integration Suite Standard Edition or SAP BTP Event Mesh set a limit on the queues, storage, and
connections that you can use in the messaging instance. For more information, see JMS Resource Limits and Optimizing their
Usage.

Related Information
Con gure the JMS Sender Adapter
Con gure the JMS Receiver Adapter
JMS Resource Limits and Optimizing their Usage

Con gure the JMS Sender Adapter


The JMS (Java Message Service) sender adapter enables asynchronous decoupling of inbound and outbound processing by
using message queues. The sender adapter consumes messages from a JMS queue.

 Note
In the following cases certain features might not be available for your current integration ow:

You are using a runtime pro le other than the one expected. See: Runtime Pro les.

A feature for a particular adapter or step was released after you created the corresponding shape in your integration
ow.

To use the latest version of a ow step or adapter – edit your integration ow, delete the ow step or adapter, add the
step or adapter, and con gure the same. Finally, redeploy the integration ow. See: Updating your Existing Integration
Flow.

This is custom documentation. For more information, please visit the SAP Help Portal 368
6/14/2023

 Note
Note that this adapter works with a message broker provided by SAP (based on the SAP Event Mesh capability). It does not
support connectivity to any other, customer-provided message brokers. The usage of this adapter is supported by all SAP
Integration Suite editions, except the basic edition (see SAP note 2903776 ).

To understand the concept of asynchronous decoupling, assume that a sender sends a message to SAP Cloud Integration
(inbound processing). If there's an error in outbound processing (for example, a receiver can't be reached temporarily), the
middleware (SAP Cloud Integration) retries message processing independently. There's no need that the sender triggers a
reprocessing of the message as soon as the error situation has been solved. The sender relies on the middleware to do that. To
support this scenario, the message received from the sender is stored in a queue (using the JMS receiver adapter). Outbound
processing is modeled in an integration ow that initially consumes the message from the queue (using the JMS sender
adapter). The outbound integration ow retries the message from the queue as long as the error situation lasts.

The following gure shows the involved components.

Assuming that you have designed an integration ow with a JMS sender adapter. On deployment of the integration ow, the
JMS queue (as speci ed in the adapter) is created and the tenant opens a consumer connection to the message broker. The
message broker pushes messages through this connection.

 Note
Certain constraints apply with regard to the number and capacity of queues involved, as well as for the headers and
exchange properties de ned in the integration ow before the message is saved to the queue. See JMS Resource Limits and
Optimizing their Usage

The JMS adapter does not serialize messages. This means that there is no guarantee of the order in which the messages
are consumed by SAP Cloud Integration. When the integration ow (with the JMS sender adapter) is deployed on multiple
worker nodes, the messages are processed in parallel. For additional information, also check out the description of
parameter Number of Concurrent Processes.

 Note
In the following cases certain features might not be available for your current integration ow:

This is custom documentation. For more information, please visit the SAP Help Portal 369
6/14/2023
You are using a runtime pro le other than the one expected. See: Runtime Pro les.

A feature for a particular adapter or step was released after you created the corresponding shape in your integration
ow.

To use the latest version of a ow step or adapter – edit your integration ow, delete the ow step or adapter, add the
step or adapter, and con gure the same. Finally, redeploy the integration ow. See: Updating your Existing Integration
Flow.

Once you've created a sender channel and selected the JMS Sender Adapter, you can con gure the following attributes. See
Overview of Integration Flow Editor.

Select the General tab and provide values in the elds as follows.

General

Parameter Description

Name Enter the name of the channel.

Select the Connection tab and provide values in the elds as follows.

Connection

Section Parameters Description

Processing Details Queue Name Enter the name of the message queue.

Number of Concurrent Processes Enter the number of concurrent processes


for each worker node. The recommended
value depends on the number of worker
nodes, the number of queues on the tenant,
and the incoming load. Make sure to enter a
value that is as small as possible (1-5)
because JMS resources are limited (see:
Cloud Integration – JMS Resource and Size
Limits and Cloud Integration – Con gure
Asynchronous Messaging with Retry Using
JMS Adapter ).

 Note
Default number of concurrent processes
is 1. Increase this number only if parallel
processing is required for your scenario.
However, be aware of the fact that, when
processing large messages, a high
number of concurrent processes can
lead to out of memory problems.

This is custom documentation. For more information, please visit the SAP Help Portal 370
6/14/2023

Section Parameters Description

Retry Handling Retry Interval (in m) Enter a value for the amount of time to wait
before retrying message delivery.

 Note
In the JMS sender channel, you can
con gure the time intervals between
retries, but you cannot con gure that
processing will end after a speci c
number of retries. If required, you can
con gure this in an exception
subprocess that calls a local process for
retry handling using the header
SAPJMSRetries set by the JMS
sender adapter.

For more information about explicit retry


con guration, read the SAP Community
Blog Cloud Integration – Con gure
Asynchronous Messaging with Retry
Using JMS Adapter

Exponential Backoff Enter a value to double the retry interval


after each unsuccessful retry.

Maximum Retry Interval (in m)* Enter a value for the maximum amount of
time to wait before retrying message
(only con gurable when Exponential
delivery. The minimum value is 10 minutes.
Backoff is selected)
The default value is set to 60 minutes.

This is custom documentation. For more information, please visit the SAP Help Portal 371
6/14/2023

Section Parameters Description

Dead-Letter Queue If selected, the message is taken out of


processing and marked as Blocked in the
queue in the following situation: Message
processing has been stopped due to an out-
of-memory error in the worker node. Later,
the message has been retried twice by the
JMS sender adapter (and each retry has
again lead to an out-of-memory error in the
worker node).

Processing large messages in scenarios


with the JMS sender adapter can
sometimes cause a worker node failure.
Node failure can happen in such a scenario
if the JMS adapter repeatedly tries to
process a failed (large) message. To avoid
such a situation, select this option
(switched on by default).

In such cases, a lock entry is created, which


you can view and release in the Monitoring
application in the Message Locks tile under
Managing Locks.

When you release the lock, the system


starts retrying the message again.

For more information, check out the


following blog: Cloud Integration –
Con gure Dead Letter Handling in JMS
Adapter .

 Note
For high-load scenarios, or if you're sure
that only small messages are processed
in your scenario, deselect the checkbox
to improve the performance. Note that
there's a risk of an outage, for example,
if you run out of memory.

Related Information
Message Locks
JMS Resource Limits and Optimizing their Usage
Cloud Integration - Con gure Dead Letter Handling in JMS Adapter
Apply the Retry Pattern with JMS Queue

Con gure the JMS Receiver Adapter


The JMS (Java Message Service) receiver adapter enables asynchronous decoupling of inbound and outbound processing by
using message queues. The receiver adapter stores messages and schedules them for processing in a queue. The messages are
processed concurrently.

 Note

This is custom documentation. For more information, please visit the SAP Help Portal 372
6/14/2023
In the following cases certain features might not be available for your current integration ow:

You are using a runtime pro le other than the one expected. See: Runtime Pro les.

A feature for a particular adapter or step was released after you created the corresponding shape in your integration
ow.

To use the latest version of a ow step or adapter – edit your integration ow, delete the ow step or adapter, add the
step or adapter, and con gure the same. Finally, redeploy the integration ow. See: Updating your Existing Integration
Flow.

 Note
Note that this adapter works with a message broker provided by SAP (based on the SAP Event Mesh capability). It does not
support connectivity to any other, customer-provided message brokers. The usage of this adapter is supported by all SAP
Integration Suite editions, except the basic edition (see SAP note 2903776 ).

To understand the concept of asynchronous decoupling, assume that a sender sends a message to SAP Cloud Integration
(inbound processing). If there's an error in outbound processing (for example, a receiver can't be reached temporarily), the
middleware (SAP Cloud Integration) retries message processing independently. There's no need that the sender triggers a
reprocessing of the message as soon as the error situation has been solved. The sender relies on the middleware to do that. To
support this scenario, the message received from the sender is stored in a queue (using the JMS receiver adapter). Outbound
processing is modeled in an integration ow that initially consumes the message from the queue (using the JMS sender
adapter). The outbound integration ow retries the message from the queue as long as the error situation lasts.

The gure illustrates how the JMS receiver adapter works.

Assuming that you've designed an integration ow with a JMS receiver adapter. On deployment of the integration ow, a JMS
queue (as speci ed in the adapter) is created and the tenant opens a provider connection to the message broker. The tenant
pushes messages through this connection.

Certain constraints apply with regard to the number and capacity of involved queues, as well as for the headers and exchange
properties de ned in the integration ow before the message is saved to the queue. See JMS Resource Limits and Optimizing
their Usage.

This is custom documentation. For more information, please visit the SAP Help Portal 373
6/14/2023

 Note
In the following cases certain features might not be available for your current integration ow:

You are using a runtime pro le other than the one expected. See: Runtime Pro les.

A feature for a particular adapter or step was released after you created the corresponding shape in your integration
ow.

To use the latest version of a ow step or adapter – edit your integration ow, delete the ow step or adapter, add the
step or adapter, and con gure the same. Finally, redeploy the integration ow. See: Updating your Existing Integration
Flow.

Once you've created a receiver channel and selected the JMS Receiver Adapter, you can con gure the following attributes. See
Overview of Integration Flow Editor.

Select the General tab and provide values in the elds as follows.

General

Parameter Description

Name Enter the name of the channel.

Select the Processing tab and provide values in the elds as follows.

Processing

Parameters Description

Queue Name Enter the name of the message queue (aA-zZ, 0–9, _) without
whitespaces and max. 20 characters.

You can dynamically con gure this eld, for instance, by using
expressions like ${header.myQueue} or
${property.myQueue}, depending on whether you like to use a
header or an exchange property.

 Note
Queues need to be set up during the deployment of the sender
adapter. See: Con gure the JMS Sender Adapter

Retention Threshold for Alerting (in d) Enter the time period (in days) by which the messages have to be
fetched. The default value is 2.

Expiration Period (in d) Enter the time period (in days) by which the messages have to be
fetched. Specify a time period for Expiration Period which is no
less than the number of days entered for the Retention Threshold
for Alerting. The recommendation is to use at least twice the
retention threshold. The default is set to 30.

Compress Stored Message Select this option to compress the message in the JMS queue.
Compressing the message reduces disk space usage and network
traffic.

Encrypt Stored Message Select this option to encrypt the message in the JMS queue.

This is custom documentation. For more information, please visit the SAP Help Portal 374
6/14/2023

Parameters Description

Transfer Exchange Properties You can select this option to also transfer the exchange properties
to the JMS queue.

However, we don't recommend using this option because headers


and exchange properties are subject to size restrictions, which can
result in problems or errors.

Related Information
JMS Resource Limits and Optimizing their Usage
Apply the Retry Pattern with JMS Queue

JMS Resource Limits and Optimizing their Usage


The JMS messaging instance that is used in asynchronous messaging scenarios with the JMS, AS2, AS4, or XI adapter has
limited resources. SAP Integration Suite Standard Edition sets a limit on the queues, storage, and connections that you can use
in the messaging instance.

Resource Limits for SAP Integration Suite Standard Edition:

Maximum number of queues: 30

Total queue capacity: 9.3 GB

Maximum capacity for one queue: 95% of the total queue capacity

150 transactions

150 consumers

150 providers

150 GB of data per month can be processed by JMS messaging

256 messages can be processed in one transaction

For more information about JMS resource and size limits, visit the following blog: Cloud Integration – JMS Resource and Size
Limits .

In case you want to increase the JMS resources, you can assign more Enterprise Messaging units that contain one queue and a
dedicated set of JMS resources.

Resource limits for 5 Enterprise Messaging units:

Number of JMS queues in Cloud Integration: 1

Queue capacity: 300 MB

5 transactions

5 consumers

5 providers

5 GB of data per month can be processed by JMS messaging

This is custom documentation. For more information, please visit the SAP Help Portal 375
6/14/2023
You can nd a step-by-step guide on how to activate Enterprise Messaging here: Activating Enterprise Messaging

There are also technical restrictions on the size of the headers and exchange properties that can be stored in the JMS queue.

The following size limits apply when saving messages to JMS queues:

There are no size limits for the payload. The message is split internally when it is put into the queue.

There are no size limits for attachments. The message and the attachment are split internally when put into the queue.

Headers and exchange properties de ned in the integration ow before the message is saved to the queue must not
exceed 4 MB in total.

 Note
The JMS sender or receiver adapter generates a message queue during deployment.

Unused message queues are not deleted automatically. Since queues are limited (and paid) resources, you should manually
delete any queues which are not used by your integration ows any more.

Information on deleted message queues is available in the audit log.

 Caution
There are certain limitations related to transactional behavior when using this adapter type together with Data Store
Operations steps, Aggregator steps, or global variables. For more information, visit the following blog: Cloud Integration –
How to con gure Transaction Handling in Integration Flow .

 Note
The JMS adapter stores only simple data type headers (primitive data types or strings).

Supported Headers: Headers and Exchange Properties Provided by the Integration Framework

Processing JMS messages always requires a consumer (JMS sender adapter) or provider (JMS receiver adapter) and a
transaction. In critical resource situations (as analyzed by the Manage Queues monitor), you can optimize the usage of
transactions based on the following calculations.

Min. No. of ... Max. No. of ...

Consumers No. of runtime nodes * No. of JMS queues No. of runtime nodes * No. of JMS queues *
No. of concurrent processes

(where the value of the latter argument is


derived from the sender channel parameter
Number of Concurrent Processes)

Providers Number of providers for a tenant cannot be calculated (depends on the sender system).

The no. of providers is equal to the no. of parallel sender calls.

Transactions Min. no. of consumers + No. of providers Max. no. of consumers + No. of providers

 Note

No. of JMS queues: Note that when the rst integration ow that uses a JMS queue is deployed, a queue is created.

This is custom documentation. For more information, please visit the SAP Help Portal 376
6/14/2023
To nd out the number of runtime nodes or the number of tenant management node (only available when you
operate SAP Cloud Integration in the Neo environment), open the tile Message Queues (in the Monitor section of the
Web UI under Manage Stores) and click Details in the information box below the header.

Note that transactions are distributed dynamically to providers and consumers.

For increasing the number of queues use BC-CP-EM-MES to raise an incident.

For more information, read the SAP Community blog: Cloud Integration – JMS Resource and Size Limits .

Related Information
Managing Message Queues

Kafka Adapter
With the Kafka Adapter, SAP Cloud Integration allows you to connect to an external Kafka broker via Kafka protocol. With the
help of the Kafka Sender adapter you can receive messages. Use the Kafka Receiver adapter to send messages to the Kafka
broker.

Related Information
Con gure the Kafka Sender Adapter
Con gure the Kafka Receiver Adapter

Con gure the Kafka Sender Adapter


You use the Kafka Sender adapter to connect to an external Kafka broker via Kafka protocol and to fetch messages.

 Note
In the following cases certain features might not be available for your current integration ow:

You are using a runtime pro le other than the one expected. See: Runtime Pro les.

A feature for a particular adapter or step was released after you created the corresponding shape in your integration
ow.

To use the latest version of a ow step or adapter – edit your integration ow, delete the ow step or adapter, add the
step or adapter, and con gure the same. Finally, redeploy the integration ow. See: Updating your Existing Integration
Flow.

 Note
This adapter exchanges data with a remote component that might be outside the scope of SAP. Make sure that the data
exchange complies with your company’s policies.

Con guration
Once you’ve created a sender channel and selected the Kafka sender adapter, you can con gure the following attributes. See
Overview of Integration Flow Editor.
This is custom documentation. For more information, please visit the SAP Help Portal 377
6/14/2023

 Note

Key & Value Deserializer Key Deserializer will be set to StringDeserializer and Value Deserializer will be set to
ByteArrayDeserializer (Kafka settings: key.deserializer and value.deserializer).

Max. processing time of 1 day If the message processing exceeds 1 day, the consumer is replaced on broker side
(Kafka setting max.poll.interval.ms is set to 86400000).

New consumer groups New consumer groups consume from the latest offset (Kafka setting auto.offset.reset
is set to LATEST).

Auto commit Successfully processed records (offsets) will be automatically committed in 5 second intervals (Kafka
settings enable.auto.commit is set to true and auto.commit.interval.ms is set to 5000).

The following values are displayed in the General tab after a channel has been established. If you want to change the
con gurations, you need to con gure a new channel.

General

Parameter Description

Name/Adapter Type Kafka

Transport Protocol TCP

Message Protocol Kafka

Select the Connection tab and provide values in the elds as follows:

 Note

Connectivity Settings: Whenever you change the connectivity settings (Keystore or Security settings), you need to
redeploy your integration ow or restart the integration ow content for the changes to become effective.

Polling Status Monitoring: After deployment of the integration ow with the Kafka Sender adapter, if there's an
exception thrown during polling for whichever reason (for example, connectivity or authentication issues), the
corresponding error details are shown in the “Error Details” pane of the Manage Integration Content section of the
Monitor UI. In case of an exception, the deployment status is set to “Error” until the exception is resolved.

For more information, see also the blog Monitoring Polling Status in Kafka Sender Adapter .

Connection

Parameter Description

Host Enter a bootstrap server (host:port). You can add multiple hosts by
using a new entry for each bootstrap server.

Authentication Select the type of authentication for connecting to the broker. SASL
is selected by default.

SASL

Client Certi cate (security protocol: SSL)

This is custom documentation. For more information, please visit the SAP Help Portal 378
6/14/2023

Parameter Description

Connect with TLS Select this option to switch between SASL_SSL and
SASL_PLAINTEXT.
(only if SASL is selected for Authentication)

 Note
Make sure that the root certi cate of the broker is uploaded to
the keystore. You can access it directly, via TLS Connectivity
Test. See Managing Keystore Entries and TLS Connectivity
Tests.

SASL Mechanism Select the SASL mechanism.

(only if SASL is selected for Authentication) PLAIN

SCRAM-SHA-256

Credential Name Enter the credential name of the username-password pair speci ed
during the deployment of the user credential on the tenant.
(only if SASL is selected for Authentication)

Private Key Alias Enter the Private Key Alias.

(only if Client Certi cate is selected for Authentication)

 Note
The Kafka Sender Adapter supports the following TLS versions:

TLS 1.0, TLS 1.1, TLS 1.2 and TLS 1.3.

By default the Kafka Sender Adapter supports TLS 1.3 as preferred version.

It is highly recommended to use TLS 1.2 or TLS 1.3.

Select the Processing tab and provide values in the elds as follows:

 Note
The integration ow id acts as Consumer Group.

Processing

Parameter Description

This is custom documentation. For more information, please visit the SAP Help Portal 379
6/14/2023

Parameter Description

Topic Enter the name of one or multiple topics you consume from.

 Note
The topic name is restricted to [a-zA-Z0-9\\._\\-], it may
either contain a . (dot), or _ (underscore), but not both and has a
maximum length of 249 characters.

If you want to add multiple topics, you can either separate the topic
names by comma (no blank space) or provide a simple pattern
with *.

 Note
Comma-separated: topic1,topic2,topic3

Simple pattern: topic*

Parallel Consumers Specify how many parallel consumers (per worker node) can
consume from partitions. This parameter depends on how topics
are partitioned. The max. number of parallel consumer is de ned
as 25 and scales with the number of worker nodes.

Error Handling Choose between the following options:

Retry Failed Message: Select to retry the same offset in


case of failed message processing.

Skip Failed Message: Select to continue with the next offset


even in case of a failed message (at-most-once semantics).

Select the Advanced tab and provide values in the elds as follows:

 Note

Each of the following parameters has a precon gured default mode. It isn’t possible to empty a eld by deleting the
parameter. Always provide a substitute.

The parameters condition each other, meaning they’re codependant. So, don't enter contradictory data. For example,
if you de ne the Min. Fetch Size as 1 Megabyte, you should con gure the Max. Fetch Wait Time (in ms) accordingly,
allowing enough time to actually collect 1 Megabyte.

Advanced

Parameter Description

Min. Fetch Size (in bytes) De ne the min. amount of data the server should return for a fetch
request.

 Tip
Kafka setting: fetch.min.bytes

This is custom documentation. For more information, please visit the SAP Help Portal 380
6/14/2023

Parameter Description

Max. Fetch Size (in bytes) De ne the max. amount of data the server should return for a fetch
request. For example, if a single message exceeds the con gured
value, it’s fetched nonetheless, but no additional records are
batched together with it. Must be at least 1024 KB.

 Tip
Kafka setting: fetch.max.bytes

Max. Partition Fetch Size (in bytes) De ne the max. partition fetch size the server should return for a
fetch request.

 Tip
Kafka setting: max.partition.fetch.bytes

Max. Fetch Wait Time (in ms) De ne the max. fetch wait time (in ms) to wait for the other fetch
size-related options to be reached.

 Tip
Kafka setting: fetch.max.wait.ms

Max. Number of Polled Records De ne the max. number of polled records included.

 Tip
Kafka setting: max.poll.records

Request Timeout (in ms) De ne the maximum amount of time the client waits for the
response of a request. If the response isn’t received, before the
timeout elapses, the client resends the request if possible and
con gured of fails the request if the de ned number of retries is
already exhausted.

 Tip
Kafka setting: request.timeout.ms

Max. Retry Backoff (in ms) De ne the amount of time to wait before attempting to poll again in
a retry case. Choose the amount of time in such a way as to avoid
retry loops that are too tight but allow for some interval time.

 Tip
Kafka setting: retry.backoff.ms

This is custom documentation. For more information, please visit the SAP Help Portal 381
6/14/2023

Parameter Description

Reconnect Delay (in ms) De ne how long to wait before reattempting to reconnect to a given
host.

 Note
Allow enough time to reconnect to the broker in case of
prolonged down time.

 Tip
Kafka settings: reconnect.backoff.ms and
reconnect.backoff.max.ms

Heartbeat Interval (in ms) De ne the expected time between heartbeats to the consumer
coordinator.

 Note
The Heartbeat Interval shouldn’t be higher than 1/3 of the
Session Timeout.

 Tip
Kafka setting: heartbeat.interval.ms

Session Timeout (in ms) The timeout is used to detect client failures. If no heartbeat is
detected within the session timeout, the consumer is assumed to
be dead, and will be disconnected and replaced as a consequence.

 Tip
Kafka setting: session.timeout.ms

Message Headers

The Kafka adapter accepts headers on both sender and receiver side:

Kafka Receiver Adapter: Headers are sent to the broker.

Kafka Sender Adapter: Record headers are added to message headers. Supported types: String, Integer, Long, Double,
Boolean, byte[]. Additionally, the sender adds the following headers: kafka.TOPIC, kafka.PARTITION,
kafka.OFFSET, kafka.KEY and kafka.TIMESTAMP. When setting up the integration ow, add them to the allowlist
via Integration Flow Runtime Con guration Allowed Header(s) if required. See Specify the Runtime
Con guration.

Related Information
https://blogs.sap.com/2021/03/16/cloud-integration-what-you-need-to-know-about-the-kafka-adapter/
https://blogs.sap.com/2021/08/11/cloud-integration-monitoring-polling-status-in-kafka-sender-adapter//
Manage Integration Content

Con gure the Kafka Receiver Adapter


You use the Kafka Receiver adapter to connect to an external Kafka broker via Kafka protocol.

This is custom documentation. For more information, please visit the SAP Help Portal 382
6/14/2023

 Note
In the following cases certain features might not be available for your current integration ow:

You are using a runtime pro le other than the one expected. See: Runtime Pro les.

A feature for a particular adapter or step was released after you created the corresponding shape in your integration
ow.

To use the latest version of a ow step or adapter – edit your integration ow, delete the ow step or adapter, add the
step or adapter, and con gure the same. Finally, redeploy the integration ow. See: Updating your Existing Integration
Flow.

 Note
This adapter exchanges data with a remote component that might be outside the scope of SAP. Make sure that the data
exchange complies with your company’s policies.

Con guration
Once you’ve created a receiver channel and selected the Kafka receiver adapter, you can con gure the following attributes. See
Overview of Integration Flow Editor.

 Note

Key & Value Serializer Key Serializer will be set to StringSerializer and Value Serializer will be set to
ByteArraySerializer (Kafka settings:key.serializer and value.serializer).

Record Key Record key can be speci ed via message header kafka.KEY.

The following values are displayed in the General tab after a channel has been established. If you want to change the
con gurations, you need to con gure a new channel.

General

Parameter Description

Name/Adapter Type Kafka

Transport Protocol TCP

Message Protocol Kafka

Select the Connection tab and provide values in the elds as follows:

 Note
Whenever you change the connectivity settings (Keystore or Security settings), you need to redeploy your integration ow
or restart the integration ow content for the changes to become effective.

Connection

Parameter Description

This is custom documentation. For more information, please visit the SAP Help Portal 383
6/14/2023

Parameter Description

Host Enter a bootstrap server (host:port). You can add multiple hosts by
using a new entry for each bootstrap server.

Authentication Select the type of authentication for connecting to the broker. SASL
is selected by default.

SASL

Client Certi cate (security protocol: SSL)

Connect with TLS Select this option to switch between SASL_SSL and
SASL_PLAINTEXT.
(only if SASL is selected for Authentication)

 Note
Make sure that the broker certi cate is uploaded to the
keystore. You can access it directly, via TLS Connectivity Test.
See Managing Keystore Entries and TLS Connectivity Tests.

SASL Mechanism Select the SASL mechanism.

(only if SASL is selected for Authentication) PLAIN

SCRAM-SHA-256

Credential Name Enter the credential name of the username-password pair speci ed
during the deployment of the user credential on the tenant. is
(only if SASLAuthentication)
selected for

Private Key Alias Enter the Private Key Alias.

(only if Client Certi cate is selected for is selected for


Authentication)

 Note
The Kafka Receiver Adapter supports the following TLS versions:

TLS 1.0, TLS 1.1, TLS 1.2 and TLS 1.3.

By default the Kafka Receiver Adapter supports TLS 1.3 as preferred version.

It is highly recommended to use TLS 1.2 or TLS 1.3.

Select the Processing tab and provide values in the elds as follows:

Processing

Parameter Description

This is custom documentation. For more information, please visit the SAP Help Portal 384
6/14/2023

Parameter Description

Topic Specify the topic you want to send requests to.

 Note
The topic name is restricted to [a-zA-Z0-9\\._\\-], it may
either contain a . (dot) or _ (underscore), but not both and has a
maximum length of 249 characters.

You specify one particular topic or you can con gure this parameter
dynamically by entering a dynamic expression such like
${property.property_name} or
${header.header_name} (see: Dynamically Con gure
Integration Flow Parameters).

Acknowledgment De ne the type of acknowledgments before a request is


considered complete. Select between the following options
depending on the importance of your request:

Required By All Replicas (default): Wait until all replicas


have acknowledged the message. This option offers max.
request security.

Required By Leader: Wait for the acknowledgment of the


leader only (the rst broker to respond) before considering
the request completed.

 Note
In case the leader fails before the request has been
forwarded to the replicas, the message is lost.

Not Required: Don’t expect an acknowledgment.

 Note
You don't get a noti cation in case request transfer was
unsuccessful.

 Tip
Kafka setting: acks

Max. Request Size (in KB) Enter the maximum size of a request in KB (before compression).
This setting limits the number of record batches in a single
request, acts as a limit for the uncompressed record batch size
and limits the single-record size. It’s strongly recommended to use
the max. message size the broker accepts (broker setting:
message.max.bytes) as input.

 Tip
Kafka setting: max.request.size

This is custom documentation. For more information, please visit the SAP Help Portal 385
6/14/2023

Parameter Description

Max. Number of In ight Request De ne the maximum number of unacknowledged requests the
client sends on a single connection before blocking. The default is
set to 5, but you can in- or decrease this number.

 Tip
Kafka setting:
max.in.flight.requests.per.connection

Max. Number of Retries De ne the max. number of retries, the client attempts to resend
any record which fails with a potentially transient error.

 Tip
Kafka setting: retries

Retry Backoff (in ms) De ne the amount of time to wait before attempting to send a retry.
Choose the amount of time in such a way as to avoid retry loops
that are too tight but allow for some interval time.

 Tip
Kafka setting: retry.backoff.ms

Compression Select the compression type for the (batched) request.

Choose between the following compression types supported by


Kafka:

None

GZIP

LZ4

SNAPPY

ZSTD

 Tip
Kafka setting: compression.type

Enable Batching (recommended) Select to batch requests and to reduce traffic. If you disable this
option, you set this batch size to 0. It’s activated by default.

Batch Size (in KB) only if Enable Batching is selected De ne the size of the batches. The producer batches records into
fewer requests whenever multiple requests are sent to the same
partition in a short time. However, SAP Cloud Integration doesn't
wait in nitely, before sending the batch. See Linger (in ms).

 Tip
Kafka setting: batch.size

Linger (in ms) only if Enable Batching is selected De ne the max. amount of time to wait and try to reach the batch
size de ned in Batch Size (in KB). If this time limit has passed,
the request is sent out irrespective of whether or not the de ned
batch size has been reached.

This is custom documentation. For more information, please visit the SAP Help Portal 386
6/14/2023

Parameter Description

Request Timeout (in s) De ne the maximum amount of time the client waits for the
response of a request. If the response isn’t received, before the
timeout elapses, the client resends the request if possible and
con gured or fails the request if the de ned number of retries is
already exhausted.

 Tip
Kafka setting: request.timeout.ms

Max. Blocking Time (in s) De ne how long the KafkaProducer's send(), partitionsFor(),
initTransactions(), sendOffsetsToTransaction(),
commitTransaction(), and abortTransaction() methods block.

 Tip
Kafka setting: max.block.ms

Reconnect Delay (in s) De ne how long to wait before reattempting to reconnect to a given
host.

 Note
Allow enough time to reconnect to the broker if there’s a
prolonged down time.

 Tip
Kafka settings: reconnect.backoff.ms and
reconnect.backoff.max.ms

Message Headers

The Kafka adapter accepts headers on both sender and receiver side.

Kafka Receiver Adapter: Headers are sent to the broker.

Kafka Sender Adapter: Record headers are added to message headers. Supported types: String, Integer, Long, Double,
Boolean, byte[]. Additionally, the sender adds the following headers: kafka.TOPIC, kafka.PARTITION,
kafka.OFFSET, kafka.KEY and kafka.TIMESTAMP. When setting up the integration ow, add them to the allowlist
via Integration Flow Runtime Con guration Allowed Header(s) if required. See Specify the Runtime
Con guration.

Related Information
https://blogs.sap.com/2021/03/16/cloud-integration-what-you-need-to-know-about-the-kafka-adapter/

LDAP Receiver Adapter


The Lightweight Directory Access Protocol (LDAP) Receiver Adapter enables you to communicate with systems that expose
data through LDAP service.

 Note
In the following cases certain features might not be available for your current integration ow:

This is custom documentation. For more information, please visit the SAP Help Portal 387
6/14/2023
You are using a runtime pro le other than the one expected. See: Runtime Pro les.

A feature for a particular adapter or step was released after you created the corresponding shape in your integration
ow.

To use the latest version of a ow step or adapter – edit your integration ow, delete the ow step or adapter, add the
step or adapter, and con gure the same. Finally, redeploy the integration ow. See: Updating your Existing Integration
Flow.

 Note
This adapter exchanges data with a remote component that might be outside the scope of SAP. Make sure that the data
exchange complies with your company’s policies.

In case you've input messages in different formats, you need to use a mapping step to create a target payload that can be
recognized by the LDAP receiver adapter. You can use this schema as a template for the target in mapping step.

<?xml version="1.0" encoding="UTF-8"?>


<schema xmlns="http://www.w3.org/2001/XMLSchema">
<element name="Schema">
<complexType>
<sequence>
<element name="DistinguishedName" maxOccurs="1" minOccurs="1" type="string"/>
<element name="ObjectClass" maxOccurs="1" minOccurs="0" type="string"/>
<element name="Attributes" maxOccurs="1" minOccurs="1">
<complexType>
<sequence>
<element name="cn" type="string" maxOccurs="1" minOccurs="0"></element>
<element name="sAMAccountName" type="string" maxOccurs="1" minOccurs="1
<element name="sn" type="string" maxOccurs="1" minOccurs="0"></element>
<element name="givenName" type="string" maxOccurs="1" minOccurs="0"></e
<element name="displayName" type="string" maxOccurs="1" minOccurs="0"><
<element name="name" type="string" maxOccurs="1" minOccurs="0"></elemen
</sequence>
</complexType>
</element>
</sequence>
</complexType>
</element>
</schema>

 Note

You can't update multiple records in a single processing cycle. You can only perform a given operation on 1 record at a
time.

You can update attribute with multiple values.

 Remember
You must use SAP Cloud Connector for connecting to an LDAP service using the LDAP adapter. LDAP adapter supports
version 2.9 or higher versions of the cloud connector.

For more information on using the SAP Cloud Connector, see the official documentation.

Once you've created a receiver channel and selected the LDAP Receiver Adapter, you can con gure the following attributes.
See Overview of Integration Flow Editor.

This is custom documentation. For more information, please visit the SAP Help Portal 388
6/14/2023

LDAP Adapter Con gurations


Select the General tab and provide values in the elds as follows.

General

Parameter Description

Name Enter the name of the channel.

Select the Connection tab and provide values in the elds as follows.

Connection

Parameter Description

Address Enter the URL of the LDAP directory service that you're connecting
to.

Proxy Type Select the proxy type that you want to use. Currently, only On
Premise is supported.

Location ID Enter the location ID.

Authentication Select the authentication type that you want to use. Currently, only
Simple is supported.

Credential Name Enter the credential name you've deployed in the tenant.

Select the Processing tab and provide values in the elds as follows.

Processing

Parameter Description

Operation Select the operation that you want to perform. The supported
operations are:

Insert: Allows you to create a new entry in LDAP service.

Modify: Use this operation to edit an existing entry in LDAP


directory.

Search: This operation allows you to perform a query for


entries in the LDAP directory. The retrieved data is either in
Java (JNDI) Attributes or XML format.

To know more about the search operation, read the blog .

Delete: Erases an entry from the LDAP directory.

Insert

Select the Input Type that you're providing. Supported types are: Java (JNDI) Attributes and XML.

Delete

Provide the Distinguished Name of the objectClass that you want to delete.

Modify

This is custom documentation. For more information, please visit the SAP Help Portal 389
6/14/2023
Modify

Parameter Description

Input Type Select the Input Type that you're providing. Supported types are:

Java (JNDI) Attributes

XML

For Java (JNDI) Attributes, select one of the following:

Consider attributes from class Modi cationItem Enable the checkbox to have the script le return ' <modi cationItem>'
object in body having <Modi cationItem[]>.

Modi cation Type Select the type of modi cation that you want to make. Supported types
are:

Add

Remove

Replace

For XML, do the following:

Modi cation Type Select the type of modi cation that you want to make. Supported types
are:

Add

Remove

Replace

Consider additional attributes for modi cation Enable checkbox to pick up modi cation item from the XML attribute
' <modi cationType>'. This XML Attribute is allowed to have 3 values –
add, remove, and replace.

 Example
<proxyAddresses
modi cationType='add'>[email protected]</proxyAddresses>

<proxyAddresses
modi cationType='remove'>[email protected]</proxyAddresses>

Search

Search

Parameter Description

Base DN Provide the Base Distinguished Name that helps to identify the highest point in the hierarchy
of the directory from which the search is initiated.

Scope Select an attribute, placed below the Base DN, to de ne the extent of the search and the
attributes are:

Object

One Level

Subtree

This is custom documentation. For more information, please visit the SAP Help Portal 390
6/14/2023

Parameter Description

Search Filter Specify a search criteria applied to each entry within the scope.

 Example
(&(mail=*.gmail.com)(objectClass=user))

(sAMAccountType=805306368)

Output Type Select the type of output format when the data is returned.

Multivalued Response Select the format for your responses if there are multiple values for the queried attribute.
Supported response types are:

As XML tags

 Example
<proxyAddresses>[email protected]</proxyAddresses>

<proxyAddresses>[email protected]</proxyAddresses>

Semicolon separated

 Example
<proxyAddresses>[email protected];[email protected]</proxyAddresses>

Attributes Specify the attribute that the query has to return.

 Example
cn, sAMAccountName,sn,givenName

Size Limit De ne an integer value, to set the maximum number of entries that is returned.

Timeout (in min) De ne an integer value, to set the maximum time that the server must wait before returning
the results.

Speci c Use Cases for LDAP Adapter

Using Input Type Java (JNDI) Attributes


The LDAP adapter supports input via JNDI attributes. If you choose this as the input type, you use a script step to obtain values
to attributes that are then passed to the LDAP service.

For example, consider this script being used in a Script step.

importClass(com.sap.gateway.ip.core.customdev.util.Message);
importClass(java.util.HashMap);
importClass(javax.naming.directory.Attribute);
importClass(javax.naming.directory.BasicAttribute);
importClass(javax.naming.directory.BasicAttributes);
importClass(javax.naming.directory.Attributes);

This is custom documentation. For more information, please visit the SAP Help Portal 391
6/14/2023
function processData(message) {
var body = message.getBody();
var dn= "cn=Markus,ou=users,dc=testcompany,dc=com";
var givenNameAttr = new BasicAttribute("givenName", "Jack");
var displayNameAttr = new BasicAttribute("displayName", "Reacher");
var telephoneNumberAttr = new BasicAttribute("telephoneNumber", "100-100-100");
var attributes = new BasicAttributes();
attributes.put(givenNameAttr);
attributes.put(displayNameAttr);
attributes.put(telephoneNumberAttr);
attr =new BasicAttribute("title", "Developer");
attributes.put(attr);
attr =new BasicAttribute("sn", "Brutus");
attributes.put(attr);
var resultingMap = new HashMap();
resultingMap.put("dn", dn);
resultingMap.put("attributes", attributes);
message.setBody(resultingMap);
return message;
}

In the script, the values for attributes givenName, displayName and telephoneNumber are declared in the script before
they are passed to the LDAP adapter. Similarly, you can also create a script where these values are dynamically fetched during
runtime.

Adding Attributes to Template Schema


The example schema contains a set of attributes for a given record. In case you want the schema to contain additional
attributes, you can manually edit the schema before using it in the mapping step.

For example, if you want to add a eld, telephone number, you can add an element in the schema under the sequence element.

Here’s how the edited schema will look like:

<?xml version="1.0" encoding="UTF-8"?>


<schema xmlns="http://www.w3.org/2001/XMLSchema">
<element name="Schema">
<complexType>
<sequence>
<element name="DistinguishedName" maxOccurs="1" minOccurs="1" type="string"/>
<element name="ObjectClass" maxOccurs="1" minOccurs="0" type="string"/>
<element name="Attributes" maxOccurs="1" minOccurs="1">
<complexType>
<sequence>
<element name="sAMAccountName" type="string"></element>
<element name="sn" type="string"></element>
<element name="givenName" type="string"></element>
<element name="displayName" type="string"></element>
<element name="name" type="string"></element>
<element name="telephoneNumber" type="string"></element>
<!--The above element has been added to the schema. If y
</sequence>
</complexType>
</element>

This is custom documentation. For more information, please visit the SAP Help Portal 392
6/14/2023
</sequence>
</complexType>
</element>
</schema>

Add Additional Attributes to the Message after Mapping using Script


Let us consider a scenario where you want to add an attribute to the message (payload) that you are sending to the LDAP
service. For example, you want to add a password attribute. Due to security concerns, you should encode the password before
you add it.

You can achieve this by adding a Script step after the mapping step in the integration ow. Here's an example of the script that
you can use in the Script step:

import com.sap.gateway.ip.core.customdev.util.Message;
import java.util.HashMap;
import javax.xml.bind.DatatypeConverter;
import javax.naming.directory.Attribute;
import javax.naming.directory.Attributes;
import javax.naming.directory.BasicAttribute;
import javax.naming.directory.BasicAttributes;

def Message processData(Message message)


{
Attributes attributes = new BasicAttributes();
String quotedPassword = '"'+"Initial@1"+'"';
byte[] unicodePasswordByteArray = quotedPassword.getBytes("UTF-16LE");
attributes.put(new BasicAttribute("unicodePwd", unicodePasswordByteArray));
message.setHeader("SAP_LDAPAttributes",attributes);
return message;
}

Using Modify Operation to Change DN


You can use the Modify operation to change the DN of an LDAP record. You can do this by adding the tag
<DistinguishedName_Previous> to the input payload with the old DN. Specify the modi ed DN in
<DistinguishedName> tag and perform the Modify operation.

Here's an example that shows a sample input payload for modiying the DN of an LDAP record:

<?xml version="1.0" encoding="UTF-8"?>


<Schema xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<DistinguishedName>CN=CMD ABC,CN=Users,DC=dev109,DC=dev-wdf,DC=sap,DC=corp</Distinguish
<DistinguishedName_Previous>CN=CMD,CN=Users,DC=dev109,DC=dev-wdf,DC=sap,DC=corp</Distin
<ObjectClass>user</ObjectClass>
<Attributes>
<mail>[email protected]</mail>
<telephoneNumber>123456789</telephoneNumber>
</Attributes>
</Schema>

This is custom documentation. For more information, please visit the SAP Help Portal 393
6/14/2023

Mail Adapter
The mail adapter allows you to connect the tenant to an email server. The sender mail adapter can download e-mails and access
the e-mail body content as well as attachments. The receiver mail adapter allows you to send encrypted messages by e-mail.

Related Information
Con gure the Mail Sender Adapter
Con gure the Mail Receiver Adapter
Options to Protect Mail Connections
Important Notes on Security Risks and Mailbox Settings

Con gure the Mail Sender Adapter


You use the mail sender adapter to download e-mails from mailboxes using the IMAP or POP3 protocol, to access the content of
the e-mail body, and to access e-mail attachments.

 Note
In the following cases certain features might not be available for your current integration ow:

You are using a runtime pro le other than the one expected. See: Runtime Pro les.

A feature for a particular adapter or step was released after you created the corresponding shape in your integration
ow.

To use the latest version of a ow step or adapter – edit your integration ow, delete the ow step or adapter, add the
step or adapter, and con gure the same. Finally, redeploy the integration ow. See: Updating your Existing Integration
Flow.

 Note
This adapter exchanges data with a remote component that might be outside the scope of SAP. Make sure that the data
exchange complies with your company’s policies.

If you have con gured a mail sender adapter, message processing is performed as follows at runtime: According to the
Scheduler settings in the mail sender adapter, the tenant sends requests to an e-mail server (think of this as the sender
system). Nevertheless, the data ow is in the opposite direction, from the mail server to the tenant. In other words, the tenant
reads les from the mail server (a process that is also referred to as polling).

 Caution

This is custom documentation. For more information, please visit the SAP Help Portal 394
6/14/2023
To take the necessary precautions in order to avoid any unwanted behavior of your scenario (in particular, security risks)
check out the following topic:

Important Notes on Security Risks and Mailbox Settings

Once you have created a sender channel and selected the mail sender adapter, you can con gure the following attributes. See
Overview of Integration Flow Editor.

Select the General tab and provide values in the elds as follows.

General

Parameter Description

Name Enter the name of the channel.

Select the Connection tab and provide values in the elds as follows.

Connection

Parameter Description

Address Speci es the host name or address of the IMAP server, for
example, mail.domain.com.
Use one of the following open ports for external mail servers:

143 for IMAP+STARTTLS

993 for IMAPS

110 for POP3+STARTTLS

995 for POP3S

Example address for Yahoo IMAP server:

imap.mail.yahoo.com:993

Proxy Type The type of proxy that you’re using to connect to the target system.

Select Internet if you’re connecting to a cloud mail server.

Select On-Premise if you’re connecting to an on-premise mail


server.

For more information, see Using SAP Cloud Connector with Cloud
Integration Adapters.

Location ID (only if On-Premise is selected for Proxy Type) To connect to an SAP Cloud Connector instance associated with
your account, enter the location ID that you de ned for this instance
in the destination con guration on the cloud side.

Timeout (in ms) Speci es the network timeout for the connection attempt to the
server. The default value is 30000.

This is custom documentation. For more information, please visit the SAP Help Portal 395
6/14/2023

Parameter Description

Protection Speci es the method to use to establish an encrypted (secure)


connection.

Off

No encryption is initiated by the client.

 Note
If your on-premise mail server requires SMTPS, select
Off for Protection. The SSL connection then needs to be
con gured in SAP Cloud Connector.

POP3S (only when transport protocol POP3 has been


selected when creating the channel and only when Internet
has been selected as Proxy Type)

The TCP connection to the server is encrypted. The S (in


POP3S) stands for secure; in technical terms, TLS
encryption is applied in that case.

IMAPS (only when transport protocol IMAP4 has been


selected when creating the channel and only when Internet
has been selected as Proxy Type)

The TCP connection to the server is encrypted. The S (in


IMAPS) stands for secure; in technical terms, TLS
encryption is applied in that case.

STARTTTLS Mandatory

If the server supports STARTTLS, the client initiates


encryption using TLS. If the server doesn’t support this
option, the connection stops with an error.

STARTTTLS Optional

If the server supports STARTTLS, the client initiates


encryption using TLS. If the server doesn’t support this
option, client and server remain connected but
communicate without encryption.

This is custom documentation. For more information, please visit the SAP Help Portal 396
6/14/2023

Parameter Description

Authentication Speci es which mechanism is used to protect user name and


password combination.

Plain User Name/Password

The user name and password are sent in plain text. Only
use this option together with SSL or TLS, as otherwise an
attacker could obtain the password.

Encrypted User/Password

The user name and password are hashed before being sent
to the server. This authentication mechanism (CRAM-MD5
and DIGEST-MD5) is secure even without encryption.

OAuth2 Authorization Code (only when transport protocol


IMAP4 has been selected when creating the channel)

The authenti cation is done via an authorization server as


an intermediary step. The client can exchange the OAuth2
Authorization Code for an access token. Your user
credentials are never shared with the client.

See: Deploying an OAuth2 Authorization Code

 Note
POP3 : OAuth is not available for POP3.

Personal Accounts: Microsoft does not support


OAuth for personal accounts for IMAP, POP3,
and SMTP. This restriction does not exist for
basic authentication.

Credential Name Speci es the name of the User Credentials artifact that contains
user name and password (used to authenticate at the e-mail
account).

More information: Deploying a User Credentials Artifact

Select the Processing tab and provide values in the elds as follows.

Processing

Parameter Description

Folder Specify the IMAP folder containing the mails to be read.

(only if as Transport Protocol the option IMAP4 has been


selected)

Selection Specify which mails are to be processed (all mails or only unread ones).
You can select whether all or only unread mails are to be processed.
(only if as Transport Protocol the option IMAP4 has been
selected)

Max. Messages per Poll De nes the maximal number of messages to be read from the e-mail server
in one polling step.

This is custom documentation. For more information, please visit the SAP Help Portal 397
6/14/2023

Parameter Description

Lock Timeout (in min) Specify the max. amount of time the lock is active during the polling
process.

When you start a poll, the mail adapter acquires a lock to be allowed to poll
the mailbox. This lock consists of the host, username, and folder. The lock
is shared across worker nodes and makes sure that only one worker node
polls the same mailbox/folder at the same time. With the lock timeout, you
de ne the max. duration for the acquired lock before it is released
automatically. If the poll needs less time than the amount you de ned, the
lock is released earlier.

It can happen that the lock is not released after a poll (that is, in case of a
node crash). In this case, the processing will only continue after the lock
timed out or the lock is removed manually via the Lock Monitor (see:
Message Locks). It’s recommended to set the lock time higher than the
processing time that is required per poll. But also make sure to not block
the processing for a long time in the case of a node crash. A poll is
completed after the number of messages as de ned in Max. Messages Per
Poll has been processed.

Post-Processing Specify how to handle processed mails on the server.


There are the following options:

Archive (only if as Transport Protocol the option IMAP4 has been


selected)

Polled message is archived (moved to speci ed Archive Folder).

Archive and Mark as Read (only if as Transport Protocol the


option IMAP4 has been selected)

Polled message is marked as read and archived (moved to


speci ed Archive Folder).

Delete

Polled message is deleted.

Mark as Read

Polled mail is marked as read.

 Note
(Only if as Transport Protocol the option IMAP4 has been
selected)

If Post-Processing is set to Mark as Read and the poll strategy


is set to poll for all mails (Selection: All), then already
processed mails are processed again at every polling interval.

If you want to use this parameter setting, make sure that your
polling interval is sufficiently large, otherwise your process
becomes inefficient.

Note that the con guration of the mail server can in certain cases override
dedicated Post-Processing settings (see: Important Notes on Security
Risks and Mailbox Settings).

Archive Folder (only if for Post-Processing the option Specify name of folder where mail is to be archived.
Archive or Archive and Mark as Read is selected)

Remove Attachments Select this option if attachments are to be removed from the mail before
further processing.

This is custom documentation. For more information, please visit the SAP Help Portal 398
6/14/2023

Parameter Description

Include Original Mail Enable this option to include the original e-mail in the
SAP_MAIL_ORIGINAL_MESSAGE property for further processing such as
veri cation of the original e-mail.

The mail adapter polls the messages from the mailbox and splits them into
header, property, and body. This means that the original signed e-mail can
no longer be veri ed during further processing.

To verify signed e-mails, you can include the original e-mail in the
SAP_MAIL_ORIGINAL_MESSAGE property.

 Caution
Mail attachments with the same attachment name aren't supported.

If there are duplicate attachments, the adapter generates unique attachment names by attaching a GUID to the original
attachment name.

If the attachment name isn't set, the adapter generates a new attachment name by generating a GUID as attachment
name.

Example 1:

Incoming mail contains the following attachments:

myAttachment.pdf

myAttachment.pdf

myAttachmentUnique.pdf

Result after mail sender:

myAttachment_b3160958-c58c-436e-a4b9-5078e7c1cdf5.pdf

myAttachment_250f0bb4-adda-4129-9635-f5f6f15e7ce3.pdf

myAttachmentUnique.pdf

Example 2:

Incoming mail contains the following attachments:

myAttachment

myAttachment

myAttachmentUnique

Result after mail sender:

myAttachment_73e53699-ca6e-4ba1-88ce-b87336720141

myAttachment_c25201a5-f7c6-4113-88bc-617289fd676c

myAttachmentUnique

This is custom documentation. For more information, please visit the SAP Help Portal 399
6/14/2023
Select the Scheduler tab and provide values in the elds as follows.

Scheduler

Scheduler Option Field Description

Schedule on Day On Date Specify the date on which you want the
operation to be executed.
(mails are to be polled at a speci c day)
On Time Specify the time at which you want the
operation to be executed.

Every Specify the interval at which you want the


operation to be executed.

Time Zone Select the time zone that you want the
scheduler to use as a reference for the date
and time settings.

Schedule to Recur Daily Specify that the messages are to be polled


daily (either at a speci c time as de ned
(mails are to be polled periodically)
next to the checkbox On Time or in a
speci c time interval as de ned next to the
checkbox Every).

Weekly Specify that the messages are to be polled


weekly. Select the checkboxes to indicate
the days of the week on which you want the
operation to be executed. Also specify the
time (checkbox On Time) or interval
(checkbox Every) for the schedule to recur.

Monthly Specify that the messages are to be polled


monthly. Select the day of the month on
which you want the operation to be
executed. Also specify the time (checkbox
On Time) or interval (checkbox Every) for
the schedule to recur.

On Time Specify the time at which you want the


operation to be executed.

Every Specify the interval at which you want the


operation to be executed.

Time Zone Select the time zone that you want the
scheduler to use as a reference for the date
and time settings.

Example: With the con guration shown in the gure below, the integration ow are activated every week on Monday to poll e-
mails on this day every hour, between 00:00 and 24:00 (Greenwich Time Zone).

This is custom documentation. For more information, please visit the SAP Help Portal 400
6/14/2023

 Note
Additional Notes

To access an attachment, you have to use Groovy script or JavaScript.

For more information about how to access attachments, see the following blog and the documentation for the
Script step.

To access the mail attributes (Subject, From, or To), you have to set them manually as Allowed Headers on the
Runtime Con guration tab. This adds them to an allowlist.

The mail sender adapter can decrypt encrypted mails and veri es the signature of a signed message. You can access
the results of the veri cation via headers and Exchange properties. For more information, see Headers and Exchange
Properties Provided by the Integration Framework.

The property Include Original Mail was changed to allow the saving of duplicate attachments.Before this change,
duplicate attachments got lost.

Related Information
Important Notes on Security Risks and Mailbox Settings
Blog on How to Connect CPI with Your On-Premise Mail Server
Generating a Key Pair
Options to Protect Mail Connections
About Headers and Exchange Properties
Headers and Exchange Properties Provided by the Integration Framework
https://blogs.sap.com/2020/08/20/cloud-intgration-connect-to-microsoft-365-mail-with-oauth2/

Mail Sender for IMAP


You use the mail sender adapter to download e-mails from mailboxes using the Internet Message Access Protocol (IMAP)
protocol, to access the content of the e-mail body, and to access e-mail attachments.

To use this adapter, create a sender channel and as Adapter Type select Mail IMAP4 . (see Overview of Integration Flow
Editor).

Con gure the adapter parameters as described at Con gure the Mail Sender Adapter.

Related Information
Important Notes on Security Risks and Mailbox Settings

Mail Sender for POP3


You use the mail sender adapter to download e-mails from mailboxes using the Post Office Protocol (POP3) protocol, to access
the content of the e-mail body, and to access e-mail attachments.

To use this adapter, create a sender channel and as Adapter Type select Mail POP3 . (see Overview of Integration Flow
Editor).

Con gure the adapter parameters as described at Con gure the Mail Sender Adapter.

This is custom documentation. For more information, please visit the SAP Help Portal 401
6/14/2023

Related Information
Important Notes on Security Risks and Mailbox Settings

Important Notes on Security Risks and Mailbox Settings


When using the mail sender adapter, be aware of the following in order to avoid any unwanted results.

Security Risks
It is not possible to authenticate the sender of an e-mail

Unlike with other adapters, if you are using the sender mail adapter, the Cloud Integration system cannot authenticate the
sender of an e-mail.

Therefore, if someone is sending you malware, for example, it is not possible to identify and block this sender in the Cloud
Integration system.

To minimize this danger, you can use the authentication mechanism of your mailbox. Bear in mind, however, that this
mechanism might not be sufficient to protect against such attacks.

There are three possible threats when processing e-mail content:

Danger to a receiver system when forwarding e-mail content

E-mails can contain malware, such as viruses or Trojan horses.

These will not affect the Cloud Integration system, but they can cause damage to a receiver system if it doesn't have
sufficient protection strategies.

Danger to the Cloud Integration system

E-mail content can be designed to affect the processing runtime of a system.

Processing this content overloads the system and prevents requests from being ful lled (denial of service).

The Cloud Integration system is then unavailable until the problem is xed.

Reliability of data

Sending e-mails is anonymous. It is not possible to verify whether the sender of an e-mail really is who they claim to be.

Even if your mailbox has an authentication mechanism, this mechanism might not be sufficient.

Therefore, data contained in an e-mail (for example, the amount of an order), is not reliable without further veri cation.

Notes with Regard to Mailbox Settings


The mailbox settings for downloading e-mails can interfere with the settings in the sender mail adapter.

For example: When using POP3 protocol, the post-processing setting Delete/Remove might not work properly. In this case, try
to con gure the correct behavior in the mailbox.

Con gure the Mail Receiver Adapter

This is custom documentation. For more information, please visit the SAP Help Portal 402
6/14/2023
You use the mail receiver adapter to send encrypted messages by e-mail.

 Note
In the following cases certain features might not be available for your current integration ow:

You are using a runtime pro le other than the one expected. See: Runtime Pro les.

A feature for a particular adapter or step was released after you created the corresponding shape in your integration
ow.

To use the latest version of a ow step or adapter – edit your integration ow, delete the ow step or adapter, add the
step or adapter, and con gure the same. Finally, redeploy the integration ow. See: Updating your Existing Integration
Flow.

 Note
This adapter exchanges data with a remote component that might be outside the scope of SAP. Make sure that the data
exchange complies with your company’s policies.

The mail receiver adapter opens a connection to a mail server and sends messages (as e-mail) to it.

 Note
For an example of how to con gure the mail receiver adapter in a dedicated demo integration scenario, check out the
following topic: Create the Mail Receiver Channel.

If you want to learn how to use the mail receiver adapter to send signed and/or encrypted mails, this blog is for you: Cloud
Integration - Sending Signed and/or Encrypted Mails in Mail Receiver Adapter

Once you've created a receiver channel and selected the mail receiver adapter, you can con gure the following attributes.

Select the General tab and provide values in the elds as follows.

General

Parameter Description

Name Enter the name of the channel.

Select the Connection tab and provide values in the elds as follows.

Connection

Parameter Description

This is custom documentation. For more information, please visit the SAP Help Portal 403
6/14/2023

Parameter Description

Address Speci es the host name and (optionally) a port number of the SMTP server.
An external mail server can be used.

Use one of the following open ports for external mail servers:

587 for SMTP+STARTTLS

465 for SMTPS

Example (to connect to Yahoo mail server):

smtp.mail.yahoo.com:465

 Note
If no port is speci ed in the Address eld, by default port 25 is used. This is not recommended.
Recommended ports are 587 for SMTP+STARTTLS and 465 for SMTPS.

Proxy Type The type of proxy that you’re using to connect to the target system.

Select Internet if you’re connecting to a cloud mail server.

Select On-Premise if you’re connecting to an on-premise mail server.

For more information, see Using SAP Cloud Connector with Cloud Integration Adapters.

Location ID (only if On-Premise is To connect to a cloud connector instance associated with your account, enter the location ID that
selected for Proxy Type) you de ned for this instance in the destination con guration on the cloud side.

Timeout (in ms) Speci es the network timeout for the connection attempt to the server.
The default value is 30000. The timeout must be larger than 0, but less than ve minutes.

Protection De nes whether encryption is used. The possible values are:

Off

No encryption is initiated, whether the server requests it or not.

 Note
If your on-premise mail server requires SMTPS, select Off for Protection. The SSL
connection then needs to be con gured in SAP Cloud Connector.

STARTTLS Mandatory

If the server supports STARTTLS, the client initiates encryption using TLS. If the server
doesn’t support this option, the connection fails.

STARTTLS Optional

If the server supports the STARTTLS command, the connection is upgraded to Transport
Layer Security encryption (works with the normal port 25).

If the server supports STARTTLS, the client initiates encryption using TLS. If the server
doesn’t support this option, client and server remain connected but communicate without
encryption.

SMTPS (only when None has been selected for Proxy Type)

The TCP connection to the server is encrypted using SSL/TLS. This step usually requires an
SSL proxy on the server side and access to the port it runs on.

This is custom documentation. For more information, please visit the SAP Help Portal 404
6/14/2023

Parameter Description

Authentication Speci es which mechanism is used to authenticate against the server with a user name and
password combination. Possible values are:
None

No authentication is attempted. No credential can be chosen.

Plain User Name/Password

The user name and password are sent in plain text. Only use this option together with SSL
or TLS, as otherwise an attacker could obtain the password.

Encrypted User/Password

The user name and password are hashed before being sent to the server. This
authentication mechanism (CRAM-MD5 and DIGEST-MD5) is secure even without
encryption.

OAuth2 Authorization Code

The authenti cation is done via an authorization server as an intermediary step. The client
can exchange the OAuth2 Authorization Code for an access token. Your user credentials are
never shared with the client.

See: Deploying an OAuth2 Authorization Code

 Note
Personal Accounts: Microsoft does not support OAuth for personal accounts for IMAP,
POP3, and SMTP. This restriction does not exist for basic authentication.

See also: Managing Security Material

Credential Name (only if Plain Speci es the name of a deployed credential to use for authentication.
User Name/Password or More information: Deploying a User Credentials Artifact
Encrypted User/Password is
selected for Authentication)

Select the Processing tab and provide values in the elds as follows.

Processing

Parameter Description

From E-mail address that the message comes from.

To E-mail address that the message is sent to.


If you want to con gure multiple mail receivers, use a comma (,) to
separate the addresses.

Example: [email protected], [email protected],


[email protected]

Cc Additional e-mail addresses that the e-mail is to be sent to.


These addresses are visible to the receiver.

If you want to con gure multiple mail receivers, use a comma (,) to
separate the addresses.

Example: [email protected], [email protected],


[email protected]

This is custom documentation. For more information, please visit the SAP Help Portal 405
6/14/2023

Parameter Description

Bcc Additional e-mail addresses that the e-mail is to be sent to.


These addresses aren’t visible to the receiver.

If you want to con gure multiple mail receivers, use a comma (,) to
separate the addresses.

Example: [email protected], [email protected],


[email protected]

Subject Subject of the e-mail message.

Mail Body Speci es the text of an e-mail message.


As default entry, the following expression is set:

${in.body}

If you keep the default setting, the message body (as determined
by this dynamic expression) is sent to the receiver.

Body MIME Type Speci es the type of the message body. This type determines how
the message is displayed by different user agents.

You can select from the following MIME types:

Text/Plain (default setting)

Text/CSV

Text/HTML

Application/XML

Application/JSON

Application/Octet-Stream

Application/ZIP

Application/X-Gzip

Body Encoding Speci es the character encoding (character set) of the message
body. The content of the input message is converted to this
encoding, and any character that isn't available is replaced with a
question mark ('?'). To ensure that data is passed unmodi ed,
select a Unicode encoding, for example, UTF-8.

You can select from the following encodings:

UTF-8 (default setting)

windows-1252

UTF-ASCII

ISO-8859-1

Name (under Mail Attachments) Speci es the le name of the attachment.

This is custom documentation. For more information, please visit the SAP Help Portal 406
6/14/2023

Parameter Description

MIME Type (under Attachments) The Multipurpose Internet Mail Extensions (MIME) type speci es
the data format of the e-mail attachment.

You can select from the following MIME types:

Text/Plain

Text/CSV

Text/HTML

Application/XML

Application/JSON

Application/Octet-Stream

Application/ZIP

Application/X-Gzip

Source (under Attachments) Speci es the source of the data.

Body

If selected, the body of the input message is used.

Header

If selected, the header of the input message is used.

Header Name (under Attachments) If the source is Header, this parameter speci es the name of the
header that is attached.

Add Message Attachments (under Attachments) Select this option to add all attachments contained in the message
exchange to the e-mail.

Content Transfer Encoding Choose the content transfer encoding in which you send
attachments to the mail server. This step can be required if the
mail server expects a speci c encoding. In most cases Automatic
is sufficient.

You can choose between the following options:

Automatic (default setting)

7Bit

8Bit

Base64

Binary

Quoted-Printable

 Note
The parameters From, To, Cc, Bcc, Subject, Mail Body as well as the attachment name, can be dynamically set at runtime
from message headers or content.

Select the Security tab and provide values in the elds as follows.

This is custom documentation. For more information, please visit the SAP Help Portal 407
6/14/2023
Security

Parameter Description

Signature and Encryption Type This parameter con gures encryption and signature used for sending e-mails. The
message body and attachments are encrypted with the selected scheme and can
only be decrypted by the intended recipients.

You can choose between the following types:

None (default setting)

S/MIME Encryption

S/MIME Signature

S/MIME Signature and Encryption

SIGNATURE parameters (only if for Signature Speci es parameters for message signing.
and Encryption Type the option S/MIME
You can specify the following parameters:
Signature or S/MIME Signature and Encryption
is selected) Send Clear Text Signed Message

If selected, the tenant sends the signed message as clear text, so that recipients
who don't have S/MIME security are able to read the message.

Under Signer Parameters, add the reference to one or multiple private keys that can
be that can be used to sign the message. For each key, specify the following
parameters:

Private Key Alias

Speci es an alias for the private key that is to be used to sign the message.
This key has to be part of the tenant keystore. The alias can be dynamically
read from a header or property using an expression such like, for example,
${header.alias}.

Signature Algorithm

Speci es the algorithm used to sign the content using the private key.

Include Certi cates

Speci es whether you allow recipients to send encrypted and signed


messages to you. To allow that, make sure that this eld is set to true, so
that your signing certi cates are selected.

This is custom documentation. For more information, please visit the SAP Help Portal 408
6/14/2023

Parameter Description

ENCRYPTION parameters (only if for Signature Speci es parameters for message encryption.
and Encryption Type the option S/MIME
You can specify the following parameters for the secret key (used to encrypt the
Encryption or S/MIME Signature and
message):
Encryption is selected)
Content Encryption Algorithm

Speci es the symmetric (block) cipher. Choose DESede only if the


destination system or mail client doesn’t support AES.

Secret Key Length

Speci es the key size of the previously chosen symmetric cipher. To


increase the security, choose the maximum key size supported by the
destination.

Under Receiver Public Key, specify one or more certi cates (from the tenant
keystore) to be used to encrypt the secret key. Choose Add to add a new entry. For
each entry, specify the following parameters:

Public Key

Speci es an alias for the receiver public key.

The alias can be dynamically read from a header or property using an


expression such like ${property.alias} or ${header.alias}.

You can also use expressions such like


pd:${header.PartnerID}:${header.ParameterID}:Binary or
pd:${property.PartnerID}:${property.ParameterID}:Binary
to dynamically read URI parameters from the Partner Directory (if
con gured).

Key Encryption Algorithm

Speci es the key encryption algorithm.

To understand the parameters available in the section ENCRYPTION, you need to know the following: Message content
encryption works as a process where secret keys and a private/public key pair are involved. A simpli ed process is depicted in
the following gure. The gure only shows one receiver system, but note that the tenant can send an email to multiple
receivers.

This is custom documentation. For more information, please visit the SAP Help Portal 409
6/14/2023

The following steps are accomplished behind the scenes when a message is encrypted:

1. The tenant encrypts the content of the message with a secret key.

The secret key is generated randomly per encrypted email.

The secret key has a length as given by the Secret Key Length parameter, and encryption is accomplished with a
symmetric encryption method that is speci ed by the Content Encryption Algorithm parameter.

2. The tenant encrypts the secret key with one or more public keys from the tenant keystore. The public keys to be used are
speci ed under Receiver Public Key.

Each public key is associated with a public / private key pair owned by a receiver.

 Tip
To give an idea of a typical setup, for each email receiver a separate public key is speci ed.

3. The tenant sends the encrypted message content together with the encrypted secret key to one or more receivers.

The secret key is removed after this step. For reasons of security, it's also not stored anywhere.

4. Each receiver uses a private key to decrypt the secret key.

Only a private key that is associated with one of the public keys speci ed in the mail adapter can be used to decrypt the
secret key.

5. Each receiver uses the decrypted secret key to nally decrypt the message content.

For more information, see the following blog: Cloud Integration – Sending Signed and/or Encrypted Mails in Mail Receiver
Adapter .

Related Information
This is custom documentation. For more information, please visit the SAP Help Portal 410
6/14/2023
Generating a Key Pair
Options to Protect Mail Connections
Headers and Exchange Properties Provided by the Integration Framework
https://blogs.sap.com/2020/08/20/cloud-intgration-connect-to-microsoft-365-mail-with-oauth2/

Options to Protect Mail Connections


With mail sender and receiver adapter, you have several options to protect the communication.

SMTPS (receiver adapter), IMAPS (sender adapter) or POP3S (sender adapter)

Using one of these options, an encryption is already initiated when establishing the connection. The connection in that
case is protected using Transport Layer Security (TLS). The mail server needs to offer a dedicated port in that case.

STARTTLS

Using this option, an existing, unencrypted connection can be changed to an encryptiod one. This works that way that,
after the connection has been established, the client request from the server which enhanced operations are supported
by the latter. In case it is STARTTLS, the connection is upgraded to an encrypted one.

The Protection parameter in the mail adapter provides two variants of using STARTTLS:

STARTTTLS Mandatory

If the server supports STARTTLS, the client initiates encryption using TLS (otherwise, the connection stops with
an error).

STARTTTLS Optional

If the server supports STARTTLS, the client initiates encryption using TLS (otherwise, client and server remain
connected but communicate without encryption).

Microsoft Dynamics CRM Receiver Adapter


The Microsoft Dynamics CRM receiver adapter enables SAP Cloud Integration to accelerate the implementation time and
reduce the complexity of connecting to Microsoft Dynamics CRM.

 Note
In the following cases certain features might not be available for your current integration ow:

You are using a runtime pro le other than the one expected. See: Runtime Pro les.

A feature for a particular adapter or step was released after you created the corresponding shape in your integration
ow.

To use the latest version of a ow step or adapter – edit your integration ow, delete the ow step or adapter, add the
step or adapter, and con gure the same. Finally, redeploy the integration ow. See: Updating your Existing Integration
Flow.

 Note
This adapter exchanges data with a remote component that might be outside the scope of SAP. Make sure that the data
exchange complies with your company’s policies.

This is custom documentation. For more information, please visit the SAP Help Portal 411
6/14/2023
Dynamics 365 Sales is an adaptive selling solution that helps your sales team navigate the realities of modern selling. Its CRM
system provides capacities that include:

Sales Force Automation

Contact & Account Management

Opportunity & Pipeline Management.

Task / Activity Management

Territory & Quota Management

Desktop Integration

Product & Price List Management

Quote & Order Management

Customer Contract Management

Case Management and so on.

 Note
You need to download the adapter from SAP Software Download Center. You can nd more information on the download
navigation path here .

After you complete the download, uncompress and extract the les to your local system. Then deploy the adapter on your
tenant.

For more information on deploying the adapter in multicloud environment, see Importing Custom Integration
Adapter.

For tenants hosted on Neo environment, you must import the adapter to your Eclipse tool and deploy the adapter
project. For more information see, Develop Adapter.

Once you’ve created a receiver channel and selected the Microsoft Dynamics CRM adapter, you can con gure its parameters by
referring the following description:

The General tab shows general information such as the adapter type, its direction (receiver), the transport protocol, and the
message protocol.

Connection

Parameter Description

Address Speci es the recipient's endpoint URL. This value can also be
speci ed dynamically.

Client ID Alias Speci es the client ID for the endpoint. This value can be retrieved
from Azure AD.

Credential Name Speci es the name of the User Credentials artifact that contains
the credentials for basic authentication.

Processing

Parameter Description

This is custom documentation. For more information, please visit the SAP Help Portal 412
6/14/2023

Parameter Description

API Version The version of the API used for calling the Microsoft Dynamics
CRM application. Select one of the following versions:

V9.1

V9.2

Processing Mode Speci es the processing mode. Select one of the following
processing modes:

Single

Batch

Operation To access and exchange data with Microsoft Dynamics CRM, you
can select among the following operation:

Create Object

Delete Object

Get Object by ID

Query Objects

Update Object

Disassociate Object

Associate Object

Function

Business Object Speci es the name of the entity to perform the operation on. For
Example: accounts, invoices, opportunities, and so on.

Business Object ID Speci es the unique ID. The ID represents the instance of the entity
that you’ve speci ed in the Business Object eld.
(only if you select Update, Delete, Associate, Disassociate,
Function (Bound), and Get by ID operations)

Affected Property Speci es the property of the entity affected by the deletion. In case
you specify this property, only the speci ed property is deleted
(only if Delete operation is used)
and the rest of the properties of the entity is left as it is. In case
this eld is left empty, the complete record of the entity or the
business object is deleted.

Suppress Duplicates As a default behavior, the update object doesn’t check for
duplicates. This means that in case you attempt to update already
(only if Create or Update operation is used)
existing records in the Microsoft Dynamics CRM, the feature still
updates. To prevent such updates, select this checkbox.

Type Select the type of function from one of the following:

(only if Function operation is used) Bound

Unbound

Function The adapter supports calling Microsoft Dynamics CRM functions.


You can add the function name and parameters in this eld.
(only if Function operation is used)

This is custom documentation. For more information, please visit the SAP Help Portal 413
6/14/2023

Parameter Description

Use Pagination This eld speci es how to control the number of returned records.
It’s useful, especially when dealing with many records. Once
(only if Query or Function operation is used)
checked, you can specify the Page Size and the Next Page Link.

Page Size Speci es the maximum number of records that is returned in the
response. This eld is set to 500 by default.
(only if you enable Use Pagination option)

Next Page Link In case, more records are returned in the response than the number
speci ed in the Page Size, then a @odata.nextLink property is
(only if you enable Use Pagination option)
returned with the results. The value @odata.nextLink property can
be used to retrieve the next result page. The Next Page Link is
meant to be lled with this value. In most cases, this eld needs to
be made dynamic by using a property.

Request This eld speci es the format of the request message to be sent to
Microsoft Dynamics CRM. Possible values include
(only for create, update, associate, disassociate operation)
Application/XML and Application/JSON. The default value is
Application/XML.

Response This eld speci es the format of the response message to be


returned by Microsoft Dynamics CRM. Possible values include
Application/XML and Application/JSON. The default value is
Application/XML.

Query Type Possible values include the following values:

(only for Query Objects, Get Object by ID operation) Basic

Advanced

FetchXML

OData Query Speci es complex queries according to OData query options.

(only for Query Objects are set to Advanced)

FetchXML Query Speci es FetchXML queries to query data from Dynamics CRM.

(only for Query Objects are set to FetchXML)

Limit Speci es the maximum number of records to be returned as a


response.
(only for the Query Objects operation)

Count Select to include the total number of records that meet the query or
ltering criteria in the response. The response includes a property
(only for the Query Objects operation)
called OData.count.

Filters Speci es lter conditions to determine which type of records


should be returned by the server.

Response Properties Speci es the elds that are returned in the response. This is a way
to limit, which properties of the response is returned. Each
property is added in a separate row of the table. In case no
properties are added to this property, all elds of the concerned
entity is returned.

Order Response by Speci es in which order the records in the response is returned.
You can’t always use this feature together with the aggregate
property.

This is custom documentation. For more information, please visit the SAP Help Portal 414
6/14/2023

Parameter Description

Expand Navigation Properties Speci es the properties to be included and expanded in the
response. The aggregation isn’t supported while expanding.

Aggregate Properties Speci es how to aggregate and group your response data. The
aggregation isn’t supported while doing any other query options.

Outbound Headers Speci es any additional headers that you need to send to the
Microsoft Dynamics CRM.

OData Adapter
The OData adapter allows you to communicate with an OData API using OData protocol. You use messages in ATOM or JSON
format for communication. This OData adapter uses OData V2 message protocol.

In the sender channel, the OData adapter listens for incoming requests in either ATOM or JSON format.

More information: Con gure the OData Sender Adapter.

OData adapters only support synchronous communication. In other words, every request must have a response.

In the receiver channel, the OData adapter sends the OData request in the format you choose (ATOM or JSON) to the OData
API provider.

 Note
In the case of OData API artifacts, OData adapter in the sender channel is not editable. It is prepopulated with data you have
provided when binding OData objects to a data source.

 Tip
If your input payload contains nodes without data, the output also contains empty strings. If you want to avoid empty strings
in the output, ensure that the input payload does not contain any empty nodes.

Related Information
Con gure the OData Sender Adapter
Con gure the OData V2 Receiver Adapter
Con gure the OData V4 Receiver Adapter

Con gure the OData Sender Adapter


 Note
In the following cases certain features might not be available for your current integration ow:

You are using a runtime pro le other than the one expected. See: Runtime Pro les.

A feature for a particular adapter or step was released after you created the corresponding shape in your integration
ow.

To use the latest version of a ow step or adapter – edit your integration ow, delete the ow step or adapter, add the
step or adapter, and con gure the same. Finally, redeploy the integration ow. See: Updating your Existing Integration

This is custom documentation. For more information, please visit the SAP Help Portal 415
6/14/2023
Flow.

 Note
This adapter exchanges data with a remote component that might be outside the scope of SAP. Make sure that the data
exchange complies with your company’s policies.

The OData sender adapter supports externalization. To externalize the parameters of this adapter, choose Externalize and
follow the steps mentioned in Externalize Parameters of an Integration Flow.

Once you've created a sender channel and selected the OData sender adapter, you can con gure the following attributes. See
Overview of Integration Flow Editor.

Select the General tab and provide values in the elds as follows.

General

Parameter Description

Name Enter the name of the channel.

Select the Adapter Speci c tab and provide values in the elds as follows.

Adapter Specific

Parameter Description

Authorization Select User Role if you want to authorize a user to send OData
requests based on the ESBMessaging.send.

Select Client Certi cate if you want to authorize a user to send


OData requests based on a certi cate. If you select this option,
you've to add and enter the Subject DN (information used to
authorize the sender) and Issuer DN (information about the
Certi cate Authority who issues the certi cate).

User Role The user role that you're using for authorization. Choose Select to
get a list of all the available user roles for your tenant and select
(only if you select Authorization as User Role).
the one that you want to use.

For more information on user roles, see Tasks and Permissions.

Client Certi cate The client certi cate that you're using for authorization. Choose
Add to add a new row and then choose Select to add the Subject
(only if you select Authorization as Client Certi cate).
DN and Issuer DN.

EDMX Select the EDMX le that contains the OData API de nition.

Operation Select the operation that you want to perform on the selected
Entity Set in the OData API.

Entity Set Entity set in the OData API that you want to perform the operation
on.

 Note
The adapter doesn't support empty response payloads. If used, the invoking of the integration ow results in an error.

For more information on limitations in the OData sender adapter, refer the note 2919230 .

This is custom documentation. For more information, please visit the SAP Help Portal 416
6/14/2023
To know more about using the adapter from external clients, see:

Use CSRF Protection

Setting Up OAuth Inbound Authentication with Client Credentials Grant for API Clients

 Note
Upon deployment, the endpoint of an integration artifact with OData Sender Adapter is derived from the name of the
artifact.

Related Information
Setting Up Inbound HTTP Connections (Integration Flow Processing), Neo Environment

Con gure the OData V2 Receiver Adapter


Con gure the OData receiver adapter by understanding the adapter parameters.

 Note
In the following cases certain features might not be available for your current integration ow:

You are using a runtime pro le other than the one expected. See: Runtime Pro les.

A feature for a particular adapter or step was released after you created the corresponding shape in your integration
ow.

To use the latest version of a ow step or adapter – edit your integration ow, delete the ow step or adapter, add the
step or adapter, and con gure the same. Finally, redeploy the integration ow. See: Updating your Existing Integration
Flow.

 Note
This adapter exchanges data with a remote component that might be outside the scope of SAP. Make sure that the data
exchange complies with your company’s policies.

OData receiver adapter supports externalization. To externalize the parameters of this adapter, choose Externalize and follow
the steps mentioned in Externalize Parameters of an Integration Flow.

 Note

OData adapter doesn’t support $format and $inlineCount in query options.

OData adapter supports sending error response in exception subprocess. The error response body is part of
expression ${in.body}.

OData API response code is captured in the camelhttpresponsecode header.

OData adapter doesn’t support incoming payload in JSON format. The adapter only supports payload in XML format.

OData adapter doesn't support the word link in your payload. The word is reserved for creating reference links.

The adapter enables you to use connection pool while connecting to OData backend. For more information, see SAP
Note 2863657 .

This is custom documentation. For more information, please visit the SAP Help Portal 417
6/14/2023
You can enable tracing for the adapter and analyze its log. For more information, see SAP Note 2852998 .

Select the General tab and provide values in the elds as follows.

General

Parameter Description

Name Enter the name of the channel.

Select the Connection tab and provide values in the elds as follows.

Connection

Parameter Description

Address URL of the OData V2 service that you want to connect to.

Proxy Type The type of proxy you want to use for establishing connection with
OData V2 service.

Currently, you can choose between Internet (default) and On-


Premise.

Location ID Location ID that you’ve con gured in the cloud connector installed
on your system.
(only if you choose Proxy Type as On-Premise).

Authentication Authentication method that you want to use for connecting to the
OData V2 service. Currently, you can choose from

None

Basic

Principal Propagation

 Remember
When you want to use Principal Propagation as the
authentication method to connect with an on-premise
system, don't pass any authorization headers. Follow
the approach recommended by SAP BTP Connectivity.
See: Authentication to the On-Premise System.

The following options are enabled only if you choose Proxy Type as
Internet

Client Certi cate

OAuth2 Client Credentials: Use this grant type to access


web resources by authorizing the client application to
perform required actions on behalf of a user.

OAuth2 SAML Bearer Assertion: If you've chosen this


option, the identity of the user associated with the sender
application is forwarded from the sender account to the
receiver account.

Credential Name Credential name of the credentials that you’ve deployed in


Security Material section of  (Operations View).
(only if you choose Authentication as Basic, OAuth2 Client
Credentials, or OAuth2 SAML Bearer Assertion).

This is custom documentation. For more information, please visit the SAP Help Portal 418
6/14/2023

Parameter Description

Private Key Alias Enter the private key alias that enables the system to fetch the
private key from keystore for authentication.
(only if you select Client Certi cate Authentication).

 Restriction
The values true and false aren’t supported for this eld.

CSRF Protected Keep this option selected (default setting). It ensures that your
integration ow is protected against Cross-Site-Request-Forgery, a
kind of attack where a malicious party can perform harmful actions
by masquerading as the logged in user

Reuse Connection The option is enabled by default. This option enables the reuse of
connection objects from the internal connection pool which in turn
improves the network turnaround time for multiple communications
to a same end point.

Select the Processing tab and provide values in the elds as follows.

Processing

Parameter Description

This is custom documentation. For more information, please visit the SAP Help Portal 419
6/14/2023

Parameter Description

Operation Details The operation that you want to perform on the selected OData
entity or resource. Supported operations are:

Query (GET)

Create (POST)

Update (PUT)

Merge

Read (GET)

Delete

Patch

Function Import

To leverage all operations, always use the latest version of the


adapter.

 Note
For non-GET operations, if the server responds with HTTP 2xx
series code, the same response code is accepted for message
processing.

For the POST operation, the automatic Primary Key generation is


handled in 2 different ways based on the implementation in the
backend server:

If the backend supports the primary key entry in the


payload and later overwrites the entry value after receiving,
you can enter a dummy value for the primary key.

If the primary key entry in the payload isn’t supported by


the backend, then the payload must be sent without a
primary key value. If mapping step is used, you can disable
the entry by performing one of the following steps:

Disable the primary key value in the mapping

Manually remove the primary key entry from the


schema and use that schema in mapping

This is custom documentation. For more information, please visit the SAP Help Portal 420
6/14/2023

Parameter Description

Resource Path Choose Select to launch the Model Operation wizard. Refer to
table Model Operation for elds and description for model
operation wizard.

 Note
You can also specify the Resource Path parameter
dynamically using a header or a property (with an
expression such like ${header.resourcePath}, for
example). Note that, however, XPath expressions aren’t
supported for this parameter.

Navigation entities in the resource path aren’t


supported.

 Note
When you use this adapter with the Update or Merge operation,
use the following format when specifying the value of the
Resource Path parameter: EntitySetName(key=value) or
EntitySetName(key).

Example (for EntitySetName=Product):

Product(productId='001')

Query Options Query options that you’re passing as a part of the URI to the OData
V2 service.
(enabled for Query (GET) and Read (GET) operations.)

Fields Fields in the entity that you’re performing the operation on. If you
use the Model Operation wizard, the input for this eld is provided
(enabled for Create (POST), Merge (MERGE), Patch (PATCH), and
by the wizard.
Update (PUT) operations.)

Enable Batch Processing Select to perform multiple operations in one request to the OData
V2 service in the $batch mode.

Custom Query Options Additional query options that aren’t available in the Model
Operation wizard.

Content Type Type of content that you’re sending to the OData V2 backend
service. The adapter supports following content types:

Atom (default): Select this option to convert an XML


payload to ATOM XML format.

JSON: Select this option to convert XML payload to JSON


format.

Content Type Encoding Encoding type used for sending content to OData API.

(enabled for Create (POST), Merge (MERGE), Patch (PATCH), and


Update (PUT), and Function Import operations.)

This is custom documentation. For more information, please visit the SAP Help Portal 421
6/14/2023

Parameter Description

Page Size Maximum number of records that must be fetched in one page of
results.

The value is set to Empty by default.

If no value is set, then Server-side pagination(__next link) is


considered.

If a value is entered, Client-side pagination is considered with the


value provided.

 Note
It’s recommended to leave the value Empty.

Process in Page By selecting Process in Pages, you enable the adapter to process
messages in batches. The size of a message is de ned by the
(only when you’re performing the Query (GET) operation.)
value that you specify for the Page Size.

To use Process in Pages, you must use the adapter in a Local


Integration Process that is invoked by a Looping Process Call
step. In the Looping Process Call, provide the loop condition
details that follow:

Select Expression Type as Non-XML

For Condition Expression, provide ${property.


<receiver.name>.
<channel.name>.hasMoreRecords} contains
'true'

For Maximum Number of Iterations, provide 999

This option isn’t enabled for Content Enricher.

 Note
You can pass custom HTTP headers to OData receiver if you’ve
de ned the header in content modi er or script element and the
element is placed before OData receiver adapter in an
integration ow.

Timeout (in min) Maximum time the adapter must wait for receiving a response from
the OData V2 service.

HEADER DETAILS Request Headers: Provide the | (Pipe) separated value list of
HTTP request headers that has to be sent to the OData backend

If the value * is entered, all the message headers are converted to


HTTP request headers and forwarded.

Response Headers: Provide the | (Pipe) separated value list of


HTTP response headers. The received header values will then be
converted to message/exchange headers.

If the value * is entered, all the HTTP response header values are
converted to message/exchange headers.

This is custom documentation. For more information, please visit the SAP Help Portal 422
6/14/2023

Parameter Description

Metadata Details OData receiver adapter makes a $metadata call, before the actual
endpoint call. Not all headers or query parameters are passed to
the $metadata call. If your service needs some headers (for
example header apikey, which is a customer authorization header
to invoke API endpoints) or parameters then you can provide the
same in the request headers and query parameters.

Request headers provide comma-separated HTTP request headers


to be sent to $metadata call. Custom query parameters enter key
value pairs of query parameters, separated by & for multiple
entries.

 Note
The adapter stores the metadata cache for 1 hour after which it
gets invalidated. The adapter looks out for the metadata again
that can cause dips in performance every hour. If you face such
dips every hour, you can use the message property
SAP_ODataV2_RefreshCacheOnExpiry and set the value
to false. This can be done using a Content Modi er or Script
step before the adapter. Upon using this property, the adapter
stops invalidating the cache and looking for metadata every
hour.

Modeling Operation
This adapter provides a wizard for modeling operations easily. It’s recommended that you use this wizard to ensure that the
operation doesn’t contain any errors. The wizard can also fetch the Externalized parameters that are maintained under the
Connection details of the OData receiver adapter.

There are three main steps in this wizard:

1. Connect to System: In this step, you provide the details required for connecting to the Web Service that you’re
accessing.

2. Select Entity and De ne Operation: In this step, you select the operation you want to perform and the entity on which
you want to perform the operation on. After selecting the entity, you also select the elds, ltering and sorting
conditions.

3. Con gure Filter & Sorting: This step is available only for data fetch operations, where you can de ne the order in which
the records are fetched in the response payload and lter for the elds that you require.

Connect to System

Parameter Description

Connection Source You can choose between Remote and EDMX.

If you choose Remote, you’ve to manually specify all the details


like address and authentication details.

If you choose Local EDMX File, you select the service de nition
EDMX le that contains all these details that you speci ed
manually when you selected Remote.

Local EDMX File Choose Select to select the EDMX service schema. You can also
manually upload it from your local le system.
(only if you select Connection Source as Local EDMX File).

This is custom documentation. For more information, please visit the SAP Help Portal 423
6/14/2023

Parameter Description

Address URL of the service that you want to access. If you’re connecting to
an on-premise system, enter the Virtual Host in your Cloud
Connector installation.

Proxy Type Type of proxy that you want to use to connect to the service.

(only if you select Connection Source as Remote.)

Location ID Location ID that you’ve con gured in the Cloud Connector


installation.
(only if you select Proxy Type as On-Premise).

Authentication Only Basic authentication is supported. You can deploy credentials


in  (Operations View) and provide the Credential Name or
provide the Username and Password.

For other authentication types, download the EDMX from the


service and use the Local EDMX File to model the operation.

Select Entity & Define Operation

Parameter Description

Operation Select the operation that you want to perform.

The adapter supports Function Import for the following return


types:

Entity

Collection of entities

Complex types

Collection of complex types

Simple types

Collection of simple types

Void

Function Import can also be consumed in the $batch mode.

Sub-Levels Sublevels of the entity that you want to access. For example, if you
want to access the eld Description in the entity Products, and
the eld is located at Category Products Description , you
select the Sub Levels as 3 since the eld you want to access is at
the third level.

Select Entity Entity that you want to perform the operation on.

Generate XML Schema De nition Enable the check box if you want to generate an XSD le for the
operation. You can also provide a name of your choice for the XSD
le. This XSD le is needed when you create a message mapping.

There could be a scenario in which you wish to edit or update your


modeling. In such cases, you can overwrite the XSD le instead of
generating a new le every time.

Fields Fields associated with the entity that you want to perform the
operation on.

Filter Fields Type the eld name that you are looking for to narrow down your
search.

This is custom documentation. For more information, please visit the SAP Help Portal 424
6/14/2023

Parameter Description

Top Speci es the top 'n' number of entries to be fetched.

For more information, see Top System Query Option ($top) in


OData V2 URI Conventions

Skip Speci es the top 'n' number of entries to be skipped and the rest
of the entries are fetched.

For more information, see Skip System Query Option ($skip) in


OData V2 URI Conventions .

This step is available only for data fetch operations, Query(GET), and Read(GET).

Configure Filter & Sorting

Parameter Description

Filter By Select the eld that you want to use as reference for ltering,
choose the operation (ex: Less Than or Equal), and provide a
value.

 Note
The IN operation is available with ltering when editing the
query manually. This operation isn’t available in the Query
Modeling wizard.

The IN operator must be used in lower case in the query.

 Example
https://<hostname>/odata/v2/User?$ lter=userId in
'ctse1','mhuang1',' ynch1'

For more information, see Customized Operators.

Sort By Select the eld that you want to use as sorting parameter and
choose Ascending or Descending order.

Con gure the OData V4 Receiver Adapter


You con gure the ODataV4 receiver adapter by understanding the adapter parameters.

 Note
In the following cases certain features might not be available for your current integration ow:

You are using a runtime pro le other than the one expected. See: Runtime Pro les.

A feature for a particular adapter or step was released after you created the corresponding shape in your integration
ow.

To use the latest version of a ow step or adapter – edit your integration ow, delete the ow step or adapter, add the
step or adapter, and con gure the same. Finally, redeploy the integration ow. See: Updating your Existing Integration
Flow.

 Note
This is custom documentation. For more information, please visit the SAP Help Portal 425
6/14/2023
This adapter exchanges data with a remote component that might be outside the scope of SAP. Make sure that the data
exchange complies with your company’s policies.

The OData V4 receiver adapter supports externalization. To externalize the parameters of this adapter, choose Externalize and
follow the steps mentioned in Externalize Parameters of an Integration Flow.

Once you’ve created a receiver channel and selected the OData V4 Receiver Adapter, you can con gure the following attributes.
See Overview of Integration Flow Editor.

 Note
If you want to pass on null values to the receiver, your request must contain such null values with the attribute
xsi:nil="true". Also note that the responses from the adapter contains null values represented as xsi:nil="true".

Select the General tab and provide values in the elds as follows.

General

Parameter Description

Name Enter the name of the channel.

Select the Connection tab and provide values in the elds as follows.

Connection

Parameter Description

Address Service root URI of the OData V4 service that you want to connect
to.

Proxy Type The type of proxy you want to use for establishing connection with
OData V4 service. Currently, you can choose between

Internet

On-Premise

Location ID To connect to an SAP Cloud Connector instance associated with


your account, enter the location ID that you de ned for this instance
only if On-Premise is selected for Proxy Type
in the destination con guration.

Authentication Authentication method that you want to use for connecting to the
OData V4 service. Currently, you can choose between

None

Basic

The following options are enabled only if you choose Proxy Type as
Internet

OAuth2 Client Credentials: Use this grant type to access


web resources by authorizing the client application to
perform required actions on behalf of a user.

Client Certi cate: The adapter in the integration artifact


authenticates itself against the receiver using a client
certi cate. It's a prerequisite that the required key pair is
installed and added to a keystore. This keystore has to be
deployed on your tenant.

This is custom documentation. For more information, please visit the SAP Help Portal 426
6/14/2023

Parameter Description

Credential Name Name of the credentials that you’ve deployed in Security Material
section of  (Operations View).
(only if Basic or OAuth2 Client Credentials is selected for
Authentication)

Private Key Alias Enter the alias of the deployed key pair.

(only if Client Certi cate is selected for Authentication)

Allow Chunking Select this option if you want to allow the chunking of the data.

CSRF Protected Keep this option selected (default setting). It ensures that your
integration ow is protected against Cross-Site-Request-Forgery, a
kind of attack where a malicious party can perform harmful actions
by masquerading as the logged in user.

Timeout (in min) Enter the time in minutes.

Reuse Connection The option is enabled by default. This option enables the reuse of
connection objects from the internal connection pool which in turn
improves the network turnaround time for multiple communications
to a same end point.

Select the Processing tab and provide values in the elds as follows.

Processing

Parameter Description

Operation The operation that you want to perform on the selected OData
entity or resource.

Batch Processing ($batch)

 Remember
For the Batch Processing operation, the maximum XML
payload size supported is 2 MB. If your payload is more
than 2 MB, message processing fails.

Create(POST)

Query(GET

Update(PUT)

Delete(DELETE)

To leverage all operations, always use the latest version of the


adapter.

Resource Path Enter a valid resource path.

 Note
You can choose Select to open the query modeler/wizard with
which you can model your query.

You can also specify the Resource Path parameter dynamically


using a header or a property (with an expression such like
${header.resourcePath}, for example). Note that,
however, XPath expressions aren’t supported for this parameter.

This is custom documentation. For more information, please visit the SAP Help Portal 427
6/14/2023

Parameter Description

Query Options Query options that you’re passing as a part of the URI to the OData
V4 service.
(enabled for Query(GET) operation).

Process in Pages By selecting Process in Pages, you enable the adapter to process
messages in pages, the page size of which is de ned in the server-
side system. To use Process in Pages, you must use the adapter in
a Local Integration Process that is invoked by a Looping Process
Call step.

Request Headers Request Headers: Provide the | (Pipe) separated value list of
HTTP request headers that has to be sent to the OData backend.

If the value * is entered, all the message headers are converted to


HTTP request headers and forwarded.

Response Headers Response Headers: Provide the | (Pipe) separated value list of
HTTP response headers. The received header values will then be
converted to message/exchange headers.

If the value * is entered, all the HTTP response header values are
converted to message/exchange headers.

Modeling Operation
This adapter provides a wizard for modeling operations easily. It’s recommended that you use this wizard to ensure that the
operation doesn’t contain any errors. The wizard can also fetch the Externalized parameters that are maintained under the
Connection details of the OData receiver adapter.

There are two main steps in this wizard:

1. Connect to System: In this step, you provide the details required for connecting to the Web Service that you’re
accessing.

2. Select Entity and De ne Operation: In this step, you select the operation you want to perform and the entity on which
you want to perform the operation on. After selecting the entity, you also select the elds, ltering and sorting
conditions.

3. Con gure Filter & Sorting: This step is available only for data fetch operations, where you can de ne the order in which
the records are fetched in the response payload and lter for the elds that you require.

Connect to System

Parameter Description

Connection Source You can choose between Remote and EDMX.

If you choose Remote, you’ve to manually specify all the details


like address and authentication details.

If you choose Local EDMX File, you select the service de nition
EDMX le that contains all these details that you speci ed
manually when you selected Remote.

Local EDMX File Choose Select to select the EDMX service schema. You can also
manually upload it from your local le system.
(only if you select Connection Source as Local EDMX File).

This is custom documentation. For more information, please visit the SAP Help Portal 428
6/14/2023

Parameter Description

Address URL of the service that you want to access. If you’re connecting to
an on-premise system, enter the Virtual Host in your Cloud
Connector installation.

Proxy Type Type of proxy that you want to use to connect to the service.

(only if you select Connection Source as Remote.)

Location ID Location ID that you’ve con gured in the Cloud Connector


installation.
(only if you select Proxy Type as On-Premise).

Authentication Only Basic authentication is supported. You can deploy credentials


in  (Operations View) and provide the Credential Name or
provide the Username and Password.

For other authentication types, download the EDMX from the


service and use the Local EDMX File to model the operation.

Select Entity & Define Operation

Parameter Description

Operation Select the operation that you want to perform.

The adapter supports Function Import for the following return


types:

Entity

Collection of entities

Complex types

Collection of complex types

Simple types

Collection of simple types

Void

Function Import can also be consumed in the $batch mode.

Select Entity Entity that you want to perform the operation on.

Generate XML Schema De nition Enable the check box if you want to generate an XSD le for the
operation. You can also provide a name of your choice for the XSD
le. This XSD le is needed when you create a message mapping.

There could be a scenario in which you wish to edit or update your


modeling. In such cases, you can overwrite the XSD le instead of
generating a new le every time.

Fields Fields associated with the entity that you want to perform the
operation on.

Top Speci es the top 'n' number of entries to be fetched.

For more information, see Top System Query Option ($top) in


OData V4 URL Conventions

This is custom documentation. For more information, please visit the SAP Help Portal 429
6/14/2023

Parameter Description

Skip Speci es the top 'n' number of entries to be skipped and the rest
of the entries are fetched.

For more information, see Skip System Query Option ($skip) in


OData V4 URL Conventions .

This step is available only for data fetch operations, Query(GET) and Read(GET).

Configure Filter & Sorting

Parameter Description

Filter By Select the eld that you want to use as reference for ltering,
choose the operation (ex: Less Than or Equal), and provide a
value.

 Note
The IN operation is available with ltering when editing the
query manually. This operation isn’t available in the Query
Modeling wizard.

The IN operator must be used in lower case in the query.

 Example
https://<hostname>/odata/v2/User?$ lter=userId in
'ctse1','mhuang1',' ynch1'

For more information, see Customized Operators.

Sort By Select the eld that you want to use as sorting parameter and
choose Ascending or Descending order.

ODC Receiver Adapter


he ODC adapter enables you to communicate with systems that expose data through the OData Channel for SAP Gateway.

 Note
In the following cases certain features might not be available for your current integration ow:

You are using a runtime pro le other than the one expected. See: Runtime Pro les.

A feature for a particular adapter or step was released after you created the corresponding shape in your integration
ow.

To use the latest version of a ow step or adapter – edit your integration ow, delete the ow step or adapter, add the
step or adapter, and con gure the same. Finally, redeploy the integration ow. See: Updating your Existing Integration
Flow.

 Note
This adapter exchanges data with a remote component that might be outside the scope of SAP. Make sure that the data
exchange complies with your company’s policies.

This is custom documentation. For more information, please visit the SAP Help Portal 430
6/14/2023
Once you have created a receiver channel and selected the ODC Receiver Adapter, you can con gure the following attributes.
See Overview of Integration Flow Editor.

Select the Connection tab and provide values in the elds as follows.

Connection

Parameter Description

Address Enter the URL of the SAP NetWeaver Gateway OData Channel that
you are accessing.

Client Enter the backend system client you want to connect to.

Namespace Enter the namespace of the service.

Service Name Enter the name of the service.

Version enter the version of the service.

Authentication Select the tuthentication method you want to use for connecting to
the system.

Basic Authentication

Deployed Credentials

Credential Name Enter the alias you used while deploying basic authentication
credentials.

Location ID Enter the location ID.

Select the Processing tab and provide values in the elds as follows.

Processing

Parameter Description

Operation Select the operation that you want to perform from the dropdown
list.

Resource Path Enter the path to the resource that you want to perform the
operation on.

This is custom documentation. For more information, please visit the SAP Help Portal 431
6/14/2023

Parameter Description

EDMX In the <EDMX> eld, choose Select.

If you have already added a system, perform the following


substeps:

1. In the <System> eld, select the system from dropdown


list.

2. If you want to use basic authentication, in <Authenticate


Using> eld, choose Basic Authentication from
dropdown list. Provide username and password in the
relevant elds and choose Connect.

3. If you want to use the deployed credentials, in


<Authenticate Using> eld, choose Deployed
Credentials from dropdown list. In <Credential Name>
eld, enter the alias you used while deploying basic
authentication credentials and choose Connect.

If you want to connect to a new system, perform the following


substeps:

1. Choose .

2. Provide values in elds based on description in table and


choose Connect.

Field Description

System Enter the system name that you want to


specify. You can use this name as reference
for selecting the same system for future use.

Address Enter the URL of the system that you are


connecting to.

Client Enter the backend system client that you are


connecting to.

Namespace Enter the namespace of the service.

Service Enter the name of the service.


Name

Version Enter the version of the service.

Location ID Enter the location ID.

Authenticate Select the authentication method you want


Using to use for connecting to the system. You can
choose Basic Authentication or
Deployed Credentials.

Credential Enter the credential name.


Name

OpenConnectors Receiver Adapter


You use the OpenConnectors receiver adapter in integration ows to communicate with more than 170 non-SAP cloud
applications that are supported by Open Connectors.
This is custom documentation. For more information, please visit the SAP Help Portal 432
6/14/2023

 Note
In the following cases certain features might not be available for your current integration ow:

You are using a runtime pro le other than the one expected. See: Runtime Pro les.

A feature for a particular adapter or step was released after you created the corresponding shape in your integration
ow.

To use the latest version of a ow step or adapter – edit your integration ow, delete the ow step or adapter, add the
step or adapter, and con gure the same. Finally, redeploy the integration ow. See: Updating your Existing Integration
Flow.

 Note
This adapter exchanges data with a remote component that might be outside the scope of SAP. Make sure that the data
exchange complies with your company’s policies.

The OpenConnectors adapter connects with non-SAP cloud applications through REST APIs and is not Cross-Site Request
Forgery (CSRF) protected. Youcan set the content-type to either JSON or XML format while processing the request or response
for a transaction. The adapter also allows you to make calls using common HTTP methods on RESTful API services for outbound
transactions.

 Remember
OpenConnectors receiver adapter cannot process payloads that have an attachment.

Create an instance of the connector before you con gure the adapter. If you have not yet enabled the Open Connectors, read
Enable Open Connectors in trial for more information about how to enable the service using SAP BTP.

After you have enabled the service, create an instance for a third-party application from the Connectors catalog. This blog
walks you through the steps for authenticating the connection and testing the APIs for the speci c third-party application. For
more information, see SAP Open Connectors.

 Note
HTTP requests to the REST APIs are protected with HTTP custom authentication using your organization secret, user secret,
and instance token.

Once you have created a receiver channel and selected the OpenConnectors receiver adapter, you can con gure the following
attributes. See Overview of Integration Flow Editor.

Select the General tab and provide values in the elds as follows.

General

Parameter Description

Name Enter the name of the channel.

Select the Connection tab and provide values in the elds as follows.

Connection

Parameter Description

This is custom documentation. For more information, please visit the SAP Help Portal 433
6/14/2023

Parameter Description

Base URI Specify the URI that depends on your region and environment, which helps you establish connection with
the Open Connecters service.

 Example
https://api.openconnectors.ext.int.sap.hana.ondemand.com/elements/api-v2

Credential Name Provide the alias value for identifying the connector credentials. This helps the adapter authenticate and
communicate with the connector. You can select the relevant OpenConnector security artifact from the
list. Choose Select to see and add the relevant OpenConnector security artifact from the list.

See: Deploying a User Credentials Artifact

Resource Specify the resource name of an instance that you want to access. Resources belonging to speci c
instances and its operations are listed by Open Connectors. Choose Select to see the list of resources
available for this speci c instance.

 Note
Do not use $ character while de ning query parameters.

Make sure you provide the Base URI before selecting the resources.

Method Specify the HTTP method to retrieve the data from the connector. Find suitable HTTP method for the
action performed by API:

POST

GET

PATCH

PUT

DELETE

 Note
For XML request format, the HTTP methods are read from the source.

Request Format Specify the content format of the incoming message. You can select one of the following request
formats:
XML

JSON

 Note
You must include <SwaggerParser>as the root element for every XML request as shown in the sample
code below.

 Sample Code
<?xml version="1.0" encoding="UTF-8" standalone="no"?>

<SwaggerParser>

<basePath>/elements/api-v2</basePath>

<host>..............</host>

<Resources>

This is custom documentation. For more information, please visit the SAP Help Portal 434
6/14/2023

Parameter Description

<Resource>

<name>...........</name>

<Operations>

<Operation>

<methodType>.......</methodType>

<parameters>

<parameter>

............

..........

..........

............

............

</parameter>

</parameters>

</Operation>

</Operations>

</Resource>

</Resources>

</SwaggerParser>

Response Format Specify the content format for the outgoing message. For example, if you select XML format, then the
response is converted to XML and dispatched.

 Note
Do not use either JSON to XML or XML to JSON converters in the integration ow for transforming a
response message.

Query Parameters for De ne the value of a variable you want to modify. For example, you have de ned a variable
Resource /name/{varname1}{varname2} in the resource eld. Now use the Query Parameters for Resource
eld to de ne the value for {varname1}{varname2} variables. Use commas to separate more than
variable such as varname1=hello world, varname2= hello SAP.

You can now include queries to the URI to lter for speci c resources from the response. For example,
de ne the query parameters with the query data in the format as follows
${header.querydata1};${header.querydata2}, and use ; to sperate two distinct queries.

Page Size Specify the maximum number of records to be fetched in one page.

This is custom documentation. For more information, please visit the SAP Help Portal 435
6/14/2023

Parameter Description

Process in Pages The message is processed in pages of size de ned in the Page Size eld.

 Note
Enable this option only if you are using the receiver adapter in a Local Integration Process invoked
by a Looping Process Call.

Timeout (in ms) Specify the maximum amount of time the system waits for a response before terminating the
connection.

Related Links

SAP Blog How to create a sample integration scenario using Open Connectors Adapter .

SAP Open Connectors

ProcessDirect Adapter
Use ProcessDirect adapter (sender and receiver) to establish fast and direct communication between integration ows by
reducing latency and network overhead provided both of them are available within a same tenant.

Prerequisites
Deployment of the ProcessDirect adapter must support N:1 cardinality, where N (producer) → 1 (consumer).

 Caution
Multiple producers can connect to a single consumer, but the reverse is not possible. The cardinality restriction is also
valid across integration projects. If two consumers with the same endpoint are deployed, then the start of the second
consumer fails.

The Address mentioned in ProcessDirect con guration settings must match for producer and consumer integration
ows at any given point.

Context
ProcessDirect Receiver Adapter: If the ProcessDirect adapter is used to send data to other integration ows, the integration
ow is considered as a producer integration ow. In this case, the integration ow has a receiver ProcessDirect adapter.

ProcessDirect Sender adapter: If the ProcessDirect adapter is used to consume data from other integration ows, the
integration ow is considered as a consumer integration ow. In this case, the integration ow has a sender ProcessDirect
adapter.

The ProcessDirect adapter supports the following features:

Decompose large integration ows: You can split a large integration ow into smaller integration ows and maintain the
in-process exchange without network latency.

Customize the standard content: SAP Cloud Integration enables integration developers to customize their integration
ows without modifying them entirely. The platform provides plugin touchpoints where integration developers can add
custom content. This custom content is currently connected using HTTP or SOAP adapters. You can also use the
ProcessDirect adapter to connect the plugin touchpoints at a lower network latency.

This is custom documentation. For more information, please visit the SAP Help Portal 436
6/14/2023
Allow multiple integration developers to work on the same integration ow: In some scenarios, integration ows can be
large (100 steps or more), and if they are owned or developed by just one integration developer this can lead to an
overreliance on one person. The ProcessDirect adapter helps you to split a large integration ow into smaller parts that
can be owned and managed by multiple integration developers independently. This allows several people to work on
different parts of the same integration ow simultaneously.

Reuse of integration ows by multiple integration processes spanning multiple integration projects: Enables the reuse of
integration ows such as error handling, logging, extension mapping, and retry handling across different integration
projects and Camel context. Integration developers therefore only need to de ne repetitive logic ows once and can
then call them from any integration ow using the ProcessDirect adapter.

Dynamic endpoint: Enables the producer integration ow to route the message dynamically to different consumer
integration ow endpoints. The producer integration ow look ups the address in the headers, body, or property of the
exchange and the corresponding value is then resolved to the endpoint to which the exchange is to be routed.

Multiple MPLs: MPL logs are interlinked using correlation IDs.

Transaction processing: Transactions are supported on integration ows using the ProcessDirect adapter. However, the
scope of the transaction is isolated and restricted to a single integration ow.

Header propagation: Header propagation is not supported across producer and consumer integration ows unless
con gured in <Allowed Header(s)> in the integration ow's runtime con guration.

Property propagation: Property propagation is not supported across producer and consumer integration ows, except
for SAP_SAPPASSPORT property. This property is for internal use only and users are not allowed to modify it.

 Tip
ProcessDirect adapter improves network latency, as message propagation across integration ows do not involve load
balancer. For this reason, we recommend that you consider memory utilization as a parameter in scenarios involving heavy
payloads and alternatively use HTTP adapter in such scenarios because, the behavior will be the same.

 Restriction
Cyclic loop deployment of integration ows must be avoided.

Related Information
Con gure the ProcessDirect Sender Adapter
Con gure the ProcessDirect Receiver Adapter

Con gure the ProcessDirect Sender Adapter


You use the ProcessDirect sender adapter to establish fast and direct communication between integration ows by reducing
latency and network overhead provided both of them are available within a same tenant.

Once you have created a sender channel and selected the ProcessDirect sender adapter, you can con gure the following
attributes. See Overview of Integration Flow Editor.

Select the General tab and provide values in the elds as follows.

General

Parameter Description

Name Enter the name of the channel.

This is custom documentation. For more information, please visit the SAP Help Portal 437
6/14/2023
Select the Connection tab and provide values in the elds as follows.

Parameters of the ProcessDirect Adapter

Parameter Description

Address URL of the target system that you are connecting to. For example,
/localiprequiresnew.

 Note
It may or may not start with "/". It can contain alphanumeric
characters and special characters such as underscore "_" or
hyphen "-". You can also use simple expressions, for example,
${header.address}.

 Remember
If the consumer has an <Escalated End Event> in the <Exception Sub-Process>, then in case of exception in the
consumer, the MPL status for the producer varies based on the following cases:

If the producer integration ow starts with <Timer>, the MPL status for the consumer will be Escalated and
for Producer, it will be Completed.

If the producer integration ow starts with <HTTP> Sender, the MPL status for the consumer will be
Escalated and for producer, it will be Failed.

The combination of <Iterating Splitter> and <Aggregator> in the producer integration ow might generate an extra
MPL (Aggregator MPL) due to the default behavior of Aggregator.

The <Send> component is incompatible with the ProcessDirect adapter as the adapter supports asynchronous mode
for message exchange and it expects a response.

To learn more about the adapter, see blog on ProcessDirect Adapter in SAP Community .

Con gure the ProcessDirect Receiver Adapter


You use the ProcessDirect receiver adapter to establish fast and direct communication between integration ows by reducing
latency and network overhead provided both of them are available within a same tenant.

Once you have created a receiver channel and selected the ProcessDirect receiver adapter, you can con gure the following
attributes. See Overview of Integration Flow Editor.

Select the General tab and provide values in the elds as follows.

General

Parameter Description

Name Enter the name of the channel.

Select the Connection tab and provide values in the elds as follows.

Parameters of the ProcessDirect Adapter

Parameter Description

This is custom documentation. For more information, please visit the SAP Help Portal 438
6/14/2023

Parameter Description

Address URL of the target system that you are connecting to. For example,
/localiprequiresnew.

 Note
It may or may not start with "/". It can contain alphanumeric
characters and special characters such as underscore "_" or
hyphen "-". You can also use simple expressions, for example,
${header.address}.

 Remember
If the consumer has an <Escalated End Event> in the <Exception Sub-Process>, then in case of exception in the
consumer, the MPL status for the producer varies based on the following cases:

If the producer integration ow starts with <Timer>, the MPL status for the consumer will be Escalated and
for Producer, it will be Completed.

If the producer integration ow starts with <HTTP> Sender, the MPL status for the consumer will be
Escalated and for producer, it will be Failed.

The combination of <Iterating Splitter> and <Aggregator> in the producer integration ow might generate an extra
MPL (Aggregator MPL) due to the default behavior of Aggregator.

The <Send> component is incompatible with the ProcessDirect adapter as the adapter supports asynchronous mode
for message exchange and it expects a response.

To learn more about the adapter, see blog on ProcessDirect Adapter in SAP Community .

This is custom documentation. For more information, please visit the SAP Help Portal 439

You might also like