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

    • Merge invoices

      This has come up three times in a month of me using the system. a client whom i do work for on a regular bases asked me to invoice separate jobs on a single invoice. I would then go and cancel the old invoices and make a new one. It would be great if i could just select the invoices and click merge to create a single invoice.
    • Pipeline stages for product-led growth (PLG) subscription services

      (Estagios de pipeline com foco em serviço digital por assinatura (PLG)) Dear colleagues, I am writing to request assistance with a significant challenge I am currently facing. I manage a digital service that operates on a subscription-based model. I am
    • Multiselect lookup in subform

      It would be SO SO useful if subforms could support a multiselect look up field! Is this in the works??
    • Zoho CRM for Email ( Microsoft add on app) Feb 25, 2025

      We are currently experiencing issues with Zoho CRM for Outlook despite updating the Microsoft add on app and Zoho software to the latest versions. When working in Outlook on our Macs and PC's and 365 on the web, when we try to link an email in Outlook
    • Sheet View for Reports

      We often need to filter our contacts in a way that is too complex for Custom Filters (which now allows filtering by Related Modules - amazing! - but doesn't allow for an *OR* relationship between the multiple filters) or Custom View (which does not yet
    • Feature enhancement: Highlight rows based on a cell value

      Hello Sheet users, We're excited to announce a new feature enhacement, shaped directly by your valuable feedback! As you might know, conditional formatting is a great tool for anyone dealing with large data sets. Previously, if you’ve ever wanted to draw
    • Urgent: Unable to Receive OTP Email for Portal User Registration in Zoho Creator

      I paid to enable the Portal User feature on 2/25, and followed the official instructions (Youtube video: Customer Portals | Zoho Creator) to set up the Portal User using my Gmail account. However, I am not receiving the OTP email and am unable to successfully
    • Zoho not receiving verification email.

      I developed a website registration page and need to send verification email. I am using sendinblue for sending out the verification emails. Somehow, the mail is not being received by the Zoho users. Gmail, outlook, yahoo domains works fine but when I try to send the mail to my Zoho account I am not able to receive the mail. Can you please let me know what might be the issue?
    • Restore deleted spreadsheet

      Hi all, I can not find my spreadsheet. It seems that my spreadsheet is deleted. Please, restore the spreadsheet. Thanks in advance
    • Lookup fields can't be used for anything important

      Hi It seems the lookup fields are mostly.... informative, you can at most link stuff between modules... You can't use lookup fields in blueprints, you can't use them in layout rules or anything... It that correct?
    • Function to check frequency of customer ordering patterns

      Hi, I'm no coder, so I thought I could make use of Chat GPT to generate some Deluge script to create a function that would check order frequency of our customers so that I could send an email if they go beyond their usual order pattern. Chat GPT and Claude
    • Better Control over Team Ordering and Display

      Two feature requests for Zoho Desk team drop downs: The ability to change the order of teams, currently it's not in alphabetical order, which is confusing. I'm thinking a manual ordering via number or drag and drop, alphabetical order, and creation order
    • Clear specific tag or tags from all leads

      I'm looking for a way to clear a specific tag from all Leads. I have a function when a tag is added to a lead they are added to a campaign and their status is set to "invited". I need to find a method to remove the tag. If I try to delete the tag to clear
    • Cisco Webex Calling Intergration

      Hi Guys, Our organisation is looking at a move from Salesforce to Zoho. We have found there is no support for Cisco Webex Calling however? Is there a way to enable this or are there any apps which can provide this? Thanks!
    • Has Anyone Else Built a State Machine into a Function?

      I'm in the process of building a state machine for lead lifecycle management within Zoho CRM, and I'm curious if anyone else has tried integrating a state machine into their Deluge functions, especially considering Zoho’s 12-function cap. I’ve managed
    • Is there a way for a custom function to trigger a custom made email alert?

      Hi Zoho Team, We have currently maxed out our 30 workflows in one of our department and we are trying to find ways to make it more efficient. We usually use our workflows to send automated email notifications per team leader for approval of tickets. Is
    • Unified WhatsApp Number Management in Zoho Desk and SalesIQ

      Dear Zoho Desk Support Team, We are currently utilizing both Zoho Desk and Zoho SalesIQ for our customer support operations. While both platforms offer WhatsApp integration, we are facing challenges due to the requirement of separate WhatsApp numbers
    • Multi User Lookup field on the Zoho CRM iOS app.

      Hello all!   Hope you are all safe and sound.   We have now brought in support for the Multi User Lookup field on the Zoho CRM mobile app. Below are the enhancements that are supported in this update:   * Multi User Lookup field can be added through the
    • Help with Deluge Script in Zoho SalesIQ (Input Variables Always Null)

      Hi everyone, I’m working on a Deluge script for Zoho SalesIQ, specifically for a block in Zobot. The script is supposed to: Check the visitor’s name when they start a chat. If the name is empty, return false; if a name is present, return true. However,
    • Item/service subtotal

      Just discovered & really pleased that we can drag to re-order the line items in Sales orders & Invoices, a very nice feature which doesn't seem to be documented? It would be nice to be able to insert a subtotal as a line item to complete this great feature
    • Hide/Show Certain Fields When Creating/Editing Invoices, Estimates, Etc.

      Hello there, I would like the ability to hide or show certain fields for different employees/roles in my company when they are creating or editing invoices, estimates, etc.. Most of the time, we don't use half of the fields shown on the create/edit invoice
    • Is there a way to make an account inactive in ZoHo Desk

      We have a few Clients "Accounts" that we no longer do business with. It would be beneficial for them to not show up in lists. However, we want to go back and view tickets, time, etc.
    • Any way to Associate a Recurring Invoice with Deal/Potential in Zoho CRM

      When we create an Invoice in Zoho Books, we have the option to associate that invoice with a Potential/Deal that is tied to that same customer. Can we do the same thing with Recurring Invoices? When creating a Recurring Invoice, I want to be able to Associate
    • SSO/SAML

      Question - how are you guys handling SSO for Desk?  It seems the only options lead back to ADFS which is a dying technology, stupidly complicated to set up and configure (I mean, you can put that on your resume) and seems like overkill for SSO when AAD does it so much better and effortlessly.  We want to have our clients have SSO to log into our support portal and we want our Agents to have SSO as well. I shouldn't have to expose our server, turn on ADFS, configure it, install multiple clients (Sync
    • Are downloadable product available in Zoho Commerce

      Hi all. We're considering switching to Zoho Commerce for our shop, but we sell software and remote services. Is there a features for downloadable products? I can't find any information about this. Thank you very much Alice
    • Ask the Experts 17: Elevate Customer Communication With Multichannel & Instant Messaging

      Hello Everyone, Get ready for the opportunity to interact with Zoho Desk specialists! This month, we’re diving into Multichannel Operations, helping you manage customer interactions across various platforms seamlessly. Why Join? Customers reach out through
    • ZOHO DESK

      I use Outlook Exchange to receive emails and want to forward them to Zoho Desk for better management. Additionally, I want to reply to emails in Zoho Desk and have them sent to customers via Outlook Exchange, but I don’t know how to configure it.
    • Automating Custom Web Link Messages to Customers via Instant Messaging in Zoho Desk

      Hello, I am looking for assistance with Zoho Desk's Instant Messaging feature. Is there a way to automate the sending of a custom web link to customers every day at 6:30 PM? Any guidance or suggestions on how to achieve this would be greatly appreciated.
    • Exciting Update: Multi WhatsApp Business Account (WABA) Support Now Available in SalesIQ!

      We’re pleased to share an important update that will enhance the way you manage your WhatsApp Business accounts (WABAs) within SalesIQ. With the launch of Multi WABA support, you can now connect and manage multiple brands more effectively, each under
    • An error occurred while uploading the attachment.

      From the image below, attaching files is not possible via the website but is supported through the Mobile App.
    • One time offer in Zoho Campaigns

      Hello! I have an idea to improve my sales. I would like to make a "one time offer" in Zoho Campaigns with a clock that will count down the bid validity period.  Is it possible? Regards.
    • How to Initiate WhatsApp Message on SalesIQ?

      I've just activated a Business WhatsApp phone number through SalesIQ because of its touted omnichannel chat approach. Sounds exciting. I understand that when a customer sends me a WA message, I can reply to it on SalesIQ and keep the chat going, perfect.
    • Multiple self client instances

      there a couple of details that deserve clarification / improvement in Zoho's OAuth 2: 1. for building true server apps - cloud to cloud REST - one has to choose Self Client when creating a new instance in API Console; Server-based Appplications is slightly
    • Workdrive Oauth2 Token Isn't Refreshing

      I have set up oauth for a bunch of zoho apis and have never had a problem with oauth. With workdrive i am using the exact same template i usually use for the other zoho apps and it is not working. All requests will work for the first hour then stops so
    • Zoho Desk - Delete an email conversation

      When using Zoho support desk I see an option to delete and edit conversations that are comments, BUT if the conversation was automatically added as a conversation from an email, then the option to delete it seems not to be available. Is there a way to
    • Organizational Emails Send through Email Relay Server

      Hello, It would be great if the the Organizational Emails could send through the Email Relay Server as well. I often need to send email as someone else and since we use the GMail API option I have to use the organizational emails to do this.  We use Postmark for our Email Relay Server to increase deliver-ability which is something that we have had issues with when sending everything through Zohos servers. Also with postmark there is no need for each organizational email to have its own credentials
    • Emoji support in workdrive

      Hello, We are using emojis in our filenames and folder to help visually find relevant data. Currently Workdrive is stripping out emojis and the rest of the filename (along with the suffix), making the file unreadable when they are synchronized with desktop.
    • What is a 'user' in Zoho Surveys, and can I have multiple Offline Kiosks running?

      Is a 'user' the amount of people that can make and edit surveys on the website? I basically just want to know if I am able to have multiple Offline Kiosks running on multiple devices at the same time. Either on the Basic or Plus plan which both have 1
    • Fundation / Non profit : Could you help ?

      Hi, We're about to handle a Medical research fundation, non profitable structure, what kind of prices could we hope from you ? Could you help us ? We would need Survey, automated campaign and ZIA Thanks in advance
    • Can´t copy fields

      Hi Im trying to copy the information from a registry in a module to a new one in another module, the following code works, the thing is, it does'nt copy the rest of information in the new registry, i'm learning Deluge in an autonomy way so, i don't now
    • Next Page