JinJin48
JinJin48
SAP Consultant | BTP · S/4HANA · US Global Rollout
· 14 min read

Cover: Cloud Integration (CPI) — Architecture and Use

TL;DR
  • Cloud Integration is the iPaaS workhorse of SAP Integration Suite: a multi-tenant Apache Camel runtime on BTP Cloud Foundry that runs iFlows, ships with 70+ adapters, and offers Edge Integration Cell when data has to stay on-prem.
  • Maturity is not the question — the question is design discipline: persistence model (JMS vs Data Store vs Variables), idempotency, naming, and which payloads belong inside CPI versus an event mesh upstream of it.
  • Year-two cost is dominated by message volume billed in 250 KB increments per outbound message — splitter outputs, retries, and request-reply replies all count. Size for year-two traffic, not for go-live, or your steering committee finds out the hard way.

Where This Article Sits

IDTitle
BTP-A01SAP Integration Suite Overview
BTP-A02Cloud Integration (CPI): Architecture and Use (this article)
BTP-A03API Management: Architecture and Use
BTP-A04Event Mesh: Architecture and Use
BTP-A05Open Connectors: Architecture and Use
BTP-A06B2B Integration (1): Trading Partner Management
BTP-A07B2B Integration (2): Integration Advisor
BTP-A08Integration Suite: Use Cases and Decision Patterns

References

ResourceURL
Feature Scope Description for SAP Integration Suite (PDF, 2025-09-04)help.sap.com →
Getting Started with Integration Flow Developmenthelp.sap.com →
Connectivity (Adapters)help.sap.com →
Data Store, Variables, and JMS Queues — When to Use Whichhelp.sap.com →
Hybrid Deployment Using Edge Integration Cellhelp.sap.com →

1) The Cloud Integration Landscape

Hub and spoke: Cloud Integration with five building blocks — adapters, process steps, persistence, security material, operations

Cloud Integration — historically called CPI — is the process integration capability of SAP Integration Suite. It runs on SAP BTP Cloud Foundry with regions on AWS, Microsoft Azure, and Alibaba Cloud (the Feature Scope Description for SAP Integration Suite confirms Cloud Foundry as the only standard environment, and notes EU-Access contracts cannot use Cloud Foundry outside EU operators). Underneath, CPI runs an Apache Camel routing engine: every iFlow you draw compiles down to Camel routes that the runtime nodes execute (the architecture is summarized in third-party walkthroughs such as Vikas Sharma’s core architecture series).

Building blockWhat it doesPrimary designer
Adapters / channelsSender + receiver protocol bindings: 70+ in the FSD, covering SAP, hyperscaler, messaging, B2B, file, DB, SaaSIntegration developer
Process stepsMapping, content modifier, router, splitter, gather, parallel multicast, scripting (Groovy/JS), exception subprocessIntegration developer
PersistenceData Store, Variables, JMS Queues — three different durability models for three different needsIntegration architect
Security materialKeystore (X.509 client certs + roots), OAuth2 credentials, Basic auth secrets, SAML Bearer keysIntegration / security admin
Operations layerTenant Management Node (TMN) + worker nodes, monitoring, transport via SAP Cloud Transport Management Service (CTMS)Integration ops

They are not substitutes.

2) How It Connects to S/4HANA

Layered diagram: Cloud Integration tenant on Cloud Foundry connecting to S/4HANA on-prem, S/4HANA Cloud, and trading partners

                    SAP Integration Suite — Cloud Integration tenant (BTP CF)
   ┌──────────────────────────────────────────────────────────────────────┐
   │  Tenant Management Node (TMN)                                        │
   │  ─ design-time, deployment, monitoring, keystore                     │
   │                                                                      │
   │  Worker nodes (JVM × N, Apache Camel)                                │
   │   ─ iFlow execution: adapter ↔ steps ↔ adapter                       │
   │   ─ JMS queues, Data Store, Variables (per-tenant)                   │
   └──────┬─────────────────────────┬──────────────────────────┬──────────┘
          │ IDoc / RFC / OData      │ OData / REST             │ XI / SOAP / file
          ▼                         ▼                          ▼
   ┌──────────────┐         ┌────────────────┐         ┌──────────────┐
   │ S/4HANA      │         │ S/4HANA        │         │ Trading      │
   │ on-premise   │         │ Cloud (public/ │         │ partners     │
   │ via SAP      │         │ private)       │         │ (AS2/AS4)    │
   │ Cloud        │         └────────────────┘         └──────────────┘
   │ Connector    │
   └──────────────┘

For on-premise S/4HANA, the RFC and IDoc adapters require SAP Cloud Connector as the secure tunnel back to the customer landscape; the FSD documents NetWeaver 7.31 as the supported floor. For S/4HANA Cloud, OAuth 2.0 against a published OData service is the standard pattern, and the OAuth2 Client Credentials flow is supported on the AMQP/WebSocket, OData V2, OData V4, and HTTP receiver adapters per SAP Help on secure authentication methods. Where data residency or low-latency local-system access is required, the same iFlows can be deployed instead to Edge Integration Cell — the customer-managed Kubernetes runtime described in Hybrid Deployment Using Edge Integration Cell.

Key point: Cloud Integration is the routing-and-transformation layer on top of BTP. The reachability of your S/4HANA endpoint depends on Cloud Connector, the adapter, and (for hybrid) Edge Integration Cell — not on the Cloud Integration tenant itself.

3) Maturity Map

Maturity spectrum across Cloud Integration capabilities, from production-ready to ready with prerequisites

CapabilityMaturityNotes
iFlow runtime (Apache Camel on Cloud Foundry)✅ Production-readyMulti-region (AWS/Azure/Alibaba), AES-256 per-tenant keys, up to 4 zero-downtime upgrades/year per the FSD.
Adapter set (70+)✅ Production-readySAP, hyperscaler, messaging, B2B, file, DB, SaaS — listed in the Feature Scope Description. Some niche endpoints still need custom Groovy.
EDI processing (EDIFACT/EANCOM/X12)✅ Production-readyEDI Splitter + XML/EDI converters per the FSD; pairs with Trading Partner Management for full B2B.
Persistence (JMS / Data Store / Variables)✅ Production-readyThree options, three semantics. SAP publishes a decision page. Misuse is the most common quality finding.
Idempotent Process Call✅ Production-readyDocumented deduplication step ( SAP Help). At-least-once is the default delivery guarantee.
Edge Integration Cell (hybrid)⚠️ Ready with prerequisitesRequires customer-owned enterprise Kubernetes (SUSE Rancher, OpenShift, EKS, AKS, GKE). Sized case-by-case; node sizing not in public docs.
Transport via CTMS✅ Production-readyDocumented promotion path between tenants ( SAP Help); supports package and artifact-level transport.

4) Requirements Checklist

One sub-table per design domain. Every row must be decidable at requirements stage — implementation detail comes later.

Adapters and connectivity

Adapters and connectivity requirements checklist

Checklist itemWhy it matters
Source/target systems and adapters confirmed against the FSD’s 70+ adapter listAn unsupported endpoint forces custom Groovy or a third-party connector — different cost class, different support model.
Cloud Connector required? (any on-premise SAP via RFC/IDoc)Without Cloud Connector, on-prem reachability fails. Allocate a Cloud Connector instance and pre-define location IDs.
Authentication method per receiver (Basic / OAuth2 Client Credentials / OAuth2 SAML Bearer / Client Cert)Receiver adapter support varies. AMQP/WebSocket, OData V2/V4, and HTTP support OAuth2 Client Credentials; OData V2, HTTP, and SuccessFactors OData V2 support SAML Bearer.
Inbound auth model for callers (mTLS / OAuth2)Determines whether to provision an SAP-generated certificate, role assignment (ESBMessaging.Send), and which security material to deploy.
Network egress allow-list capturediFlows calling external SaaS need outbound connectivity — corporate egress proxies and IP allow-lists frequently cause go-live delays.

Persistence and reliability

Persistence and reliability requirements checklist

Checklist itemWhy it matters
Per-interface delivery semantics declared (fire-and-forget / at-least-once / exactly-once)Drives whether you need JMS, Data Store, or no persistence; drives whether the consumer must be idempotent.
Persistence choice mapped per interface (JMS queue / Data Store / Variables / none)JMS = native retry on exception. Data Store = explicit reprocessing UI. Variables = small state only, not payload.
Retry budget defined (max attempts, backoff, dead-letter destination)JMS uses SAPJMSRetries; Data Store uses SAP_DataStoreRetries. Without an explicit budget, retries either loop forever or stop at the default and surprise ops.
Idempotency mechanism per interface (Idempotent Process Call vs target-side dedup)Default delivery is at-least-once; without dedup, duplicates leak into the receiving system.
DLQ / failure routing decidedManual reprocessing UI? Email alert? Ticket? Without this, failed messages accumulate quietly.

Security and credentials

Security and credentials requirements checklist

Checklist itemWhy it matters
Keystore contents listed (client certs, root certs, lifetimes)Cert expiry is the most common silent failure. Capture renewal owner and date for each entry.
OAuth2 credentials inventoried (client ID/secret, scope, token URL)Stored as Security Material; rotation procedure should exist before go-live.
Role assignment plan (ESBMessaging.Send, Auth-Group.Administrator, etc.)OAuth clients without the right role get HTTP 401/403 at runtime — usually discovered during cutover, not testing.
Sensitive payload masking decidedLogging at trace level shows full payloads. Compliance teams need to sign off on what gets logged.

Operations and transport

Operations and transport requirements checklist

Checklist itemWhy it matters
Tenant topology (DEV / QAS / PROD count and roles)All tenants are billed independently — non-prod is not free. Three tenants is the typical minimum.
CTMS configured before first iFlow promotionSetting up CTMS retroactively after artifacts are scattered across tenants is painful.
Naming convention adopted before first iFlowSAP publishes a Naming Conventions page; retrofit is genuinely painful and breaks monitoring filters.
Monitoring and alerting (failed messages, queue depth, cert expiry)The Monitor view is built-in but does not page anyone — alerts need to be wired to Discord/Teams/email/incident system.
Edge Integration Cell decision (in scope or not) and Kubernetes ownershipIf EIC is in play, the customer must own a production-grade Kubernetes platform; that is a separate project, not a CPI subtask.

5) Decision Criteria

The three questions to ask first

Three qualifying questions before scoping Cloud Integration

Q1. Is there a measurable, recurring volume of message-based integration work between distinct systems that current point-to-point or batch jobs can’t keep up with?

If the answer is “we have two interfaces, one runs nightly, both work” — Cloud Integration is overkill. Cloud Integration earns its license cost when there are at least a handful of interfaces, ongoing change, and operational SLAs that exceed what cron-job batch processing can deliver.

Q2. Where does the data live, and is it allowed to traverse a public-cloud iPaaS?

Data residency drives Cloud Foundry region choice — and, if regulatory rules forbid cloud transit at all, it pushes the runtime to Edge Integration Cell. EIC is not a cheaper CPI; it is a different operational model where the customer owns the Kubernetes platform.

Q3. Who owns the integration interface in the org chart, and do they have the budget to fund both build and runtime?

Cloud Integration runtime cost is dominated by message volume in 250 KB increments per outbound message. Without a budget owner who tracks year-two volume, projects under-size and re-negotiate mid-fiscal-year.

Domain selection by project context

Project context to recommended starting point matrix

Project contextRecommended starting point
1–2 simple SAP-to-SAP interfaces, low change rateSkip Cloud Integration. Use the Communication Arrangement / direct OData call.
Multi-system synchronous transformations (mapping, routing)Cloud Integration on Cloud Foundry, single tenant per environment.
High-volume async with durable queues (purchase orders, invoices)Cloud Integration with JMS queues; pair with Idempotent Process Call.
Real-time pub/sub fan-out (S/4HANA business events)Event Mesh in front of Cloud Integration, not Cloud Integration alone.
B2B / EDI (EDIFACT, X12, AS2)Cloud Integration with EDI Splitter + Trading Partner Management.
Strict data residency / on-prem-only executionEdge Integration Cell on customer-managed Kubernetes.
Quick non-SAP SaaS connection (Salesforce, ServiceNow)Open Connectors fronted by Cloud Integration.
No clear pain point identified yetStop. Go back to Q1.

Licensing and cost

Three commercial models for Cloud Integration: Subscription, CPEA/BTPEA, Pay-As-You-Go

ConcernModelKey question to ask
Subscription (Starter / Standard / Premium)Tenant-based; baseline messages includedWhat is the year-two outbound message count, broken down by 250 KB chunks?
CPEA / BTPEA (consumption)Credit pool across BTP servicesWhat are the other BTP services in this contract, and is a $100K+ minimum justified?
Pay-As-You-GoPer-message billing, no minimumIs this a pilot or a pre-production scenario? PAYG breaks even against Subscription only at low volumes.
Edge Integration Cell trafficCharged at 50% of standard message ratesAre the EIC volumes large enough to materially offset the Kubernetes operational cost?

The single most-missed billing rule: outbound messages are counted, per 250 KB, with splitter outputs and retries each charged. Standard, unmodified SAP Integration Content (SAP-to-SAP) and the internal ProcessDirect and JMS adapters are exceptions — but ProcessDirect extensions of standard content are not (per the message traffic licensing analysis at integration-excellence.com).

6) Common Failures

Six requirements-stage failures for Cloud Integration scoping

Failure 1: Sized for go-live, not year-two

The first 60 days after go-live are not representative. New interfaces get added, splitter-heavy iFlows multiply outbound message counts, and retry storms during incident periods consume the included message bucket. Capture year-two projected volume in the requirements phase and budget for it explicitly.

Failure 2: ProcessDirect billing exception inverted

The internal ProcessDirect adapter is not billed — except when it calls a customer extension of standard SAP Integration Content. Teams reading the rule too quickly assume “all ProcessDirect is free” and discover the bill after extending shipped iFlows. Read the licensing terms before extending standard content.

Failure 3: No idempotency designed in

Cloud Integration’s default delivery is at-least-once. Without an Idempotent Process Call (or target-side dedup), duplicates land in the receiver during retry storms — and the duplicate creates a downstream incident weeks later, far from the original cause. Idempotency is a requirements-stage decision, not a fix.

Failure 4: JMS retry and Data Store retry mixed in the same flow

JMS does retry natively via SAPJMSRetries. Data Store retry is explicit, controlled by the designer via SAP_DataStoreRetries. Mixing them in one iFlow — typically because two team members designed parts of it — produces flows that retry twice, lose messages, or block on poison pills. Pick one persistence-and-retry model per interface and document it.

Failure 5: Cloud Connector dependency overlooked

On-premise S/4HANA via RFC/IDoc requires SAP Cloud Connector. Architecture diagrams that draw a line directly from CPI to on-prem ECC produce go-live cutover delays as the customer scrambles to install Cloud Connector with the right NetWeaver patch level. Treat Cloud Connector as a separate dependency, not an implementation detail.

Failure 6: Naming convention chosen after deployment

Without a naming standard from day one, monitoring filters break, transport packages mix unrelated artifacts, and the runbook lists 200 iFlows by random names. SAP publishes a Naming Conventions page; pick a scheme on day one and enforce it via package-level review. Retrofitting names across a live system is genuinely painful.

FAQ

Q: Does Cloud Integration replace SAP PI/PO?

For new projects, yes — SAP positions Cloud Integration as the forward platform, and even publishes a Migration Assessment capability for moving SAP Process Orchestration 7.5 content into Integration Suite. For existing PI/PO landscapes, the replacement is a project, not a switch: adapters, mapping styles, and operational habits differ enough that “lift and shift” is rarely accurate.

Q: When should I use Edge Integration Cell instead of standard Cloud Foundry deployment?

When data residency, compliance, or latency requirements forbid the data leaving the customer’s network. EIC is the on-prem / private-cloud runtime and runs the same iFlow artifacts; design and monitoring still happen in the BTP cloud tenant. EIC requires customer-owned enterprise-grade Kubernetes (SUSE Rancher, OpenShift, AKS, EKS, GKE per the SAP Architecture Center reference), so its operational model is fundamentally different from cloud-only CPI.

Q: How are messages billed exactly?

Per outbound message, in 250 KB increments. A 100 KB message = 1 charge. A 2 MB message = 9 charges. A splitter producing 50 outputs = 50 charges. Retries count each time. Standard SAP-to-SAP content and internal ProcessDirect / JMS adapter calls are exceptions; ProcessDirect extensions of standard content are not exceptions.

Q: How do I choose between JMS, Data Store, and Variables?

JMS for asynchronous queue-based interfaces with native retry — use when you need backpressure and the platform itself should retry. Data Store for explicit lifecycle: scheduled consumers, manual reprocessing UIs, batch handoffs. Variables for small per-tenant state only — last successful timestamp, last successful primary key — never for payload bodies. The official SAP Help decision page is the canonical reference.

Q: When should I descope Cloud Integration from a project?

When the integration footprint is one or two interfaces and there is no roadmap to grow it. The fixed cost of a Cloud Integration tenant — Subscription baseline plus three environments (DEV/QAS/PROD), all of which are billed — is hard to justify for a single nightly OData call. In that case, a direct Communication Arrangement or a small custom service is more honest.

Q: How do I document an interface requirement properly so an integration developer can build it?

For each interface, capture: source system + endpoint, target system + endpoint, action verb (create/update/delete/replicate), business object (sales order, business partner, etc.), trigger (schedule / event / synchronous call), expected volume per day and per peak hour, average and 95th-percentile payload size, delivery semantics (fire-and-forget / at-least-once / exactly-once), and idempotency rule on the target. That is enough to estimate message billing, persistence choice, and adapter selection.

Q: Are non-production tenants free?

No. All tenants — DEV, QAS, PROD — are billed for messages independently. Some teams forget this and discover that load tests against QAS consumed half of their monthly message bucket. Plan test data volume accordingly.

Q: How do I move iFlows between tenants?

Use SAP Cloud Transport Management Service (CTMS), with the Content Agent Service as the bridge. CTMS supports package-level and individual artifact-level transport. Set it up before the first promotion; doing it after artifacts are scattered across tenants is painful and risks lost configuration.

Summary

Cloud Integration is mature, well-documented, and will not surprise you architecturally — Apache Camel on a multi-tenant runtime, with seventy-plus adapters and three persistence models per the Feature Scope Description — but it will surprise you commercially if you treat year-two volume as an afterthought. The consultant’s job is to ask the three questions before drawing the first iFlow, pick one persistence-and-retry pattern per interface, decide whether the workload belongs on standard Cloud Foundry or on Edge Integration Cell, and capture a naming convention before any artifact is deployed. Everything else — adapters, mappings, OAuth flows — is implementation detail that the integration developer can handle if those four decisions are clean.

IDCategoryComponentScope
BTP-A01OverviewSAP Integration SuiteCapabilities, Components, and When to Use Each
BTP-A02Process IntegrationCloud Integration (CPI)Architecture and Use (this article)
BTP-A03API LayerAPI ManagementArchitecture and Use
BTP-A04EventingEvent MeshArchitecture and Use
BTP-A05SaaS ConnectivityOpen ConnectorsArchitecture and Use
BTP-A06B2BTrading Partner ManagementB2B Integration (1)
BTP-A07B2BIntegration AdvisorB2B Integration (2)
BTP-A08DecisionIntegration SuiteUse Cases and Decision Patterns