Overview
Data Mappers enable users to visually map data transfers between components clearly and intuitively, ensuring simplicity, flexibility to include custom code when needed, and full backward compatibility with existing implementations.Key concepts
Source Components
- Parent processes
- Integration flows
- Business rules
Destination Components
- Subprocesses
- Workflows
- Business rules
Parameters & variables
- Input Parameters
- Output Parameters

Parameter types by origin
Predefined Parameters
Predefined Parameters
Flexible Parameters
Flexible Parameters
Prerequisites
Data Model hierarchy
Understanding the data model hierarchy is essential for effective Data Mapper implementation:Project Data Model
Library Data Model
Process Data Model
Setup requirements
Define Project Data Model First
- Reusability across processes and workflows
- Consistent data structures
- Improved error prevention
- Enhanced mapping experience
Include Example Values
- Visualize attribute meaning and expected values
- Enable testing without separate mock data
- Improve configuration experience
Plan for Reusability
- Customer information structures
- Common business entities
- Standardized response formats
Configuration
Setting up process parameters
Configure Input Parameters
- Open the process you want to configure
- Navigate to the Start node
- Select the Input parameters tab and click “Define parameters”

- Define the schema based on the process’s Data Model
- Mark optional fields to indicate their optionality in the UI during mapping
- Note: This centralizes input definition at the subprocess level, replacing the previous “data to send” configuration on the parent process

Configure Output Parameters
- Navigate to the End node
- Select the Output parameters tab

- Define the schema based on the process’s Data Model
- Automatic Data Flow: For synchronous processes, subprocess output automatically appends to parent without requiring explicit “append to parent” action

Handle Multiple Start/End Nodes
- If your subprocess has multiple start or end nodes, all will be displayed
- Useful for scenarios involving exclusive gateways
- Each node can have its own parameter configuration
Mapping scenarios
Call activity mapping
Synchronous call activity
Set Up Call Activity
- In a process, define a call-activity type node
- Select the subprocess to be called
- Data Mapping is now the default option
- Toggle to “Switch to legacy mapping” if needed for backward compatibility

Map Input Parameters
- View the subprocess’s input parameters
- Click the “cog wheel” icon next to the start node

- Source Component: Current process (parent)
- Destination Component: Subprocess input parameters
- Mapping Options:
- Individual Mapping: Map each attribute individually
- Quick Mapping: If source and destination have the same data type, use dropdown for automatic mapping of all attributes

- Testing: Click the “test” button to visualize the JSON payload using example values from your data model
Map Output Parameters
- Select the Output tab
- View subprocess’s output parameters
- Select attributes in parent process data model for storing output
- Map subprocess output parameters (source) to parent process parameters (destination)

- Use JavaScript functions for data transformation and combination
- Syntax Requirements: All computed values must use
return
statements - Example:
return userVerification.status + " on " + userVerification.date
- Testing: Use test button to see transformed output with example values
- Value Persistence: Previous values are saved until confirmation and save
- System sends configured data even with type mismatches (e.g., string to number)
- JavaScript errors trigger if functions encounter issues (e.g., reading property from undefined object)
Save Configuration
Asynchronous call activity
Set Up Async Call Activity
- Define call-activity node or Start Subprocess action on User Task
- Select subprocess to be called
- Check the Run async toggle
Map Input Only
- Choose Data Mapper implementation
- Map input parameters from parent process (source) to subprocess (destination)
- Save input mapping configuration
Testing and validation
Testing methodology
Use Example Values
- Leverage example values from your data model for testing
- No need for separate mock data
- Values automatically populate in test scenarios
Test Payload Generation
- Click “test” button to visualize JSON payload
- See exactly what data will be sent to destination component
- Verify transformations work as expected
Apply Previous Session Information
- Use information from previous sessions in testing
- Validate real-world scenarios
- Ensure data flows correctly end-to-end
Testing subprocess data
- When testing data coming from subprocesses, you need to check for the UUID instance of the subprocess and copy paste it in the instance field of the test data, as shown in the demo below:
To do that:
JavaScript transformation testing
Syntax Requirements
Syntax Requirements
- All computed values must include
return
statements - Use clear parameter notation (e.g.,
userVerification.status
) - Functions must handle potential undefined values
Error Handling
Error Handling
- System sends data even with type mismatches
- JavaScript errors trigger for undefined object property access
- Test transformations thoroughly before deployment
Value Persistence
Value Persistence
- Previous values are saved during configuration
- Only lost upon clicking “confirmation” and “save”
- Allows iterative testing and refinement
Managing parameter changes
Modifying defined parameters
When parameters are modified in Start or End nodes:- Changes do not automatically propagate to existing mappings
- Mappings must be manually updated in the Data Mapper
- Test mappings after parameter changes
Data Model changes
When changes are made to Project or Process Data Model:Renamed Parameters
Removed Parameters
New Parameters
Use cases
Process-to-Subprocess Communication
Process-to-Subprocess Communication
Process-to-Integration Workflow
Process-to-Integration Workflow
Multi-Step Workflow Processing
Multi-Step Workflow Processing
Reusable Business Rules
Reusable Business Rules
Best practices
Define Data Models Early
Use Example Values
Plan for Reusability
Test Thoroughly
Document Dependencies
Leverage Quick Mapping
Current limitations
Current limitations to be aware of:Start Subprocess Issues
Start Subprocess Issues
- Async and Multi-Instance Coverage: Async and multi-instance subprocesses are not fully supported in data mapping scenarios (estimated fix: 5.1 Feature)
- Array to Object Mapping: Cannot map array → object for scenarios when you edit or add an item in a collection (estimated fix: 5.X Feature)
Resource Management Issues
Resource Management Issues
- Copy Resources: Input parameters, output parameters, and mappings are not copied when resources are duplicated or copied to another project/library (estimated fix: 5.0 Fix)
System Tracking Issues
System Tracking Issues
- Audit Log: New data mapping actions are not audited in the system logs (estimated fix: 5.0 Fix)
Process Execution Issues
Process Execution Issues
- Async Processes: Output mapping not available for asynchronous call activities
- Parallel Multi-Instance: Handling under consideration for future releases