Building extensions #3: Fundamental features of a Zoho Books extension

Building extensions #3: Fundamental features of a Zoho Books extension

In our earlier posts, we covered how to create, test, and publish an extension for Zoho Finance suite applications. Moving forward, we'll look specifically at instances relating to one of the products from the Zoho Finance suite: Zoho Books.
In this post, we'll explore the key features listed below that are available in the Zoho Books extension developer portal.
  1. Automation and customization
  2. Seamless integration
  3. Widgets
  4. Event-based data transfer and notifications
  5. Extension configuration

Automation and customization

These are defined sets of rules that automatically execute operations and customize standards for tailoring modules and fields.

Achieving it in Zoho Books

The Zoho Books extension developer portal provides a variety of automation features, including workflows (rules, actions, and triggers), custom actions, and schedules. There are also customization features, like creating custom modules and fields, adding buttons, and including related lists for both standard and custom modules.

Example use case

Automate emails to customers in various organizations based on their accounts receivable (A/R), so that different emails are sent indicating different actions that will be taken against them based on the total value of credit payments they owe.

By using an extension, you can easily add a new custom field for accounts receivable and specify workflow rules to send an email based on the value.


Widgets

A widget is a user interface that displays data to the end-user in order to facilitate their understanding or collects input data from them in order to perform additional operations.

Achieving it in Zoho Books

The developer portal's widget feature helps create a user interface or run a client-side script. You can easily design and develop user interfaces with any web development framework; these widgets could gather user input, if required, and, based on those inputs, perform logical operations.

Example use case

Issue a mortgage lien release (certificate of release) to a borrower who has paid off their mortgage completely. This certificate indicates that the lien on the borrower's property has been released and they have regained title ownership. In this situation, a customized widget can be developed to collect personalized inputs, such as the issuing bank's (lender's) information and a customized message to be sent to the borrower, before sending the certificate out.


Seamless integration

A seamless integration or tightly coupled integration to establishes a connection between applications for data transfer and synchronization.

Achieving it in Zoho Books

The Connections feature in the Zoho Books extension developer portal can be used to achieve seamless integrations.

You can establish connections between Zoho Books and other apps by:
➤ Using the default, ready-to-use connections offered in the Zoho Books extension developer portal
➤ Creating customized connections for the applications you want to integrate with Zoho Books
Example use case

You can sync data between Zoho Books and Shopify, running your business more efficiently by completing activities from a single app and reducing manual data entry.

This data sync can be achieved by establishing a connection between these apps using the Connections feature. This enables seamless collaboration between sales and finance operations; sales contacts can be added as Zoho Books customers, and invoices issued in Zoho Books can be instantly logged and synced in Shopify.


Event-based data transfer and notifications

These are real-time notifications or actions that are triggered and executed in response to the occurrence of a real-time event.

Achieving it in Zoho Books

Webhooks and signals on the developer portal facilitate real-time data updates and notifications in Zoho Books.
The webhooks feature enhances the connection between two applications. It allows you to capture the occurrence of an event and collect and post the real-time data as an update to another application.

The Zoho Books extension developer portal provides support for both incoming and outgoing webhooks, allowing real-time data updates to Zoho Books from another application and vice versa.

The signals feature allows you to receive real-time notifications.

Example use case

A finance meeting is planned and organized using an event management app, and future potential clients are gathered from the meeting. If the follow-up is successful and a client would like an event organized, it's scheduled for them.

In this case, webhooks capture the occurrence of the event being created, collect the event-related data, update it in Zoho Books, and generate an invoice for the event. Signals can be used to display real-time notifications when new customers are added to Zoho Books.

Learn more about webhooks and signals.

Extension configuration

Manage extension configuration by allowing users to provide their preferences or user-specific data and perform actions when extensions are installed or uninstalled.

Achieving it in Zoho Books

Global fields and installation actions help achieve extension setup and execute installation-related scripts.
  • You can either create global fields to collect input from users or design widgets (with global fields, if necessary), allowing users to provide inputs and choices to configure and use the extension.
  • Perform custom actions during the extension's installation and uninstallation.
Example use case

You can sync and manage Zoho Books projects with Trello, a project management platform, to create customized task views and visually manage tasks.

This is easy to accomplish with global fields and installation actions. Since Trello requires an API key to establish a safe connection with another app, we can add a global field for it in Zoho Books. After installing the extension, users can provide their user-specific API key to establish a secure connection between the apps. Then, an install action script can be created to transfer records.


In this post, we've covered an overview of the features available while developing a Zoho Books extension and how they might be useful. We'll explore each of these features in detail in upcoming posts. We hope you found this information helpful. Keep following us for more posts!


SEE MORE



    • Recent Topics

    • Notification to customers when I use a Zoho function

      Hi all, I tried searching the community but couldn't find anything about it. I noticed that the customer receives the notification of reopening the old ticket but does not receive the notification of opening a new ticket when I use the function: "separate
    • Desk DMARC forwarding failure for some senders

      I am not receiving important emails into Desk, because of DMARC errors. Here's what's happening: 1. email is sent from customer e.g. john@doe.com, to my email address, e.g info@acme.com 2. email is delivered successfully to info@acme.com (a shared inbox
    • "Spreadsheet Mode" for Fast Bulk Edits

      One of the challenges with using Zoho Inventory is when bulk edits need to be done via the UI, and each value that needs to be changed is different. A very common use case here is price changes. Often, a price increase will need to be implemented, and
    • Email Notifications not pushing through

      Hi, Notifications from CRM are not reaching my users as they trigger.  We have several workflow triggers set up that send emails to staff as well as the notifications users get when a task is created for them or a user is tagged in the notes.  For the past 6 days these haven't been coming through in real time, instead users are receiving 30-40 notifications in one push several hours later.  This is beginning to impact our daily usage of CRM and is having a negative effect on our productivity because
    • Ticket layout based on field or contact

      Hi! I want to support the following use-case: we are delivering custom IT solutions to different accounts we have, thus our ticket layouts, fields and languages (priority, status field values should be Hungarian) will be different. How should I setup
    • Add specific field value to URL

      Hi Everyone. I have the following code which is set to run from a subform when the user selects a value from a lookup field "Plant_Key" the URL opens a report but i want the report to be filtered on the matching field/value. so in the report there is
    • Syncing Bills in Zoho Books to Zoho CRM

      Is there any way to sync the Bills in Zoho Books in Zoho CRM
    • SAML in Zoho One vs Zoho Accounts

      What is the difference between setting up SAML in Zoho Accounts: https://help.zoho.com/portal/en/kb/accounts/manage-your-organization/saml/articles/configure-saml-in-zoho-accounts ... vs SAML in Zoho One?: https://help.zoho.com/portal/en/kb/one/admin-guide/custom-authentication/setting-up-custom-authentication-with-popular-idps/articles/zohoone-customauthentication-azure
    • How do I change the order of fields in the new Task screen?

      I have gone into the Task module layout, and moving the fields around does not seem to move them in the Create Task screen. Screenshot below. I have a field (Description) that we want to use frequently, but it is inconveniently placed within the More
    • Zoho Inventory. Preventing Negative Stock in Sales Orders – Best Practices?

      Dear Zoho Inventory Community, We’re a small business using Zoho Inventory with a team of sales managers. Unfortunately, some employees occasionally overlook stock levels during order processing, leading to negative inventory issues. Is there a way to
    • CRM gets location smart with the all new Map View: visualize records, locate records within any radius, and more

      Hello all, We've introduced a new way to work with location data in Zoho CRM: the Map View. Instead of scrolling through endless lists, your records now appear as pins on a map. Built on top of the all-new address field and powered by Mappls (MapMyIndia),
    • Deactivated Zoho One account can sign in

      I am concerned by the fact that deactivated users in Zoho One have the ability to sign in even after their account has been deactivated (not deleted). these inactive identities have no access to individual Zoho apps or data. based on my experience they
    • How can I reset the password for a user in Zoho Projects

      We need to reset the password for a user in Zoho Projects. I am the admin portal owner and there was nothing to be found to do this. very confusing.
    • No funcionan correctamente el calculo de las horas laborales para informe de tickets

      Hola, estoy intentando sacar estadísticas de tiempo de primera respuesta y resolución en horario laboral de mis tickets, pero el calculo de horas en horario laboral no funciona correctamente cree los horarios con los feriados : Ajusté los acuerdos de
    • How can I add a comment to an existing ticket via API?

      I need to add comments/notes to the history of an existing ticket using the API without overwriting the original ticket description. Thanks!
    • Internal Error When Accessing Team Inbox.

      All our users are seeing this error in teaminbox. Because its a critical tool kindly resolve this issue ASAP.
    • Marketer's Space: Proven tips to improve open rates – Part III

      Hello Marketers! Welcome back to another post in Marketer's Space! This is the final post in the "open rate series". In the first and second parts, we discussed topics ranging from sender domains to pre-headers—but we're not done yet. A few more important
    • MCP no longer works with Claude

      Anyone else notice Zoho MCP no longer works with Claude? I'm unable to turn this on in the claude chat. When I try to toggle it on, it just does nothing at all. I've tried in incognito, new browsers, etc. - nothing seems to work.
    • Change Number Field to Decimal Field

      Hi, It would be nice to be able to change the field type without having to delete it and create a new one, messing up the database and history. Thanks Dan
    • Allow Text within a Formula

      Hi, I would like to be able to use this for others things like taking an existing Date Field and copying its value, so by entering getDay(Date)&"-"&getMonth(Date)&"-"&getYear(Date) it results in 01-02-2026. And then when the Date is changed so is this
    • Zoho Social - Feature Request - Reviewer Role

      Hi Social Team, I've come across this with a couple of clients, where they need a role which can review and comment on posts but who has no access to create content. This is a kind of reviewer role. They just need to be able to see what content is scheduled
    • Zoho Books/Inventory - Update Marketplace Sales Order via API

      Hi everyone, Does anyone know if there is a way to update Sales Orders created from a marketplace intigration (Shopify in this case) via API? I'm trying to cover a scenario where an order is changed on the Shopify end and the changes must be reflected
    • Zoho Inventory / Finance Suite - Add feature to prevent duplicate values in Item Unit field

      I've noticed that a client has 2 values the same in the Unit field on edit/create Items. This surprised me as why would you have 2 units with the same name. Please consider adding a feature which prevents this as it seems to serve no purpose.
    • Zoho CRM for Everyone's NextGen UI Gets an Upgrade

      Hello Everyone We've made improvements to Zoho CRM for Everyone's Nextgen UI. These changes are the result of valuable feedback from you where we’ve focused on improving usability, providing wider screen space, and making navigation smoother so everything
    • Kaizen #224 - Quote-driven Deal Reconciliation Using Zoho CRM Functions and Automation

      Hello everyone! Welcome back to another instalment in the Kaizen series. This post covers quote-driven deal reconciliation, emphasizing Functions and Automation to address practical sales challenges. Business Challenge Sales organizations often mark deals
    • Dependent / Dynamic DropDown in ZohoSheets

      Has anyone figured out a way to create a Dropdown, the values of which is dependent on Values entered in the other cell ?
    • 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
    • Directly Edit, Filter, and Sort Subforms on the Details Page

      Hello everyone, As you know, subforms allow you to associate multiple line items with a single record, greatly enhancing your data organization. For example, a sales order subform neatly lists all products, their quantities, amounts, and other relevant
    • BARCODE PICKLIST

      Hello! Does anyone know how the Picklist module works? I tried scanning the barcode using the UPC and EAN codes I added to the item, but it doesn’t work. Which barcode format does this module use for scanning?
    • Zoho Inventory - Allow Update of Marketplace Generated Sales Orders via API

      Hi Inventory Team, I was recently asked by a client to create an automation which updated a Zoho Inventory Sales Order if a Shopify Order was updated. I have created the script but I found that the request is blocked as the Sales Order was generated by
    • How do I create an update to the Cost Price from landed costs?

      Hi fellow Zoho Inventory battlers, I am new to Zoho inventory and was completely baffled to find that the cost price of products does not update when a new purchase order is received. The cost price is just made up numbers I start with when the product
    • Manage control over Microsoft Office 365 integrations with profile-based sync permissions

      Greetings all, Previously, all users in Zoho CRM had access to enable Microsoft integrations (Calendar, Contacts, and Tasks) in their accounts, regardless of their profile type. Users with administrator profiles can now manage profile-based permissions
    • Zoho OAuth Connector Deprecation and Its Impact on Zoho Desk

      Hello everyone, Zoho believes in continuously refining its integrations to uphold the highest standards of security, reliability, and compliance. As part of this ongoing improvement, the Zoho OAuth default connector will be deprecated for all Zoho services
    • VoC in Zoho CRM is now data savvy: Explore response drilldown, summary components and participation in CRM criteria

      VoC has all the goods when it comes to customer intelligence—which is why we're constantly enhancing it. We recently added the following: A customer drilldown component that shows you the list of prospects and customers behind a chart's attribute Expanded
    • How do I bulk archive my projects in ZOHO projects

      Hi, I want to archive 50 Projects in one go. Can you please help me out , How can I do this? Thanks kapil
    • Error 0x800CCC0F Outlook

      Hello, i cannot send or receive email in outlook. can you please help. 'Sending' reported error (0x800CCC0F) : 'The connection to the server was interrupted. If this problem continues, contact your server administrator or Internet service provider (ISP).'
    • Passing the CRM

      Hi, I am hoping someone can help. I have a zoho form that has a CRM lookup field. I was hoping to send this to my publicly to clients via a text message and the form then attaches the signed form back to the custom module. This work absolutely fine when
    • Can I add Conditional merge tags on my Templates?

      Hi I was wondering if I can use Conditional Mail Merge tags inside my Email templates/Quotes etc within the CRM? In spanish and in our business we use gender and academic degree salutations , ie: Dr., Dra., Sr., Srta., so the beginning of an email / letter
    • Zoho vault instal on windows

      I am trying to use Zoho Vault Desktop for Windows, but I am unable to complete the sign-in process. Problem description After logging in to my Zoho account and clicking Accept on the authorization page, nothing happens. The application does not proceed
    • Zoho Browser??

      hai guys, this sounds awkward but can v get a ZOHO BROWSER same as zoho writer, etc. where i can browse websites @ home and continue browsing the same websites @ my office, as v have the option in Firefox, once i save and close the browser and again when i open it i will be getting the same sites. If u people r not clear with my explanation, plz let me know. Thanks, Sandeep  
    • Next Page