In our previous post, we discussed the significance of connections, identified their types, developed a predefined connection, and demonstrated how it can be integrated with Zoho Books using an example. In this post, we'll walk through the process of creating a custom connection using an example.
Custom connections facilitate the integration of applications with Zoho Books by aiding in configuring the required application's connection manually by providing application-specific details. Let's go over the steps involved in configuring custom connections in detail using a use case scenario.
Use case
Let's say an organization uses Zoho Books to manage its financial operations. To improve sales for the organization, one must contact and communicate with multiple clients, as well as check in with vendors on a regular basis to remain up to date on new products on the market, take demos, and assess whether the products need to be brought into the organization.
In these cases, it is best to schedule appointments with clients and vendors in order to conduct business in an organized manner. This can be easily performed by integrating an appointment scheduling software so appointments can be scheduled with a click.
For our demo purpose, let's consider Zoho Bookings as the appointment scheduling software. Since it is not available under the default list of services in predefined connections, let's create a custom connection to achieve this.
Steps to create a custom connection
- Go to Sigma and access your workspace.
- Enter the developer portal of the Zoho Books extension you're creating a connection for.
- Navigate to the Build section and click Connections.
- Click New Connection to create a new connection.
Note: Alternatively, you can use the View All option under a connection type to see all the services under that particular connection type and begin creating connections.
- Choose Custom Services and click Create Service.
- Provide the details of the service.
➤ Enter a name for the service, and the service link name will be immediately filled in.
➤ Choose the authentication type that corresponds to the authentication mechanism supported by the service for which you are building the connection. These details will be available as part of the service's API documentation. For our example, we'll use OAuth2, because Zoho Bookings supports it as an authentication mechanism.
➤ The remaining fields to be configured for the service differ based on the authentication type used. In our case, the parameter type is Header, and the grant type is Authorization Code.
➤ Please refer to the table below for the values that need to be configured in the remaining fields.
Authorize URL | |
Access Token URL | |
Refresh Token URL | |
Scope | zohobookings.data.CREATE |
- Finally, click the Create Service button.
- The service is created successfully. Click Create Connection to create a connection for this service.
- Provide the connection details, select the scope, and click Create and Connect.
- Proceed with the flow to accept the scopes and authorize the connection.
The connection is now authorized, and you'll be directed to the connection details page. This page will also contain sample code in both Deluge and JSON formats that can be used to utilize this connection as part of your extension components. Depending on which component you want to invoke the connection in, you can use the appropriate sample code format.
Additionally, a predefined connection for Zoho Books is created to perform operations on Zoho Books data to implement our use case. Get more information on predefined connections in our previous post.
Now, in accordance with our use case, let's create a custom button that includes this connection to schedule appointments (in Zoho Bookings) with clients and vendors using Zoho Bookings with a single click (from Zoho Books).
We require two custom fields for our logic, one for setting the meeting start time with the client or vendor, and the other to display the Bookings appointment calendar link once the meeting is scheduled.
- Create custom fields for the Customers and Vendors module by selecting Preferences > Customers and Vendors > Field Customization > New Custom Field.
- Next, create a custom button and include the logic to schedule an appointment.
- Create a custom button for the Customers and Vendors module by selecting Preferences > Customers and Vendors > Custom Buttons > New.
Book meeting custom button function Deluge code - Please find code snippet as an attachment in the post
- In the above code, the Get Contacts API of Zoho Books is invoked through the InvokeURL method using the predefined connection to get the contact/customer details for whom the appointment has to be scheduled in Zoho Bookings. Refer to this post to get complete details on the parameters required to call the InvokeURL method.
- From the API response, the required details are fetched from which the start time (custom field data) is formatted to the way required by the Zoho Bookings API.
- Next, the Zoho Bookings API to get the service ID and staff ID are invoked consecutively through the InvokeURL method using the custom connection created.
- The Book appointment API is used to schedule the appointment using the service ID, the staff ID obtained from the Zoho Bookings API, and customer details obtained previously via the Zoho Books API.
- Finally, using the update contact Zoho Books API, the Zoho Bookings calendar URL is updated in the custom field created to display the calendar booking URL.
We've now completed the extension setup for our use case.
After testing and publishing the extension, as per our use case, you can book a meeting for a Zoho Books customer through Zoho Bookings and have your Zoho Bookings calendar reflected inside Zoho Books as well.
z
This is an example demonstration of the benefits of using a custom connection in a Zoho Books extension. This is a versatile use case that may even be used to schedule an internal meeting with your Zoho Books teammates who are working on a project. Similarly, this use case can be enhanced and implemented based on your needs.
We hope you found this information useful. Keep following us for more tips.
SEE ALSO
Recent Topics
How to set custom Sales Order numbers
I am trying to create Sales Orders with data from Jotform submissions. Auto number generation is disabled within Books. Whereas the flow Input recognizes the number (40732 in this example), the Output does not. How can I fix this? I'd like the number
Zoho desktop problem when using 2 displays
I have a Microsoft Surface Pro with a second display attached. When I open Zoho mail desktop and place the window on on the second display and I keep the display attached, everything works fine. HOWEVER: when I then detach the second display (the Zoho
Assign Multilpe Owners to a Single Deal and Split Revenue Between the Two
Hello, In our business, it is common for 2 sales reps to co-manage a deal. As such, I would like to add 2 co-owners to a deal within CRM, and then split the revenue generated by a deal between both owners in our analytics. We are currently tracking this
Mix and Match Email Plan
Dear Zoho Sales Team, I hope you’re doing well. I am currently subscribed to Zoho Mail Premium with one account. However, I would like to modify my plan by adding two Mail Lite (10GB) accounts alongside my existing subscription. Could you please confirm
Comprehensive guide to add users
We've received quite a few questions regarding adding users to the Zoho Sprints workspace. So we decided to address it through a comprehensive post covering the locations (modules or tabs) from which you can add your users. Adding users to your workspace
How to monitor hybrid projects?
Hybrid project management sounds great, but, with projects being run on different project management methods, how can we monitor the overall progress and derive insights from them? If you've got this question as well, Zoho Projects Plus’ dashboards have
Learning how to customize templates via code and best practices
Hi! Our developers team want to learn how to edit our template files safely. The last time we messed with these files our site went down for a day and we had to reconfigure it from scratch. What are the best practices to do this? How can we get a template
ULAA threat
My Sentinal One app just killed ULAA as a threat. I reinstalled, killed it again. I opened ZohoOne CRM in Chrome it worked however it was a least 1 if not 2 backsteps from the version I'm using. Is anyone else having this exerience?
Seventh Insight - Organize your data using Modules
The Wheels of Ticketing - Desk Stories Organize your data using Modules What are Modules? Modules in Zoho Desk are powerful organizational tools that facilitate efficient help desk operations. There are eight standard modules, each designed to manage
Argument Mapping went missing?
How can I access the IDs from the mass action button when argument mapping is unavailable or missing?
Properly split form fields across report rows?
Hi all, I’m trying to split file uploads from a form into separate report rows with a shared Title. Example: Form input: Title + File A + File B Desired result: Row 1: Title + File A Row 2: Title + File B Current Logic: In On Created or Edited and On
Email Alerts with Affected Flow Details When Deprecating Modules in Zoho Creator
Dear Zoho Creator Team, We would like to request an enhancement to the module deprecation process in Zoho Creator. 🧩 Current Limitation: Currently, when a module is deprecated by the Creator team: No email notifications are sent. There is no automated
Problem importing TSV file: File contains empty string as column header(s).
I tried importing a TSV file into Books, and got this message: "File contains empty string as column header(s). Please check the content and try again." I've looked at the file I'm trying to import, and the columns all have labels in the first row. Help?
How to Integrate Zoho Books with Xero (No Native Connection Available)
Hi everyone, I’m currently facing an issue with integrating Zoho Books invoices with Xero, as I’ve noticed Zoho does not provide a native integration with Xero at this time. I would like to ask: What are the common or recommended solutions for syncing
UPLOAD A CREATED PDF AUTOMATICALLY
Using the html header pdf+print button, I have managed to find a way to have a user create a pdf using entered form data. Using the schedule button, I can have a "file uploaded" pdf mailed to someone as an attachment. The missing piece is to be able to add the pdf, created in that html page to a file upload field automatically? Right now one has to save it to computer and then upload it in a FILE UPLOAD FIELD. Any help would appreciated !
Short Custom Order
Hi Everyone, I have question, i create some report use custom short order like below. But this is just show in development mode.... when i publish to production, it is not showing. And this is just showing in full admin mode. Can setting to show roles
is there a way to pass whatsapp message to Zoho CRM lead record?
so I am trying to implement WhatsApp Native Integration to Zoho CRM. What I really need is to pass Whatsapp Number and whatsapp first message to Zoho CRM lead record. yes I can see the Whatsapp Message inside lead detail record like this but as you can
How to use CDN with Zoho wesbites.
I want to use CDN with my zoho- hosted website. I currently have a dot in website. I would seriously like to utilize CDN such as MAX CDN and cloudflare. Its that am not able to change dns with dot in website. Which is a great catch. Today site speed matters a lot both for business or personal sites. I have lot of visitors from different parts of the world and they suggest to make the website more faster. I would be great if I'm able to use dns or may be cdn.
Tip of the Week #58– Stay informed by following threads!
Want to be notified about the activities happening over a specific thread without getting directly involved there? In shared inboxes, not every message requires your immediate response, but that doesn’t mean it’s irrelevant. Without a clear way to keep
Zoho CRM 表示が変わった?
いつからかわからないのですが、本日(6/3)、表示が変わったことに気がつきました。 皆さんの環境でも変わっているのでしょうか? 当方は Zoho CRM Plus で Zoho CRM Everyone 環境です。 ■タブと項目 タブのレイアウト表示名が「標準」から「スタンダード」になっている。 表示だけなので Deluge とか影響はないとは思います。 ■レコード一覧の項目選択の表示 選択すると青色線で囲いが表示されるようになった。 選択しやすくなって使いやすいです。
How do we add Google Analytics code to Zoho Bookings scheduling pages or the thank you page?
We need to track user activity on individual Bookings' pages and/or the thank you pages? How do we do this?
please include option for editing attachment name
Users need the ability to rename an attachment without having to delete the original and then uploading a duplicate just to rename the doc. We need the ability to edit the name of an attachment directly in zoho. dgdlux
Lead Created Time Field
I don't remember doing it but I must have removed the "Created Time" field from my lead module at some point. Usually it doesn't let you permanently delete fields like this but it is not in my unused fields so it must have been permanently deleted somehow.
Notebook Password Recovery?
I'm a very happy new user of Notebook, but ... my password has fallen from my memory and I am finding no avenue to reset it. How can I reset it to recover access to my notes? Thanks so much, HOC
Unable to create a download link for an uploaded Workdrive File
Hello, I have some custom logic that is working fine to load image files into a Workdrive folder. I'm not having much success however in being able to then set the file as downloadable and retrieving the download link from my custom logic. My code for
Data preservation when a Recruiter Admin leaves the organisation and account is deleted
I can’t find in the documentation on this topic, so asking here. When the Recruiter Admin employee who has done all the hiring work, e.g. publish job postings, updating email notification templates, changing candidate statuses, writing notes, communicating
Zoho Sprints mobile app(Android and iOS) v2.0
Hello everyone! We’re thrilled to announce that Zoho Sprints Mobile app2.0 is now live. With the newest version of the Zoho Sprints mobile app, we hope to provide a fresh, faster, and intuitive experience for managing your sprints on the go! Whether you're
Open-source Zoho API package for Python
Dear Community, Some time ago I have started working on Zoho API to handle data management in more automated manner than before. Then I have found no relevant materials, except of Zoho API documentation, about how to start. Of course I do not mean it
Zoho Writer and Zoho Forms - Merge on update of a form
Once Zoho Form is submitted it requires a check by the adviser / sales person and adding additional infomation to it before it gets send to the customer for the signature. Unfortuantely there is no option to Merge on update, only on submission of the
Journal Entries Do Not Show Multiple Entries to the Same Account
Another basic accounting function that Books ... Accountants sometimes write journal entries, debiting and/or crediting the same account in the same entry. This is due to the need to record specific activity in an account when we pull reports especially
Cookies
Hey Guys, being a EU based company, we're forced to show the cookie banner, providing easy to read information about the cookies we use and giving the choice to select which cookies the accept. I know in Zoho Marketing Hub, SalesIQ and Sites there are
Zoho Sign Custom Domain
Any plans for Custom Domain?
Introducing AI-powered agreement management in Zoho Sign
Hello! From automating repetitive tasks to enabling smarter decision-making, AI has moved from a futuristic concept to a practical tool for modern businesses. One of the most impactful applications of AI is in agreement and contract management. By leveraging
My bank is not in Books
Hello, I tried to configure bank feeds for my bank, but it doesn't appear in the list of supported banks. Does that mean that i cannot configure feeds at all ? Is there any way to add my bank in the list ? Also, as far as I saw, the list has no Belgian bank : Belfius, BNP Paribas Fortis, KBC,... Thanks for you answer Xavier Liégeois Though Happy Zoho user
Updating a contact record's multiple select field
Hi folks, I have a multiple select field (called Mailing Lists) in Zoho CRM which I wish to set to the text "Weekly Email" I have created a step in Zoho Flow using a Create or Update Contact. In the Mailing Lists field, I put the text "Weekly Email" (including the quotes) but the flow returns an error requesting a jsondatatype. I have tried {'Weekly Email'} but I still get the same error. Also tried Weekly Email (without the quotes) How do I format an update of a multiple select field with Zoho
CRM module name capitalisation bug ?
HI, I''m writing a deluge script from Desk to create a task in CRM. All is good when I deal with a lead, but not when a contact is involved. It took me days to figure it out. It might be a bug. Here is a snippet of my script // Ticket Description taskMap.put("What_Id",{"id":ticketContactId});
Can I convert Multiline fields from Plain text to Rich Text?
I have added several custom multiline fields (Plain text) in the Zoho CRM module "Accounts" before the Rich Text (RTF) feature was released in 2024. Now I am looking for a way to convert them to Rich Text format. Is there a way to do this? The problem
Webinar Recording: Maximizing Productivity with Bigin's Mobile Apps
Dear Biginners, Hope you're doing well! As part of our ongoing Masterclass series, we’ve just completed an exciting webinar that explores the capabilities of our mobile apps. Whether it’s managing deals, communicating with customers, or meeting deadlines,
Need Help with Zoho CRM Integration
Hello everyone! 👋 I'm currently in the process of integrating Zoho CRM with an Android gaming website focused on Fire Kirin Game. While everything is progressing smoothly, I'd love to get some expert input to make the integration as efficient and seamless
Validating an order by a superior
Hi, I have a very specific use case for Backstage. Let me know if this is possible or how I could get around this (or if there are no workaround). One of my client uses Backstage to manage internal (on site) events. Participants from different departments
Next Page