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.
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
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
- "Performed changes in the query is not allowed due to following reason" when adding columns or reordering data- I'm trying to make changes to a query but every time i try to save it i get this error message. I'm not touching the data it's flagging. All I've tried to do is reorder a couple of fields and add a new one. Why won't it let me do this? It's a core query 
- Onboard new users easily with native screen recording in Zoho Projects Plus- Communication involving both visual and audio elements tends to capture more interest among the audience. Whenever we onboard new employees to the organization, the task of engaging them in the induction sessions, and keeping the spark going in their 
- Request to Add Support for PDF Templates and More Flexibility in Email Editor- Hi Zoho Campaigns Team, I hope you're doing well. I wanted to share some feedback and request a few improvements in the Email Template feature of Zoho Campaigns. Right now, we can create email templates using the HTML editor, which is helpful. But we’re 
- Can you stop Custom View Cadences from un-enrolling leads?- I'm testing Cadences for lead nurture. I have set un-enroll properties to trigger on email bounce/unsubscribe, and do NOT have a view criteria un-enroll trigger. However, help documents say that emails are automatically un-enrolled from a Cadence when 
- Zoho Desk Android and iOS app update: Agent detail overview- Hello everyone! We’ve introduced agent detail overview on the Zoho Desk Android and iOS app update. With this feature, you can get a complete view of agent’s tickets, response times, logged hours (for both tickets and activities), customer happiness ratings 
- Blog Widget: Show recent blog posts on my homepage- Hey there I am using the Zoho Sites Blog feature. On my homepage, on the bottom I'd like to have a featured content section where I show some of my blog posts (selected, most recent, filtered by category and so on...). It would be nice to have a blog 
- How to iterate through excel data using zoho rpa- I wanted to iterate or loop through excel data ( datatable). How can i do that 
- Zoho Commerce- Hi, I have zoho one and use Zoho Books. I am very interested in Zoho Commerce , especially with how all is integrated but have a question. I do not want my store to show prices for customers that are not log in. Is there a way to hide the prices if not 
- Mass (Pull back) (Close WOs) (Close APs)- Hi develop team. Just idea because Zoho FSM is great but its too manual. we have a lot of task to do every day and the system needs to have more features to automatic our tasks. I need to close several WOs, APs and Pull Back per day. Please we need mass 
- Customising Zohidesk portal default widgets- Hello, I'm wondering how could I customise the default widgets such as "popular topics", "popular articles" using CSS or to make the tiles at the bottom match the ones that I made in the picture attached. I have made some custom widgets and edited them 
- If there’s a batch at the end, the ‘mark as inactive’ function doesn’t work.- when my batch has a date to batch end and I "mark as inactive" he batch does not obey the status and reactivates the batch. 
- Seamless multilingual messaging and tone control in Zia IM Composer- Hello everyone! Managing customer conversations across multiple languages can be time-consuming. Using Zia in the Instant Messaging (IM) Composer helps you overcome this by providing tools to translate content, adjust your tone, and refine your messages 
- Advanced Deluge help needed with custom function and COQL limits- I have a scheduled function that takes a snapshot of specific metrics and saves them to a custom module. However I'm struggling with the limits of COQL. I attach my full code, but an example of the issues I'm having is that it's erroring with a 'Limit 
- Tip of the Week - Conditional Formatting Chart- Conditional formatting allows you to highlight your data series based on a pattern or a trend in your data. This makes it easy for you to identify when your data reaches certain values or when it deviates from the trend.  Zoho Analytics allows you to 
- Zoho Learn - AI Translate- Hi Learn team, I had a situation today where I was providing training to a client team and I had written articles into their Zoho Learn to support their learning. I realised that one of the team members was a non-native English speaker and they were struggling 
- Payroll In Canada- Hi, When can we expect to have payroll in Canada with books  
- Power of Automation :: Auto-Sync Custom Date Field Between Related Tasks via Blueprint Transition- Hello Everyone, A custom function is a software code that can be used to automate a process and this allows you to automate a notification, call a webhook, or perform logic immediately after a workflow rule is triggered. This feature helps to automate 
- Introducing auto-upgrade in Zoho LandingPage- Hi everyone, We’re excited to share an upcoming update to help you get the most out of your landing pages — the auto-upgrade option, launching on October 22, 2025. Your landing pages are designed to bring in leads, and we want to make sure you never miss 
- Workdrive comment links stopped working.- I have marked a PDF file with 95 comments, they have worked for a while. When i clicked on them they brought me to the correct page and showed me the outline that i had drew on the plans. The comments included the page number of the outline, but now it 
- How to Bulk-Update Sales Orders in CRM- Hi - I need to bulk update existing sales orders with dates from our ERP of when the sales orders were created. I made a date field on the Sales Order module where I want to insert that data. I can't Mass Update because I am not updating the fields to 
- Zoho ToDo in Cliq- Our organization utilizes Zoho ToDo in the Zoho Mail Desktop app. Is there a way for these to show up in Cliq Desktop app as well? 
- 【Zoho CRM】サンドボックス機能のアップデート:カスタムビューが利用可能になりました。- ユーザーの皆さま、こんにちは。コミュニティチームの中野です。 今回は「Zoho CRM アップデート情報」の中から、サンドボックス機能のアップデートをご紹介します。 目次 1. カスタムビューとは 2. 今回の機能アップデートについて 1. カスタムビューとは カスタムビューは、ユーザーが設定した条件に基づいてデータをフィルタリング・整理し、 重要な情報へ効率的にアクセスできるようにする機能です。 「過去15日間の見込み客」や「受注間近の商談」、「特定の優先度レベルが設定された案件」など 条件を指定してわずか数クリックで設定できます。 
- Changing an agents email address- How do you change an agent's email address? I keep getting a red circle even though I am an admin. And on one of my agents he has two email addresses? How is that possible? 
- Zoho CRM - Potentials Tab- Hi! When I create a Deal (Potentials tab) the header looks like this: After a refresh on the page it looks like this: What should I do so that it is displayed like in the second pic without refresh? Also I have a user that as of recently, cannot see this 
- Is there a way to automatically add Secondary Contacts (CCs) when creating a new ticket for specific customers?- Some of our customers want multiple contacts to receive all notifications from our support team. Is there a way to automatically add secondary contacts to a ticket when our support team opens a new ticket and associates it with an account? This would 
- Unable to create embed code for resource of workdrive using API- Hello Team, I am trying to create embed code for a resource using workdrive api in powershell, however facing some issues with injecting data in body. Followed Doc: https://workdrive.zoho.com/apidocs/v1/filefoldersharing/shareeveryone Please help, below 
- Feature Request - Insert URL Links in Folders- I would love to see the ability to create simple URL links with titles in WorkDrive. or perhaps a WorkDrive extension to allow it. Example use case: A team is working on a project and there is project folder in WordDrive. The team uses LucidChart to create 
- not able to convert pdf to jpg and other forms and vice versa.- i want to change my pdf to jpg, word, etc and some times jpg to pdf. i don't know how to do in this. 
- Enable / show scroll bar when Mega Menu is opened- Hey there I am using the mega menu add-on and experience a "flicker" whenever the mega menu opens. The reason is, that the scrollbar, which has a width of a few pixels, stops showing when the mega menu opens. As the scrollbar disappears the whole page 
- Reports: Custom Search Function Fields- Hi Zoho, Hope you'll add this into your roadmap. Issue: For the past 2yrs our global team been complaining and was brought to our attention recently that it's a time consuming process looking/scrolling down. Use-case: This form is a service report with 
- Zoho Inventory - Composite Items - Assembly - Single Line Item Quantity of One- Hi Zoho Inventory Team, Please consider relaxing the system rules which prevent an assembly items from consisting of a single line item and outputting a quantity of 1. A client I'm currently working with sells cosmetics and offers testers of their products 
- How can I transfer data from Production to Development environment?- Hi, I am using Creator V6 and would like to bring all the data in production to the Development and Testing environments? Is there an easy way of doing that or I have to export and import each table? 
- Add "Reset MFA" Option for Zoho Creator Client Portal Users- Hello Zoho Creator Team, We hope you are doing well. We would like to request an important enhancement related to Multi-Factor Authentication (MFA) for client portal users in Zoho Creator. Currently, Creator allows us to enforce MFA for portal users, 
- New portal SAML authentication error: User not found- Dears, Has anyone else been experiencing this lately? I am creating a new portal authenticated by SAML (Entra ID). I followed the same process as I did with other portals, but any new portal created after this always encounters this error. I’ve been reporting 
- Devis et facture multi page - Bonjour, je suis sur Zoho invoice et je rencontre un problème sur mes devis et factures lorsqu'ils dépassent 1 page. je me retrouve souvent avec des lignes coupées ou le sous total page 1 et le total page 2. j'aimerai savoir s'il existe une possibilité 
- Rotate an Image in Workdrive Image Editor- I don't know if I'm just missing something, but my team needs a way to rotate images in Workdrive and save them at that new orientation. For example one of our ground crew members will take photos of job sites vertically (9:16) on his phone and upload 
- Help with Filtering Records, HTML Pages, and Automatic File Uploads in Zoho Creator- Hi Zoho Creator Community, I’m building a Zoho Creator application and need guidance on a few features I’ve been struggling with. I want to implement them safely and efficiently, and I’d appreciate any examples, tips, or best practices. I want users to 
- How to Send Email from within a custom module (with or without an email template)- It is possible to send an email from the Deals module. However, I can't find a way to send an email from any of our custom modules. I have tried adding an email field to the modules (even though we don't really want one or need it there). That doesn't 
- Convert invoice from zoho to xml with all details- How to convert an Invoice to XML format with all details 
- Feature Suggestion for Zoho Websites – Inspired by Squarespace Systems- Dear Zoho Team, I’m a Zoho user and also a Squarespace Platinum Circle member, and I recently noticed the launch of Zoho Websites in India. I wanted to share some ideas for features that could enhance the platform for professional users and agencies. 
- Next Page