Approve or deny appointments based on criteria

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 me share a recent client request as an example: Our customer has two types of services that are similar: One is for grown-ups and the other is for children. However, often adults mistakenly book these services without realizing that they are not intended for them. This results in unnecessary confusion for our customers, as they have to contact those who accidentally booked appointments and reschedule them, causing a significant amount of administrative work.

Here's how we helped our customer: We added a criteria field to the booking page (e.g., "What is your age?") Then, we automatically cancel appointments where the input age is greater than 15 and we'll even notify the grown-up client that their appointment has been canceled and guide them to book the appropriate service.


To make this happen, you'll need Zoho Bookings and the Zoho Flow Standard Plan.


Here's a simplified breakdown of the process in three steps:  

  • Zoho Bookings will collect the criteria data and pass it to Zoho Flow.

  • In Zoho Flow, we'll configure a workflow to verify the validity of the data.

  • If the data is invalid, Zoho Flow will trigger a cancellation request to Zoho Bookings, resulting in the appointment being canceled.

 

Don't forget these additional steps: Edit the booking confirmation page and notification email to proactively inform customers that their booking maybe subject to cancellation.

Let's dive into the details together!!!

STEP 1: TO BE FOLLOWED IN ZOHO BOOKINGS APPLICATION:


1. Create a mandatory field in Zoho Bookings Forms.

     A. For service booking form: Add Field

     B. For workspace booking form: Add Field

 

NOTE: Workspace-level settings apply to group and resource bookings, while for One-on-One bookings, you will need to make the necessary changes within the specific One-on-One service settings.

At the end of step 1, let's say we have created a mandatory field called "What is your age?". Now the customers on the booking page will have to provide their age to book an appointment.

Additional Step:

Canceling an appointment without the customer's knowledge might affect the customer experience. Therefore, we should acknowledge the customers in every possible way.

 

Here are some tips:

 

A. We can use the 'Custom Redirection' feature to redirect customers to a custom page after they book an appointment, instead of the default booking confirmation page.

Here is how to change booking confirmation page: Booking Confirmation Page


Here is the sample custom page:



B. By using the "
Terms and Conditions" check box, you can include the following message in the box: "This service is specifically designed for children under the age of 15. Bookings made by individuals above the age of 15 may be subject to cancellation". Customers will then need to check the box to confirm their agreement before completing their bookings, ensuring that they are aware of this policy.

More details: 

STEP 2: TO BE FOLLOWED IN ZOHO FLOW APPLICATION

A: Log in and search the template

  • Sign in to Zoho Flow application and create a new flow using the create flow option.

  • Select App > search for Zoho Bookings in the search bar.

  • Select the "Appointment Booked" trigger.

  • Select "Connection" and "Variable" > Done.


How to create a flow in Zoho Flow: Create a flow from scratch

How to create connection in Zoho Flow application: Create a Connection


At the end of step A, we have created a new flow including Zoho Bookings application.


B: Set Variable

  • In the Logic option > Flow Control > Set Variable > Edit the variable

  • Name the variable and in the value provide the input in following format "${trigger.customer_more_info.get("What is your age?")} " > Click on done.



 

NOTE: In Step 1, we created a multi-line field named "What is your age?" If you have instead created a single-line field without spaces (e.g., "Age?") on the booking page, the format for the field would be as follows:

  • Single line field format: ${trigger.customer_more_info.fieldname}

  • Multiple line field format: ${trigger.customer_more_info.get("fieldname")}

At the end of step B, we are fetching the output of the "Age" field from the Zoho Bookings form.


C: Create Condition

  • In the Logic option > Flow Control > Decision.

  • In the condition 1, configure as Set Variable(Age) > is not null. 


At the end of step C, we set up conditions to ensure that all bookings made through the Zoho Bookings application meet the requirements specified in the above conditions.


D: Custom Function

  • In the Logic option > Custom Functions > Create Function.

  • Configure function name, return type and input parameter.

  • Details on custom function: Custom Function

Reference below: 




Below is the sample code which you can have for reference. You can configure and modify the code according to your specific requirements.



Code Explanation:


Line 1: To pass the input data below to the code

  • Age: This is used to verify and analyze the customer's input.

  • Customer Email: This is required to send an email notification to the customer in the event of an appointment cancellation.

  • Booking ID: This serves the purpose of identifying the specific booking that needs to be canceled using its unique booking ID.

Line 3: We are implementing an "if condition" to verify the customer's input. In this case, we will check if the entered age is greater than 15. If it meets this condition, the following loop will be executed.

Line 5 - 8: To update appointments, we are utilizing the Zoho Bookings API. Within the update appointment API, there are two mandatory fields that need to be included: BookingID and action (completed/cancel/noshow). In cases where the criteria are not met and an appointment needs to be canceled, we will pass the action field as "cancel".

Line 9 - 14: We are using invokeURL task for API calls. To know more about invokeURL task please refer to the following document: InvokeURL task for API calls

Line 16 - 21: We utilize the sendmail task to send an email to the customer when their appointment is canceled. Additionally, the Zoho Bookings application automatically sends a cancellation email to the customer in such cases. Therefore, you have the option to either use the sendmail task or rely on the default notification system to inform the customer about the cancellation of their booking.


More details on send mail task: Send Mail Task

This is what the final flow will look like:



Here is the demo video:  In this demo video, we have showcased the behaviour of our setup configuration for different inputs from customers. One input satisfies the configured condition, while the other input does not meet the configured condition.




CONCLUSION:


In the preceding discussion, we have outlined a method for automatic appointment cancellation. You can use this document as a reference to explore the various possibilities that suit your needs.

In the upcoming posts, we will explore various scenarios and methods for updating the appointment status. Furthermore, we have covered the process of canceling an appointment after it has been booked.If you are wondering whether there is a way to verify customer inputs before booking an appointment, the answer is yes. We will delve into that topic in the next series.

As the above configuration may differ based on individual business requirements, we have provided a generic example for reference. If you have any questions or need assistance with configuration to align with your specific business needs, 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

      • Prevent accidental duplicate entry of Customer Ordersome

        Zoho Support has confirmed that Zoho currently does not have any method (using Deluge, flow or any other method) to alert a user when a sales order has been entered twice using the same customer reference number (i.e. a duplicate). Most ERP platforms
      • Collapsing and expanding of lists and paragraphs

        hello Would you ever implement Collapsing and expanding of lists and paragraphs in zoho writer ? Best regards
      • Migrating Brevo Automation Logic to Zoho Campaigns

        Hello Zoho Campaigns Support Team, I am in the process of migrating my email marketing from Brevo to Zoho Campaigns. I have around 10,000 contacts, which I have already successfully exported from Brevo and imported into Zoho Campaigns. I now need guidance
      • Is there a way to delete workspaces?

        I want to remove one of the workspaces in my Campaigns account. I don't see any obvious way to do this. Am I missing something?
      • New Custom View -Sorting the Custom fields

        While creating a New Custom View in invoice , Customers, Bills ,expense etc , the sorting of custom fields are not available , a query function "order by / sort by  " may also be included in  Define new criteria module  which will be more beneficial to
      • Make CAMPAIGNS email look as simple as possible

        Hi there I'm trying to make my Campaigns email look as much like a normal email as possible. I'm a bit stuck with the "justification" of the email email block. Can I LEFT JUSTIFY the "whole email" to make it look "normal"? (Please see screenshot attached)
      • Canadian Banks ?

        Can you advise which Canadian Banks can be used to fully sync credit cards and bank accounts? Thanks
      • Sorry! we encountered some problems while sending your campaign. It will be sent automatically once we are ready. We apologize for the delay caused.

        Hello. Lately we are having problems with some campaigns, which show us this error message. Sorry! we encountered some problems while sending your campaign. It will be sent automatically once we are ready. We apologize for the delay caused. We can't find
      • Can I remove or divert certain contacts from an active Campaigns workflow?

        I have created a workflow in Zoho Campaigns, which sends different emails, once contacts have been added to a mailing list. To choose which email to send to the contacts, there are conditions, which divert contacts based on their company type and their company size. There was a subsection of this workflow, where company size wasn't selected correctly, and some contacts have been sent down the wrong path and received the wrong email. The workflow contains a reminder loop and a further series of emails.
      • How to map fields from Zoho Recruit to Zoho People

        I've got these fields from my Job Offer that I'm trying to map to the Work information fields in Zoho People, but they arent showing up. For example, how do I get the department name field (in the job post) to map to the work information field in Zoho
      • UTM in zoho campaigns

        Helloo everybody!!! Someone know how IF ZOHO CAMPAIGNS has UTM for tracking the url of any campaigns. thank u
      • Full Context of Zoho CRM Records for Zia in Zoho Desk for efficient AI Usage

        Hello everyone, I have a question regarding the use of Zia in Zoho Desk in combination with CRM data. Is it possible to automatically feed the complete context of a CRM record into Zia, so that it can generate automated and highly accurate responses for
      • Knowledge base printing

        I saw a posting about printing the knowledge base as I was looking for the answer, but we would like the ability to print out the entire knowledge base with a click, keeping the same organization format.   Bonus would include an index of keywords and
      • Search not working!

        I have items in my notebook tagged but when I search for a tag nothing comes up! Any fix for this?
      • Updates for Zoho Campaigns: Merge tag, footer, and autoresponder migration

        Hello everyone, We'd like to inform you of some upcoming changes with regard to Zoho Campaigns. We understand that change can be difficult, but we're dedicated to ensuring a smooth transition while keeping you all informed and engaged throughout the process.
      • How do i integrate google analytics to Zoho Campaigns?

        Looking to track Zoho Traffic from email Current topic is outdated
      • How do teams manage meeting follow-ups across Zoho tools?

        We’re using Zoho tools for collaboration and tracking, but managing meeting notes, action items, and follow-ups across teams is still challenging. Curious how others are handling this within Zoho workflows. Are there best practices or integrations that
      • Mejoras urgentes para ZOHO MEETING

        Tengo unos meses usando Zoho Meeting. En general, es buena, pero hay cosas vitales que no logra cumplir con mínima calidad. 1) Calidad de audio y video: urge mejoras. Audio con retraso, imagen borrosa, mal recorte de silueta con fondos virtuales. Además,
      • Saving sent email campaign as PDF

        I'm looking to add all campaigns sent to an archive folder in sharepoint. Is there anyway to accomplish this in Zoho Flow ? I'm falling at the first hurdle ... can I automatically save a sent campaign as a PDF to a folder location ?
      • Exporting All Custom Functions in ZohoCRM

        Hello, All I've been looking for a way to keep about 30 functions that I have written in Zoho CRM updated in my own repository to use elsewhere in other instances. A github integration would be great, but a way to export all custom functions or any way
      • Conditional Layouts On Multi Select Field

        How we can use Conditional Layouts On Multi Select Field field? Please help.
      • Appreciation to Qntrl Support Team

        We are writing this topic to appreciate the outstanding level of support from Qntrl Team. We have been using Qntrl since 2022 after shifting from another similar platform. Since we joined Qntrl, the team has shown a high level of professionalism, support,
      • How can I hide "My Requests" and "Marketplace" icon from the side menu

        Hello everybody, We recently started using the new Zoho CRM for Everyone. How can I hide "My Requests" and "Marketplace" from the side menu? We don't use these features at the moment, and I couldn't find a way to disable or remove them. Best regards,
      • Whatsapp Integration on Zoho Campaign

        Team: Can the messages from Zoho Campaign delivered through Whatsapp... now customers no longer are active on email, but the entire campaign module is email based.... when will it be available on whatsapp.... are there any thirdparty providers who can
      • Mandatory Field - but only at conversion

        Hello! We use Zoho CRM and there are times where the "Lead Created Date & Time" field isn't populated into a "Contractor" (Account is the default phrase i believe). Most of my lead tracking is based on reading the Lead Created field above, so it's important
      • Using data fields in Zoho Show presentations to extract key numbers from Zia insights based on a report created

        Is it possible to use data fields in Zoho Show presentations along with Zoho Analytics to extract key numbers from Zia insights based on a report created? For example, using this text below: (note that the numbers in bold would be from Zia Insights) Revenue
      • Free webinar: AI-powered agreement management with Zoho Sign

        Hi there! Does preparing an agreement feel like more work than actually signing it? You're definitely not alone. Between drafting the document, managing revisions, securing internal approvals, and rereading clauses to make sure everything still reflects
      • WhatsApp Channels in Zoho Campaigns

        Now that Meta has opened WhatsApp Channels globally, will you add it to Zoho Campaigns? It's another top channel for marketing communications as email and SMS. Thanks.
      • CRM For Everyone - Bring Back Settings Tile View

        I've been using CRM for Everyone since it was in early access and I just can't stand the single list settings menu down the left-hand side. It takes so much longer to find the setting I need. Please give users the option to make the old sytle tile view
      • Lets have Dynamics 365 integration with Zohobooks

        Lets have Dynamics 365 integration with Zohobooks
      • Add notes in spreadsheet view

        It would be great if we could Add/edit notes in the spreadsheet view of contacts/leads. This would enable my sales teams to greatly increase their number of calls. Also viewing the most recent note in the Contact module would also be helpful.
      • Opening balances - Accounts Receivable and Payable

        Our accounting year starts on 1st August 2013 and I have a Trial Balance as at that date, including Accounts Receivableand Accounts Payable balances, broken down by each customer and supplier. Q1 - do I show my opening balance date as 31st July 2013 or
      • Cancel Subscription

        Hi , Im want to cancel my account but without success please help me to do it
      • Making an email campaign into a Template

        I used a Zoho Campaign Template to create an email. Now I want to use this email and make it a new template, but this seems to be not possible. Am I missing something?
      • Direct Access and Better Search for Zoho Quartz Recordings

        Hi Zoho Team, We would like to request a few enhancements to improve how Zoho Quartz recordings are accessed and managed after being submitted to Zoho Support. Current Limitation: After submitting a Quartz recording, the related Zoho Support ticket displays
      • Multiple Cover Letters

        We are using the staffing firm edition of Recruit and we have noticed that candidates cannot add more than one cover letter. This is a problem as they might be applying for multiple jobs on our career site and when we submit their application to a client,
      • URGENT: Deluge issue with Arabic text Inbox

        Dear Deluge Support, We are facing an issue that started on 12/Feb/2026 with custom functions written using Deluge within Qntrl platform. Currently, custom functions do not accept Arabic content; it is replaced with (???) characters. Scenario 1: If we
      • File Conversion from PDF to JPG/PNG

        Hi, I have a question did  anyone every tried using custom function to convert a PDF file to JPG/PNG format? Any possibility by using the custom function to achieve this within zoho apps.  I do know there are many third parties API provide this with
      • Now in Zoho One: Orchestrate customer journeys across apps with Zoho CommandCenter

        Hello Zoho One Community! We’re excited to introduce Zoho CommandCenter as a new capability available in Zoho One. For the whole customer journey As Zoho One customers adopt more apps across sales, marketing, finance, and support, a common challenge emerges:
      • annualy customer report

        we need a report per customer that looks like this invoic number cleaning laundry repair management 01 january xxx euro xx euro xx euro xxx euro 02 february xxx euro xxx euro x euro xxxx euro and so on the years 12 months is that possible to make and
      • Next Page