Title: Creating custom connections for extensions | Community | Zoho Finance

Title: Creating custom connections for extensions | Community | Zoho Finance

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.
NotesNote: 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.
Note: Register the service in the Zoho Developer API console to get the client credentials.
  • 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.
InfoBook 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

    • Upsert your missing data without affecting the historic logs

      Dear Customers, We hope you're well! Migrating your data from a legacy system to Zoho CRM is a critical operation as it deals with treasured data. In an unfortunate event, if you have missed to move your historical datasets, you have had to repeat the
    • Dashboard won't save, nor allow me to do a "save as"

      For some reason, one of my dashboards won't let me make any modifications to it and save?  I get the "do you want to save before closing?' and I say yes and the dialogue box just stays there.  I try to do a "save as" right after I open that dashboard and I get the dialogue box that seems to let me name the new dashboard, but it won't let me save.  The dialogue box just stays there unless I hit cancel or no. Can you please help? Jamie
    • Copying Files Between Modules

      Hi, I'm creating a Deluge script and I've hit a roadblock. I'm trying to copy files from one module (let’s call it Module A) into another one (Module B). Here’s what I’m doing: record = zoho.crm.getRecordById("Module_A", record_id); files_toCopy = record.get("Files_From_A");
    • Problem with scheduled report sending in Zoho Analytics

      Problem with scheduled report sending in Zoho Analytics. Reports are not sent due to size. How can I increase it?
    • 【Zohocreator】ログについて

      ワークフローのDelugeスクリプトのinfo関数が出力するログはどこから見れますか?
    • US military addresses

      When we have a client with a US military address having them fill in a form is a problem Zoho forms doesnt acommodate them correctly. It doesn't make sense for me to have to create a secondary data model for military addresses. I have placed some links
    • Introduction of Robotics Process Automation in Zoho products

      It will be great if Zoho can start advancing from automation to robotics process automation. For a start, it can be started with smart document understanding. Provide OCR engines Google cloud, Microsoft Azure Computer vision OCR, Microsoft OCR, Omnipage
    • Automation#34 : Automate Email threading for Ticket notification

      Hello Everyone, It's been a while since we've presented an automation. However, our community has been buzzing with ideas, use cases, and discussions with our community experts and Ask the Experts session. So, here we are again, presenting an automation
    • Zoho Sigma and Catalyst IPs for Whitelist

      Hi there, We are developing a series of integrations between Zoho CRM and Zoho Desk with an on-premises system for a customer and they have firewall rules to access their server, so they are requesting the list of IPs addresses for our backend calls,
    • 【開催報告】大阪 ユーザー交流会 2025/6/5 Zoho サービスを活用して業務をアップデート

      皆さま、こんにちは。コミュニティチームの中野です。 6/5(木)に、大阪 ユーザー交流会 を開催しました。本投稿では、その様子をお届けします。 当日の登壇資料などもこちらに共有しますので、参加できなかった皆さまもご参照ください。 (Zoho社員セッションの登壇資料については、8月に開催する福岡 ユーザー交流会の開催報告で共有予定です。) 今年初の開催となる大阪 ユーザー交流会では、akippa株式会社 内藤さんによるZoho CRM / Forms の事例セッションのほか、 「見込み客・顧客データの管理/活用方法」をテーマに、参加者同士でZohoサービス
    • Moving forward, can we change our reports to send record ID's by default?

      With the new policy of not including record ID's in reports, is there a way to default to including them in my reports as they used to be?
    • WhatsApp integration isn't very useful at all (no workflow support)

      We have set up WhatsApp through Business Messaging. It works, but there appears to be no workflow support for messages that are sent/received! Without being able to trigger a workflow when an inbound message is received, my colleagues would have to manually
    • Zoho CRM 差し込み文書テンプレート if文

      Zoho CRM の差し込み文書のテンプレートを作成しています。 フッターにページが 2ページになる場合は、「次葉へ」と言う文字を表示したいのですが、ページ数による判断はできないのでしょうか? 現在はサブフォームの行数で判断しているのですが、複数サブフォームを差し込んでいるので、合計何行で2ページ目になるのか把握が難しく、ページ数で判断できればうれしいなと思い、質問させていただきます。 ※行総数はワークフローでレコード保存時にカスタム関数でサブフォームの行数をカウントして数値を保存しています。
    • Record payment: Payment Mode vs. Deposit To and how to "connect" them!?

      How do we set up that when we choose:  "Payment Mode"= Cash, then "Deposit to" is automatically set to Petty Cash, and if we choose  "Payment Mode"= Check, then "Deposit to" is automatically set to Undeposited Checks, and if we choose  "Payment Mode"=
    • Allow split times for business hours feature

      It would be great to be able to set business hours multiple times during the same day. For example: Monday from 9am - 1pm, and then from 2pm - 5pm This would allow calls to be sent straight to voicemail during 1pm-2pm during lunch break.
    • Add Knowledge Base KB Articles to multiple categories

      Greetings, Love you help center system. One item that would be incredibly helpful to many of us would be able to add a single Knowledge Base KB article to multiple categories in our system. It seems it could be quite easy to use a checkbox form, instead
    • Peppol integration zoho invoicefu

      Hi, Belgium will require Peppol invoicing as of 2026. I found that this is being prepared for Zoho books, to be released in Sep 2025. Will Zoho Invoice get this functionality too? I like the Invoice app for my part-time side business as bike mechanic
    • Error in formula

      Can someone PLEASE tell me what is wrong with this formula? Formula return type, I have tried string and decimal fn.Year(fn.Now())-fn.Year(${cf_purchase_date}) I keep getting the following error. Incorrect argument type passed for function Year Thanks
    • Sync “Display Author Info” Setting from Zoho Desk to Zoho SalesIQ

      Dear Zoho SalesIQ Team, We’d like to suggest a refinement to how Zoho SalesIQ displays knowledge base articles that are synced from Zoho Desk. Current Behavior Zoho Desk allows us to control whether author information (name, profile picture, etc.) is
    • Respect Help Center Visibility Settings for Knowledge Base Sync Between Zoho

      Dear Zoho SalesIQ Team, We’d like to suggest an important improvement to the integration between Zoho Desk and Zoho SalesIQ with regard to the knowledge base synchronization. Current Behavior SalesIQ offers excellent functionality by allowing us to sync
    • Enhancing Answer Bot's Capabilities

      Wouldn't it be amazing if the answer bot could directly search for answers in our database, FAQs, articles, etc., without needing to display the entire article? without relying on external tools like ChatGPT This way, it could provide concise and relevant
    • Centralize and Streamline Zobot and Flow Control Settings in Zoho SalesIQ

      Dear Zoho SalesIQ Team, We would like to suggest a crucial improvement to the current setup and configuration experience within SalesIQ. Problem Statement Zoho SalesIQ currently offers three primary mechanisms for handling customer chats: Answer Bot –
    • Client Portal ZOHO ONE

      Dear Zoho one is fantastic option for companies but it seems to me that it is still an aggregation of aps let me explain I have zoho books with client portal so client access their invoice then I have zoho project with client portal so they can access their project but not their invoice without another URL another LOGIN Are you planning in creating a beautiful UI portal for client so we can control access to client in one location to multiple aps at least unify project and invoice aps that would
    • Show Attachments in the customer portal

      Hi, is it possible to show the Attachments list in the portal for the particular module? Bests.
    • Custom Formula

      Good day, I am trying to create a formula field in Zoho Desk to calculate an age, but I'm having trouble figuring out how to make the formula. This is a formula I found, but it keeps telling me the wrong field name. Can someone please help me? Field name:
    • Click to edit fields with Canvas layout

      Hi, I have integrated new layouts using Canvas and its been going well so far. Although I cant seem to figure out how to change the fields so you can click anywhere on it to select or edit the field. Now a small pencil will appear next to the field you
    • Show Custom CSS Changes in SalesIQ Preview

      Hello Zoho SalesIQ Team, We truly appreciate the ability to customize the chat window using custom CSS via: Settings > Brands > [Select Brand] > Personalization > Appearance > Upload Custom CSS. This flexibility is extremely helpful in aligning the chat
    • Light Agents for External Users

      We are currently on the Zoho One version of desk and cannot create any light agents. We would like to create light agents for external users in order for them to see their tickets and approve changes.
    • Inquiry Regarding Accessing Multi-Select Field in Pivot Chart

      I'm currently working on a project and would appreciate guidance on accessing and utilizing a multi-select field within a pivot chart in Zoho Creator. Could you provide instructions or resources to help me implement this feature efficiently? Your assistance
    • What should I be using Salesinbox or Zoho Mail

      Hi everyone, I again find myself a little confused by the Zoho offering.  I am a long time Zoho CRM and Zoho mail user. About a year and a half ago, Zoho mail had a major update and things like streams were added. We have learned to use the new features, although I am sure not to their fullest.  Now while getting help with an issue that I had with emails associated with Contacts in CRM, I now have just discovered that I have Salesinbox. OK, so it looks pretty cool, but now I find myself again in
    • {"error":"invalid_client"}

      Im sending POST query to https://accounts.zoho.com/oauth/v2/token like this described in https://www.zoho.com/crm/help/api/v2/#generate-access article, but got error {"error":"invalid_client"}. Im first thinking that this my mistake, but after this I
    • Digest Mai - Un résumé de ce qui s'est passé le mois dernier sur Community

      Chers utilisateurs, Encore un mois vient de filer à toute vitesse chez Zoho Community France ! Jetons un œil à ce qu’il s’est passé. Vos données non structurées méritent mieux qu’un simple stockage. Avec WorkDrive 5.0, Zoho vous propose une solution intelligente,
    • Looking to Hire: Zoho Creator Developer for Vendor Dashboard Portal

      We are a Florida-based licensed liquor distributor using Zoho Books, Inventory, CRM, and Analytics. Many of our vendors are also our customers. We’re looking to build a centralized, secure Vendor Dashboard Portal in Zoho Creator that gives access to real-time
    • Create your own convert feature in Zoho CRM | Kiosk Studio Session #7

      In a nutshell: Want to replicate the leads-to-contacts conversion flow for your custom modules? Use Kiosk Studio to build a convert feature in less than one day—with zero code—that enables the following: Conditional approvals Dynamic module mapping Automatic
    • Split View for Zoho CRM : Break down Your Module Data for Smarter Selling

      Hello Everyone, We’re excited to unveil Split View, a powerful new way to explore and interact with your data in CRM For Everyone. In addition to the recent new module views --- Chart View, Timeline View & Grid View, we've added Split View as well to
    • Some website items no longer centered.

      At some point (probably after some Zoho Sites updates) my items on the website stopped being centered. I just noticed it now so unsure when that change happened: Strange as it is - I entered the editor and I can not find the option to move them back in
    • Swipe, Snap, and Submit Instantly with Zoho Expense's Real-time Feeds

      It's time your employees enjoy the smoothest expense reporting experience ever. It's time to switch to Real-time Feeds by Zoho Expense. Upgrade your Zoho Expense experience with real-time corporate card management for the fastest, easiest, and most accurate
    • how to set the recency in segmentation rules in the last X days?

      I just change the segmentation rules recency to be like this: I want score 5 if the deal won time is in the last 30 days I want score 4 if the deal won time is in the last 60 days I want score 3 if the deal won time is in the last 90 days I want score
    • Issue with Schedule Workflows – "Usage Limit Crossed" Error

      Hi Zoho Support, We are currently facing an issue with the scheduled workflows in our Zoho Creator application. We are receiving the following error: "Usage limit crossed" for schedules. However, when we checked the usage statistics for our Creator app,
    • Card Scanner app creating duplicate Accounts

      Hi all, I recently added Card Scanner app by ZOHO on my phone. I scanned several business cards, and realized that there were some newly added Accounts. Let's say there is an Account named ABC (US) CO., LTD in our system already. The app scanned the business
    • Next Page