Events

Intermediate Conditional Event

Pauses the flow until a business condition becomes true. Double thin circle with a lined-paper icon.

The Intermediate Conditional Event is a data-driven wait: instead of waiting for a message or a clock, the token waits for state — “continue when the account balance is positive”, “proceed once headcount is approved”.

When to use and avoid

When to use

  • To gate progress on a data condition with no explicit notifier.

  • When some other process/system updates the state and yours just observes it.

  • For wait-until semantics that would otherwise need polling loops.

When NOT to use

  • When a notifier exists — a Message (addressed) or Signal (broadcast) is more explicit and efficient.

  • For time-based waits — Timer.

  • When nobody actually monitors the condition in the implementation.

Business example

Waiting until stock is available

Diagrama BPMN: Waiting until stock is available
Waiting until stock is available

Open this example in the HEFLO process editor and explore the diagram from the inside.

Open in the HEFLO editor →

Step by step

  1. Reserve order items finds insufficient stock.
  2. The Conditional Event (highlighted) waits until stock ≥ required becomes true — replenishment happens elsewhere.
  3. When the condition holds, Allocate and pick continues the fulfillment.

Differences

Conditional vs Signal catch

A Signal needs someone to throw it; a Condition is evaluated over data with no thrower. If the fact is announced, catch the signal; if it is silently reflected in data, use the condition.

FAQ

How often is the condition checked?

Conceptually, whenever relevant data changes. Engines implement it via data-change triggers or periodic evaluation — check your tool.

What if the condition is already true when the token arrives?

Then the event fires immediately — the token passes through without waiting.

Related elements