Automating appointment status and customer feedback collection

Automating appointment status and customer feedback collection

Hello community members,

In the spirit of elevating your scheduling game for 2024, we're bringing you a couple of useful workarounds that can enhance your overall Bookings experience.

We have divided the community post into two halves. In the first half, we will show how to automate the appointment status to Completed. This action ensures that emails are automatically triggered after the appointment is completed. In the second half, we will explore how to add and prefill the feedback form in your customer emails. This will allow you to efficiently gather feedback from customers.

In an effort to streamline the entire process, we're merging both topics into a single post. This aims to automate updating the appointment status to completed, triggering the completion email to customers, and seamlessly integrating our Zoho Survey form for actively collecting valuable feedback.

Automating the appointment status

Currently, updating an appointment's status to Completed is a manual process in Zoho Bookings. However, with our new workaround, you can now streamline this task through automation. We've included steps below that will make it so that once an appointment has ended, its status will automatically switch to Completed.  

Note that if you mark an appointment as No show, your selection will not be overwritten by this new workaround. 

If you're still concerned about this, consider editing the content of the appointment completion trigger email, providing generic content suitable for both attendees and non-attendees. This guarantees that even if all appointments are marked as completed, a generic email with relevant information will be sent to all customers.

Prerequisites for automating the appointment status 

1. Zoho Bookings basic or premium subscription.
2. Zoho Flow paid subscription

How to automate 

A. First, we'll create a new flow in Zoho Flow:

1. Sign in to Zoho Flow.

2. Select the Create flow option.



3. Select App and search for Zoho Bookings in the search bar.



4. Select the Appointment booked trigger.



5. Select the Connection and Variable Name.



6. Click Done. 

You have now created a new flow for Zoho Bookings.

Other helpful links for this process:
B. Next, let's configure the logic: 

1. Navigate to the Logic tab in Zoho Flow.

2. Click the Flow Control dropdown and select Delay.

3. Drag and drop the Delay function to the bottom of the Appointment booked trigger.



4. Click on the edit icon next to the Delay function.



5. In the Delay For the column, select the appointment end time variable from the available Zoho Bookings variables.



Completing this steps helps us ensure that this workflow executes exclusively at the end of each appointment.

C. We can now allocate additional time for any necessary actions:

For example, let's consider extending the remaining actions by an extra 5 minutes. This extension grants you additional time to update the appointment status. 

1. From the Logic tab, drag and drop another Delay action to the bottom of the first Delay action.



2. Click on the edit icon next to the Delay function.



3. In the Delay For column, set the desired extra time based on your preference. If going by our proposed example, we'd configure an additional 5 minutes.


For more details: Delay

Note: If you decide not to include extra time and prefer to execute the flow precisely at the end of the appointment duration, you do not need to complete this section of steps.

D. Finally, let's configure a custom function

Through this step, we'll ensure our ended appointment's status updates to Completed (as long as no other status has been selected).

1. From the Logic tab, click the Custom Functions dropdown.



For more details: Custom Functions

2. Click +Custom Function.



3. Add a relevant name for the function under Function Name, and set the Return Type as void - Returns nothing from the dropdown.

4. Under Input parameters, type bookingID and select string from the dropdown as shown in the screenshot below.



5. Click Create to open the Deluge script page, where we will enter our code for execution.

Please configure the below code in the Deluge script page.  

Code Link



If you're interested, here is a brief explanation of the code:

Line 1: To pass the input data below to the code.
  • Booking ID: Identifies the specific booking for fetching details and checking the status.
Line 3: Set up the API endpoint URL based on the Zoho Bookings account's data center.
Line 3–12: We utilize the Get Appointment API' to retrieve the appointment details. For more details: Get Appointment API

Line 13: Here, we're fetching the status of the respective appointment from the response of the Get Appointment API.

Line 15: Implement an 'if' condition to execute the code only if the appointment status is not No show.

Line 16–27: In this step, we utilize the 'Update Appointment API to mark the appointment status as Completed' when the condition specified in line 15 of the code is met.

This is how the final flow will look:



Note: The described flow is tailored for newly scheduled appointments. For cases where appointments are initially scheduled and later rescheduled, a separate flow must be created. The flow for rescheduled appointments follows the same steps outlined above, with the only modification being the initial trigger. Instead of the 'Appointment booked' trigger, please substitute it with the 'Appointment rescheduled' trigger in step A (steps B, C, and D remain the same).



Collecting feedback with surveys

Ensuring a seamless and positive customer experience is a top priority for every appointment. An integral part of this process involves gathering feedback from customers after the appointment's completion. This valuable feedback not only helps understand their sentiments but also provides insights for continuous improvement. 

Let's explore how to leverage Zoho Survey to collect valuable feedback from customers. Additionally, we'll delve into the process of pre populating survey fields with the customer's name extracted from the appointment.

How to create a survey in Zoho survey:

You have the option to create a new survey from scratch or choose from templates or existing surveys.

For more details, refer to: Create a Survey.

As an example, let's use the Customer Feedback Survey from the templates.




To enhance your survey experience, you have the flexibility to edit the survey form and select specific fields for inclusion.

Now, let's take a closer look at streamlining the customer experience by auto-populating the field inputs in Zoho survey with customer details. This additional step eliminates the need for customers to add their information manually, contributing to an enhanced overall experience.

1. Click on the Actions button (three dots) next to the Last Name field, and choose Edit.




2. Click on Advanced options and check the box next to Prepopulate answer.



3. Select First Name, Last Name, and Email Address under Question label and URL parameter in each corresponding Value from field.



4. In the Value field, configure the parameter name (e.g., firstname, lastname, email). Once configured, this parameter name will be used in the survey link to prefill the fields in the survey form. Customize it as per your requirements, ensuring consistency with the term used in the survey URL.



To publish the survey, go to the Launch tab and click on the Publish button to obtain the Zoho Survey URL.




Pre-populating fields in the Zoho Survey form

Once we have the Zoho Survey URL, we'll need to match the configured parameter name and variables from the Zoho Bookings email notifications. These variables play a crucial role in dynamically fetching customer information and populating it in the Zoho Survey form.

For details about variables in Zoho Bookings email notifications, refer to this link: Pre-defined variables

We'll now edit the survey URL to align the variables with the configured Value, or parameter name, from our prepopulated answer settings.

Let's say this is our survey URL: 

https://survey.zohopublic.com/zs/E****h

We'll want to use a question mark ("?") at the end of the survey URL and an ampersand ("&") to separate different parameter names.

Here's what that would look like using our example Value names from earlier:


Now, let's map the parameter names to the Zoho Bookings variables.

It would look like this:


For more details: Autofill 

Where to use the Zoho Survey URL

To enable the automatic sending of the Zoho Survey URL to customers upon updating the appointment status to Completed, follow these steps in the Zoho Bookings application:

For one-on-one services:

1. Click on Service in the top left corner.
2. Select the desired one-on-one service.
4. Navigate to the For Customers tab.
5. Click Customize next to the Mark As Completed' trigger to access the email content.



6. Enter your desired name for the button. For example, you might use something like 'Please fill out the survey'. 

7. Select the entered text and click on the Add Link icon. Paste the configured Zoho Survey URL in the URL box. This will convert your text into a hyperlink that leads to the survey.



For group and resource booking services, please follow the same steps under Workspaces > Notifications.

For more details: Workspace Notifications

With the completion of this step, we have incorporated the Zoho Survey URL with dynamic variables, facilitating the dynamic autofill of customer data.

To wrap it up

With the successful implementation of the configuration described above, the entire process of automating status updates and collecting feedback is now seamlessly integrated, promising an elevated and enhanced product experience for all users.

If you have any questions or need assistance with your configuration, please email us at hello@zohobookings.com or support@zohobookings.com.



    • Sticky Posts

    • Approve or deny appointments based on criteria

      Hey, community members! Have you ever wondered how to automatically approve or deny appointments? While we're still working on building that feature, we've got an alternative method to cancel appointments if they don't meet your specific criteria. Let
    • Recent Topics

    • Zoho Workplace gets yet another security boost: The addition of Zoho Vault

      Hello Community, Passwords are often the first line of defense, yet they're also one of the most common weak points. We're thrilled to announce that Zoho Vault is now integrated with Zoho Workplace! Zoho Vault Standard is now included at no extra cost
    • Announcing new features in Trident for Windows (v.1.20.4.0)

      Hello Community, Trident for Windows is here with some new features to elevate your work experience. Let's take a quick look at what's new. Export emails. You can now export emails in the .eml file format as compressed zipped files to create a secure
    • Best Carding Forum 2025 | Trusted Hacking Forum | Verified Carder Forum | Carder Forums 2025

      Best Carding Forum 2024 | Trusted Hacking Forum | Verified Carder Forum Welcome to Legitcarding.net , the #1 Trusted Carder Forum of 2024! Whether you're a seasoned carder or just starting out, our platform offers everything you need to succeed in the
    • Automatic Email Alerts for Errors in Zoho Creator Logs

      Hello, We would like to request a feature enhancement in Zoho Creator regarding error notifications. Currently, Zoho Creator allows users to view logs and errors for each application by navigating to Zoho Creator > Operations > Logs. However, there is
    • Quickbooks Online Customer Creation Code

      Hi! I'm looking for code that will automatically create a quickbooks customer account when clicking on a button located directly within Zoho CRM - Contacts Module. Here's what I have and I can't seem to figure it out. xxxxx is our company id which we
    • Customers would like to add tips when paying in Client Portal

      I am happy with the clean interface of the Client Portal. However, I am running into a challenge: my customers would like to be able to add tips/gratuities when making payments. Currently, this is very clunky because they have to 1) manually over-pay,
    • Multi-currency in Zoho CRM Forecast and Reports

      As a company we have branches in 4 different countries with as many different currencies. Our Sales Teams would like to work with their local currency as much as possible. The Forecast module using only 1 currency is practically usable only by the sales
    • Change to copy/paste functionality in Deluge code editor

      Recently there was a change to the Deluge code etidor where it now inserts backslashes into strings automatically when copying/pasting strings with double quotes, it's a nightmare to have to go delete all these. Is it possible to toggle this on or off?
    • CRM portal users can now log in using their mobile phone numbers

      Hello everyone! You can now invite portal users using their mobile phone numbers. These portal users will be able to log in using their mobile number and OTP. Templates for these portal-related SMS can be customized as per your needs. This enhancement
    • Clear a date field?

      I've got a date field, let's call it Returned_date.  I'd like to write a script that clears the values from another date field called Expected_date upon a successful entry.  I know where to put the expression, but I'm having trouble building the expression.  Any assistance from anyone for a newb question would be appreciated.  Thanks in advance!
    • Integrating ChatGPT with Zoho Creator for Automated Report Generation: Is It Possible?

      Hi everyone, I’m currently working on an application in Zoho Creator and would like to know if it’s possible to integrate ChatGPT to automate the generation of reports based on the data captured within the application. Has anyone successfully implemented
    • There anyway to change a creator app Back to DEV thats not got a back up?

      As above, is it possible? Thanks.
    • Feature Request: Search in the PC client. Some thoughts about the search.

      Hi all. I'm really excited to start using Zoho Notebook, but I'm missing some of the search capabilities on my desktop. There are also some thoughts on improving search in general. Search is very important to me, without it it is difficult for me to use
    • Issue Saving Workflow Rule – "Unable to Process Your Request" Error

      Dear Zoho Recruit Support Team, I am experiencing an issue while trying to integrate a new rule into a workflow. Specifically, I am setting up a Follow-Up workflow for applicants, where a user is assigned based on specific requirements. However, when
    • Transaction Rules & Customer Payments

      So I have a situation as follows. We have many clients who are all invoiced on the 1st of each month on a recurring invoice for 1 of 10 plans. This means that almost all payment dates are the same (some people pay late) and that a lot of the amounts are
    • Scheduled function not firing workdrive.uploadFile task

      I have a creator app that takes submissions from a published form. I setup a daily scheduled function to send a record template of the form, as well as 3 different uploaded files to workdrive folders. (Initially I intended for this to happen on the submission
    • Cross-Posting to a Telegram Channel

      We don't have a native way to cross-post to Telegram channels. Did anyone find a way around it? I checked Zoho Flow - but Telegram isn't there. Maybe some 3rd party integrations connecting Facebook, IG, etc., bypassing SalesIQ altogether?
    • How to connect the Squarespace website with Zoho Thrive

      Our website is created using Squarespace. To boost our sales, I planned to do the affiliate program and I thought to integrate our website store with Thrive. but I don't see the Squarespace platform. if I choose the custom build, I have to generate the
    • Error when trying to categorize bank transactions

      I am trying to categorize my bank transactions. It was going fine, I categorized 50 or so transaction and suddenly I started getting an error that reads: "Transactions cannot be matched as the account you are trying to match it to, is different.". I select
    • Calendar item appears twice for Group Calendar Owner when a group member accepts the invitation

      How to change this behavior? Please see screen recording here: https://workdrive.zohoexternal.com/external/eace5023938b52118ab0246dc28f208de6a091f0f77c023b0beb3862d572c694
    • ZOHO Reports - Filter Logic?

      Hi, I need a way to apply filter logics such as ((1 AND 2) OR 3). All I can see as of now is a way to enter different AND filters in the respective filter column. But how can I add an OR filter? Any advice would be highly appreciated. Mark
    • Possibility of Recording CookieConsent in a Hidden Field in Zoho Forms

      Dear Zoho Forms Team, We are using Zoho Forms on our website and have encountered a technical question related to GDPR compliance. Currently, we have Google Tag Manager installed, along with a script that tracks UTM parameters and GCLID. To comply with
    • Snapshot of totals

      Hi, I'm more familiar with Creator so it's taking me a while to wrap my headaround the CRM. I've been asked to produce a metric that takes a snapshot total of ceratin fields everyday when they meet certain conditions : Total Average Value for example.
    • Bulk change color of selected notes

      When I select several notes, I want to change their color, but there is no such function. I miss it.
    • Notebook does not remember the window size and position

      Hello am using MS store version 3.3.0 It's not a big issue just a bit of annoying. App starts all the time on max size, after resizing, closing and reopening back to same state as the beginning. any way to fix it please?
    • Customize the Date Format based on preference

      Hello Everyone, We have rolled-out a new field called Date Pattern in the user layout under Locale information. Note: If you notice any change in the date format after this roll-out, please select your preferred format from the settings. Previously, the format of the date was automatically set on the basis of the country locale selected by the user. Now, the user will be able to edit the format in which the date is displayed according to their preference.  The Date pattern field has around 40 patterns
    • Simple Deluge Script

      Hi. I'm brand new to functions but I'm trying to create a script to convert a date field in Meetings to a written format. For example, instead of 02/05/2025 8:00AM, I'd like to convert it to Wednesday, February 5, 8:00 AM. My Date field is the API Name
    • Supercharge your operator productivity by leveraging the power of OpenAI in Zoho SalesIQ

      Heads-up: The OpenAI integration is currently available only for users in (US, IN EU, AU and JP region). We will be rolling it out to other regions soon. From complex neuroscience to simple note-taking, AI has seeped through every part of human lives,
    • Digest Janvier - Un résumé de ce qui s'est passé le mois dernier sur Community

      Bonjour chers utilisateurs, Le premier mois de l'année s'est écoulé à toute allure ! Découvrons ensemble comment s'est passé janvier pour Zoho Community France. Dans un monde où l’information a une valeur inestimable, la protection des données sensibles
    • Export Options

      Hi, In calendar, List view, there is an option to show or hide fields, and we export this view daily, and use it to create a Gantt type chart for the days bookings. It would be SUPER helpful (and time saving) to be able to export the Notes and or Custom
    • Zohocliq status change automatic

      Greetings Zoho, So, i've sync my G-mail calender with zohomail, now every event i get from gmail goes thru zohocliq (WHICH is what i wanted) but the thing is that when the event is there  let's say from 11:30 til 12:30PM my current status doesn't change.
    • Solution for setting up header and footer in a template

      Hi all, Emon need for business, I have long searched the forum and also how to put in my quote and my bills a header and a footer. And finally, I have an other working stream elements allowing me to meet my needs ... Given the number of people seeking the same thing as me, I say it might be good to share my discovery. It's simple and easy to implement First, start by adding the beginning of your HTML the following: <style> html {margin: 0;}  body {margin: 0;}  div # printhead { display: block;  position:
    • Workflow rule to assign new case owner sends email to customer from Original owner issue

      I have a workflow rule to assign a manually created case from a sales rep. to a customer service repr to handle. I also have a workflow rule to send an introduction email from the case owner to the customer. The Problem: The email is going out on behalf
    • Kaizen #176 - Optimizing the Use of Record ID Variables in Zoho CRM Queries

      Hello everyone! Welcome to another week of Kaizen! Since the release of Queries, we have covered Handling Query Variables in Zoho CRM, Serialization and Schema Management, and Leveraging the 'crmAPIResponse' object in Queries in previous posts. Today,
    • Validation Rule Not Working for Mandatory Field in Zoho Blueprint

      As a Zoho user, we created a validation rule for a specific field. However, we noticed that when we made the same field mandatory within a Blueprint, the validation rule we defined did not work. When we reported this issue to Zoho Support, they stated
    • Zoho Forms - Shared Forms

      I chose SHARED FORMS and noticed "Enter atleast" needs a space to be correct.
    • Zoho Marketing/SEO Tools

      Longtime Zoho user here and just curious about other users thoughts. We use Zoho apps to run basically our entire business. The only software tools we use outside of Zoho are SEO tools, such as Ahrefs or Ubersuggest. Has anyone else ever wished Zoho offered
    • Is there a way to automatically move a task from a different tasklist to another tasklist when certain criterias are met?

      Hi there, Im new to zoho projects and i was wondering if there was a way to automatically move a task from a tasklist to another tasklist based on criteria such as when the task status is updated to completed and have it move to the tasklist that is named
    • Bigin iOS and macOS app update: Signals

      Hello everyone! In the latest iOS(v1.10.7) and macOS(v1.7.9) versions of the Bigin app, we have brought in support for the Signals section within the Notifications module. Signals notify you about contact touchpoints, such as when a contact opens your
    • Case and Left Join Problem

      I am attempting to find the cost per lead, however they are on different tables. I am using the Case and Left Join Functions to do so. The following Queries are working correctly. These are below: SELECT "Campaign", COUNT("Id") AS 'total_leads' FROM "Deals"
    • Next Page