SK SKYVVA Documentation

14. How to Use "Create Message Only" with the SkyvvaSalesforce Adapter

This document explains "Create Message Only" — a setting available on the SkyvvaSalesforce receiver channel that lets you decide whether Salesforce should act on an incoming update right away, or simply record that it arrived and wait for the go-ahead.

⚠️ [SCREENSHOT NEEDED] A simple before/after diagram: SAP CPI sends data to Salesforce → a saved record appears in Salesforce, clearly marked as "waiting," with no further action taken yet.

Figure 1: SAP CPI sends data to Salesforce, which saves it and waits instead of acting on it immediately .

Context Before You Start

In short: normally, when SAP CPI sends data into Salesforce, Salesforce both saves that update and carries it out in the same step. Turning on "Create Message Only" splits that in two — Salesforce still saves the update, but stops there, so the actual work only happens once you (or something else in Salesforce) decides it should continue.

Reasons to pick this path:

Good fit for: End-to-end sequence: the sections below cover the two available choices, where to find the setting, and what actually happens in Salesforce once it's turned on.

2. The Two Choices

ChoiceWhat it means
None (the usual setting)Salesforce saves the update and carries it out immediately, in the same step. This is how things work unless you change anything.
Create Message OnlySalesforce saves the update, but does not carry it out yet. It waits until something else tells it to continue.

3. Where to Set It

3.1 Open the Receiver Channel

Open your integration flow and select the SkyvvaSalesforce receiver channel. The General tab identifies the channel itself — Direction Receiver, Adapter Type SkyvvaSalesforce, Transport Protocol https, Message Protocol skyvva — these are fixed and not something you choose.

⚠️ [SCREENSHOT NEEDED] SkyvvaSalesforce receiver channel — General tab, showing the fixed values above.

Figure 2: SkyvvaSalesforce receiver channel — General tab .

3.2 Connection Tab

Set up how the channel connects to Salesforce — your Authentication Type, Login URL, and Credential. This is the same on every SkyvvaSalesforce receiver channel regardless of which processing option you use later, so if you already have a working connection configured, there's nothing to change here.

⚠️ [SCREENSHOT NEEDED] SkyvvaSalesforce receiver channel — Connection tab, with Authentication Type, OAuth2 Flow, Login URL, and the relevant Credential field(s) filled in.

Figure 3: SkyvvaSalesforce receiver channel — Connection tab .

3.3 Processing Tab — Select Skyvva API Version

On the Processing tab, set Skyvva API Version to V3. This is what makes the newer setup — and the Create Message Only option this document covers — available at all.

⚠️ [SCREENSHOT NEEDED] SkyvvaSalesforce receiver channel — Processing tab, Skyvva API Version dropdown set to V3.

Figure 4: Selecting Skyvva API Version = V3 .

3.4 Processing Tab — Select Mode

With Skyvva API Version set to V3, a Mode field appears. Set it to Asynchronous.

This option is only available for the newer setup (Skyvva API Version V3, Mode Asynchronous). If your channel still uses the older setup (Skyvva API Version V2, with the Integrate option), this field does not appear on the Processing tab, and there is currently no way to turn "Create Message Only" on for it from the channel's settings — it always behaves like None (§4).

A note on V2 with V4/integrate: if your channel's Skyvva API is set to V4/integrate rather than plain Integrate, this whole topic doesn't apply the same way. Choosing Integrate saves an update in Salesforce first (the same "create, then complete" pattern this document is about); choosing V4/integrate instead calls Salesforce directly, without saving anything first. So V4/integrate never goes through a "waiting" state at all — it's a different option, not just a different setting on the same one.

V4/integrate always runs asynchronously — that's fixed by choosing this option and isn't something you set. But that's not the same "Asynchronous" this document has been discussing, and it isn't controlled by anything on this CPI channel at all. If you need to influence how a V4/integrate update is carried out, that's a separate setting kept directly on the Interface record in Salesforce (not here on the CPI channel), and it offers different choices of its own — it isn't a create-vs-continue switch like the one in this document.

⚠️ [SCREENSHOT NEEDED] SkyvvaSalesforce receiver channel — Processing tab, Mode dropdown set to Asynchronous.

Figure 5: Selecting Mode = Asynchronous .

3.5 Processing Tab — Select Processing Behavior

With Mode set to Asynchronous, a Processing Behavior field appears alongside the other settings. Choose Create Message Only there.

⚠️ [SCREENSHOT NEEDED] SkyvvaSalesforce receiver channel — Processing tab, Processing Behavior dropdown set to Create Message Only.

Figure 6: Selecting Processing Behavior = Create Message Only .

3.6 Save and Deploy

Fill in the remaining fields on the Processing tab as your integration normally requires (Integration, Interface, Request/Response Format, Skyvva App Version, Salesforce Api Version — see tutorial/1. SKYVVA CPI Salesforce Receiver Adapter in SAP Cloud Integration.md §7 for the full field reference), then save the integration flow and deploy it.

⚠️ [SCREENSHOT NEEDED] Integration flow deployed successfully, with the SkyvvaSalesforce receiver channel visible on the canvas.

Figure 7: Integration flow deployed .

4. What Happens With the Normal Setting (None)

With Processing Behavior left at None — the default, so this is what happens unless you change anything — every update that arrives from SAP CPI is saved in Salesforce and carried out immediately, in the same step. There's no waiting and nothing further to do: once it finishes, the update is simply done.

If something goes wrong while carrying it out, the update reflects that outcome (for example, as a failed update) rather than staying in a saved-but-not-yet-acted-on state — the "waiting" state described in the next section only exists when Create Message Only is turned on.

5. What Happens After You Turn On Create Message Only

Once this is switched on, every update that arrives from SAP CPI is saved in Salesforce and marked as waiting — it does not get carried out on its own. The follow-through step (the part that actually applies the change) only happens once someone continues that update from within Salesforce.

6. Continuing a Waiting Update

Waiting updates show up on the Integration record's Monitor tab, in the message list. Select one or more waiting updates there and click Reprocess to carry them out.

⚠️ [SCREENSHOT NEEDED] Salesforce Integration record — Monitor tab message list, with one or more waiting updates selected and the Reprocess button highlighted.

Figure 8: Continuing a waiting update from the Integration's Monitor tab .

Only updates that are still waiting can be continued this way — one that was already completed or cancelled can't be reprocessed.

7. A Note on Large Updates

If a single call from SAP CPI ends up creating a very large number of records at once — either many records in one call, or records that each trigger many related follow-up records — older setups can run into a memory limit on the Salesforce side while putting together the confirmation sent back to CPI. When that happens, it shows up as a generic error rather than a clear one.

Setting the Skyvva App Version field on this same Processing tab correctly — matching the version actually installed in your Salesforce org — avoids this. With that field set to 2.51.0 or higher (for example, 2.51.18) and accurate, the channel uses a lighter-weight way of confirming an update was received, instead of building one large confirmation all at once. This applies regardless of whether Processing Behavior is set to None or Create Message Only.

8. Summary

SettingWhat Salesforce does
None (default)Saves the update and carries it out immediately.
Create Message OnlySaves the update, then waits — nothing further happens automatically.
Use Create Message Only when you want incoming updates captured safely without immediately acting on them; use None for the normal, immediate behavior.
Open this article in the interactive viewer →