Plug Sample #3: Zoho bookings integration plug for chatbots built with codeless bot builder

Plug Sample #3: Zoho bookings integration plug for chatbots built with codeless bot builder

Appointment scheduling is an essential process for any business, and we have Zoho Bookings to do it hassle-free. You can further automate the process using AI-powered chatbots, which can save a lot of time and act as an excellent tool to increase engagement with your website visitors. You can build such chatbots without writing a single line of code using our Codeless bot builder that has a drag-and-drop user interface. However, you can make your no-code bot unleash its full potential using Plugs.
 
Plugs in the Codeless bot platform help you create customized actions and third-party integrations by writing minimal code. Let's learn how to add a Zoho bookings plug for scheduling appointments.

What can this plug incorporate? 
The following plug can help you to incorporate an appointment scheduling option using Zoho bookings into your existing codeless bot flow.   
How to Create this Plugs?
  • In your SalesIQ Dashboard, navigate to Settings > Developers > Plugs > Click on Add.
  • Provide your Plug a name, description, select the Platform as SalesIQ Scripts , and click on Create Plug
  • Click on Parameters , provide the following:
    • Input Parameter 1 : name | Data Type  : String
    • Input Parameter 2 : email | Data Type  : Email
    • Input Parameter 3 : phone | Data Type  : Phone
    • Input Parameter 4 : datetime | Data Type  : Date and Time
    • Output Parameters : bookingid | Data Type : String
Note : To know how to fetch the operator's available slot, click here.


Create a Connection with Zoho bookings. 
  • Click on Connection at the left bottom. You will be redirected to the connection page.
  • Click on Create connection at the top right corner. Under Default connection, select Zoho OAuth

  • Then, give your connection a name , connection link name and choose required scopes.

  • Click on Create And Connect. Upon successful authentication,  Zoho SalesIQ and Zoho Bookings will be connected. Note : The Connection Link Name will be used in scripts to invoke URL tasks.
  • Copy, paste the below code and make the required changes. 
  1. response = Map();
  2. name = "";
  3. phone = "";
  4. email = "";
  5. datetime = "";
  6. //Change your service_id and staff_id
  7. service_id = "4302354000000026055";
  8. staff_id = "4302354000000026017";
  9. name = session.get("name").get("value");
  10. email = session.get("email").get("value");
  11. phone_number = session.get("phone").get("value");
  12. phoneList = phone.toList(" ");
  13. phone = phoneList.get(1);
  14. datetime = session.get("datetime").get("value").get("date_time");
  15. //Changing the date and time format
  16. parsedDate = datetime.toDateTime();
  17. dateAndTimesList = datetime.toList("T");
  18. parsedDateList = parsedDate.toString().toList(" ");
  19. changed_format_datetime = parsedDateList.get(0) + " " + dateAndTimesList.get(1) + ":00";
  20. //create bookings API
  21. customerDetails = Map();
  22. customerDetails.put("name",name);
  23. customerDetails.put("email",email);
  24. customerDetails.put("phone_number",phone);
  25. // "zohobookings" - connection name
  26. create_booking = zoho.bookings.createAppointment(service_id,changed_format_datetime,customerDetails,staff_id,"Asia/Calcutta",true,"zohobookings");
  27. bookingid = create_booking.get("response").get("returnvalue").get("booking_id");
  28. response = Map();
  29. response.put("bookingid",bookingid);
  30. return response;
  • Then, click Save , preview the plug and Publish it.
How to incorporate Plugs in Codeless bot?
  • Navigate to Settings > Bot > Add, provide the necessary information and select Codeless Bot as bot platform or open an existing bot.
  • Select the Plugs under Action Block and select the required Plug (Only published plugs will be listed here)
  • Provide the Plug inputs and outputs.
  • In this case, name, email, phone, date & time are stored in bot context and used as Plug inputs
  • The plug executes and returns the booking ID as output which is stored in bot context (booking.id) for displaying it to the visitors.
  • Click Save


Head's up:
  • If you have multiple services and staff, create similar plugs for each service and staff/operator and then associate them respectively in the codeless bot. 
  • For example, say you provide a service called Depression Therapy, Motivational Therapy and you have two staff for each therapy. 
  • Create plugs for each service id and staff id, and add them in the bots flow. 
    • Plug 1 - (Depression Therapy, Staff 1)
    • Plug 2 - (Depression Therapy, Staff 2)
    • Plug 3 - (Motivational Therapy, Staff 1)
    • Plug 4 - (Motivational Therapy, Staff 2)
  • Initially, display the services you provide to the visitors (In this case, depression and motivational therapy) using Button blocks.
  • Once the visitors select the service, then provide the staff available (Staff 1 and 2) and then add the respective plug in the bot' flow to schedule bookings.   
Related Links:
To know more about the features of Zobot, kindly visit our Resources Section

Regards, 
Sasidar Thandapani


    • Recent Topics

    • 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.
    • 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?  
    • Limit who can submit a support ticket to your site?

      Does anyone have a use case for needing to limit who can submit tickets via your help portal? Some of our customers want to have end-users view our knowledge base articles and see tickets their IT groups have submitted but they do not want end-users to
    • Is there a way to request a password?

      We add customers info into the vaults and I wanted to see if we could do some sort of "file request" like how dropbox offers with files. It would be awesome if a customer could go to a link and input a "title, username, password, url" all securely and it then shows up in our team vault or something. Not sure if that is safe, but it's the best I can think of to be semi scalable and obviously better than sending emails. I am open to another idea, just thought this would be a great feature.  Thanks,
    • Allow us to disable the Reopen Ticket button after a ticket is closed

      Disabling the Reopen Ticket will allow us to have more control over the ticket's flow. According to support, this is currently not possible. Please add this to let us, the customers, mold the ticketing system into something that we can use for our business
    • How to Enforce Mandatory Fields (Category/Sub-category) Before Closing a Ticket?

      Hi, I'm currently using Zoho Desk and encountering an issue where agents are able to close tickets without filling out mandatory fields, specifically Category and Sub-category. I’ve already set them both as a mandatory field, but it can still be bypassed
    • Admin Control for Default Email Templates in Zoho Desk

      Hi Zoho Desk Team, We would like to request a feature enhancement related to default email templates. Currently, agents can select and set their own default email templates when replying to tickets. However, we believe this setting should be managed centrally
    • Lock out of account after password update

      This is a bit of a catch 22 situation. I updated my account password using password generator in ZohoValut. Now I am locked out of everything, as I cannot get into OneAuth for 2FA, as the password is randomly generated, without getting into ZohoValut,
    • Guidance on Making Zoho Desk Connections Available for All Data Centers

      Hi Team, I’m currently developing an application using Zoho Desk connections to manage OAuth for my third-party products. Could you please advise on the steps required to make it available across all data centers? Looking forward to your thoughts on
    • Multibrand Help Center - Share knowledge base catgories between multiple departments

      Hello, I would like to know if it is possible to share categories between multiple departments when the multi brand feature is enabled. So that then one portal exists per department, but certain categories are visible in multiple portals. After all, we
    • Unable to upload document error on zoho sign

      i am creating a document using laravel php and here is my code and i get this reponse {"code":2005,"message":"Unable to upload the document","status":"failure"} $path = storage_path($file); $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, 'https://sign.zoho.com/api/v1/requests');
    • Cloud to cloud folder migration from Sharepoint to Workdrive

      I am aware of OneDrive migration: https://help.zoho.com/portal/en/kb/workdrive/migrations/microsoft/articles/migrate-from-onedrive-to-zoho-workdrive#Whats_migrated would this cover a Sharepoint migration meaning I can move a whole Sharepoint (team) folder
    • Zoho Sign / Prefill By You - Editable by Them!

      Zoho Sign seems to have two field options available - an empty field for signer(s) to complete or a field that has been prefilled by you, that becomes read only once sent.  What I would like is an option on the pre-filled by you fields, to leave them
    • How to sort a data in summary report with Monthly ?

      Hi Team, Can any one help me out how to sort a data based on monthly, Month was shuffled based on aliphatic order. i want to sort the below data monthy?
    • Is this link the transparent pixel used to track opens?

      Could someone please help me identify this highlighted link? It is automatically created by Zoho and a lot of contacts receiving campaigns will click on this link. I don't believe that it is the "update your preferences link" because on the Link Clicks
    • Kiosk Studio wrap-up | How our community used kiosks in 2024

      Hello, everyone! Happy new year! The end of 2024 has been busy, and 2025 promises to be bigger and better. As we ring in the new year, let's rewind and look at Kiosk Studio, our no-code customization tool. The past 300 days have seen the CRM community
    • Zoho Crm - Inventory Integration

      Hello, I need help about Map Fields between CRM and Inventory. For Example, I can't match amount of stock between these 2. I can put opening stock number  in Inventory but I can't see it on CRM. Also I want to see categories and parent categories on Inventory, in CRM too. Best Regards.
    • Inventory Valuation Method Feature

      Zoho added another feature so called Inventory Valuation Method of each Item. This is actually good to see and it will benefit us so much but I have a question on this. For Existing Items that already have transactions, Zoho made it a default and assumed
    • Where is the customization and extendibility of zoho inventory?

      After delving into zoho one subscription to test out systems we need for our business, I'm really disappointed after working in Zoho Inventory. Its features and customizability are extremely lacking compared to the other tools like CRM. In our case we
    • Organization Variables - Restrict Access

      Currently, there is no way to restrict the access to organization variables. This leads to a problem when storing API related values that should be kept secret as anyone with access to create and edit email templates, workflow rules, or inventory templates
    • Values in multi pick list are not copied to copied deal

      Hi, After a deal is completed in our sales funnel we copy the deal to an automatically created new deal in our project funnel. All fields are copied properly, but only a Multi Pick List is not copied. How can we copy the selected values in this field
    • Zoho takes too long to load...

      I am based in Europe and in the last couple of weeks, Zoho CRM takes minutes even to load modules. Is there a specific reason this is happening? Is this happening to other people?
    • Modules are continuously loading

      Hi! We are not able to open the task modules, it keeps continuously loading
    • Execution failure when fetching a Name field from another app

      In creator I have one app [Employee Directory] with a form [Employees]. One of the fields is a name field called [Name]. Here is a sample that works, if executed from the Employees app: test_Employee = Employees[Name.first_name == "Alex"]; info test_Employee.Name;
    • Accessing Subform Data using getRecordByID

      I am getting data from Zoho Creator using deluge zoho.creator.getRecordByID task, from another application. The report contains a subform, and that subform is in the detail view of the report. I do not appear to have any subform data in the JSON response,
    • Allow "add new" option to picklists and multiselection fields from add or edit pages

      Hello zoho, please insert an add option (ie +)sign) to pick and multiselect fields so we can add new options while entering or editing records. For example. in my lead module, while adding a new record, I realized I had a new lead source. I went to my
    • Allow customer to select meeting duration

      I would love to see a feature where I can give the customer the option to select the meeting duration they require based on a dropdown list which I have predefined in the service settings. For example: 15, 30, 45, 60, 90 minutes.
    • Can you internally tag/categorize posts for campaigns?

      Would love to easily sort through posts by tags or categories (i.e. we have multiple memberships and share studies from each. It would be nice to pull reports in a second for "membership A studies" for a campaign etc.).
    • Zoho and Hostaway webhok integration.

      I want to receive data coming from hostaway webhook and receive it in zoho crm to create or update record in a module based on conditions. The hostaway webhook sends data every time a reservation is created or modified or cancelled. The hostaway sends
    • Function 56: Automatically enable the option for customers to pay via bank account

      Hello everyone and welcome back to our series! One of the key features of Zoho Books is its integration with multiple payment gateways, allowing you to receive online payments for your invoices. This ensures faster payments, automates payment tracking
    • Connect multiple Facebook ad accounts to Zoho Social

      Hi there. I'm doing the Facebook Ads and Zoho Social integration to automate the leads that come from Potential Customer campaigns on Facebook to Zoho CRM. I have a company (1 fanpage, 1 brand), but within the business or brand on Facebook, I manage several
    • Custom service report or Zoho forms integration

      Hello, So far the experience with Zoho FSM and the integration with Books has been good, however there are limitations with service reports. As with my business, many organisations send technicians to different types of jobs that call for a different
    • Creation of Path and subpath

      In order to improve the structure of the website for better organization, I would like to consider that when publishing a page, it can be within a section and sub-section. For example, if I have an events option in the menu, I can put past events and
    • Next Page