- Introduction
- Getting started
- Process modeling
- Process implementation
- Process operations
- Process monitoring
- Process optimization
- Reference information

Maestro user guide
Gateways control how a process branches and merges during execution. Although gateways influence the flow, they do not perform any action by themselves. They evaluate conditions, synchronize branches, or create parallel paths. This section explains how to use gateways effectively in BPMN models, even when conditional logic is handled externally or execution support is partial.
The exclusive gateway allows only one outgoing path to be followed, based on mutually exclusive conditions.
default attribute on
the <exclusiveGateway> element.Modeling use case: Routing based on status (e.g., approved, rejected, needs clarification).
- Use one outgoing flow per condition.
- Define a default path for cases where no conditions match.
Modeling use case: Optional parallel activities (e.g., notify customer and log request, if applicable)
- Model a merge gateway to join paths.
- Use with care—merging inclusive branches can create confusion if conditions overlap.
- No conditions are evaluated—flow is unconditional.
- Use for modeling concurrency or synchronization.
Modeling use case: Waiting for a customer response or timeout.
- Only one outgoing path is followed.
- All other events become invalid once one is triggered.
When paths branch out from a gateway, a corresponding merge is often required.
| Gateway type | Icon | Merge required? | Merge type |
|---|---|---|---|
| Exclusive | Optional | Exclusive | |
| Inclusive | Required | Inclusive | |
| Parallel | Required | Parallel |
- Always label gateway conditions for business readability.
- Avoid complex nested gateways when possible. Consider sub-processes for encapsulating logic.
- Default flows should be clearly defined to avoid ambiguous behavior.
- Do not mix gateway types during merge (e.g., merging parallel branches with an exclusive gateway).
For more details about the BPMN elements supported in Maestro, see BPMN support.