When your customers arrive on your support channel, they're not there to explore. They are usually confused and stuck while trying to fix something important. We understand how stressful that moment can feel and we want your bot to make things easier, not harder.
A well designed Guided Conversation takes away this confusion. At the heart of those flows lies one powerful tool: the Fork Block. When you pair it with a few smart techniques, it can turn a basic bot into a friendly assistant your users trust.
What Fork Blocks actually do
Think of Fork Blocks as your bot’s decision maker. They split the flow into different paths based on conditions.
The bot behaves exactly the way you expect:
- If the customer says X, respond with Y
- If that does not match, check the next thing
- If nothing fits, take them to a helpful fallback
Nothing is guessed; each action is based on your logical configuration.
Example
A customer contacts your support bot on WhatsApp.
The bot asks: “What do you need help with today?”
Options:
- Order related help
- Account help
- Something else
Your Fork Block simply checks what the user tapped or texted and takes them to the correct flow. A Fork Blocks split your flow into different paths based on conditions.
Customer chooses
| Bot should do
|
Order related help
| Bot asks for the order number and shows order status.
|
Account help
| Bot verifies mobile number and shows account options.
|
Something else
| Bot shows a short menu to guide the user.
|
This feels smooth because the bot reacts instantly based on the user’s choice.
Why this matters for your customers
Fork Blocks help you:
- Personalise every step
- Reduce back and forth
- Send users to the right answer faster
- Prevent unnecessary agent escalations
This directly improves resolution rates across channels, WhatsApp, Messenger, Instagram and more.
Advanced techniques
Below are the techniques that can take your Fork Block logic from basic to professional level. The transitions between them are natural, since each one uses Fork Blocks in a different but complementary way.
Fork with IM Variables
When a customer messages your WhatsApp bot, Guided Conversations can use one of their credentials, such as their phone number (
IM Variable), to fetch details from your backend system via a webhook. This equips the bot with key information about the customer, like whether they are on a Gold or Free edition, without needing to ask.
Your Fork Block then uses this information to personalise the conversation instantly.
Gold customers: "Hi, welcome back. You are on Gold support. Here are your recent tickets."
Free customers: “Hi. Please share your order number so I can help you.”
If customer type isn’t available: “Just to help you better, are you a Gold customer or a Free customer?”
This keeps the conversation smooth and personalised without asking the customer to repeat basic details.
Fork Block with Operation Block
Some decisions depend on numbers. For example, a customer might tell you their quantity and price, and you need to decide what assistance level they should get. Instead of asking customers to calculate things or writing long explanations, let the Operation Block do the math.
Example
- A customer shares quantity and price.
- Operation Block calculates total value.
- Fork Block decides how to assist the customer based on that value.
Total Value
| What your bot offers
|
Above 20,000
| Priority callback
|
5,000 to 20,000
| Connect to a human agent
|
Below 5,000
| Automated
|
Here, the Fork Block evaluates the result of the Operation Block and chooses the best path. This keeps the flow clean and avoids long explanations.
Fork Block with Webhook Block
Sometimes your bot needs to make decisions that depend on information stored outside the Guided Conversation flow. For example, checking a warranty, subscription, customer tier, or order status.
Combining a Fork Block with a webhook is a powerful tool in this situation.
How it works
- The user enters a detail (for example: order ID)
- A webhook sends this to your backend system for a status check
- Your system returns a simple response such as:
- SHIPPED
- OUT_FOR_DELIVERY
- YET_TO_SHIP
- The Fork Block reads this result and decides the next step.
Example
User asks “What’s my order status?” and enters an order number.
- Webhook checks your system.
- Response = OUT_FOR_DELIVERY
- Fork Block routes to “Your order is on the way. Here’s your tracking link.”
- If response = YET_TO_SHIP, the Fork Block routes to “Your order is being prepared. We’ll notify you once it ships.”
This keeps the flow neat and helps customers move faster.
How the three come together to create a smooth, intelligent WhatsApp bot
In real-world WhatsApp flows, these three techniques often work together.
- IM variables help trigger the backend and retrieve user details
- Webhook verifies backend information
- Operation Block calculates values
For example, you can identify the user via their mobile number, calculate the cart value using an Operation Block, and verify their membership tier through a webhook all in one flow.
Best Practices
- Map your branches before building: Sketch your decision paths on paper first
- This prevents confusion when your flow grows; it will be easy to see where each condition leads
- Use specific conditions first and general ones later
- Always include an Else path
Final Thought
Fork Blocks work on every channel supported by Guided Conversations, not just WhatsApp.
When you combine them with Webhooks, Operation Blocks and Session Variables, you create flows that feel structured, reliable and human-aware, without complexity for the user.
Regards,
Prabin | Zoho Desk
Recent Topics
Transformer vos stocks en décisions intelligentes avec Zoho Inventory et Zoho Analytics
Zoho Inventory permet de suivre facilement les niveaux de stock et d’anticiper les restockages. Pour de nombreuses entreprises, cela suffit à gérer les opérations au quotidien. Mais à mesure que l’activité se développe, cette clarté peut commencer à montrer
WorkDrive Download Issue
My client has been sending me files via WorkDrive, which generally has worked fine. Recently files won't download at all. If you try and individually select and download a file, a popup will appear in the bottom right saying it's preparing and then it
Zoho Commerce - Poor Features Set for Blogging
Hi Zoho Commerce team, I'm sure you will have noticed that I have been asking many questions about the Blogs feature in Commerce. I thought that it would be useful if I share my feedback in a constructive way, to highlight the areas which I feel need
Security Enhancements | Migrate to the Updated Policies
Hello everyone, Zoho Directory's security policies have been updated and reorganized into three new policies with features that enhance the overall organization security. These policies provide a stronger and more secure sign-in methods and improve the
Bring Zoho Shifts Capabilities into Zoho People Shift Module
Hello Zoho People Product Team, After a deep review of the Zoho People Shift module and a direct comparison with Zoho Shifts, we would like to raise a feature request and serious concern regarding the current state of shift management in Zoho People.
Zoho Commerce - How To Change Blog Published Date and Author
Hi Commerce Team, I'm discussing a project with a client who wants to move from Woo Commerce / Wordpress to Zoho Commerce. They have around 620 blog posts which will need to be migrated. I am now aware of the blog import feature and I have run some tests.
Quick Create needs Client Script support
As per the title. We need client scripts to apply at a Quick Create level. We enforce logic on the form to ensure data quality, automate field values, etc. However, all this is lost when a user attempts a "Quick Create". It is disappointing because, from
How to block a WhatsApp user for sending spam
Is there a way to block those whatsapp users that just come to play and annoy our service, they also spam us. We have a waba service with sales iq
Inquiry regarding auto-save behavior for Zoho Sign Embedded Sending
Dear Zoho Support Team, I am currently integrating Zoho Sign's Embedded Sending functionality using iframes on my website. I would like to know if there is a way to ensure that the document state (including any added fields) is automatically saved as
Introducing Connected Records to bring business context to every aspect of your work in Zoho CRM for Everyone
Hello Everyone, We are excited to unveil phase one of a powerful enhancement to CRM for Everyone - Connected Records, available only in CRM's Nextgen UI. With CRM for Everyone, businesses can onboard all customer-facing teams onto the CRM platform to
Automation#17: Auto-Create Tasks in Zoho Projects Upon Ticket Creation in Zoho Desk
Hello Everyone, This edition delivers the solution to automatically create a task in Zoho Projects when a ticket is created in Zoho Desk. Zylker Resorts uses Zoho Desk for bookings and handling guest requests. Zylker resorts outsources cab bookings to
Automation#20 : Auto-Add Ticket Tags based on Keywords
Hello Everyone! Welcome to unveiling custom functions on our Community series. This week's post lets you add tags to your tickets automatically based on the keywords in the ticket subject and the ticket thread. Discover how this custom function helps
Automation#21: Track Ticket Transfers Across Departments
Hello Everyone! With Halloween just around the corner, we'd like to let you know the Zoho Desk team is always there to sweep away your customer service troubles! This week, we’re excited to introduce a custom function that tracks tickets moved between
Email Integration - Zoho CRM - OAuth and IMAP
Hello, We are attempting to integrate our Microsoft 365 email with Zoho CRM. We are using the documentation at Email Configuration for IMAP and POP3 (zoho.com) We use Microsoft 365 and per their recommendations (and requirements) for secure email we have
Uplifted homepage experience
Hello everyone, Creating your homepage is now much easier, more visual, and more impactful. Until now, your homepage allowed you to display custom views, widgets, analytic components, and Kiosk. With the following improvements, the homepage is now a smarter,
Homepage not assignable to group
MS Teams for daily call operations
Hello all, Our most anticipated and crucial update is finally here! Organizations using Microsoft Teams phone system can now integrate it effectively with Zoho CRM for tasks like dialling numbers and logging calls. We are enhancing our MS Teams functionality
Automation#22 Track Ticket Duration at Specific Status
Hello Everyone! Welcome back to the Community Learning Series! Today, we explore how Zylker Techfix, a gadget servicing firm, boosted productivity by tracking the time spent at a particular ticket status in Zoho Desk. Zylker Techfix customized Zoho Desk’s
Automation#23: Automate Guided Conversations in Zoho Desk with Business Hours
Hello Everyone, This week's edition introduces a custom function designed to automate Guided Conversations in Zoho Desk, based on your business hours. With this feature, you can align the bot's behavior with your business schedule, ensuring a smooth and
Address changes in quote form
When entering a quote, the first piece of information required is the Account, which properly populates the billing and shipping address fields. Then I use the lookup function to select a contact, and when I do, the billing and shipping addresses are
Automation#24: Auto-Update custom field from Accounts to Tickets
Hello Everyone! Welcome back to the Community Learning Series! This episode dives into how Zylker Techfix streamlines account-related ticket references. Previously, employees had to manually check account details to retrieve specific customer information,
Automation#31: Automate Splitting Names for New Contact Records
Hello Everyone, This week, we present to you a custom function, which allows you to split the first and last names from the user's email ID based on the separator used in the ID. Having grown into a large firm, Zylker Techfix aims to optimize its processes,
The same Contact associated to multiple Companies - Deals
Hi, I would like to know if there is an option to associate the same contact with multiple companies (two or more) deals, using the same contact details for all. This is because we have contacts who are linked to different companies or branches of the
local file csv import problem
The issue occurs when I upload a CSV file via Databridge. In the preview, everything looks correct — the values are in the proper columns. However, after clicking Import, the first column becomes empty, and the values from that column appear in a new
Kaizen #227 : Client Script Support for List Page (Canvas)
Hello everyone! Welcome to another week of Kaizen. In today's post lets see how Client Script can be used in Canvas List Page to mask sensitive information from specific roles and add colors to Canvas List Page records based on custom criteria.This use
Implement Date-Time-Based Triggers in Zoho Desk
Dear Zoho Desk Support Team, We are writing to request a new feature that would allow for the creation of workflows triggered by specific date-time conditions. Currently, Zoho Desk does not provide native support for date-time-based triggers, limiting
Automation#25: Move Tickets to Unassigned When the Owner Is Offline
Hello Everyone, Welcome to this week's Community Series! 'Tis the holiday season—a time when work often takes a brief pause. The holiday spirit is in full swing at Zylker Techfix too, with employees taking some well-deserved time off. During this period,
Automation#27: Retain Ticket Owner on Moved Tickets
Hello Everyone! This week, we present to you a custom function that retains the ticket owner when a ticket is moved from one department to another. Here’s more to help you understand the custom function: At Zylker Techfix, Alex, the Support Engineer manages
Automation#28 Notify Agents on Article Expiry
Hello Everyone! This week, we’re bringing you a feature that notifies your team when articles in the Knowledge Base are set to expire to keep your content relevant and helpful for customers. The Zoho Desk's Knowledge Base is an asset for customers to
Automation#29 Retain ticket status on moved tickets
Hello Everyone, Hear out Zylker Techfix’s Success Story on Smoother Ticket Transitions! Zylker Techfix, a gadget servicing firm committed to quick repairs and timely deliveries, faced a challenge when ticket statuses changed automatically while moving
encountering an error when attempting to associate an email with a Deal using the Zoho CRM extension in Zoho Mail.
When I click "Yes, associate," the system displays an "Oops!! Something went wrong" error message. I have attached a screenshot of the issue for reference.
Automation#32:Auto Add New Portal Users to the Help Center User Groups
Hello Everyone, Introducing a custom function that automates the process of adding new portal users to Help Center user groups, making user management effortless! By default, Zoho Desk allows you to assign new portal users to groups manually. But with
Using email "importance" as workflow-criteria
I'd like to set up a workflow that triggers if an incoming email has been flagged as "high importance" but I'm not seeing any way to do that. Hopefully I'm just missing something obvious...?
Automation#34 : Automate Email threading for Ticket notification
Hello Everyone, It's been a while since we've presented an automation. However, our community has been buzzing with ideas, use cases, and discussions with our community experts and Ask the Experts session. So, here we are again, presenting an automation
Automation#35 : Auto-Add Comments under the Owner's Name in Tickets via Macros
Hello Everyone, This week's custom function provides simple steps to configure a Macro for adding comments to tickets with the name of the Comment owner. When managing tickets, you can use the Comment feature to communicate internally with your team and
Automation#36: Auto-create time-entry after performing the Blueprint transition
Hello Everyone, This week’s edition focuses on configuring a custom function within Zoho Desk to streamline time tracking within the Blueprint. In this case, we create a custom field, and request the agent to enter the spending time within the single
Automation#33: Automate Splitting Names for Existing Contact Records
An organized directory – who doesn't love one? Previously, we explored how to split contact names into First Name and Last Name for new contacts in Zoho Desk. But what about existing contacts already in your database? This week, we bring you a custom
About Meetings (Events module)
I was working on an automation to cancel appointments in zoho flow , and in our case, we're using the Meetings module (which is called Events in API terms). But while working with it, I'm wondering what information I can display in the image where the
import data from Apollo.ai into zoho crm via zoho flow
I might be asking this question in the wrong forum. We use Apollo.ai to find potential new leads for our business, there are around 10000 leads that we have initially found. We have an Apollo.ai account but just to do searches, we dont use it as a crm.
Fix the speed
It takes ages to load on every step even though my dataset is quite small.
Next Page