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.
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.
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.
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:
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.
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.
Recent Topics
Easy way to delete attachments
I've reached my data limit and would like to run a view/report, and mass delete attachments. Is there an easy, fast way to do this? Moderation Update: Post Summary: There are two features the post discusses a) Easy way to remove Email attachments Will
Confirmation prompt before a custom button action is triggered
Have you ever created a custom button and just hoped that you/your users are prompted first to confirm the action? Well, Zoho knows this concept. For example, in blueprint, whenever we want to advance to the next state by clicking the transition, it is
Explication sur comment mettre en place des règles d'affichage ou "layout Rules"
J'ai passé plus d'une heure hier avec le support et je n'ai rien compris !! Je suis lecteur assidu des guides (je "RTFM") qui ne sont absolument pas orienté "client" chez Zoho, et je tiens à le rappeler ici . Dans la documentation on m'indique un cas
Unique and Random IDs in Zoho Forms: Organize and Secure Your Data Efficiently
When it comes to form submissions, organizing and identifying entries effectively is crucial. Zoho Forms offers two versatile ID generation options for submissions: Unique ID and Random ID. Each serves distinct purposes, providing flexibility to meet
Sort By Date - Deluge
I have the following code, which normally works to sort calls by created time. Every once in a while, it doesn't work and something sneaks through in the wrong order and I can't figure out why. calls = zoho.crm.searchRecords("Calls","(Owner:equals:" +
Webhook when estimate is refused is not firing
Hello, I use a workflow through make that sends estimate with zoho books (I paid books and sign). -Those estimates when accepted are firing the webhook that I create in zoho sign (photo 1) -However when refused they are not firing the webhook that I created
Iteration through a list - Coming up against a "Failure to update function" error
Hi there! I've been attempting to get a deluge script working and am running into an error that I have been unable to resolve. The error I am getting is Failed to update function Error at line :18. Improper Statement. Error might be due to missing ';'
Error 403: Forbidden When Updating Email Signature via API
Hi Zoho Desk team, First, congratulations again on the excellent Zoho API. But, I’m encountering an issue while attempting to update an email signature via the API. Whenever I make a request to update the signature, the response returns an HTTP 403 Forbidden
Can you modify "Last Activity Time" in deluge? If so what's the field name?
I need to perform some bulk modifications on records in the Leads module, but I need to avoid changing the "last activity time" or "date modified" because I am using those fields to filter and sort leads for follow-up action. I cannot find an answer anywhere
Directly Edit, Filter, and Sort Subforms on the Details Page
Hello everyone, As you know, subforms allow you to associate multiple line items with a single record, greatly enhancing your data organization. For example, a sales order subform neatly lists all products, their quantities, amounts, and other relevant
How do I define a weekend
I noticed the default for weekends does not seem to include Saturdays. How can i define weekends to include both Saturdays and Sundays? Thank you.
【Zoho CRM】ポータル機能のアップデート
ユーザーの皆さま、こんにちは。コミュニティチームの藤澤です。 今回は「Zoho CRM アップデート情報」の中からポータル機能のアップデートをご紹介します。 今回の機能アップデートにより、CRMのポータルへのログインがより簡単にできるようになりました。 【目次】 SAMLベースのシングルサインオンについて ポータルへのアクセスリンク送付について 今回のアップデートにより、アイデンティティプロバイダー(IdP)を利用している組織において、SAMLベースのSSO(シングルサインオン)を有効化できるようになりました!
Getting error during inserting a record in form of zoho people using zoho api
import requests import json # Set your access token and Zoho People API base URL access_token = '1000.XXXXXXXXXXXXXXX.XXXXXXXXXXXXXXXXXXXXX' api_base_url = 'https://people.zoho.in/people/api/' # Set the form name and data to be inserted form_link_name
UI Arabic
can i change the member portal UI to arabic in zoho community?
How do i remove the Powered by Zoho logo from my careers page
Can I remove this?
Recurring Events Not Appearing in "My Events" and therefore not syncing with Google Apps
We use the Google Sync functionality for our events, and it appears to have been working fine except: I've created a set of recurring events that I noticed were missing from my Google Apps calendar. Upon further research, it appears this is occurring
Canvas View in Zoho Recruit
Is it possible or would it be possible to have the new 'Canvas View' in Zoho Recruit?
Resume template to include profile photo
Hi, We would love the Resume Template to be able to include their profile photo. How can this be done? Miriam
Marking a form as 'done'?
Hi! I've got a form that staff fill in when moving stock from location to location. I see the entries they've sent across and I input them into my stock control system. Is there a way to mark a form as 'done'? So that I know which entries I've input,
Possible to backdate Stage shifts in Deals module?
I want to enter my organisation's historical dealflow data into the CRM and it's important that the Stage history is showing the correct dates in the past of when it happened. Is there a way for me to modify the "Modified Time" in the Stage History Related
Zoho CRM - best way to search an account and assign to a deal
Hi Everyone I am looking for some advice. I want to find the best way to complete the below steps. We have a deal and once it reaches a certain stage we need to allocate a supplier / vendor to this deal along with the salesperson. I want to add (ideally
Emailing lookup field but placing this as an ID or number rather than text
Hi there, First time poster and have been a user of Zoho Creator for approx 6weeks so forgive my ignorance as I learn to code. We have a need to send an email to a specific email address with some of the fields triggered by the submission of a form. In
Dialing Microsoft Teams Phone Service via Zoho CRM
I am using the VOIP option in Microsoft teams for my office phone system. I was hoping to have a way to dial numbers directly from Zoho CRM, but don't see anything in the Teams Integration or in the Telephony integration that will enable this. Does anyone
Schedule Zoho CRM reports only on Business Days
Hello, Is it possible to schedule reports only on business days ? We currently get daily sales reports on weekend which has no value since the sales team doesn't work on weekends. Thanks
How to easy change layout in existing records in Deals?
Hello, So far i have used only 1 layout in Deals. I have about 1000 records. Now i want to make new layout. So i have 2 layouts: Layout Old (1000 records) Layout New (0 records) How to easy change layout from Layout Old into Layout New for existing records?
Zoho Rating
When I close a ticket, the zoho system automatically sends an email to the customer for them to leave a rating. When they leave a rating, the ticket re-opens and I have to close it again. When I close it again, the zoho system sends the customer an email
Merge tickets
Hello, I am attempting to merge two tickets; however, the option to merge does not appear to be available. Could you kindly confirm if this feature has been relocated or removed? Additionally, could you please provide guidance on the correct process to
Zoho GC Flow is not showing in IM Channels
I have added my social IM channels in zoho desk. Created a GC Flow to automate conversations. But Guided conversations are not showing in any platforms I have chosen; WhatsApp Instagram Messenger Web (Business Messaging) In the flow I mentioned these
Sharing Knowledge Base articles across multiple departments
It would be useful to share some Knowledge Base articles across multiple departments where they are applicable, rather than having to go into other departments to find the article you're looking for. For example. Our reception uses the 'Admin' desk whereas our IT guys use the 'Support' desk, however both divisions would find KB articles about our company intranet useful. Reception does not have access to the support desk, so cannot see articles created in the Support KB. Perhaps you could install
Contacts marked as Spam are shown as Contacts in tickets.
Hi Zoho, If a ticket is marked manually as Spam you get an option to set the contact as Spam as well. It would be great if there was another option to delete this Contact. This would be based on the understanding that it wouldn't be marked automatically
Is possible to use ${webhookTrigger.payload.street==null?"No street":${webhookTrigger.payload.street}} for to detect inline a null parameter
Hi Team I need to know if it's possible to evaluate inline the following parameter, with the objetive to detect a null value ? I would like to use ${webhookTrigger.payload.street==null?"No street":${webhookTrigger.payload.street}} Regards, Pablo
Real Estate CRM
How can I tailor my CRM for real estate? I had seen an image where the CRM included property tabs.
Totals on Pivot Table
Is there a way to change the way the subtotal calculates? In this example I have a formula to give me the average monthly attendance ....but I want the grand total of the month to be the sum of all the average attendances...any ideas? Thank you!@
API (v2) Search Criteria using CONCAT
With API I can search for a contact using First_Name and Last_Name. However, when I need to search the Contact Module using a full name — and because CRM does not provide an API for full name — I am not finding a way to do this in the traditional way
Issue with Bulk Edit Triggering Function Multiple Times in Zoho Report
In our Zoho report, we have observed an issue where executing a function during a bulk edit operation runs the function multiple times—once for each selected report entry. This behavior is causing errors due to overlapping or redundant executions. Our
Is there a Kanban view of Tasks across all Projects?
As the title indicates, I could use a Kanban view of my Tasks across my Projects. If it's there, I don't see it. If it isn't there, I'd like to submit this as a feature request. Thx.
Set recurring tasks in Zoho Support?
Hello, We use the task function in Zoho Support to set reminders for "due dates" of important events, such as lease expirations, etc. Is it possible to set some of these as recurring yearly? As of now, we have to reset every task manually after one year. Is there a way to have it reset automatically? Additionally, is there a way to import a list of tasks and their dates into Zoho Calendar? I have not been able to do it from Zoho Support to Calendar. I tried exporting tasks from Zoho Support,
Help - How Can I Enter a Hourly Rate (Global Cost) for our Team for Profitability Reporting?
Hi everyone, I'm hoping someone can help as I am at a loss and am quite shocked (if true) at the lack of functionality in Zoho Books. We run a company in which we do hourly jobs for clients and we bill based on the hours of work completed. Projects are
Schedule a regular backup
In CRM I have a regular backup setup. I cannot find an option to backup Desk? I would like to take a backup before I test syncing products between CMR and Desk.
Opening & working multiple tickets
We work in multiple tickets at the same time. Currently to do this, we have to open multiple instances of Desk. Is there a way to do this by just opening multiple ticket tabs within 1 instance of Desk?
Next Page