C_CPI Integration Suite Development Practice Question
You are developing an integration flow in SAP Cloud Integration that sends messages to an external SOAP service. The service requires a custom SOAP header element named CorrelationId whose value must come from an exchange property called correlationID. You have already added a Content Modifier step and created the exchange property. Which step should you add next to insert the SOAP header into the outbound message?
⚠ Common exam trap
The trap here is assuming that any XML manipulation step can set SOAP headers, when only the SOAP Header step is designed for that specific purpose.
Answer choices
Why each option matters
Answer the question above first, then reveal the full breakdown to understand why each option is right or wrong.
Correct answer & explanation
✓
Add a SOAP Header step and configure it to set the header name and value from the exchange property.
The SOAP Header step in SAP Cloud Integration is purpose-built to add SOAP headers to an outbound message. It allows you to define header names and values, including dynamic values from exchange properties. This keeps the message body unchanged and ensures the SOAP envelope remains valid. Other steps either do not target SOAP headers or require unnecessary complexity.
Answer analysis
Option-by-option breakdown
For each option: why learners choose it and why it is or isn't the right answer here.
- ✗
Add an XML Modifier step and use an XPath expression to insert the header element.
Why it's wrong here
The XML Modifier step can add or remove XML elements, but it does not offer a dedicated mechanism to set SOAP headers on the message. It would require complex XPath and would not correctly target the SOAP header section. For SOAP header manipulation, the dedicated SOAP adapter or SOAP Header step is the intended tool.
- ✓
Add a SOAP Header step and configure it to set the header name and value from the exchange property.
Why this is correct
The SOAP Header step is specifically designed to add or modify SOAP headers in the message. You can specify the header name and use an expression to set the value from an exchange property. This directly satisfies the requirement without altering the payload body and keeps the SOAP envelope intact.
- ✗
Add a Groovy Script step and manually construct the SOAP envelope with the header.
Why it's wrong here
While Groovy scripting can manipulate the message, manually rebuilding the SOAP envelope is error-prone and unnecessary. The SOAP Header step provides a declarative, supported way to add headers. Using a script increases maintenance effort and risks breaking the SOAP structure, especially with namespaces.
- ✗
Add a Message Mapping step and map the exchange property to a header field in the target structure.
Why it's wrong here
Message Mapping transforms the message payload but does not directly set SOAP headers. It maps to the body structure, not to the SOAP header section. Using it here would require altering the service's WSDL, which is not desired. The SOAP Header step is the correct component for this task.
About these practice questions
Courseiva writes every C_CPI question from scratch — 218 in total, each with an explanation and a wrong-answer breakdown. None are copied from real exams or dumps. Learn why practice questions differ from exam dumps →
JA
Written and reviewed by Johnson Ajibi, MSc IT Security
Senior Network & Security Engineer · founder of Courseiva
Last reviewed September 2026 · checked against the official SAP exam blueprint
This C_CPI practice question is part of Courseiva's free SAP certification practice question bank. Courseiva provides original exam-style practice questions with explanations, topic-based practice, mock exams, readiness tracking, and study analytics to help learners prepare for the C_CPI exam.