> ## Knowledge Base Index
> Fetch the complete knowledge base index at: https://docs.flokzu.com/sitemap.xml
> Use this file to discover available pages before exploring further.
> Pure-Markdown content can be obtained by appending a '.md' suffix to the content URLs listed in the sitemap (without the trailing slash).

# Timers in process flows: interruptive and non-interruptive

Timers are tools that allow you to incorporate time-based conditions into an active [User Task](/en/article/what-is-a-user-task-1mfd0vk/). They work like a combination of a stopwatch and an alarm clock: when a task with a timer is reached, it starts counting, and once the configured interval is met, a specific action is triggered.

Depending on the type of timer, two things can happen:

* With an **interrupting timer**, the linked task is interrupted and the flow continues through an **alternative** path.
* With a **non-interrupting timer**, the main task remains active, and an **additional** execution is triggered through another process path.

Here we explain the differences, when to use each one, how to configure them, and practical examples.

---

### When to Use Each Type

* Use an **interrupting timer** when you want the process to *automatically proceed* through an alternative path if the task is not completed within the specified time. For example, if someone must review a request within 3 days, and if they don’t, it should be automatically sent to a supervisor or rejected.

* Use a **non-interrupting timer** when you want to trigger complementary actions (reminders, alerts, follow-ups) without preventing the main task from remaining active. For example, sending a reminder email to the user if they haven’t acted within 24 hours, but still allowing them to continue working on the task.

---

## How to Add a *Timer*

To add a *timer*, simply drag the element and connect it to a User Task. By default, the *timer* will be configured as **interrupting**. We'll explain how to change its type below.

### Configuring an Interrupting Timer

1. Once added, double-click on the timer to define the time frame (you can combine years, months, days, hours, minutes, seconds), set a duration based on your [working days configuration](/en/article/holidays-and-workdays-management-rfwrg7/), or use an absolute date based on a date-type field.

2. Set the alternative path that should be executed when the timer expires (i.e., if the task is not completed in time).

![](https://storage.crisp.chat/users/helpdesk/website/5a899047-9b38-48ab-9475-31c8c63a3183/22314272-67f6-4bde-b854-d1a510db9bae.gif)

**Behavior**: if the user does not complete the task before the deadline, that task is **canceled** and the flow continues exclusively through the timer path.

|| Note: You can only associate one interrupting timer per task.

---

### Configuring a Non-Interrupting Timer

1. When you add a timer, it will appear as *interrupting* by default. Click on the timer, select the settings option (wrench icon), and switch it to *non-interrupting*.

2. Double-click on the timer to define the time frame (you can combine years, months, days, hours, minutes, seconds), set a duration based on your [working days configuration](https://docs.flokzu.com/en/article/holidays-and-workdays-management-rfwrg7/), or use an absolute date based on a date-type field.

3. Configure the parallel path that the workflow should follow when the timer expires.

![](https://storage.crisp.chat/users/helpdesk/website/5a899047-9b38-48ab-9475-31c8c63a3183/81bd8374-68c1-40a8-beae-c0d9e49186ff.gif)

**Behavior**: if the user does not complete the task in time, the timer triggers the alternative path **without canceling the original task**. Both paths (the user's and the timer's) can coexist.

|| You can associate up to 5 non-interrupting timers with the same task.

---

#### Recurring Executions

You can configure non-interrupting timers to execute repeatedly until their associated User Task is completed.

To do this, configure the *Number of executions* field with the maximum number of times you want the timer to be triggered.
This is useful for sending recurring reminders while the task remains active.

![](https://storage.crisp.chat/users/helpdesk/website/-/c/c/c/3/ccc3fbb5dc442800/imagen_1ffjdgr.png)


**Behavior**: each time the timer is triggered, it will restart the configured time interval, after which a new execution will be triggered.

---

### Loop Execution and Potential Issues

When configuring non-interrupting timers, you must be especially careful **not to create loop executions** like the following:

![](https://storage.crisp.chat/users/helpdesk/website/-/c/c/c/3/ccc3fbb5dc442800/loopload_53zl8z.gif)

If the *parallel flow* is connected back to the User Task, a new copy of the process instance will be created each time the timer is triggered.
Disconnect the additional flow from the user task to ensure the paths remain independent.

![](https://storage.crisp.chat/users/helpdesk/website/-/c/c/c/3/ccc3fbb5dc442800/loopok_mht4k0.gif)

---

## Practical Examples

### Example of an Interrupting Timer: Review Expiration

Let’s say that in an approval process, there is a "Review Request" task with a 3-day deadline. If the review is not completed in that time, you want the request to automatically go to the manager.

* You place an interrupting timer linked to that task, with a 3-day deadline.
* Define the alternative path: “Manager Review.”
* If the user reviews the request before the 3 days, the flow continues normally.
* If not, the “Review Request” task is canceled and the flow follows the “Manager Review” path.

---

### Example of a Non-Interrupting Timer: Pending Task Reminder

Imagine a process where a “Complete Report” task must be done within 5 days. You want to send the user a reminder 2 days before the deadline if it hasn’t been completed yet, but still allow them to continue working.

* Add a non-interrupting timer linked to the task, with a 3-day deadline (or equivalent, depending on when you want the reminder).
* Define a parallel path that sends a reminder email.
* If the user completes the report before the 3 days, the reminder has no effect.
* The “Complete Report” task remains active throughout the 5 days, or until completed.
* You can add more than one non-interrupting timer: for example, one for reminders that executes every 1 day (for 5 days), and another one that runs once after the 5-day period to notify the Supervisor. Just be careful to avoid duplicates or infinite loops.

---

## Best Practices and Recommendations

* **Don’t mix interrupting timers**: a task cannot have more than one, and it’s not recommended — only one will be triggered.
* **Limit the use of non-interrupting timers**: while you can have several per task, each path must make sense and avoid unwanted loops.
* **Avoid loops or duplications**: especially with non-interrupting timers triggering actions that reactivate the same task or process instances.
* **Clearly document alternative paths**: when designing the flow, ensure each timer has a well-defined route that doesn’t cause ambiguity with the main path.
* **Use absolute dates carefully**: when the timer depends on a date-type field, ensure that the field is always available and contains a valid value (a date later than the assignment day), otherwise the *timer* may trigger immediately.
