Docs / Outbound Messaging

Payload Designer

Scope: The SAP GUI Payload Designer flow on this page is applicable for outbound configurations maintained via SAP GUI transactions. For SAP S/4HANA projects, the recommended approach is CDS-based modeling in Event Studio, using the CDS View Builder or another suitable custom CDS view as the payload source.

Via SAP GUI

With the ASAPIO Payload Designer (transaction /n/ASADEV/DESIGN), you define the payload of event messages or batch interfaces through a configuration-only interface, without coding. It comes with a set of pre-delivered ASAPIO payload types and versions, where a version can also mean a different scope of fields or other settings. Once a payload is designed, it can be used in outbound interface definitions — field selection, renaming, value filters, and multi-table joins are all supported.

App Modes/Screens

  1. The main screen lets you create, copy, or delete Payload Designer Views, and create multiple versions for each View.
  2. The version screen is opened by double-clicking a specific version on the initial screen. It lets you view and modify that Payload Designer Version.
  3. The join builder screen lets you add or delete tables and join them with other tables.

For a first impression, watch this HowTo video (4m44s).

Payload Designer Start Screen

Select the Payload Design to work with. Each Payload Design has one or more Payload Design Versions.

Payload Designer start screen — payload name, description and list of versions
Start screen — select an existing Payload Design and one of its versions

Payload Design Version Screen

Opens when you double-click a version on the start screen. View and modify the tables, fields and join configuration for that version.

Payload Designer version screen — tables, fields and Join Builder entry point
Version screen — tables, fields, and the entry point to the Join Builder

Join Builder Screen

Payload Designer — Join Builder screen
Join Builder — add tables and define join conditions

Payload Design Actions

Seven buttons are available on the main screen's application toolbar:

Payload Designer start screen toolbar buttons

Payload Design Version Actions

The main buttons on the version screen:

Payload Designer version screen toolbar buttons

Create a Custom Payload through Payload Designer

Steps to create a payload:

  1. Go to transaction /n/ASADEV/DESIGN.
  2. Click Create Payload Design on the main screen and fill in the required fields.

Create Payload Design dialog

Creating a Payload Design also creates its first version and navigates to that version's main screen.

Open the Join Builder to create the first table joins:

Payload Designer version main screen actions

Join Builder — adding a table

Payload Designer version screen with tables and fields filled in

In the Table section, the parent relationship is determined automatically from the Join Builder's join conditions. In the Field section, key fields are determined automatically from the involved tables and the hierarchical sorting.

Add fields from tables:

Adding fields from a table in Payload Designer

If a field name is duplicated across two or more tables, the table name is prefixed to the field name. If the resulting name exceeds 30 characters and shortening it to 30 characters still produces a duplicate, the current sequence number is appended instead.

Add restrictions on status values:

Payload Designer — system status restrictions

Payload Designer — user status restrictions

To create a new system or user status restriction, click New Entries and provide:

A maximum of two tables restricted by status are allowed per Design/Version.

Field Section Functionalities

Table Aliases

Some scenarios require joining the same table to different tables in a Payload Design — for example, when the same table has entries at both header and item level and the data needs to be nested below header and items separately. For this, include the same table a second time under a different name: an alias for the table.

This feature is available from release 9.32405 (SP09).

Creating a Table Alias

Join Builder — Alias Tables button

Join Builder — creating a new alias table

Join Builder — inserting the alias table

Example: VBKD

Consider the database tables for a sales order: VBAK (header), VBAP (items) and VBKD (business data of the sales document). If the payload needs output fields such as Incoterms, which exist both at header and item level, using only the header database table (VBKD) means the header's Incoterms field will not appear in the output — because VBAP contains the line items (010–040), not the header.

Sales order VA01 — Sales and Billing document tabs

To handle this, add an alias for VBKD (e.g. ZVBKD_A in this example). On the version's main screen, add a where condition to limit this instance of the table to the header.

Payload Designer — where condition limiting the aliased table to the header

The resulting payload:

Resulting JSON payload with header and item-level Incoterms

Data Preview

Preview the data directly in the Payload Designer, as a table or as a JSON payload.

Payload Designer — Data Preview button

The payload must be used in at least one outbound object before it can be previewed.

Select an object configured to use the Payload Design:

Payload Designer — select an outbound object for the preview

Select the preview type and a key to generate the preview for:

Payload Designer — select preview type Payload Designer — select the key for the preview

The selected preview type then opens — as a table:

Payload Designer — table preview

...or as JSON:

Payload Designer — JSON data preview
Data Preview — live JSON output for a selected business object key, before deployment

Use a Payload in an Outbound Interface

Create Outbound Object Configuration

Outbound Object configuration linking to a Payload Design
Version screen — field selection, renaming, filters, and conversion methods in a single view

Outbound Object configuration — Payload View fields

Set Up 'Business Object Event Linkage'

Link the outbound object configuration to a Business Object event:

SWE2 — Business Object Event Linkage configuration

Set Up the Target Endpoint in 'Header Attributes'

Configure the topic/queue name (or equivalent) that events should be sent to:

Use Clean Core Checks

Created Payload Designs can be checked against SAP's official clean-core recommendations. The check detects violations and shows recommendations on how to fix them (e.g. which CDS views to use instead of direct table access). Use CDS Views for extension fields to remain clean-core compliant.

Choose Released Objects Repository

The checks use the rules published by SAP at github.com/SAP/abap-atc-cr-cv-s4hc. For SAP S/4HANA Cloud Private Edition or on-premise, use the release version file containing PCE in its name – e.g. for Release 2023 FPS02: objectReleaseInfo_PCE2023_2.json.

Download the rules file that fits your target S/4HANA system best (or the latest version for Private Cloud), always using the .csv version.

SAP release versions available for clean-core rule files

Upload the rules file to the system:

A success message confirms the database has been updated, and checks can now be run on your Payload Designs.

Uploading the clean-core rules file via /ASADEV/CCC_IMPORT

Execute Checks

Navigate to the Payload Design Version. A new toolbar button runs the Clean Core Checks:

Clean Core Checks toolbar button

After running the checks, a popup shows the results – violations and possible successors for the tables used:

Clean Core Checks results popup

Via Event Studio

In the Data Catalog, click a business object or CDS View and select Payload. The same field selection, filter, and join capabilities are available in the visual UI.

Note: CDS View Entities are only configurable via Event Studio, not via SAP GUI transactions.