# Configuration > Workflow settings

Configuration > Workflow settings

# Configure Workflow engine

## Description

<p class="callout success">This page groups together several features related to the workflow engine.</p>

### Document manager

Soffid can use any **document repository** to store documents generated by workflows, reporting addon, or any other addon.

The document repository can be either a local directory or a remote one accessed using FTP, SMB, HTTP protocols. Depending on the protocol selected, additional parameters may be needed.

### Text index

Soffid console maintains a **textual index** that allows searching for currently active or finished processes using full text search.

The textual index for searches can be updated from this page. The textual index is not stored in the database but filesystem. From this page, you can set the directory where this textual index will be stored.

Because it is stored in non-transactional storage, it can get occasionally corrupted. In such a case, by pressing the "Rebuild Index" button, the index will be rebuilt from scratch.

### Task scheduler

When we are working with workflows, there are parts of the process that need to be managed in the background, and this requires a process that runs regularly. This process executes logic nodes or timers configured to run at a specific time.

## Screen overview

[![image.png](https://bookstack.soffid.com/uploads/images/gallery/2025-08/scaled-1680-/EieGfmqmiHnF6PtX-image.png)](https://bookstack.soffid.com/uploads/images/gallery/2025-08/EieGfmqmiHnF6PtX-image.png)

## Related objects

- [Configure Workflow engine](https://bookstack.soffid.com/books/soffid-4-reference-guide/page/configure-workflow-engine) : where the workflow engine is configured
- [Business process definition](https://bookstack.soffid.com/books/soffid-4-reference-guide/page/business-process-definition) : where workflows are published
- [BPM editor](https://bookstack.soffid.com/books/soffid-4-reference-guide/page/bpm-editor) : where to create or modify workflows
- [My tasks](https://bookstack.soffid.com/books/soffid-4-reference-guide/page/my-tasks) : pending workflows where the user has to perform an action in order to continue their workflow.
- [My requests](https://bookstack.soffid.com/books/soffid-4-reference-guide/page/my-requests) : The workflows that the user can initiate are listed here.
- [My requests &gt; Query request status](https://bookstack.soffid.com/books/soffid-4-reference-guide/page/my-requests-query-request-status) : to search for all processes started by oneself
- [Process Search](https://bookstack.soffid.com/books/soffid-4-reference-guide/page/process-search) : to search for all processes
- [Metadata](https://bookstack.soffid.com/books/soffid-4-reference-guide/page/metadata) : to add attributes to display in the search tables
- [Scheduled jobs](https://bookstack.soffid.com/books/soffid-4-reference-guide/page/scheduled-jobs) : shows active workflows pending asynchronous tasks

## Standard attributes

- **Document strategy**: these are the possible configurations 
    - <span style="text-decoration: underline;">Database</span>: (by default) stored in Soffid's own database
    - <span style="text-decoration: underline;">Local</span>: 
        - Temporary local file path:
    - <span style="text-decoration: underline;">CIFS</span>: specific implementation of SMB. Its attributes: 
        - Server: domain of the server
        - File path: file path of the server
        - Temporary local file path: folder inside the Soffid home directory
        - User name: user
        - Password: password
    - <span style="text-decoration: underline;">FTP</span>: 
        - Server: domain of the server
        - File path: file path of the server
        - Temporary local file path: folder inside the Soffid home directory
        - User name: user
        - Password: password
        -
    - <span style="text-decoration: underline;">HTTP</span>: 
        - Server: URL of the service
        - Temporary local file path: folder inside the Soffid home directory
        - User name: user
        - Password: password
- **Text index settings**: If you change the directory indexes will require a re-indexing of all global procedures.
- **Task scheduler**: attributes in query mode:

<span style="text-decoration: underline;">Status</span>: Started / Stoped

- - <span style="text-decoration: underline;">Number of threads</span>: 1 by default
    - <span style="text-decoration: underline;">Wait interval in seconds</span>: every few seconds the process checks whether it has any pending tasks

## Actions

#### View actions

<table border="1" id="bkmrk-expand-all-displays-" style="border-collapse: collapse; width: 100%;"><colgroup><col style="width: 16.9589%;"></col><col style="width: 83.1494%;"></col></colgroup><tbody><tr><td>**Expand all**</td><td>Displays all the attributes of the different blocks.</td></tr><tr><td>**Collapse all**</td><td>Hide all attributes of the different blocks.</td></tr><tr><td>**"Types of views"**</td><td>Change the view type: Classic view, Modern view, Compact design.</td></tr></tbody></table>

### Document manager actions

<table border="1" id="bkmrk-update-allows-you-to" style="border-collapse: collapse; width: 100%;"><colgroup><col style="width: 17.0423%;"></col><col style="width: 82.9469%;"></col></colgroup><tbody><tr><td>**Update**

</td><td>Allows you to save the changes.

</td></tr><tr><td>**Cancel**

</td><td>Allows you to undo any changes made.

</td></tr><tr><td>**Backup**

</td><td>Allows you to download a zip file containing all the files.

</td></tr><tr><td>**Restore**

</td><td>Allows you to upload a zip file to restore all the files.

</td></tr></tbody></table>

### Text index actions

<table border="1" id="bkmrk-rebuild-index-regene" style="border-collapse: collapse; width: 100%; height: 29.7017px;"><colgroup><col style="width: 17.4351%;"></col><col style="width: 82.6732%;"></col></colgroup><tbody><tr style="height: 29.7017px;"><td style="height: 29.7017px;">**Rebuild index**</td><td style="height: 29.7017px;">Regenerate from scratch the text index on which workflows are searched, as well as the attributes that have this type of search configured.

<p class="callout warning">Please note that depending on the volume of data on your system, this process may take quite some time.</p>

</td></tr></tbody></table>

### Task scheduler actions

<table border="1" id="bkmrk-stop-%2F-start-stop-to" style="border-collapse: collapse; width: 100%;"><colgroup><col style="width: 17.9113%;"></col><col style="width: 82.197%;"></col></colgroup><tbody><tr><td>**Stop / Start**</td><td>Stop to shut down the service, start to restart it</td></tr></tbody></table>

# Business process definition

## Description

<p class="callout success">Soffid includes a **BMP (Business Process Management)** in its Smart Engine to provide useful workflows integrated with the processes and the policies of the Soffid core. </p>

In order to add extra functionality to the console, you can upload different business processes (a.k.a. Workflows) that can be found in the Soffid download area and enable or disable existing ones. The existing process definition can be updated by uploading a new version.

<p class="callout warning">If a workflow is **disabled**, processes initiated and pending can be finalized, but no longer that workflow could be started.</p>

<p class="callout info">Please note that the workflows managed by this page will be provided by Soffid or generated from an external tool. Soffid has a **bpm add-on** that allows you to create, update, and publish these workflows directly from its **editor**.</p>

## Screen overview

[![image.png](https://bookstack.soffid.com/uploads/images/gallery/2025-08/scaled-1680-/LVvQZkA4yex99AiS-image.png)](https://bookstack.soffid.com/uploads/images/gallery/2025-08/LVvQZkA4yex99AiS-image.png)

## Related objects

- [Configure Workflow engine](https://bookstack.soffid.com/books/soffid-4-reference-guide/page/configure-workflow-engine) : where the workflow engine is configured
- [Business process definition](https://bookstack.soffid.com/books/soffid-4-reference-guide/page/business-process-definition) : where workflows are published
- [BPM editor](https://bookstack.soffid.com/books/soffid-4-reference-guide/page/bpm-editor-addon-bpm) : where to create or modify workflows
- [My tasks](https://bookstack.soffid.com/books/soffid-4-reference-guide/page/my-tasks) : pending workflows where the user has to perform an action in order to continue their workflow.
- [My requests](https://bookstack.soffid.com/books/soffid-4-reference-guide/page/my-requests) : The workflows that the user can initiate are listed here.
- [My requests &gt; Query request status](https://bookstack.soffid.com/books/soffid-4-reference-guide/page/my-requests-query-request-status) : to search for all processes started by oneself
- [Process Search](https://bookstack.soffid.com/books/soffid-4-reference-guide/page/process-search) : to search for all processes
- [Metadata](https://bookstack.soffid.com/books/soffid-4-reference-guide/page/metadata) : to add attributes to display in the search tables
- [Scheduled jobs](https://bookstack.soffid.com/books/soffid-4-reference-guide/page/scheduled-jobs) : shows active workflows pending asynchronous tasks

## Standard attributes

- **Process**: name of the process.
- **Version**: version of the process.
- **Deployed by**: user who performed the last workflow upload.
- **Date**: date and time of the last workflow upload.
- **Change status**: allows you to change the workflow to enable or disable according to the needs.
- **Deployment results**: displays the log information when a workflow is upload.

## Actions

<table id="bkmrk-add-attribute-allows" style="outline-color: var(--color-primary); font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; font-size: 14px; font-family: Ubuntu; height: 216.733px; width: 91.5476%;"><tbody style="outline-color: var(--color-primary);"><tr style="height: 10px;"><td style="outline-color: var(--color-primary); height: 10px; width: 21.0277%;">**Show disabled**

</td><td style="outline-color: var(--color-primary); height: 10px; width: 78.9613%;">No by default, If you select Yes, all workflows will be displayed, both enable and disable.

</td></tr><tr style="height: 96.9176px;"><td style="outline-color: var(--color-primary); height: 96.9176px; width: 21.0277%;">**Add new**

</td><td style="outline-color: var(--color-primary); height: 96.9176px; width: 78.9613%;">Allows you to pick a defined process and upload it for deploying it in Soffid.

Then Soffid will upload and deploy the process.

This option allows to add new workflows or update existing workflows.

You can upload a process defined with the BPM Editor and previously exported (.pardef) or a process defined by code (.par)

</td></tr><tr style="height: 63.3097px;"><td style="outline-color: var(--color-primary); height: 63.3097px; width: 21.0277%;">**Enable / disable**

</td><td style="outline-color: var(--color-primary); height: 63.3097px; width: 78.9613%;">Allows you to enable or disable a workflow.

When a workflows is enabled all users with proper permission could launch the process.

When a workflow is disabled no user could start a new instance of this process.

</td></tr><tr style="height: 46.5057px;"><td style="outline-color: var(--color-primary); height: 46.5057px; width: 21.0277%;">**Download**

</td><td style="outline-color: var(--color-primary); height: 46.5057px; width: 78.9613%;">Allows you to download the workflow.

Workflows generated with the bpm add-on must be exported from there.

</td></tr></tbody></table>

# BPM editor (addon bpm)

## Description

BPM is a technology that allows modeling, implementing, and executing processes automatically to enhance efficiency and productivity in support of enterprise goals.

Soffid includes a BMP (Business Process Management) in its Smart Engine to provide useful workflows integrated with the processes and the policies.

<p class="callout success">The **BPM Editor Addon** allows you to create, configure and publish business processes very easily for the Soffid administrators.</p>

The BPM Editor addon provides some templates to create new workflows, these templates depend on the process type selected when you are adding a new business process. Nowadays there are the following templates available:

- User management
- Permissions management
- Account reservation
- Permissions request
- Delegate roles


<p class="callout info">You can find additional information by visiting [Process types chapter](https://bookstack.soffid.com/books/bpm-editor/chapter/process-types "Process types").</p>

<p class="callout info">Once a workflow is published with the proper configuration, the users with the correct permissions could start, approve or observe the workflow from the "My Request" option. <span style="color: #01466c;">You can find more información on [My Requests](https://bookstack.soffid.com/books/soffid-4-reference-guide/page/my-requests "My requests") </span>page.</p>

When a workflow is deleted in the BPM editor, that workflow continues to be available to be executed. If you do not want that a workflow will be executed, you must disable that process on the "Business process definition" page. If you disable a workflow, processes initiated and pending can be finalized, but no longer than workflow could be started.

A workflow could be updated with a new version. Processes started with the previous version, will be performed with the previous definition (previous version). And the processes those start with the new version will be performed with the new version.

<p class="callout warning">We will use two concepts to explain the process: identity, and end-user. **Identity** will be the identity or user that will be created, updated, or deleted in Soffid Console. The **end-user** is referred to an user of Soffid that will request processes using the self-service portal.</p>

## Screen overview

[![image.png](https://bookstack.soffid.com/uploads/images/gallery/2025-08/scaled-1680-/dr9i43MnFBSF4mq0-image.png)](https://bookstack.soffid.com/uploads/images/gallery/2025-08/dr9i43MnFBSF4mq0-image.png)

[![image.png](https://bookstack.soffid.com/uploads/images/gallery/2025-08/scaled-1680-/hXJnalqTOijNu6vZ-image.png)](https://bookstack.soffid.com/uploads/images/gallery/2025-08/hXJnalqTOijNu6vZ-image.png)

## Related objects

1. [Configure Workflow engine](https://bookstack.soffid.com/books/soffid-4-reference-guide/page/configure-workflow-engine) : where the workflow engine is configured
2. [Business process definition](https://bookstack.soffid.com/books/soffid-4-reference-guide/page/business-process-definition) : where workflows are published
3. [BPM editor](https://bookstack.soffid.com/books/soffid-4-reference-guide/page/bpm-editor) : where to create or modify workflows
4. [My tasks](https://bookstack.soffid.com/books/soffid-4-reference-guide/page/my-tasks) : pending workflows where the user has to perform an action in order to continue their workflow.
5. [My requests](https://bookstack.soffid.com/books/soffid-4-reference-guide/page/my-requests) : The workflows that the user can initiate are listed here.
6. [My requests &gt; Query request status](https://bookstack.soffid.com/books/soffid-4-reference-guide/page/my-requests-query-request-status) : to search for all processes started by oneself
7. [Process Search](https://bookstack.soffid.com/books/soffid-4-reference-guide/page/process-search) : to search for all processes
8. [Metadata](https://bookstack.soffid.com/books/soffid-4-reference-guide/page/metadata) : to add attributes to display in the search tables
9. [Scheduled jobs](https://bookstack.soffid.com/books/soffid-4-reference-guide/page/scheduled-jobs) : shows active workflows pending asynchronous tasks

## Standard attributes

### Processes list

The list of the processes already created or imported.

- **Process**: identifier name of the workflow

### Summary tab

That area of the form displays the general information about the business workflow and the main operations to perform. The actions to perform are defined by flowing that link [Process editor actions](#bkmrk-new-bpm%C2%A0)

- **Process name**: identifier name of the workflow. This name will be used to label the workflow for the end-user. BPM editor allows you to manage the process into folders, you can type the folder name following by "/" .

<details id="bkmrk-image-configuration%3A"><summary>Image</summary>

Configuration: folder/name

[![image.png](https://bookstack.soffid.com/uploads/images/gallery/2025-09/scaled-1680-/XswyMUc7cpHFZAiQ-image.png)](https://bookstack.soffid.com/uploads/images/gallery/2025-09/XswyMUc7cpHFZAiQ-image.png)

My request with the Users folder

[![image.png](https://bookstack.soffid.com/uploads/images/gallery/2025-09/scaled-1680-/9ExlXYNpXhU7nDwS-image.png)](https://bookstack.soffid.com/uploads/images/gallery/2025-09/9ExlXYNpXhU7nDwS-image.png)

Users folder with the workflow

[![image.png](https://bookstack.soffid.com/uploads/images/gallery/2025-09/scaled-1680-/8LybHuYWFW6CA832-image.png)](https://bookstack.soffid.com/uploads/images/gallery/2025-09/8LybHuYWFW6CA832-image.png)

</details>- **Process type**: allows categorizing the process. There are three different types of processes, each one with its own template. 
    - <span style="text-decoration: underline;">Use management</span>: used to create and update identities and their attributes.
    - <span style="text-decoration: underline;">Permissions management</span>: used to create, update and remove permissions and account to identities.
    - <span style="text-decoration: underline;">Permissions request</span>: used to request permissions.
    - <span style="text-decoration: underline;">Account reservation</span>: to use privileges account. In this case, initiators must be -nobody-, that is nobody can start the process directly.
    - <span style="text-decoration: underline;">Delegate roles</span>: used to delegate permissions to other user.
- **Description**: a brief description of the workflow. When an end-user starts a workflow, this text will be displayed in the Actions log tab.
- **Initiators**: here you could configure the roles or the identities that could start a new workflow from the Console and Selfservice. E.g. "admin" identity, "SOFFID\_ADMIN" role, both separated by comma ',' as "admin,SOFFID\_ADMIN" or if you want to publish the workflow to everyone, you can use the text "tothom" or the character '\*' . When you are configuring an Account reservation process, that value must be -nobody-, that is nobody can start the process directly.
- **Managers**: here you could configure the roles or the identities that could perform tasks in the workflow as approve permissions or cancel the workflow.
- **Observers**: here you could configure the roles or the identities that could open the workflows in read-only mode.

### Diagram tab

This tab displays the workflow diagram. The editor allows you to perform many actions as edit a node, edit a transition, add nodes and transitions, or redistribute the diagram.

#### Steps

There are some available step types to define the properties and behavior of the process. Depending on the selected type, there are common properties to all types and specific properties for each one of them.

The workflows have default steps defined, those steps can be deleted or updated, and other steps can be added. Each step has detail to set up its properties and its behavior. The default steps are below:

<table border="1" id="bkmrk-start-this-step-is-u" style="border-collapse: collapse; width: 100%; height: 151.722px;"><tbody><tr style="height: 29.6806px;"><td style="width: 22.9836%; height: 29.6806px;">**Start**</td><td style="width: 77.0027%; height: 29.6806px;">This step is used to define the beginning of the workflow.

<details id="bkmrk-%F0%9F%92%BB-image-2"><summary>💻 Image</summary>

[![image.png](https://bookstack.soffid.com/uploads/images/gallery/2025-09/scaled-1680-/LY0C5PBs7AxiReQC-image.png)](https://bookstack.soffid.com/uploads/images/gallery/2025-09/LY0C5PBs7AxiReQC-image.png)

</details></td></tr><tr style="height: 46.6806px;"><td style="width: 22.9836%; height: 46.6806px;">**Screen**</td><td style="width: 77.0027%; height: 46.6806px;">This step is used to define a form that must be filled in by the end-user.

<details id="bkmrk-%F0%9F%92%BB-image-%C2%A0-4"><summary>💻 Image</summary>

[![image.png](https://bookstack.soffid.com/uploads/images/gallery/2025-09/scaled-1680-/xhJKcQOPLj6ioc0y-image.png)](https://bookstack.soffid.com/uploads/images/gallery/2025-09/xhJKcQOPLj6ioc0y-image.png)

</details></td></tr><tr style="height: 45.6806px;"><td style="width: 22.9836%; height: 45.6806px;">**Apply changes**</td><td style="width: 77.0027%; height: 45.6806px;">This step is used to show the manager a form with the changes that must be approved.

<details id="bkmrk-%F0%9F%92%BB-image-%C2%A0-3"><summary>💻 Image</summary>

[![image.png](https://bookstack.soffid.com/uploads/images/gallery/2025-09/scaled-1680-/KMBXYL2IB13UrSsP-image.png)](https://bookstack.soffid.com/uploads/images/gallery/2025-09/KMBXYL2IB13UrSsP-image.png)

</details></td></tr><tr style="height: 29.6806px;"><td style="width: 22.9836%; height: 29.6806px;">**End**</td><td style="width: 77.0027%; height: 29.6806px;">This step is used to define the finish of the workflow.

<details id="bkmrk-%F0%9F%92%BB-image-%C2%A0"><summary>💻 Image</summary>

[![image.png](https://bookstack.soffid.com/uploads/images/gallery/2025-09/scaled-1680-/tztt499sY0TA0xH0-image.png)](https://bookstack.soffid.com/uploads/images/gallery/2025-09/tztt499sY0TA0xH0-image.png)

</details></td></tr></tbody></table>

Other available steps to custom your business process:

<table border="1" id="bkmrk-detect-duplicated-us" style="border-collapse: collapse; width: 100%; height: 283.917px;"><tbody><tr style="height: 29.6806px;"><td style="width: 23.3544%; height: 29.6806px;">**Detect duplicated user**</td><td style="width: 76.6319%; height: 29.6806px;">This step is used to detect duplicated users.

<details id="bkmrk-%F0%9F%92%BB-image-%C2%A0-0"><summary>💻 Image</summary>

[![image.png](https://bookstack.soffid.com/uploads/images/gallery/2025-09/scaled-1680-/sORFCr9GqqWIpVgj-image.png)](https://bookstack.soffid.com/uploads/images/gallery/2025-09/sORFCr9GqqWIpVgj-image.png)

</details></td></tr><tr style="height: 29.6806px;"><td style="width: 23.3544%; height: 29.6806px;">**Grant approval**</td><td style="width: 76.6319%; height: 29.6806px;">This step is used to show the manager a form with the changes that must be approved.

<details id="bkmrk-%F0%9F%92%BB-image-%C2%A0-1"><summary>💻 Image</summary>

[![image.png](https://bookstack.soffid.com/uploads/images/gallery/2025-09/scaled-1680-/GYyPvRmqAg38vbb7-image.png)](https://bookstack.soffid.com/uploads/images/gallery/2025-09/GYyPvRmqAg38vbb7-image.png)

</details></td></tr><tr style="height: 29.6806px;"><td style="width: 23.3544%; height: 29.6806px;">**Script action**</td><td style="width: 76.6319%; height: 29.6806px;">This step allows you to define a script to be executed at this point. This process can be configured as asynchronous.

<details id="bkmrk-%F0%9F%92%BB-image-%C2%A0-2"><summary>💻 Image</summary>

[![image.png](https://bookstack.soffid.com/uploads/images/gallery/2025-09/scaled-1680-/llFlECSJDIYJPJyu-image.png)](https://bookstack.soffid.com/uploads/images/gallery/2025-09/llFlECSJDIYJPJyu-image.png)

</details></td></tr><tr style="height: 29.6806px;"><td style="width: 23.3544%; height: 29.6806px;">**Mail**</td><td style="width: 76.6319%; height: 29.6806px;">This step is used to configure sending mail.

<details id="bkmrk-%F0%9F%92%BB-image-%C2%A0-5"><summary>💻 Image</summary>

[![image.png](https://bookstack.soffid.com/uploads/images/gallery/2025-09/scaled-1680-/jlgKQpBAJIv2I4zN-image.png)](https://bookstack.soffid.com/uploads/images/gallery/2025-09/jlgKQpBAJIv2I4zN-image.png)

</details></td></tr><tr style="height: 46.4722px;"><td style="width: 23.3544%; height: 46.4722px;">**Fork**</td><td style="width: 76.6319%; height: 46.4722px;">The process is splited into two or more paths that are run in parallel, allowing multiple activities to run simultaneously.

<details id="bkmrk-%F0%9F%92%BB-image-%C2%A0-6"><summary>💻 Image</summary>

[![image.png](https://bookstack.soffid.com/uploads/images/gallery/2025-09/scaled-1680-/aENeh58lBrdl8dEp-image.png)](https://bookstack.soffid.com/uploads/images/gallery/2025-09/aENeh58lBrdl8dEp-image.png)

</details></td></tr><tr style="height: 29.6806px;"><td style="width: 23.3544%; height: 29.6806px;">**Join**</td><td style="width: 76.6319%; height: 29.6806px;">Two or more parallel sequence flow paths are combined into one sequence Flow path.

<details id="bkmrk-%F0%9F%92%BB-image-%C2%A0-7"><summary>💻 Image</summary>

[![image.png](https://bookstack.soffid.com/uploads/images/gallery/2025-09/scaled-1680-/LrbTyagpDBGN0dQ8-image.png)](https://bookstack.soffid.com/uploads/images/gallery/2025-09/LrbTyagpDBGN0dQ8-image.png)

</details></td></tr><tr style="height: 29.6806px;"><td style="width: 23.3544%; height: 29.6806px;">**Decision**</td><td style="width: 76.6319%; height: 29.6806px;">This step allows you to define a script to decide which will be the next step. You must configure the next step by typing the transition name as part of the return command (e.g. return "transitionName").

<details id="bkmrk-%F0%9F%92%BB-image-%C2%A0-8"><summary>💻 Image</summary>

[![image.png](https://bookstack.soffid.com/uploads/images/gallery/2025-09/scaled-1680-/21KT84gKjARmejWb-image.png)](https://bookstack.soffid.com/uploads/images/gallery/2025-09/21KT84gKjARmejWb-image.png)

</details></td></tr><tr style="height: 29.6806px;"><td style="width: 23.3544%; height: 29.6806px;">**Timer**</td><td style="width: 76.6319%; height: 29.6806px;">This option can be an independent node or as a part of an existing node. This allows you to determine the time to run the action. For Time to trigger field, the availabe options are hours, minutes, seconds, days, or a date #{fecha}

<details id="bkmrk-%F0%9F%92%BB-image-%C2%A0-9"><summary>💻 Image</summary>

[![image.png](https://bookstack.soffid.com/uploads/images/gallery/2025-09/scaled-1680-/ybEGxgre8Py2UOc0-image.png)](https://bookstack.soffid.com/uploads/images/gallery/2025-09/ybEGxgre8Py2UOc0-image.png)

</details></td></tr><tr style="height: 29.6806px;"><td style="width: 23.3544%; height: 29.6806px;">**System call**</td><td style="width: 76.6319%; height: 29.6806px;">This step allows you to set up a call to a specific system.

You can find more information about the [Invoker for Shell connector ](https://bookstack.soffid.com/books/connectors/page/invoker-interface)and the [Invoker for Active directory](https://bookstack.soffid.com/books/connectors/page/invoker-interface-for-active-directory) connector.

<details id="bkmrk-%F0%9F%92%BB-image-%C2%A0-10"><summary>💻 Image</summary>

[![image.png](https://bookstack.soffid.com/uploads/images/gallery/2025-09/scaled-1680-/5rkIalXsgTPybgjb-image.png)](https://bookstack.soffid.com/uploads/images/gallery/2025-09/5rkIalXsgTPybgjb-image.png)

</details></td></tr></tbody></table>

#### Step details

All steps have some detailed data:

- **Step name**: identifier name of the step.
- **Step type**: step to be configured.
- **Description**: a brief description of the step.

#### Step tabs

All steps have some tabs for more detailed configuration, the tabs depend on the step type:

- **Task details**: tab with more custom attributes that depend on the step type
- **Fields**: objects attributes to be managed in the workflow form
- **Triggers**: scripts to be executed depending the trigger selected
- **User querys**: user querys
- **Incoming transitions**: tab to manage the incomming transitions and algo manage actions
- **Outgoing transitions**: tab to manage the outcoming transitions and algo manage actions

### Attributes tab

The Attributes tab is allowed for creating custom attributes to be used to configure the workflow. The defined attributes will be used in the Steps tab to be mapped with the Soffid data.

There are customized templates depending on the Process Type selected, those give you default attributes that you can customize.

- **Code**: code is used internally as an identifier by the system. Try to create a short one without spaces and with uppercase to separate words.
- **Label**: label displayed on the web page. This may be a name or a short description.
- **Data type**: data type of the value of the metadata attribute. The data type includes: 
    - <span style="text-decoration: underline;">Basic data</span> types as String or Boolean.
    - <span style="text-decoration: underline;">Extended data</span> types as Photo or E-mail.
    - Default <span style="text-decoration: underline;">Soffid objects</span> as User or Group.
    - Your own <span style="text-decoration: underline;">custom objects</span> are created in Soffid.
- **Multiple values**: (Optional) If this flag is enabled, the metadata may contain more than one value.
- **Size**: (Optional) Set the maximum length of the value.
- **Values**: (Optional) Allows creating a set of values to provide to the user as a list.

<details id="bkmrk-%F0%9F%92%BB-image-1"><summary>💻 Image</summary>

[![image.png](https://bookstack.soffid.com/uploads/images/gallery/2025-09/scaled-1680-/lhkieuyC9hYhjyxr-image.png)](https://bookstack.soffid.com/uploads/images/gallery/2025-09/lhkieuyC9hYhjyxr-image.png)

</details>## Actions

#### Process list actions

<table id="bkmrk-query-allows-to-sear-0" style="height: 538.25px; width: 99.9874%;"><tbody><tr style="height: 77.2px;"><td style="width: 24.2003%; height: 77.2px;">**Add new**

</td><td style="width: 79.2768%; height: 77.2px;">Allows you to add a new workflow to Soffid. You need to set a name and select the process type and accept. Then Soffid opens the Process editor, which allows you to configure the process. And finally, save the process configuration, or save and publish. If you cancel that operation, Soffid will not save the process definition.

<details><summary>💻 Image</summary>

[![image.png](https://bookstack.soffid.com/uploads/images/gallery/2025-09/scaled-1680-/MX5vXMfMbx0Lr2hp-image.png)](https://bookstack.soffid.com/uploads/images/gallery/2025-09/MX5vXMfMbx0Lr2hp-image.png)

</details></td></tr><tr style="height: 312.25px;"><td style="width: 24.2003%; height: 312.25px;">**Import**

</td><td style="width: 79.2768%; height: 312.25px;">Allows you to import a workflow from a .pardef file. That functionality is very useful for next scenarios:

- To restore a workflow from a backup (a workflow previously exported).
- To deploy a workflow from one environment to another (for instance from Test to Live).
- To start a new workflow from a template.

Click the button, pick up a .pardef file, and save the process or save and publish. Soffid will ask you for confirmation, If you confirm, finally, Soffid will import the process definition. If you cancel that operation, Soffid will not upload and save the process definition.

<p class="callout warning">Note that with this option you only can load workflows defined by the BPM editor.</p>

</td></tr><tr style="height: 63.2px;"><td style="width: 24.2003%; height: 63.2px;">**"Edit process"**

</td><td style="width: 79.2768%; height: 63.2px;">Allows you to edit a workflow to update it by clicking the process row. Then you can update the process definition and save, or save and publish the updates.

</td></tr><tr style="height: 85.6px;"><td style="width: 24.2003%; height: 85.6px;">**Delete process definition**

</td><td style="width: 79.2768%; height: 85.6px;">Allows you to delete a workflow. Select a process row to enable the delete button. When a process is deleted, that process continues to be available to be executed. If you want that process is not available, you must disable that process on the [<span id="bkmrk-business-process-def">Business process definition</span>](https://bookstack.soffid.com/books/soffid-4-reference-guide/page/business-process-definition "Business process definition")<span id="bkmrk-index-%26%26todo%26%26-to-di"> page.</span>

</td></tr></tbody></table>

#### Summary tab actions

The action that can be performed in the process are detailed below

<table id="bkmrk-save-allows-you-to-q" style="outline-color: var(--color-primary); font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; font-size: 14px; font-family: Ubuntu; height: 337px;"><tbody style="outline-color: var(--color-primary);"><tr style="outline-color: var(--color-primary); height: 35px;"><td style="outline-color: var(--color-primary); height: 35px; width: 135px;">**Save**

</td><td style="outline-color: var(--color-primary); height: 35px; width: 601px;">Allows you to save all changes included in the workflow. That workflow can be a new or an updated workflow.

</td></tr><tr style="outline-color: var(--color-primary); height: 35px;"><td style="outline-color: var(--color-primary); height: 35px; width: 135px;">**Save and Publish**

</td><td style="outline-color: var(--color-primary); height: 35px; width: 601px;">Allows you to save the changes performed in the workflow setup and also publish the workflow to be used in Soffid.

After this action, the last version of the workflow will be available for the end-user (with the proper permissions) in the Soffid Console and Self-service portal on the [My requests](https://bookstack.soffid.com/books/soffid-4-reference-guide/page/my-requests "My requests") page.

This latest version has been saved internally on the [Business process definition](https://bookstack.soffid.com/books/soffid-4-reference-guide/page/business-process-definition "Business process definition") screen.

</td></tr><tr style="outline-color: var(--color-primary); height: 35px;"><td style="outline-color: var(--color-primary); height: 35px; width: 135px;">**Cancel**

</td><td style="outline-color: var(--color-primary); height: 35px; width: 601px;">Allows you to quit the process editor without saving changes. Soffid will ask you for confirmation to exit without saving updates

</td></tr><tr><td style="width: 174px; height: 35px;">**Export process**

</td><td style="width: 570px; height: 35px;">Allows you to export a workflow to a **.pardef** file. You can choose that option clicking the "three points" icon. Automatically Soffid will download a .pardef file with the process definition.

</td></tr></tbody></table>

##### Diagram tab actions

<table border="1" id="bkmrk-new-step-%C2%A0-new-field" style="outline-color: var(--color-primary); font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; font-size: 14px; font-family: Ubuntu; height: 636px; border-collapse: collapse; width: 100.031%;"><tbody style="outline-color: var(--color-primary);"><tr style="height: 159px;"><td style="outline-color: var(--color-primary); width: 18.652%; height: 159px;">**"Transition icons"**

</td><td style="outline-color: var(--color-primary); width: 81.348%; height: 159px;">Allws you to add or update transitions.

- Select
- Pan
- Connect
- Connect

<details><summary>Image</summary>

[![image.png](https://bookstack.soffid.com/uploads/images/gallery/2025-09/scaled-1680-/gnZ1OJhgHbqoqoLi-image.png)](https://bookstack.soffid.com/uploads/images/gallery/2025-09/gnZ1OJhgHbqoqoLi-image.png)

</details></td></tr><tr style="height: 159px;"><td style="outline-color: var(--color-primary); width: 18.652%; height: 159px;">**"Edit icons"**

</td><td style="outline-color: var(--color-primary); width: 81.348%; height: 159px;">Allows you to delete an existing step. To delete a step you must click "trash" icon, the last of the edit icons.

- Undo
- Redo
- Cut
- Copy
- Paste
- Delete

<details><summary>💻 Image</summary>

[![image.png](https://bookstack.soffid.com/uploads/images/gallery/2025-09/scaled-1680-/pn46BtqVRtIVYWab-image.png)](https://bookstack.soffid.com/uploads/images/gallery/2025-09/pn46BtqVRtIVYWab-image.png)

</details></td></tr><tr style="height: 159px;"><td style="outline-color: var(--color-primary); height: 159px; width: 18.652%;">**"Step icons"**

</td><td style="outline-color: var(--color-primary); height: 159px; width: 81.348%;">Allows you to add a new step to the workflow by selecting the action from the tool bar. When a new step is added, it will be mandatory to configure it.

- Start state
- End state
- Fork
- Join
- Decision
- System
- Node
- Task
- Mail
- Timer

<details><summary>💻 Image</summary>

[![image.png](https://bookstack.soffid.com/uploads/images/gallery/2025-09/scaled-1680-/5O575rMhsiYyzPj7-image.png)](https://bookstack.soffid.com/uploads/images/gallery/2025-09/5O575rMhsiYyzPj7-image.png)

</details></td></tr><tr style="height: 159px;"><td style="outline-color: var(--color-primary); width: 18.652%; height: 159px;">**"Size icons"**

</td><td style="outline-color: var(--color-primary); width: 81.348%; height: 159px;">Allows you to change the size view of the diagram.

- Zoom out
- Zoom in
- Fit
- Actual size

<details><summary>Image</summary>

[![image.png](https://bookstack.soffid.com/uploads/images/gallery/2025-09/scaled-1680-/CQX0IGVtzYwdlz71-image.png)](https://bookstack.soffid.com/uploads/images/gallery/2025-09/CQX0IGVtzYwdlz71-image.png)

</details></td></tr></tbody></table>

##### Diagram tab &gt; step node &gt; fields tab actions

<table border="1" id="bkmrk-new-field-allows-you" style="outline-color: var(--color-primary); font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; font-size: 14px; font-family: Ubuntu; height: 460.895px; border-collapse: collapse; width: 100.012%;"><tbody style="outline-color: var(--color-primary);"><tr style="height: 299.389px;"><td style="outline-color: var(--color-primary); height: 299.389px; width: 18.6235%;">**Add new**

</td><td style="outline-color: var(--color-primary); height: 299.389px; width: 81.2416%;">Allows you to add a new attribute on the Attribute tab. You need to click the "New field" button and Soffid will show a new row to fill in. For each new field you may define:

- **Label**: allows you to give a name to that field. That label will be shown on the process form to final users.
- **Name**: allows you to select an identity attribute or specific attribute defined for that process. That will be the field type (e.g. selector, input field, date field...)
- **ReadOnly**: allows you to determine if this field could be updated.
- **Required**: allows to enable an attribute as a mandatory
- **Validation**: this allows you to add a custom script with validation rules.
- **Visibility**: this allows you to add a custom script to determine the visibility of that field.
- **SCIM Filter**: allows you to define a SCIM filter to get the data (e.g. userType eq "E")

<details id="bkmrk-%F0%9F%92%BB-image-0"><summary>💻 Image</summary>

[![image-1718003457780.png](https://bookstack.soffid.com/uploads/images/gallery/2024-06/scaled-1680-/image-1718003457780.png)](https://bookstack.soffid.com/uploads/images/gallery/2024-06/image-1718003457780.png)

</details></td></tr><tr style="height: 46.5057px;"><td style="outline-color: var(--color-primary); height: 46.5057px; width: 18.6235%;">**Delete**

</td><td style="outline-color: var(--color-primary); height: 46.5057px; width: 81.2416%;">Allows you to delete a field. To delete a field you must click on the subtract icon (-) that is at the end of the same line.

</td></tr><tr style="height: 35px;"><td style="outline-color: var(--color-primary); width: 18.6235%; height: 35px;">**Order (icon)**

</td><td style="outline-color: var(--color-primary); width: 81.2416%; height: 35px;">Allows you to sort the fields using drag and drop.

</td></tr><tr style="height: 35px;"><td style="outline-color: var(--color-primary); height: 35px; width: 18.6235%;">**Validation (icon)**

</td><td style="outline-color: var(--color-primary); height: 35px; width: 81.2416%;">Allows you to add a new customized script with validation rules

</td></tr><tr style="height: 10px;"><td style="outline-color: var(--color-primary); width: 18.6235%; height: 10px;">**Visibility (icon)**

</td><td style="outline-color: var(--color-primary); width: 81.2416%; height: 10px;">Allows you to add a new customized script to determine the visibility of that field.

</td></tr><tr style="height: 35px;"><td style="outline-color: var(--color-primary); width: 18.6235%; height: 35px;">**SCIM query **(icon)****</td><td style="outline-color: var(--color-primary); width: 81.2416%; height: 35px;">Allows you to define a SCIM filter to get the data</td></tr></tbody></table>

##### Triggers

<table border="1" id="bkmrk-new-trigger-allows-y" style="outline-color: var(--color-primary); font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; font-size: 14px; font-family: Ubuntu; height: 105px; border-collapse: collapse;"><tbody style="outline-color: var(--color-primary);"><tr style="height: 35px;"><td style="outline-color: var(--color-primary); height: 35px; width: 135px;">**Add new**

</td><td style="outline-color: var(--color-primary); height: 35px; width: 604px;">Allows you to add a new trigger to perform actions.

<details id="bkmrk-%F0%9F%92%BB-image-%C2%A0-11"><summary>💻 Image</summary>

[![image.png](https://bookstack.soffid.com/uploads/images/gallery/2025-09/scaled-1680-/I05COuMMx39VPe8i-image.png)](https://bookstack.soffid.com/uploads/images/gallery/2025-09/I05COuMMx39VPe8i-image.png)

</details></td></tr><tr style="height: 35px;"><td style="outline-color: var(--color-primary); height: 35px; width: 135px;">**Delete**

</td><td style="outline-color: var(--color-primary); height: 35px; width: 604px;">Allows you to delete a trigger.

</td></tr><tr style="height: 35px;"><td style="outline-color: var(--color-primary); height: 35px; width: 135px;">**Action (icon)**

</td><td style="outline-color: var(--color-primary); height: 35px; width: 604px;">Allows you to add a new customized script.

</td></tr></tbody></table>

##### Incoming transition

<table border="1" id="bkmrk-new-transition-allow" style="outline-color: var(--color-primary); font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; font-size: 14px; font-family: Ubuntu; border-collapse: collapse;"><tbody style="outline-color: var(--color-primary);"><tr style="height: 35px;"><td style="outline-color: var(--color-primary); height: 35px; width: 136px;">**New transition**

</td><td style="outline-color: var(--color-primary); height: 35px; width: 603px;">Allows you to add a new incoming transition. You need to click the "New transitions" button, then Soffid will show a new row to fill in. For each new incoming transition you may define:

- From: this allows you to select where the workflow comes from.
- Incoming transition: brief name to identify the transition.
- To: current step.
- Action: allows creating a custom script to perform specific actions.

<details id="bkmrk-%F0%9F%92%BB-image-%C2%A0-12"><summary>💻 Image</summary>

[![image-1718007544596.png](https://bookstack.soffid.com/uploads/images/gallery/2024-06/scaled-1680-/image-1718007544596.png)](https://bookstack.soffid.com/uploads/images/gallery/2024-06/image-1718007544596.png)

</details></td></tr><tr><td style="outline-color: var(--color-primary); width: 136px;">**Delete transition**

</td><td style="outline-color: var(--color-primary); height: 35px; width: 603px;">Allows you to delete an incoming transition. To delete an incoming transition you must click on the subtract icon (-) that is at the end of the same line.

</td></tr><tr style="height: 35px;"><td style="outline-color: var(--color-primary); height: 35px; width: 136px;">**Action**

</td><td style="outline-color: var(--color-primary); height: 35px; width: 603px;">Allows you to add a new customized script by clicking the pencil icon.

</td></tr></tbody></table>

##### Outgoing transition

<table border="1" id="bkmrk-new-transition-allow-0" style="outline-color: var(--color-primary); font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; font-size: 14px; font-family: Ubuntu; border-collapse: collapse;"><tbody style="outline-color: var(--color-primary);"><tr style="height: 35px;"><td style="outline-color: var(--color-primary); height: 35px; width: 136px;">**New transition**

</td><td style="outline-color: var(--color-primary); height: 35px; width: 602px;">Allows you to add a new outgoing transition.

<details id="bkmrk-%F0%9F%92%BB-image-3"><summary>💻 Image</summary>

[![image-1718007569420.png](https://bookstack.soffid.com/uploads/images/gallery/2024-06/scaled-1680-/image-1718007569420.png)](https://bookstack.soffid.com/uploads/images/gallery/2024-06/image-1718007569420.png)

</details></td></tr><tr><td style="outline-color: var(--color-primary); width: 136px;">**Delete transition**

</td><td style="outline-color: var(--color-primary); height: 35px; width: 602px;">Allows you to delete an outgoing transition. To delete an outgoing transition you must click on the subtract icon (-) that is at the end of the same line.

</td></tr><tr style="height: 35px;"><td style="outline-color: var(--color-primary); height: 35px; width: 136px;">**Action**

</td><td style="outline-color: var(--color-primary); height: 35px; width: 602px;">Allows you to add a new customized script by clicking the pencil icon.

</td></tr></tbody></table>

##### Attributes tab actions

<table border="1" id="bkmrk-add-attribute-allows" style="outline-color: var(--color-primary); font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; font-size: 14px; font-family: Ubuntu; height: 135px; border-collapse: collapse; width: 100.031%;"><tbody style="outline-color: var(--color-primary);"><tr style="height: 35px;"><td style="outline-color: var(--color-primary); height: 35px; width: 18.4953%;">**Add new**</td><td style="outline-color: var(--color-primary); height: 35px; width: 81.5047%;">Allows you to add a new attribute to use to configure the step.</td></tr><tr><td style="width: 18.4953%;">**View**

</td><td style="width: 81.5047%;">Allows you to show and hide columns in the table.

You can also set the order in which the columns will be displayed.

</td></tr><tr style="height: 35px;"><td style="outline-color: var(--color-primary); height: 35px; width: 18.4953%;">**Delete**</td><td style="outline-color: var(--color-primary); height: 35px; width: 81.5047%;">Allows you to delete an attribute. To enable the delete button you must select one attribute.</td></tr><tr style="height: 35px;"><td style="outline-color: var(--color-primary); height: 35px; width: 18.4953%;">**Add value**</td><td style="outline-color: var(--color-primary); height: 35px; width: 81.5047%;">Allows you to add a new value to the attribute.</td></tr><tr style="height: 35px;"><td style="outline-color: var(--color-primary); height: 30px; width: 18.4953%;">**Delete value**</td><td style="outline-color: var(--color-primary); height: 30px; width: 81.5047%;">Allows you to delete a value. To delete a value you must click on the subtract icon (-) that is at the end of the same line.</td></tr></tbody></table>

##### Resources tab actions

<table border="1" id="bkmrk-upload-resources-all" style="outline-color: var(--color-primary); font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; font-size: 14px; font-family: Ubuntu; height: 135px; border-collapse: collapse; width: 100.031%;"><tbody style="outline-color: var(--color-primary);"><tr style="height: 35px;"><td style="outline-color: var(--color-primary); height: 35px; width: 18.4953%;">**Upload resources**</td><td style="outline-color: var(--color-primary); height: 35px; width: 81.5047%;">Allows you to add files in a zip file as externals resources to be used in the scripts</td></tr></tbody></table>

## Others

### Workflow to import as examples

- User management --&gt; [User.pardef](https://bookstack.soffid.com/attachments/7)
- Permissions management --&gt; [Permissions+request.pardef](https://bookstack.soffid.com/attachments/8)
- Account reservation --&gt; [Account+reservation.pardef](https://bookstack.soffid.com/attachments/10)
- Permissions request
- Delegate roles