Bidirectional sync between Zoho Bookings and Zoho CRM - Part 2

Bidirectional sync between Zoho Bookings and Zoho CRM - Part 2

Hey community members,

Welcome again!

This post continues our discussion of the bidirectional sync between Zoho Bookings and Zoho CRM, focusing on how to reschedule appointments in Zoho Bookings from Zoho CRM. If you've arrived at this community post directly, we recommend checking out Part 1 of this topic for a better understanding. You can access Part 1 through the following link: Bidirectional sync between Zoho Bookings and Zoho CRM - Part 1

How we're approaching this reschedule action:

Whenever a meeting initially scheduled through the Zoho Bookings application is rescheduled either within the Meetings module or through the CRM calendar, the changes are recorded and the corresponding appointment within Zoho Bookings is also rescheduled.


 
Create a function for rescheduling appointments

Complete these steps in Zoho CRM.

Step 1: Creating connections

You don't need to create a separate connection for the reschedule action. You can utilize the same connection name that we established in Part 1 of the Zoho Bookings - Zoho CRM bidirectional sync.

Step 2: Creating functions

Configuring a function that reschedules appointments differs slightly from the functions we discussed in Part 1 of the Zoho Bookings - Zoho CRM bidirectional sync.

Note: Here, we'll fetch the time zone in which the customer scheduled the appointment so that when we reschedule the booking, it will be rescheduled within the same time zone the customer initially chose.

Here are the steps:
      1. Go to Setup > Developer Space > Functions.
      2. In the Functions page, click + Create New Function.

      3. Configure the function name, display name, and description.
      4. Set the category as automation.

Reference


More details: Functions

      5. Next, configure the function's arguments. For the reschedule function, we'll have to pass two arguments: bookingID
           as a string, and from as a date.
           a. Click on Edit Arguments on the Deluge script page.

          b. Set the Parameter Name as bookingID. (Please note that the "bookingID" value is case sensitive and must match
              the term used in the code).
          c. Set the type as string.

        d. Click the +Add button to add a second argument.
        e. Set the Parameter Name as from and its type as date.


Here, we're using the reschedule appointment API. The term "from" specifically denotes the appointment's start time. In the reschedule API, the booking ID is a required parameter, and we must provide either the staff ID or the start time. Given that we're rescheduling based on the start time, we'll pass the start time as an argument and use "from" as the reference point.


Please configure the following code on the Deluge script page. 




Here's an explanation of the code used for the reschedule function, split into three parts for purposes of clarity:

Lines 1-10 serve to invoke the "get appointment" API to retrieve the relevant booking ID and obtain the associated details. The purpose behind fetching this booking data is to access the actual booking start time and the time zone in which the customer initially scheduled the appointment using the Zoho Bookings application. This information is essential for comparing it with the rescheduled date and time.
  • Line 1: Based on the Zoho Bookings account's data center, we'll set up the API endpoint URL configuration. More
                 details: Domain-specific API URLs
  • Line 3: To obtain appointment details, we utilize the GET Appointment API. In this API, the booking ID is a mandatory
                field, so we retrieve the booking ID from the Meetings module and subsequently pass it into the code to
                retrieve the corresponding booking details.
  • Lines 4-10: We use the invokeURL task for API calls. To learn more about the invokeURL task, please refer to the
                following document: InvokeURL task for API calls
In lines 11-13, we execute booking data retrieval and date-time format conversion operations.
  • Line 11: Here, we're fetching the booking's exact start time as scheduled by the customer.
  • Line 12: Here, we're fetching the time zone in which the customer scheduled the appointment.
  • Line 13: We perform the date-time format conversion to ensure compatibility with the reschedule appointment API. This API requires the appointment's start time to be in the format dd-MMM-yyyy HH:mm:ss. We retrieve the start time from the Zoho CRM Meetings module, match it to your CRM application's date and time format, and convert it to the format Zoho Bookings' reschedule appointment API supports.
Lines 14-27 serve to perform comparison and rescheduling operations.
  • Line 14: Here, we're implementing an "if" condition to compare the actual booking start time (bookingstime) and the rescheduled time (time). We do this in order to execute the reschedule API function only if there is any change in the appointment's start date and time. If we don't implement the "if" condition to compare both inputs, the reschedule API function would enter a loop, continuously executing and potentially exceeding the API count limit.
  • Lines 15-27: We use the reschedule appointment API, which requires the booking ID as a mandatory parameter, along with either the staff ID or start time. In this case, as we're rescheduling appointments based on the start time, we provide both the booking ID and the start time. The reschedule appointment API functions similarly to the APIs we've previously discussed, such as the cancel, mark as completed, and no-show APIs.
By reaching the end of these final steps, we've successfully created a function that executes rescheduling actions.

Now, let's proceed with creating a workflow and linking the reschedule function to it. This enables us to automate the syncing of appointment rescheduling actions from Zoho CRM to Zoho Bookings.

Creating a workflow

Create a workflow that handles appointment rescheduling in Zoho Bookings whenever a corresponding meeting is rescheduled within the Zoho CRM application

Part 1: Creating the rule

            1. Go to Setup > Automation > Workflow Rules.
            2. In the Workflow Rules page, click Create Rule.

            3. Select Meetings under Module and configure the rule name and description as required.

Reference:



Part 2: Specifying the rule trigger

        1. Record Action > Edit. 

        
      2. Enable the Specific field(s) gets modified setting and configure it per the screenshot below.

This serves to ensure that the workflow is executed only when the "From" field of the meeting is edited.


      3. Configure condition > All Meetings.


      4.Instant Actions > Function.


      5. Click the New Function button.


      6. In the Configure custom function page, select the "reschedule" function you created from among the functions users in your organization have created.


More details: Specify rule triggers

Part 3: Argument mapping

        1. Press # to choose an argument value.

2. Select Meetings under Module and configure the field as "BookingId".
3. Select Meetings under Module and configure the field as "From".

        4. Click the Save and Associate button.

Reference:


Below is the final flow of the reschedule appointment workflow:



By the end of this process, we will have created a workflow that automatically executes when the "From" field in the Zoho CRM Meetings module is edited with a new date and time.  As a result, this workflow will also reschedule the associated bookings for that meeting to the new date and time in Zoho Bookings.

Conclusion

We've arrived at the end of the community post. As mentioned in Part 1 of the Zoho Bookings—Zoho CRM bidirectional sync community post, with all of these configurations in place, you'll be able to book, cancel, reschedule, and update the status of appointments in Zoho Bookings directly from your Zoho CRM application. Which will make your appointment management easier.

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


      Zoho Campaigns Resources


        • Desk Community Learning Series


        • Digest


        • Functions


        • Meetups


        • Kbase


        • Resources


        • Glossary


        • Desk Marketplace


        • MVP Corner


        • Word of the Day


        • Ask the Experts


          Zoho CRM Plus Resources

            Zoho Books Resources


              Zoho Subscriptions Resources

                Zoho Projects Resources


                  Zoho Sprints Resources


                    Zoho Orchestly Resources


                      Zoho Creator Resources


                        Zoho WorkDrive Resources



                          Zoho CRM Resources

                          • CRM Community Learning Series

                            CRM Community Learning Series


                          • Tips

                            Tips

                          • Functions

                            Functions

                          • Meetups

                            Meetups

                          • Kbase

                            Kbase

                          • Resources

                            Resources

                          • Digest

                            Digest

                          • CRM Marketplace

                            CRM Marketplace

                          • MVP Corner

                            MVP Corner




                            Zoho Writer Writer

                            Get Started. Write Away!

                            Writer is a powerful online word processor, designed for collaborative work.

                              Zoho CRM コンテンツ



                                ご検討中の方

                                  • Recent Topics

                                  • dealing with post dated cheques

                                    Hi, can you help me please the best way to deal with this We sell an item of three months duration that is paid for with post dated cheques in monthly stages example - item is sold £3000 Cheque 1 is for £1000 due at time of sale (say Sept) cheque 2 is dated 25th of next month (Oct) cheque 3 is dated 25th of next month +1 (Nov) Now, with invoice number one it's simple - i send a standard invoice as usual But with the other two here's what i want zoho to do next month i want it to send an invoice on
                                  • Is there a way to sell in a practical method multiple subscriptions of the same product? i.e. domain names

                                    In evaluating Zoho Billing, a hurdle to adopting it is that Zoho Billing does not seem designed to support businesses that sell multiple subscriptions of the same product. In our case, we need to sell and manage several domain names per client. Am I right
                                  • Paid Support Plans with Automated Billing

                                    We (like many others, I'm sure) are designing or have paid support plans. Our design involves a given number of support hours in each plan. Here are my questions: 1) Are there any plans to add time-based plans in the Zoho Desk Support Plans feature? The
                                  • Bug Report: "Name A-Z" sorting fails when Note titles start with an Emoji

                                    Hello, I recently migrated from Evernote (~2600 notes across 23 notebooks). I use emojis at the start of my note titles for visual organization. The Issue: When I set the view to Sort by: Name (A to Z), the sorting logic breaks for any note starting with
                                  • Copy & Paste not working

                                    I could create and save 10 new documents but when I go to copy and paste content (just text) into them, only 1 of 10 would save the content. It would appear to save the content but when I go back into the documents, they are empty.
                                  • Currency for Petty Cash

                                    Currencies for Petty Cash should be available
                                  • editing/applying online payments

                                    We have customers who pay part or all of an invoice and then cancel their service and want the payment as a credit to future work. It would be ideal if we could make it an excess payment and then void the invoice. I can't make it an excess payment because
                                  • Contacts per department

                                    Hello, Is it possible to limit Contacts to a Department? Thanks
                                  • This site can’t be reached mail.zoho.com took too long to respond

                                    In my office at any system, we couldnt able to login zoho email. it shows " This site can’t be reached mail.zoho.com took too long to respond". please fix it soon.
                                  • Can send email from zoho mail, but can't receive any.

                                    Hi, My domain is sattvameditationresort.com. I've updated MX records with those of Zoho. But i can't send any mails to this email id from gmail. I have checked the MX status with MXTOOLS, its showing the correct entry either. The error is as shown below:
                                  • My domain did not activate

                                    Hi, my domain (apsaindustrial.com.ar) did not activate, and the phone verification message never arrived. Please would you solve this problem? Thanks.
                                  • Host not found?

                                    Howdy! So i'm trying to add my custom domain for with the mail server. I have 100% control of my DNS and have tried every single option (TXT, CNAME, and even HTML) multiple times, ensuring i did it properly, to no luck. I get the same error message every
                                  • How to prevent users from switching price lists in an order?

                                    Hi, I have Zoho Finance integrated with Zoho CRM. My team will be placing orders through the CRM using the Finance module. When creating a new customer I will assign it a price list, I don't want the sales rep to switch to a different Price List, other
                                  • Emails are going to notification folder and not in inbox

                                    emails are going to notification folder and not into inbox
                                  • Error AS101 when adding new email alias

                                    Hi, I am trying to add apple@(mydomain).com The error AS101 is shown while I try to add the alias.
                                  • Report on opportunities showing only the last note added.

                                    Hi I need to create a report that shows the most recent note added to each opportunity. This is so management can see what the latest update is according to the assigned salesperson. One workaround is to use the status field but this implies added manual work and mistakes as the salesperson would have to copy the existing status to a note before adding the latest status... otherwise the activity history would be lost. My current workaround is a report on Notes with Opportunities as the related module.
                                  • Please add Zelle as an online payment option

                                    Hello, I would like to request Zelle be added to the online payment service providers for Zoho Invoice. Considering how ubiquitous Zelle has become as a way to pay people via the major banking institutions, I feel like many freelancers would benefit from
                                  • This user is not allowed to add in Zoho. Please contact support-as@zohocorp.com for further details

                                    Hello, Just signed up to ZOHO on a friend's recommendation. Got the TXT part (verified my domain), but whenever I try to add ANY user, I get the error: This user is not allowed to add in Zoho. Please contact support-as@zohocorp.com for further details I have emailed as well and writing here as well because when I searched, I saw many people faced the same issue and instead of email, they got a faster response here. My domain is: raisingreaderspk . com Hope this can be resolved.  Thank you
                                  • Getting Project Template List using the REST API

                                    I am trying to confirm that I can use the REST API to create a project using a project template. The API documentation indicates this is possible by providing the Template ID, but it is not clear at all how to get a list of available Project Templates
                                  • How to display the CONTACT ID in the Contact page

                                    Hi, I've seen this conversation below and it is exactly the same question I'm raising now, but unfortunately the last message is not solved https://help.zoho.com/portal/community/topic/show-contact-id-while-editing-contact-form I need to show the ContactId and I don't know how to do this. The last message included in the conversaton shows the way but not it is not completed. "I am sorry by default we do not have the option to show the record ID for the contacts in the field in a record. When you
                                  • How to change margins in templates

                                    Hi, I'm new to Zoho Campaigns, and am trying to figure out how to adjust the margins within an email template.  The default margins make the text go all the way to the edges of the page.  Please advise.
                                  • Create Canvas list view templates from images powered by Zia

                                    Currently available for all paid editions of Zoho CRM in the US, EU, IN, JP & CN DCs. Designing a personalized CRM interface just got even easier. In today’s fast-evolving digital landscape, AI is transforming the way we work by automating complex tasks
                                  • Painfully Slow Zoho mail

                                    Since yesterday Zoho Mail seems to have starting functioning very slowly and having a few bugs. It's slow to open mails, slow to send, slow to change between email accounts. Sometimes clicking on a particular folder (eg Sent folder) stops working and
                                  • "Wrong password or login" Problem to configure Zoho on MAIL App on my Macbook

                                    Hi, I'm having problems to configure my e-mail on my MAIL App(Macbook pro). My e-mail is hari@trespontoum.net Actually was working perfectly, and still working on my Iphone. My MAIL App prompt me that my login or password is wrong. I tried to change 3
                                  • "User already exist in your org"

                                    Hello, I've just read a discussion about this issue, which didn't solve my problem. I'm trying to add the following emails: sales@kiss-my-boutique.co.uk returns@kiss-my-boutique.co.uk orders@kiss-my-boutique.co.uk I'm getting an error message each time I try and add them. None of them are primary or secondary emails and none of them have been created as users before. I know this as when I try and login and do 'forgot my password' all I get is an error message saying 'user invalid'. Please advise.
                                  • Operation Not Permitted

                                    Hi, I have problem in adding user after verifying the domain but it seems like error appeared which is "operation not permitted". For your information, I had delete other domain before did it.
                                  • Email forwarding setup fails

                                    I'm trying to set up email forwarding from my Zoho email to my gmail address. I followed the directions to set up email forwarding here: https://www.zoho.com/mail/help/email-forwarding.html. I did only steps 1-6. After doing this, rather than setting
                                  • Shopify store email issues- Not getting emails

                                    Hi We have migrated from Microsoft outlook to Zoho back in March, we have a shopify store, the domain is hosted on namesilo, not shopify, I have seen some people here complaining about not getting emails from customers who fill out the contact form on
                                  • How do I fix this? Unable to send message; Reason:554 5.1.8 Email Outgoing Blocked.

                                    How do I fix this? Unable to send message; Reason:554 5.1.8 Email Outgoing Blocked.
                                  • Invoice Discount Account

                                    Is there a way to change the account used for Discounts applied to an invoice? The current Discount account (ZB native account) type is an "Income" type. I would like to change it to "Other Income", but that is not possible, I am assuming because it contains
                                  • Need Inactive accounts to be visible in Reports in Zoho Books

                                    I N=need Inactive accounts to be visible in Reports in Zoho Books to do recons of the accounts but when i see the same they are not visible in the Accountant - Account Transactions report
                                  • javax.mail.authenticationfailedexception 535 authentication failed

                                    Hi, I am facing 535 authentication failed error when trying to send email from zoho desktop as well as in webmail. Can you suggest to fix this issue,. Regards, Rekha
                                  • Phantom Opening Balance

                                    While experimenting w/ creating a composite item, Zoho added funds to Petty Cash and added Bank Account equal to previous day's balance. I'm unable to undo the adding of funds. Attaching screenshots of both bank account and petty cash transactions.
                                  • Importing customer comments and multiple shipto addresses

                                    I am evaluating Zoho Books and have most of my data imported with two exceptions: (1) Import customer comments - in my current system I have several comments of different types, and I need to bring these into Zoho. Preferably Books customer records, but
                                  • Detailed Account Reports - Add Running Balance

                                    When one clicks into an account from a report (say P/L or Balance Sheet), the default reports have the Debit, Credit, and then the Amount. The Amount column (last one) is duplicate information. It would be far better and fit more peoples' use cases if
                                  • How to Billed from two different GST Numbers

                                    How to Billed from two different GST Numbers. Suppose ABC & Co had GST registration in Delhi and Haryana and Zoho account is created with Delhi GST Registration number. Now i also want to issue invoice from Haryana GST Registration number. How can i proceed ?
                                  • Zoho IP blocked by SpamHaus

                                    ERROR CODE :550 - 5.7.0 Your server IP address is in the SpamHaus SBL-XBL database, bye
                                  • IMAP Communication Problems - IMAP Down Again

                                    We are experiencing the same problems over the last week or so that were supposedly 'solved' according to this thread. Zoho Imap Down Again This is affecting attempts to use IMAP on multiple ISPs and users so is definitely narrowed down to Zoho problems.
                                  • Can't login to Zoho mail

                                    I'm logged into Zoho but when I try to go in zoho mail I get: Invalid request! The input passed is invalid or the URL is invoked without valid parameters. Please check your input and try again. I just set up my mx records and stuff with namecheap a few
                                  • Hotmail is STILL blocking the zoho mail IP

                                    Greetings, as I already mentioned in my last message, my Zoho IP has been blocked by Hotmail for more than 15 days. Although someone said that the issue was "solved," it still isn't, and this amount of time seems neither normal for a "serious" company,
                                  • Next Page