Loading
Prepare for Email to Become the Default Login ExperienceRead More
Automate Your Business Processes with Salesforce Flow
Orchestrations

Orchestrations

An orchestration uses stages, steps, and decisions to organize complex business processes.

Required Editions

View supported editions for Flow Orchestration.

The External System Change-Triggered Orchestration requires the MuleSoft for Flow add-on.

Build orchestrations by using the Flow Orchestration tiles in Flow Builder. Flow Orchestration tiles limit the available elements and available resources in your orchestration and include Stage elements and Step resources that aren’t available in flows. Flow Orchestration always uses Auto-Layout in Flow Builder.

Orchestration Run Life Cycle

The life cycle for an orchestration run

Flow Orchestration Types

The tiles for Flow Orchestration Autolaunched Orchestration (No Trigger), External System Change-Triggered Orchestration, and Record-Triggered Orchestration.

An autolaunched orchestration launches when it’s called by a custom Apex class or a custom URL. The creation or update of a record can trigger a record-triggered orchestration, but only after the record is saved.

Flow Usage

Orchestrations rely on flows. Orchestration versions use flows in 2 ways:

Relationship Description
Orchestration Step Action
  • The active autolaunched flow that the orchestration version uses as a background step
  • The active screen flow that the orchestration version uses as an interactive step
Evaluation Flow

The active evaluation flow that the orchestration version uses to determine whether:

  • A stage can be completed
  • A background step can be started
  • An interactive step can be started
  • An interactive step can be completed
  • A MuleSoft step can be started

View the flows that an orchestration version uses in the Automation app. See Determine Flow Usage in an Orchestration Version.

Variables in Orchestrations

Autolaunched orchestrations can use input variables to require input from a process that calls it.

To reference output values from flows called by orchestration steps, use the step’s automatic output.

Variable Description Notes
Internal-only Orchestrations don’t have a way to assign a value to an internal-only variable.
Input The user-defined variable is marked Available for input. When the autolaunched orchestration is called by a process, its input variables are inputs from the parent process. Orchestrations can’t change the value of variables, but they can pass input variables to input parameters for evaluation flows or flows called by steps in an orchestration.
Output Orchestrations don’t use output variables.

Record Refresh in Orchestrations

When you reference a record variable or a record collection in an orchestration configured to run on API version 58.0 and later, records are refreshed with their latest values each time the orchestration run resumes. In an autolaunched orchestration run, all referenced records are refreshed. In a record-triggered orchestration, all referenced records except $Record__Prior are refreshed.

When a background step runs synchronously and updates a record, the orchestration run doesn't refresh $Record until it resumes. The stage can't access updated field values after the step completes, and you can't use them in stage or step exit criteria. To access a field value that a step updated, use the step's automatic output instead of referencing $Record directly.

Flow Orchestration Run Record Ownership

For flow orchestration run records created in Winter ’23 or later, the Owner ID field is set to the ID of the automated process user.

 
Loading
Salesforce Help | Article