In our last post, we looked at an overview of the key features available for creating a Zoho Books extension, including connections. In this post, we'll go over connections in depth, including their types and applications.
What are connections?
"Connections" is a component in the developer console that allows you to establish secure connections between applications. In general, a secure connection is essential for apps to work seamlessly for data transmission and synchronization. The connections functionality in the Zoho Books extension developer portal is ideal for securely connecting Zoho Books to other Zoho products or third-party applications.
Types of connections
The Zoho Books extension developer portal allows you to use both predefined and custom connections.
Predefined connections:
These are ready-to-use connections that are preconfigured for various applications to connect with Zoho Books. You can simply search for the application you want to connect to from the default list, choose it, enter some basic information (scope), and connect to Zoho Books.
Custom connections:
These are connections for apps not included in the default list. You can create a custom connection by manually setting up or configuring information about the application you want to connect to Zoho Books with—such as the authentication type and other corresponding details—and then proceeding with the connection.

Note: You can also create these custom connections for applications in the default list if you want to customize the connection with specific details.
Now, let's explore the steps to create these connections with an example for each.
Steps to create a predefined 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 to view the connection details, types (predefined and custom), and support to create a new connection.
- Click the New Connection button 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 building connections.
- You'll be redirected to the connections page of your extension's developer space, where you can select default or custom services to create connections.
In this post, we'll walk you through creating a predefined connection using the default services available.
For our example, let's create a connection for Wrike (a project management service) available in the default services list and integrate it with Zoho Books.
- Choose Wrike from the default services list.
- Click the Create Connection button.
- Provide the connection details.
➤ Enter the connection name.
➤ Toggle and choose whether you want every user to enter their credentials during connection authorization.
➤ Choose the scopes necessary for your purposes for the connection.
- 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.

Note: Giving the connection name in the script is critical to be able to use the connection in the extension.
- Close the connection's detail page, and you'll be taken back to your extension's developer portal.
- If needed, you can create multiple connections for your extension. The connections you've created will be visible in the My Connections section of the Connections page.
- You can click on a connection to view its details or choose to revoke it, if necessary. You can reconnect a revoked connection whenever you need it.
Let's look at a simple scenario for the predefined connection we created. Assume that each time a project is created in Zoho Books, a new project is created in Wrike to handle project management in detail. In addition, if any tasks are available as part of that Zoho Books project, they'll be instantly created in Wrike alongside the project. This can be accomplished easily in an extension using workflows, custom functions, and connections.
Let's check out the steps to make this happen.
- Create a custom function for the Projects module by selecting Automate, then Workflow Actions, then Custom Functions, then New Custom Function. Include the logic to fetch the details and its tasks from a Zoho Books project and create a matching project in Wrike.
createwrikeproject deluge function - Please find the code snippet as an attachment in the post
- In the code above, the Zoho Books project's details, such as project name and task details, are fetched from the Project Map parameter in the custom function.
- The retrieved project details are constructed as a Map and then passed to the invokeURL deluge task to invoke the Wrike API and create a project. Additionally, a check is made to see if the Zoho Books project has tasks associated with it. If it does, then those tasks are added to the project created in Wrike using the Wrike API to create tasks.
- The Invoke URL task requires some basic parameters to invoke the API and provide a response.
➤ url: This is the URL of the application's API that will be invoked. In our case, it's the Wrike API URL for Create Project and Create Task.
➤ type: This is the method of the HTTP request required for the API. Since we're creating projects and tasks in Wrike, the type is POST in our example.
➤ parameters: These are data that need to be constructed and passed as the body for the API.
➤ connection: The name of the Wrike connection we created has to be supplied as the value for the connection parameter. This ensures that data transfer between Zoho Books and Wrike is authorized and secure.
- Next, create a workflow rule for the Projects module by selecting Automate, then Workflow Rules, then New Workflow Rule.
- Set the Action Type as "When project is created."
- Now, associate the custom function (createwrikeproject) as a workflow action to this workflow rule. Save the workflow rule.
We've now completed our extension setup for our use case.
After testing and publishing our extension, whenever a new project is created in Zoho Books, a matching project is created in Wrike as well, along with any tasks.
This example demonstrated a seamless transfer of data from Zoho Books to Wrike with connections. This use case can be taken a step further, making sure the project and its tasks maintained in Wrike are also synchronized in Zoho Books.
In this post, we've seen how to set up a predefined connection and use it in a Zoho Books extension. In the next post, we'll look at custom connections and how to create them.
SEE ALSO
Recent Topics
Invoice status on write-off is "Paid" - how do I change this to "Written off"
HI guys, I want to write off a couple of outstanding invoices, but when I do this, the status of the invoices shows as "Paid". Clearly this is not the case and I need to be able to see that they are written off in the customer's history. Is there a way
Reverse Charge Services (Non-EU) Showing Correctly in 84/85 and 67, But Missing in Box 46 - Germany
Hi, I'm located in Germany and I’ve set up my expenses for non-EU services (e.g., OpenAI, DeepSeek) under the reverse charge mechanism (§ 13b UStG) in Zoho Books, and I noticed some discrepancies in the VAT Summary Report. What’s Correct: Reverse Charge
Zoho Live Chat/Support
What is going on with Zoho support lately? I've tried to use the live chat feature 4 different times and it refuses to connect to any (despite waiting over 30 minutes one of the tries). I finally gave up and emailed my question nearly a week ago and still
Can we have a module to records Certificate No and TDS rates for Lower TDS Certificates by the vendors ?
Can we have a module to records Certificate No and TDS rates for Lower TDS Certificates by the vendors ?
Tip #38- Track Organizational Changes: A Guide to Using Action Log Viewer- 'Insider Insights'
Hello Zoho Assist Community! Ever needed to trace who did what and when within your remote support operations? Let’s say your support team is growing, and you want to monitor key activities like settings updates, user invites, module changes, or permission
Tip of the Week #67– Avoid confusion – Mark duplicate threads.
When customers send the same message to multiple email addresses, such as support@ and sales@, your team may end up seeing the same message in different inboxes. This creates confusion, risks double replies, and clutters your workspace. Use the Mark as
Tax in Quote
Each row item in a quote has a tax value. At the total numbers at the bottom, there is also a Tax entry. If you select tax in both of the (line item, and the total), the tax doubles. My assumption is that the Tax total should be totalling the tax from
Final Reminder: Discontinuation of Older ASAP Widgets and Mobile SDK Support
We launched the new ASAP Help Widget last year, introducing a unified and enhanced experience. Since then, older configurations have been placed in read-only mode, with all major updates and improvements built exclusively on the new version. As part of
Zoho Subscriptions -- Zoho Commerce integration
Is there integration between Zoho Subscriptions and Zoho Commerce? I would like to create subscription plans in Zoho Subscritpions and list them for on my Zoho Commerce store.
Website show Blank white screen
Customer called me to tell me my website is currently down upon review it shows a white screen however I can access everything via editor. JITCADCAM.com
How manufacturing analytics can transform your enterprise with Zoho Projects Plus
Did you know that every single car is made up of 30,000 to 40,000 individual parts? All of these are manufactured meticulously in various facilities before being assembled into one. The global manufacturing industry spans a wide range from delivering
Projects custom colors replaced by default orange
Since yesterday, projects uploaded to Zoho, to which I had assigned a custom color, have lost the customization and reverted to the default color (orange). Has anyone else had the same problem? If so, how did you resolve it?
Customize your SalesIQ live chat with Custom CSS and blend it with your website design
Hi everyone. Hope you all are having a great day! SalesIQ offers various inbuilt customization choices for your chat widget and window like changes in colour, theme, font etc. Although these choices are many, sometimes they may not match with the design
From Email Address When Replaying to Missed Chats
One of the most common things we do is follow up on every missed chat. Missed chats are like money in the bank, people just waiting for your response and to start a relationship with our companies. However, SalesIQ only lets you respond from 1 email address from your entire account?! We have happily paid for 4 subscriptions, but our users cannot reply from their own email address? How are we supposed to build customer relationships? The fix to this issue is so simple, just load in the logged in
how to treat a same person as customer and vendor in zoho
hi team, in my company, few persons acting as creditors as well as debtors (which means sometimes we pay them... some times we paid by them). in that case i would like to maintain a same ledger for that person.in zoho books it is treating creditor and
Narrative 6 - The impact of rebranding
Behind the scenes of a successful ticketing system - BTS Series Narrative 6 - The impact of rebranding Every organization has invested in branding to set itself apart, and that should be reflected in the help desk. Zoho Desk enables organizations to apply
custom color palette for picklist in Sheet
Migrating over from Google Sheets and missing the ability to customize the individual item colors of my picklist/dropdown menus. Is this something that is possible? A search showed me creating a custom color palette in Analytics is possible but I am not
What's New - July 2025 | Zoho Backstage
Start smart, end strong. From knowing who’s coming to celebrating who showed up, July’s updates help you run events that feel organized from the first invite to the final thank you. Planning an event used to be like writing a choose-your-own-adventure
Image Upload Field API get encrypted ID and sequence number
Hello is there a way to extract the encrypted id and sequence number from image upload fields through the Zoho CRM API? I created a custom script with javascript within Zoho CRM, but I want to extract the encrypted id and sequence number for all my images
Attention: Changes to 10DLC TCR pricing and new authentication requirements
Hi everyone, Starting August 1, 2025, The Campaign Registry (TCR) is introducing new pricing changes and a mandatory brand verification process called Authentication+ 2.0, which will affect how you register and manage your 10DLC messaging services. These
Better Time Tracking
We need better time tracking customization for IT MSPs. We also need reporting that is built in, rather than having to try and fumble with creating custom reports. We also need to be able to mark whether a ticket has been billed or not, I don't think
Scheduled Tickets Need Updated
There is a very clunky manual way to create reoccurring scheduled tickets. This should be created to be easy for the administrator to create. We create several (10 to 12) reoccurring tickets per account for biweekly and monthly auditing purposes.. The
Team Feeds Improvements
Team Feeds needs to show a feed of every action within the department. Currently it seems that the feed will only show a ticket that I've personally commented on or interacted with/followed. A feed should be that, a feed. As a manager I would like to
Better Security, Better User Experience | Help Center Update | June'25
As part of our commitment to enhancing user experience and security, we are happy to announce updates to our authentication mechanism. This update introduces several key enhancements designed to improve the password recovery process and streamline the
Upload Logo to Account Page
It would be nice to set a logo for an Account
View Agent Collision on Ticket List Page
It would be nice from the ticket listing page (views) to see what agents are working on what tickets rather than having to click into each ticket throughout the day to see what agents are working on what tickets. This functionality would also be desired
Restrict user from viewing the detail standard view
Is there any way to restrict a user(it can be user-field-based) from viewing the detail standard view? Basically, I have created a canvas detailed view so that on some conditions I can hide some data from the users but the standard view client script
Upload Picture to Contact
It would be nice to upload a profile picture to a contact.
Allowing Pictures for Client Contacts
Do you have any plans to allow us to add pictures of our client contacts? There is a silhouette of a person there now, but no way that I can see where I can actually add a picture of the individual.
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
Agent name Alias
I am seeing that Full name of my staffs are written on every ticket response which is not good for some reasons. It is possible to user like this: Manny P. (First Name with Last Name's First Letter) or Manny (First Name) This is want we want to show
Unable to add attachments to tickets through Desk API
I able to use the Desk API to generate tickets. However when I try to use the tickets/{ticketId}/attachments endpoint, I always get an Unauthorized error. My app has Desk.Tickets.ALL included in its scope so this should not be an issue
What's wrong with this COQL?
What's wrong with this COQL? Code returns "invalid operator found". SELECT id, Name, Stage, Account, Created_Time, Tag FROM Production_Orders WHERE (Account = '4356038000072566002' AND Stage NOT LIKE '%customer%') ORDER BY Created_Time DESC LIMIT 200
[Feature Request] Add support for internationalized top-level domains mail hosting
This is an important request to add support for internationalized domains mail hosting to https://www.zoho.com/mail/ In this case, that is only limited to domain name/mail address however currently it's already possible for us send mails etc using below
Add Enable/Disable to Field Rules and other Rules
Hi, Sometimes I have rules setup for fields, and until I want to enable them for use, I can set the fields to Hidden but rules still show them, today you have to delete rules and then recreate them again, would be nice to have a toggle for Enabled/Disabled
Syncing stuck for days
Hello when I made an account a few days ago and synced all my notes to it, it is still syncing. My app is only 400mb so I do not know why it is taking so long. Please help
Workflow runs on every edit despite not ticking the field repeat this workflow whenever a parent is edited.....
Hi, It is my understanding that this workflow should only trigger once. Why is this triggering on every edit of the field? Based on another support query - directly from Zoho, If i tick the box 'repeat this workflow whenever a parent is edited' it should
How do you add or update tags on Zoho CRM records via n8n? (Workarounds or best practices?)
Hi all, I’m running into some limitations with the Zoho CRM node in n8n and was wondering how others have handled this: From what I see, the standard Zoho CRM node in n8n doesn’t allow you to add or update tags when creating or updating contacts/leads.
API PARAMETER FOR TICKET CLOSED TIME
Hi, Is there a parameter for filtering tickets by closed time in zoho api, i can see closed time in the API response i get, but can't get tickets by that field while calling. Regards, Anvin Alias
Reply to email addresses wrong.
I have setup my Zoho mail account using my main domain and I also have an Alias setup from a different domain. In Settings - Mail - Compose I have selected to the option "For replies, send using The same email address to which the email was sent to".
Next Page