Technology Blog Posts by Members
cancel
Showing results for 
Search instead for 
Did you mean: 
AnkitKrSingh
Discoverer
1,341

What are Pallets in SAP CPI?

A Pallet in SAP CPI is a predefined collection of integration flow components that can be reused across different projects.

Think of it as a toolbox containing reusable steps, mappings, or configurations — allowing you to drag and drop frequently used patterns instead of rebuilding them every time.

Here we have attached file which shows overview of all the pallets.

over1.png

 

 Here are some pallets.

1- ProcessA Process is the backbone of an Integration Flow. It contains all the steps and logic needed to move data from one system to another. Itis three types.

1Integration Process- An Integration Process is a sequence of steps designed to handle data exchange between different systems using CPI. It is the main iflow. Itis the core structure that defines how data flows between systems. It’s like a workflow or blueprint that contains all the steps needed to move, transform, and route data.

2- Local Integration Process- A Local Integration Process is a reusable block of steps defined within the same iFlow. It allows you to separate logic into smaller, manageable sections without creating a separate artifact.​ It is a special type of subprocess used within an iFlow to organize and modularize logic.

3-Exception SubProcess- Whenever we got an error in cpi, we go for exception subprocess. It tells us which iflows got failed through mail adapter and takes immediate action.
For example :
If a message fails to reach the target system due to a network issue, the Exception Subprocess can log the error and send a notification to the support team.

2.png

 

Key Features:

 

  • Automatically triggered when an error occurs
  • Can include steps like logging, sending alerts, or retrying
  • Helps improve reliability and maintainability of iFlow.

2- Transformation: Transformation refers to the process of changing the structure, format, or content of a message so that it can be understood by the target system. It consist content modifier, converter, encoder, decoder, filter.


1-Content Modifier- It is used to modify the content/data whatever we send to it . It consist three elements.


Message header- Here the data will be available during the run time and after the run time . It means the data will be access inside the cpi and also data can be sent to receiver.


Exchange Properties- Here the data will be available only during the run time. It means the data can be access only inside the cpi, here we can't send the data to reciever.


Message Body- whenever we need to send the data from one content to another then we go for message body .
​  When we select constant then we write any text  in the body , when we select expression then we need to use camel expression ($(in.body)).

3.png

 

2- Converter- It is used to convert the data from one form to another.

XML to JSON- Here root element will come , if you want to remove it then you can select option like 'Suppress JSON Root Element'. Here Json data can be in array form if we select option like 'Convert XML Elements to JSON Array.

JSON to XML- Here the xml data will come without root node , if you want root node then we can select option like 'Add XML Root Element.

XML to CSV- Here we need to give the path of source element and parent element.

CSV to XML- Here we need to upload xml schema (xsd file(convert xml to xsd online)) under processing . Here we  need to give path of target and also header will come by default, if you don't want then you need to select option like 'Exclude First Line Header.

3-Encoder- It is used to convert readable  data to non readable form. It Converts data into a specific format (like Base64 or encrypted form) before sending it to another system . Ensures data is secure, compressed, or formatted correctly for transmission.​

It is four type- Base64, Gzip, zip , MIME(Multipurpose internet mail extension)​

4-Decoder- It Converts encoded data back to its original format after receiving and also  helps the target system understand and process the message correctly.​

5-Filter- It is used to remove unwanted data . It support only XML data. It is five type.​

 Nodelist- It will give whole records which presents in data .​

 Node- It will give only single record. If we want to extract only specified record then we need to specified it. ​

Constant, Boolean, String.

3- Mapping- Mapping is the process of converting data from one format or structure to another so that the receiving system can understand and use it correctly.

Message mapping or Graphical mappingA graphical tool to map fields from source to target. It Supports functions like concatenation, value mapping, and conditional logic. It support only XSD , EDMX and WSDL file. For Testing purpose it support only XML file.

XSLT Mapping- Basically it is used for removing the namespace in xsd file.​

Value Mapping- It Maps specific values from one system to another (for example country codes) and Can be maintained centrally and reused.​

Script-Based Mapping- It Uses Groovy or JavaScript for custom transformation logic and Useful when graphical mapping is not flexible enough.

4- ​Call- A Call refers to invoking another process or service from within an integration flow. It helps in modularizing logic and reusing components.

1- External call- Here we can call it from anywhere like another iflows etc. It is of four type content enricher, poll enricher, request reply, send​.

Content Enricher- whenever we need to fetch data from two different system we can use it. The Content Enricher is a step in SAP CPI used to add extra data to a message by calling an external system or service during message processing.​

For example-If a message contains only a customer ID, the Content Enricher can call a customer database to fetch full customer details and add them to the original message.

Poll EnrichThe Poll Enricher is a special integration pattern in SAP CPI used to enrich a message by polling data from an external system at runtime.
It is used for fetching the data in between timer and end of cpi. It support only SFTP adapter.

Request replyThe Request-Reply step in SAP CPI is used to send a request to an external system and wait for its response before continuing the integration flow. Request reply is nothing but requesting something and get back the response .

SenderTo deliver the message to an external system (e.g., SAP S/4 HANA, third-party API, database). It Uses adapters like HTTP, SOAP, SFTP, IDoc, etc.

5.jpg

 

 

 

2- Internal Call- It is only called inside the same iflows. It is three type indempotent process call , looping process call , process call

Idempotent Process CallAn Idempotent Process Call in SAP CPI ensures that duplicate messages are not processed multiple times. It guarantees that even if the same message is sent more than once, the outcome remains the same — only one instance is processed.
For example- Imagine a payment system sends the same transaction twice due to a timeout. With Idempotent Process Call, CPI will process it only once, avoiding duplicate payments.

Looping Process Call- The Looping Process Call in SAP CPI is used to repeat a subprocess multiple times, usually for each item in a list or based on a condition. Here some condition occure , if condition is true then it go to sub-iflows.

 

5- Message Routing- It consist of Aggregator, Gather , join, Multicast, Router, Splitter.


1- Aggregator-
 Collects and combines messages based on a condition (like count or timeout). Multi related record/data combines to form a single message/record.
for example- Collect 5 sales orders and send them as a batch to the ERP system
every 10 minutes.

2-Multicast-
To send the same data to multiple branches at same time.


Parallel multicast- It is used when multiple reciever needs same data at same time.


Sequential multicast- Here every branches run one after another. If one branch get lost
then hole system got failed.

Join- It doesn't have any data. It just keep alone branches in one frame . It is used after multicast.

Gather-
It is also used after multicast but instead of joining, it collects/ combine message from branches into one message. It is used for combining different data into one record.

Splitter-
It just Splits a single message into multiple smaller messages. It's two type general splitter , iterating splitter.


General splitter-
Here the data will come with root node.

Iterating splitterHere the data will not come with root node.

Router-
It is used to send the message to different branches based on some condition. It works just like if-else condition.

7.png

 

6- ​Persistence​- It consist of data store operation, persist and write variable.

1- Data store operation- whenever we need to store temporary data we go for data store operation. It has five elements.
Write- It is used to write the data.
Get- It is used to fetch the single specified record.
Select- It is used to fetch more than one record.
Delete- It is used to delete the record.

2-PersistPersistence in SAP CPI refers to the ability to store and retrieve data temporarily during message processing. It helps maintain state or pass values between steps in an iFlow.

3-Write Variable- Here we can store the data globally.

7- Security- This palette is used to secure messages and data during integration. They help ensure confidentiality, integrity, and authenticity of data exchanged between systems.

Encryptor

  • Encrypts message payload using algorithms like AES or RSA.
  • Used for securing sensitive data before transmission.

Decryptor

  • Decrypts encrypted payloads.
  • Ensures that only authorized systems can read the data.

 

Conclusion -A clear understanding of all palettes in SAP Cloud Platform Integration enables developers to build efficient, scalable, and maintainable integration flows. By mastering each palette’s purpose and usage, one can design robust iFlows, troubleshoot effectively, and ensure seamless data exchange across systems, enhancing overall integration performance and reliability. 


​ 
​​

 

 

3 Comments
Jishnu24
Discoverer
0 Kudos

Nice Overview

sohailkhan
Participant
0 Kudos

that's good! but from the next time tell chatgpt to reduce the airticle and simplified into shorter terms 😉

Wallace
Active Participant
0 Kudos

I see CPI tagged.  Is this also relevant for SAP Integration Suite/Cloud Integration?
Cloud Integration SAP Integration Suite