You are browsing upcoming documentation for version 6.1 of OroCommerce, scheduled for release in 2025. Read the documentation for version 6.0 (the latest LTS version) to get up-to-date information.

See our Release Process documentation for more information on the currently supported and upcoming releases.



For more information, see Workflow Configuration Reference.



Root Node




type: map

During each step transition, a set of entity attributes can be shown to the user for which they can enter values. Each entry in this map is the name of an attribute which can be configured with a map that can contain the following options:


type: map

There are two keys that can be used with this option:

  • If the delete key is set to true, the attribute is treated as the name of an ACL that is evaluated to check if the user is allowed to delete the underlying entity.

  • If update is set to true, the ACL is used to check for update permissions.


type: map

The options must be configured based on the chosen type:

  • class (type: string)

    A fully qualified class name which is needed when the attribute type is entity or object.

  • multiple (type: boolean)

    When the type is entity, this option controls whether or not multiple entities can be selected.

  • virtual (type: boolean)

    The attribute will not be saved in the database and is available only for the current transition. The default value is false.


type: string

An optional property path used to access the attribute’s value (if this is set, the other options can be guessed). You can refer to the underlying entity by a variable whose name is controlled by the entity_attribute option (its default value is entity).


type: string

The attribute’s type can be any scalar

  • boolean/bool

  • float

  • int/integer

  • string

  • array (list of scalars or objects that are serializable)

  • object (a serializable object)

  • entity (FCQN of a Doctrine entity).


type: string

The fully qualified class name of the entity the workflow is associated with (a workflow can only be used with exactly one entity type).


type: string default: entity

A name of an attribute used to store the main entity.


type: boolean

If this option is set to true, the workflow is treated as built-in which means that it cannot be modified or removed via the user interface.


type: string

The name of the workflow start step. The value must refer to one of the steps configured with the steps option.


type: map

The steps option configured the states a workflow can have. The keys are step names and each value is a map that contains options that configure the particular step.


type: sequence

A list of transitions that can be applied at this stage.


type: map

Two options can be configured under this key to control which kind of actions can be performed in this step:

  • delete (type: boolean)

    If true, the entity can be removed.

  • update (type: boolean)

    If true, the entity can be modified.


type: boolean

This option must be set to true to identify final workflow states.


type: integer

Steps are ordered by this value in the workflow steps widget.


type: boolean

If set to true, all steps will be shown in the workflow widget on the user interface. Otherwise, only steps that have an order value less than or equal to the current step will be shown. This is useful to indicate the following steps of an entity.


type: map


type: map

Transitions define how one step is transformed into another using the following options:


type: string

A message that will be shown in case the user does not have access granted through the access control list configured with the acl_resource option. This option will be translated before being shown on the UI.


type: string

The id of an access control list a user must be granted access to perform the transition.


type: string default: @OroWorkflow/Widget/widget/transitionForm.html.twig

When the display_type is dialog, this template will be used to create the page displayed on the user interface. The template being referenced here should extend the default @OroWorkflow/Widget/widget/transitionForm.html.twig template.


type: string

The type of the widget to be shown when the transition is performed. This can be either dialog or page. When the page value is used, the form_options must be configured too.


type: map

Form options that will be passed to the created form type when the display_type option is set to page.


type: map


type: boolean

If true, this transition is hidden on the user interface.


type: boolean

If set to true, this transition can be applied when a workflow is not in a start step. There must be at least one transition having this option set to true if the workflow does not have at least one start step.


type: boolean

When the user is not allowed to perform this transition, set this option to true. Then, it will not appear on the user interface.


type: string

A notification message that appears on the user interface before the transition is performed. This message is translated before it appears on the user interface.


type: string default: @OroWorkflow/Workflow/transitionForm.html.twig

When the display_type is page, this template will be used to create the page displayed on the user interface. The template being referenced here should extend the default @OroWorkflow/Workflow/transitionForm.html.twig template.


type: string

The name of the step the workflow is transformed to (this must be one of the keys used in the steps option).


type: string

A transition definition to be applied to this transition.