Enable your teams to respond in seconds by bridging the gap between booking confirmation and team notification. No sticky notes, no calendar nudges and no follow-up frenzies. For businesses that rely on scheduled appointments, real-time visibility is a crucial operational need.

Timely automated communication is essential for managing important appointments and bookings. Let's integrate Zoho Bookings with Zoho Cliq via the Cliq developer platform's bots and workflows, ensuring that every appointment confirmation is automated and reaches Cliq chats promptly.

Business Benefits

  1. Operational Efficiency: This custom solution eliminates the need for manual dashboard monitoring. Booking updates are automatically communicated to Cliq as they occur.
  2. Enhanced Customer Experience: Faster internal awareness leads to expedited confirmations, better-prepared staff, and a more seamless appointment experience.
  3. Centralized Communication: All booking activities are consolidated in the same Cliq channel your team uses daily, minimizing context switching and preventing information silos.
  4. Enterprise-Ready, No Additional Cost: Built entirely on the Zoho Cliq Developer platform, this custom solution requires no third-party middleware. It operates within your existing Zoho subscription framework.

Step 1: Create a bot 

  1. Go to the top-right corner of your profile and click on it.
  2. Select "Bots and Tools" from the dropdown menu.
  3. To create a new bot, click on "Create Bot" under the "Bots" section.
  4. Enter a name and description for your bot and ensure that channel configuration settings are enabled during setup.
  5. Finally, save the bot.

Step 2: Retrieve the bot webhook URL 

  1. Webhook tokens are listed in the Bots & Tools section along with other internal tools.
  2. When you access the webhook tokens module, you'll need to authenticate using two-factor authentication (2FA), verify your identity, and then click "Continue."
  3. After authenticating, you can create, edit, and manage your webhook tokens as needed.
  4. Generate a webhook token and retrieve the bot's webhook URL as instructed.
ⓘ Learn more about webhook tokens in Zoho Cliq.


Step 3: Generate Cliq bot incoming url  

To create the bot's incoming URL, combine the bot's endpoint with the webhook token.
  1. Navigate to the newly created bot and click on it. A pane will appear showing the bot's URL details.
  2. Copy your bot's incoming endpoint from this window and append your token to it:
  1. https://cliq.zoho.com/api/v2/bots/<yourbotname>/incoming?zapikey=<webhooktoken>
Keep this URL handy, as you will need to paste it into the Zoho Bookings workflow later.

Step 4 : Creating a workflow in Zoho Bookings 


  1. Log in to Zoho Bookings.
  2. In the left panel, navigate to one of the following options:
    1. Workflows → Custom Workflows → Create New Workflow
    2. or Workflows → Create Workflow → Create New Workflow.
  3. If you chose Workflows → Custom Workflows → Create New Workflow, complete the following fields:
    1. Workflow Name: Enter a name for your workflow.
    2. Trigger When: Select "Booked."
    3. Occurrence: Choose "Immediately."
    4. Choose Service (e.g., IT Consulting): Select your Service.
    5. Perform Action: Select "Execute Custom Functions."
    6. Customize Template: Paste the following code. 
  4. In the template editor, paste the code, replacing "<bot incoming url>" with the full URL you created in the previous step. 
    1. bookingInfoMap = Map();
    2. bookingInfoMap.put("BookingInfo",bookingInfo);
    3. cliqWebhookTrigger = invokeurl
    4. [
    5. url : "<bot incoming url>"
    6. type :POST
    7. parameters:{"Book Details":bookingInfo} + ""
    8. headers:{"content-type":"application/json"}
    9. ];
    10. info cliqWebhookTrigger;
  5. Click Create Workflow. With this setup, whenever a new appointment is booked, it will trigger a notification to your Cliq bot's incoming handler.

Step 6 : Setting up bot incoming webhook handler   

  1. Head back to Cliq, locate the bot you created under the "Bots and Tools" section, and access its incoming webhook handler.
  2. The incoming webhook handler is designed to allow third-party services, such as Zoho Bookings, to post messages directly to your bot.
  3. Copy and paste the below code, then click "Save".
Note: You can customize the message format using the Message Builder.

Pre-requisites before scripting:
  1. Create a Zoho Cliq Default Connection:

    Before you begin scripting the code below, you need to create a connection in Zoho Cliq. Once the connection is established, you can use it in Deluge integration tasks and invoke URL scripts to access data from the required service.

    Use a unique name for the connection with the scope set to ZohoCliq.Reminders.All.

    Note: Refer to the document on Connections in Cliq for more information.

  2. Post Alerts to a Channel:

    To post an alert to a channel, you'll need the unique names of both the channel and the bot. This is necessary as we will use the zoho.cliq.postToChannelAsBot Deluge task in the code below. Follow these steps to retrieve these names:

    How to Obtain the Channel Unique Name in Cliq?:

    • Navigate to the top right corner of your preferred channel and click on the three dots.
    • In the menu that appears, select "Channel info." A pop-up will display detailed information about the channel.
    • Hover over the "Connectors" section and click on it.
    • Under "API Parameters," you will find the channel unique name.

    How to Obtain the Bot Unique Name in Cliq?

    • Go to "Bots & Tools," and under the bots section, select your preferred bot.
    • Copy the API endpoint URL. The bot's unique name is located between "bots/" and the next slash ("/").

    Example:

    In this example, the bot's unique name is crmupdatesincliq.

  3. Retrieve the Bot Chat ID:
    • Open Zoho Cliq and navigate to your bot in the chat window.
    • Click on the bot to open the conversation.
    • Check the URL in your browser; the bot chat ID is the alphanumeric string that appears after "chats/".

    Example:

    In this example, the bot chat ID is CT_9874563201845670134_10005673821-B7.

After creating the connection, retrieving the channel unique name, bot unique name, and bot chat ID, keep this information handy for use in the code below.

Script
  1. response = Map();
  2. info params;
  3. info headers;
  4. info body;
  5. bookingDetails = body.get("Book Details");
  6. info bookingDetails;
  7. bookingID = bookingDetails.get("booking_id");
  8. workspaceName = bookingDetails.get("workspace_name");
  9. customerEmail = bookingDetails.get("customer_email");
  10. startTime = bookingDetails.get("start_time");
  11. endTime = bookingDetails.get("end_time");
  12. timeZone = bookingDetails.get("time_zone");
  13. summaryUrl = bookingDetails.get("summary_url");
  14. responseMsgCard = {"text":"### 📅 New Appointment","card":{"theme":"modern-inline"},"slides":{{"type":"label","title":"Details","buttons": [
  15. {"label": "Open Summary","action": {"type": "open.url","data": {"web":summaryUrl}}}],"data":{{"🆔 Booking ID":bookingID},{"🏢 Workspace":workspaceName},{"📧Customer Email":customerEmail},{"🕒 Time":startTime + " - " + endTime},{"🌍 TZ":timeZone}}}}};
  16. info zoho.cliq.postToBot("<bot unique name>",responseMsgCard);
  17. //Post to your Bot
  18. info zoho.cliq.postToChannelAsBot("<Channel unique name>","<bot unique name>",responseMsgCard);
  19. //It will send to channel with bot permission.
  20. //--------------------------------- To set reminder -------------------------------//
  21. eventTimeZone = bookingDetails.get("time_zone");
  22. info eventTimeZone;
  23. userTimeZone = user.get("timezone");
  24. dateTimeObj = bookingDetails.get("start_time").toTime("dd-MMM-yyyy HH:mm:ss",eventTimeZone).toString("dd-MM-yyyy HH:mm:ss");
  25. info dateTimeObj;
  26. info dateTimeObj.toTime("dd-MM-yyyy HH:mm:ss",user.get("timezone")).subMinutes(60);
  27. datetime_30min_sub = dateTimeObj.toTime("dd-MM-yyyy HH:mm:ss",userTimeZone).subMinutes(30).toString("dd-MMM-yyyy HH:mm:ss",userTimeZone);
  28. datetime_60min_sub = dateTimeObj.toTime("dd-MM-yyyy HH:mm:ss",userTimeZone).subMinutes(60).toString("dd-MMM-yyyy HH:mm:ss",userTimeZone);
  29. info datetime_60min_sub+"datetime_60min_sub";
  30. info datetime_30min_sub+"datetime_30min_sub";
  31. secondsVal_60sec_before = datetime_60min_sub.unixEpoch(userTimeZone);
  32. secondsVal_30sec_before = datetime_30min_sub.unixEpoch(userTimeZone);
  33. info secondsVal_60sec_before;
  34. info secondsVal_30sec_before;
  35. reminderTimes = list();
  36. reminderTimes.add(secondsVal_60sec_before);
  37. reminderTimes.add(secondsVal_30sec_before);
  38. for each  reminderTime in reminderTimes
  39. {
  40. param = Map();
  41. content = "Zoho Bookings Reminder : " + bookingID;
  42. param.put("content",content);
  43. param.put("time",reminderTime);
  44. chatidsList = list();
  45. chatidsList.add("<Bot chat id>");
  46. param.put("chat_ids",chatidsList);
  47. createReminder = invokeurl
  48. [
  49. url :"https://cliq.zoho.com/api/v2/reminders"
  50. type :POST
  51. parameters:param + ""
  52. connection:"<your connection name>"
  53. ];
  54. info createReminder;
  55. }
  56. return response;


Team responsiveness and operational clarity are critical, and automated booking alerts create a measurable impact. Businesses managing a scalable client base and operating on appointments cannot afford delays in information. Every booking that goes unnoticed is a missed chance to respond and deliver.

This custom solution brings real-time Zoho booking data into the Cliq communication layer, effectively filling the gap, letting teams stay coordinated, respond faster, and deliver a consistently better experience to every customer.

If you have any further questions or need support, please reach out to support@zohocliq.com, and we'll be happy to assist you.
    • Sticky Posts

    • Add Claude in Zoho Cliq

      Let’s add a real AI assistant powered by Claude to your workspace this week, that your team can chat with, ask questions, and act on conversations to run AI actions on. This guide walks you through exactly how to do it, step by step, with all the code
    • Automating Employee Birthday Notifications in Zoho Cliq

      Have you ever missed a birthday and felt like the office Grinch? Fear not, the Cliq Developer Platform has got your back! With Zoho Cliq's Schedulers, you can be the office party-cipant who never forgets a single cake, balloon, or awkward rendition of
    • Zoho Cliq REST APIs v3 : A complete guide to what's changed and why 

      APIs are not just consumed by a developer with numerous automations and a series of open browser tabs. They are parsed by LLMs, fed into agent pipelines, and auto-completed by AI coding assistants that have zero tolerance for inconsistency. A verb tucked
    • Cliq Bots - Post message to a bot using the command line!

      If you had read our post on how to post a message to a channel in a simple one-line command, then this sure is a piece of cake for you guys! For those of you, who are reading this for the first time, don't worry! Just read on. This post is all about how
    • Automating Real-Time Zoho Bookings Alerts in Zoho Cliq

      Enable your teams to respond in seconds by bridging the gap between booking confirmation and team notification. No sticky notes, no calendar nudges and no follow-up frenzies. For businesses that rely on scheduled appointments, real-time visibility is
    • Recent Topics

    • Reporting tags associated to Project in Zoho books?

      Hi, I know you can add reporting tags to contact, articles and transactions. Is it possible to add reporting tags to Project. We Zoho reports I would be able to generate reports by tags. Sometimes tags for a contact is different for projects (ie Projects
    • Reporting Tags in Profit and Loss Reports Analysis

      Hello Community and Zoho Books Product Team, I would like to highlight a limitation I encountered with Reporting Tags in Zoho Books. Reporting Tags Not Applying to Automated Inventory Journal Postings from Product Invoices. For inventory product invoices,
    • Email Blast

      Hi, How do we send an email blast to thousands of customers? The email addresses are not yet saved in Zoho Desk.
    • WhatsApp Business Message Pricing Update: Effective October 1, 2026

      Hi everyone, Starting October 1, 2026, Meta is updating how WhatsApp Business messages are charged. This guide explains the new per-message pricing model, how message categories work, and what changes for service messages specifically. How Meta charges
    • Spam Quarantine: Manage suspicious emails in Zoho Mail

      When an email is quarantined by spam processing, it need not always be blocked right away. Some emails may be marked incorrectly, or may need to be reviewed before a final decision is made. The Spam Quarantine feature in the Zoho Mail Admin Console gives
    • What is the difference between "Reply" and "Public Comment" in a ticket?

      Hey, my company is thinking about switching to Zoho Desk but we do not understand the difference between the "Reply" and the "Public Comment" feature. When should we use which? And why? What is the difference between them? Thank you for your help! Kindest
    • Comments Vs. Replies

      I'm curious as to the difference between a "Reply" and a "Comment" on a ticket. It appears that "Replies" are what's used to determine response time SLA's and there are also used to automatically re-open tickets. I'm just trying to understand the key differences so I can educate both our clientele and our back-end users on which function/feature to use to better improve the ticket lifecycle. If anyone has any insight it would be appreciated. Thanks!
    • Widget Height were destroyed

      All widget heights in the Details Canvas view are broken.
    • CRM Address Field - States with Countries in brackets

      Hi, Could you please remove the country in brackets from the Global State List, or at least allow us to edit these entries? It looks like the brackets were added during the initial data population, perhaps by someone building the list in a spreadsheet
    • What's New in Zoho Inventory | July & August 2026

      Hello users, The July and August 2026 releases bring a range of new features and improvements across the product. From the Nigeria Edition and Super Admin enhancements to Sri Lanka IRD-compliant invoicing, Loyalty Program Management, and improvements
    • Forms data export bug

      The export csv with a password has changed for the worst. It is less secure by not allowing complex passwords. Just last week and the last year (at least) I was able to use a complex, secure password. Export CSV moreover doesn't even work if I use a simple
    • Fax and email questions

      Does Zoho offer faxing capability? If so, how to do it? And, why is has my email inbox stopped in 2019? There are no more emails since then. Also if I delete all of those emails, will they delete it from my gmail account (I'm linked to a gmail email address).
    • Create a single record from multiple images with ICR

      Hello all, Zia's Intelligent Character Recognition can now create a single record from multiple images. Users can upload up to three images at once, such as an ID, a passport, and a business card, and Zia will extract the relevant information from all
    • How to present an Analytic on a CRM dashboard and filter it on loginuser id

      How to present an Analytic on a CRM dashboard and filter it on loginuser id? I want to display an Analytics pivot table (as a widget) on a CRM dashboard and have the pivot filtered on the loginuser. I want additional user-filters available, such as date,
    • CNIL - Suivi de Pixel

      Bonjour à tous, À la suite de la nouvelle recommandation de la CNIL sur les pixels de suivi dans les e-mails, savez-vous si Zoho Campaigns permet : de conditionner le suivi des ouvertures au consentement de chaque contact ; de proposer un lien permettant
    • Convert MBOX to PST File Using Free Methods

      MBOX is a mailbox format that is used by various email clients and services, such as Thunderbird, Apple Mail, Eudora, and Google Takeout. Yet, in order to be able to open your MBOX emails in Microsoft Outlook, you have to convert them from MBOX to PST
    • Live connection to DS files in Zoho Creator / ChatGPT

      As an idea, we are using ChatGPT to build with Zoho Creator (outside of Zia), which is works brilliantly to assist write deluge, provide test suggesitons etc. Currently we are uploading the DS files which are very point in time, it would be great to have
    • Setting default From address when replying to request

      At the moment, if I want to reply to a request, the From field has three options, company@zohosupport.com, support@company.zohosupport.com, and support@company.com. The first two are really internal address that should never be seen by the customer and
    • Zoho Payroll: Product Updates - Q3, FY2026

      Over the past quarter, Zoho Payroll has added several updates to make payroll easier to process, configure, and manage. The most notable improvements cover bank integrations, reimbursement support, payslip enhancements, employee exit documentation, payroll
    • Convert OLM to PST on Mac and Windows Using Free Methods

      When your Outlook for Mac data is stored in an OLM file and you want to use it with Outlook for Windows, the simplest approach to transfer your emails and other mailbox information is to convert the OLM file to a PST file. OLM is primarily associated
    • Add Payment Information (like Bank details)

      I am using the Free plan of Zoho Books. I need to add the bank details/ UPI details on the invoice. How can I do that. I have added the details in the Bank Section.
    • Placeholders for Multi-Level Discount

      I am using custom templates for Invoices and all other modules. Since i have activated multi-level discount (an early-access feature from zoho) "discount at line-item and transaction level", I need placeholders for using them in my custom templates. With
    • Running Balance

      Please add automatically Running balance in ledger view. Taking lot of time, every time to add manually
    • Accounting on the Go Series-47: Effortless GSTIN Management- Auto Populate TaxPayer Details in Zoho Books Mobile App

      Hello everyone, Welcome back! Today, we're focusing on a feature specifically designed for our Indian users in the Zoho Books-Indian edition, particularly those who deal with GST compliance regularly. We understand the importance of accurate and efficient
    • URGENT: Stalled DC Migration >72 Hours - Records Locked [Ticket #: 167813877

      The DC migration was started on 1st October at 6 pm and we were informed migration period as 48 hours but even after more than 72 hours, the migration seems still in progress. We sent two emails to check the status but no responses. We need the migration
    • Zoho Webinar - Sharing System Audio (NOT AVAILABLE)

      Hi, We are having a serious problem with Zoho Webinar. In the webinars we run, we very often share the audio from a video we are streaming directly from YouTube or other applications. Until recently we were using Zoom, but as we use other Zoho applications
    • Cash Recipt

      You can not receive cash more than 10000 from one party in a day and two lakh in a year. In statement you can't differentiate cash or bank receipt. zoho does not support this
    • Need to set workflow or journey wait time (time delay) in minutes, not hours

      Minimum wait time for both Campaigns workflows and Marketing Automation journeys is one hour. I need one or the other to be set to several minutes (fraction of the hour). I tried to solve this by entering a fraction but the wait time data type is an integer
    • Concern Regarding Stock Validation in Inventory Management

      Hi Zoho Team, We would like to highlight a concern regarding stock validation in the inventory system. As per standard inventory management practices, if the stock level is zero, the system should not allow users to create a shipment, packing slip, or
    • Change from OST to PST on Windows 10/11 Using Free Method

      There is an advantage in converting OST files to PST format if you need to access your Outlook data on a different computer, want to keep a local copy, or are trying to recover items from an old Outlook profile. The good point is that users of Windows
    • Meet PageHealth by Zoho PageSense: a free way to find out what's holding your page back

      We all know the feeling. You've spent days tweaking headlines, moving buttons, and rewriting copy, and you're still not sure why visitors aren't sticking around. Revamping your website is hard, and figuring out what's actually getting in the way is even
    • Important: Whitelist new proxy outgoing IPs for IN, SA, and UAE data centers

      Hello everyone, We're expanding the pool of proxy outgoing IP addresses for our IN, SA, and UAE data centers by introducing new IPs alongside the existing ones. This helps ensure high availability, optimal load distribution, and redundancy for outgoing
    • Zoho Flow Custom Function Issue

      I have a use case where I will be needing to post data to a wordpress site. Specifically to a custom post type with a bunch of ACF fields. I have setup trigger event correctly for Tookan and can receive data from the webhook. In order to post the data
    • How to Open .mbox file in Gmail with Attachments?

      Gmail offer users to backup INBOX folder in .mbox file format via Google Takeout Feature. Howver there is no such option to Restore Gmail MBOX. Thus I would like to suggest you to choose an alternate approach i.e. MBOX to Gmail Wizard. This utility will open .mbox file in Gmail with attachments.  Steps to open MBOX file in Gmail are; Run MBOX to Gmail Wizard Click Add File and add .mbox file. Enter your Gmail login credentials. Click Convert button. Finished! This is how you can open MBOX file in
    • Custom Validation for On Duty

      Hi Team, We would like to have custom validation support for the On Duty form in the Attendance module. We need to apply some restrictions, such as: Limit the number of On Duty requests per month. Restrict On Duty requests on selected days. Allow employees
    • Integrating FaceBook Ads into MarketingHub

      I would like to track the clicks from a FB Ad campaign into my website via marketinghub.  I cannot currently add a MH form directly to my FB page, as I receive an error telling me I need at least 2000 subscribers on FB to be allows to do that (yikes!) What is the best way to set up MH so I can track which FB are converting well?  I know I can reach the FB reports directly, but these do not track conversions from the MH forms on my website. Best regards, Joe
    • Migration from GoDaddy to Zohomail

      Hi All, I am trying to migrate all the emails from Go Daddy to zohomail account using the migration tool. i tried with imap method, its not working. when i try it with pop method, then only the emails from the go daddy account inbox ( not other folders), is getting transferred, how can i transfer all the folders in the email account from go daddy to zoho. and also the emails which are coming from go daddy are like new unread emails ( is there any where i can differentiate from read and unread emails)
    • How do I migrate from Office 365 to Zoho Mail?

      Check out Advik Email Migration Wizard, this software is specially developed to move mailboxes from Office 365 to Zoho Webmail. In addition you can migrate from Gmail, Yahoo, Rediffmail and 80+ webmail servers to ZOHO MAIL. Isn't it amazing? This is an all in one email migration solution. Steps to export emails from Office 365 to Zoho Webmail are as follows; Run Advik Email Migration Tool in your system. Select Office 365 as source and enter its login credentials. Select mailbox folders and choose
    • How to Backup Zoho to PST?

      I'm looking for a simple way to backup Zoho Mail emails to PST format. I tried the IMAP method with Outlook, but it seems slow and complicated for large mailboxes. I need a solution that can: Export Zoho emails to PST Preserve attachments and folder hierarchy
    • Shopify connector – product cost ("Cost per item") not synced, so COGS/gross margin can't be calculated

      Hi Zoho Analytics team, I use the native Shopify connector in Zoho Analytics (cloud) to build reporting dashboards for Shopify stores. As far as I can tell, the connector does not sync product cost, so there's no way to calculate Cost of Goods Sold (COGS),
    • Next Page