Logic helps automate elaborate tasks by introducing custom rules to filter data or defer the execution of a few actions. You can even create your own logic element with custom functions. When used alongside app-based actions, these elements can make your flow more comprehensive.

The logic types available are Flow Control, Notification, and Custom Functions.

Flow Control

Flow Control contains logic elements that streamline your flow according to specific requirements of your business.

Set variable - Create a variable and assign it a constant value or the result of a formula

Decision - Enable your workflow to execute different actions based on the conditions

Delay - Delay task executions according to your preferences. There are two types of delay: Delay For and Delay Until


Notification consists of logic elements that help you send notifications through your workflows.

Send email- Send an email from any email domain through your workflows

Custom Functions

Create your own function from scratch in Zoho Flow using Deluge script. Learn more

Set Variable

With Set Variable, you can create a variable and assign it a value. The value can be constant or the result of a formula.

For example, you can configure age=18. 'age' is the name of your variable and 18 is the constant value you assign. You can also configure age=${trigger.age+10}. The variable 'age' fetches a value from the trigger, adds 10, and stores the result.

To configure Set Variable:

  1. Click the Logic tab on the left side of the builder.
  2. Drag and drop Set Variable from Flow Control.
  3. In the configuration window that opens, the variable name will be auto filled. You can edit the name if needed. When renaming a variable, note that:
    • All names must start with a letter. Variable names can contain alphanumeric characters and underscores.
    • Other characters, such as spaces, are not accepted. Names must be unique to avoid naming clashes.
    • If you use the same variable name for multiple actions, the result of the action executed last will be stored in the variable.
      E.g: discountCalc, dateFormatter2
  4. Enter a value that will be stored in the variable. This can be a direct value(will be considered a string) or the result of a formula. E.g: 180, ${trigger.cost+500}
  5. Click Done.

You will now be able to map this value in the actions that follow.

For example, you can calculate the total price of a bundle in Zoho Inventory along with tax. The Set Variable fetches the amount from Zoho Inventory and performs the configured calculations.


Decision lets you branch your workflows to check for conditions and perform different tasks. Conditions are the rules you provide (e.g: Ticket Subject contains "issue"). You can provide as many conditions as you need, and define what the flow should do if a set of rules are satisfied.

For example, when a ticket is updated in Zoho Desk, depending on fields like subject or status, you can configure your workflow to perform different tasks, such as creating a task in Zoho Projects, updating a Google spreadsheet, or sending a Slack message.

To configure Decision:

  1. Click the Logic tab on the left side of the builder.
  2. Drag and drop Decision from Flow Control. In the configuration window that opens, there will be two dropdowns, and one field to be filled for each test condition. A test condition is a statement with three elements that needs to be verified. The first dropdown is the list of variables from previous tasks in the flow. The second dropdown is the operation to be performed, and the field is what the variable should be compared with.

    This condition is satisfied if the subject of the updated ticket contains 'error'.


    Add Test Conditions
  3. You can add different test conditions in the group or as many groups as required. Every time you add a group or a test condition, a dropdown with AND/OR will appear.
    AND - Output is true only if both the test conditions are true
    OR - Output is true if one or both the test conditions are true

    For example, if the ticket subject contains 'error' or 'issue', the output is true. Now, this is evaluated with the next test condition. Let's assume the classification is not problem . So, the entire output is false and this condition is not satisfied.
  4. When you add test conditions in the same group, the output of each condition in the group is evaluated sequentially to be the output of the entire group. To add a test condition, hover over a test condition to see a +. Click on it to add the next one.

    Add Group

    A group is a collection of test conditions. When you add different groups, the final value is evaluated from the output of each group, rather than the output of each test condition. This is similar to adding parenthesis in Boolean Algebra.
    Consider T to be True and F to be False. When you say T||T&F&T, the calculation is performed sequentially. The AND(&) operation is given more priority than OR(||). So, it becomes T||F&T Next, T||F. So the output is T. This is like adding test conditions in the same group. But when you say (T||T)&(F&T), the calculation within parenthesis is first performed. Taking the value of each group, the total value is computed to be F. This is like adding different groups.
  5. To add a new group, click Add Group.

    This means if the ticket subject contains issue or error, or classification is problem, and is open and overdue, this condition is satisfied.
  6. Click Done.
  7. You can rename the condition by clicking on the condition name.
  8. Add the action that should be performed if this condition is true to the right of the decision box.
    If the condition is true, then a task is created in Zoho Projects.
  9. Add as many conditions as you need by clicking the + below your conditions. You can also add an action to execute when none of the conditions hold true at the bottom of the decision box. This is called the default action.

    Here, a message is sent in Slack channel if both the conditions are false.


Delay postpones one or more actions in the flow for a time period or until a specified date. This means you can configure a part of the workflow to execute when it is triggered, and the other part to execute after a certain amount of delay.

For example, you can send an email 30 minutes after a form submission is made. Alternatively, you can send an email on February 20th to those who have registered for your event.

To configure Delay:

  1. Click the Logic tab on the left side of the builder.
  2. Drag and drop Delay from Flow Control. There are two types of Delay: Delay For and Delay Until.
  3. Delay For will be auto-selected. You can choose to delay for any number of minutes, hours, days, or weeks. For example, you can send a thank you email an hour after a purchase order is created in your Zoho Inventory.
  4. You can choose to delay until a particular date you select from the calendar. Click on the month or year to view your options for changing them.

    For example, every time a registration is made for an event, a message can be sent to your Slack channel. Two days before the event, you can schedule a reminder email to be sent to the attendees using the same flow. This flow will send a message to the Slack channel and wait. Two days before the event, the flow will finish executing by sending emails to all the registered email addresses.
  5. Click Done.

Send Email

Send Email allows you to send an email to any email domain through workflows. The sender address won't be yours but the Reply to will be set to your email address (any domain).

For example, you can configure an email to be sent from your official email address (your company's custom domain) to all candidates who applied for an opening. Though the email will be sent from our auto-generated email address, the Reply to will be set to the sender email address you provide. To configure Send Email:

  1. Click the Logic tab on the left side of the builder.
  2. Click Notifications.
  3. Drag and drop Send Email to the builder. A configuration window will open where you need to fill in the following details:
    FromSender email address (Reply to will be set to this email)
    ToRecipient email address
    SubjectSubject of the email
    MessageBody of the email

  4. For more options, click Advanced options below the message field.
    CCCarbon copy. Email addresses you want to forward a copy of this email to.
    BCCBlind carbon copy. Email addresses you want to forward a copy of the email to but do not want the other recipients to know.

  5. Click Done.

Share this post : FacebookTwitter

Still can't find what you're looking for?

Write to us: support@zohoflow.com