Extensions 101: Build Extensions for Zoho Finance suite

Extensions 101: Build Extensions for Zoho Finance suite



Hello Developers!

We are thrilled to announce our 5-day webinar series on building extensions for Zoho Finance Suite products.

Our first session was a resounding success, introducing Extensions, Zoho Developer, Zoho Marketplace, and the Zoho Books Developer platform. The session was not only informative, but also highly interactive. We look forward to continuing this momentum in our upcoming sessions.

If you missed the first session, you can find the recording below. To participate in our upcoming sessions of this series, you can register here.



As part of our commitment to your learning, we have carefully curated the questions received during the session and provided answers. We understand your questions are crucial to your understanding, and we are here to support you.
  1. Could you help us with more information related to Zoho Platform in general, Zoho Flow, and Zoho Creator.
    You can find the details about the different platform capabilities in the following link. https://www.zoho.com/developer/apps.html. You can also refer to this video, which explains the Zoho Developer platform and the different sections available in it.

  2. How do we make connections work in the test environment?
    The base URL for testing APIs in the developer portal sandbox is
    https://extension-books.sandbox.zoho.com.
    The respective team is working on a fix to resolve this, so that "api_root_endpoint" from the Organization map can be used without any issues to test the APIs in the sandbox. We will keep you updated here in this post once the fix is rolled out live.

    [Updated on 02/Jul/2024]
    As mentioned earlier, the issue has been fixed and rolled out. Now, you can use the "api_root_endpoint" from the Organization map, which will automatically fetch the current environment's base URL. You can refer to the code snippet below for fetching Books information with your connection details:

    organizationID = organization.get("organization_id");
    apiEndpoint = organization.get("api_root_endpoint");
    respcontacts = invokeurl [
         url :apiEndpoint + "/contacts?organization_id=" + organizationID
         type :GET
         connection:"xxxxxxxxxx"
         ];

  3. What are the criteria to be considered while choosing to utilize a Private Extension or performing the customizations on a Zoho Books instance?
    A private extension would be helpful when you need to share a customized feature with multiple Zoho Books instances (orgs or users). Otherwise, you can go with product customization.

  4. Are global variables created in an extension accessible in other extensions/widgets?
    No, global fields can be accessible within the extension in which they were created. If necessary, visibility can be controlled within the extension.
    https://www.zoho.com/books/developer/extensions/configuration.html#global-fields

  5. Is it possible to connect WhatsApp business account with Zoho books along with its features?
    No. You cannot directly connect an application with Zoho Books. For any integration with Zoho Books, a secure and valid connection with the respective product must be established. Following that, you need to build the integration based on the use cases you plan to achieve. This implementation will depend upon the platform as well as the products' supported features.

  6. How do I construct data for items, materials, and prices without manually editing items as it consumes more time?
    With widgets and APIs, you can use your own user interface to create the respective module's records.

  7. Can we use global variables to store sensitive information needed for use by the extension/widget? What is the alternative to global variables?
    While reviewing the extension, we don't encourage storing users' sensitive information as per privacy policies. Other than that, if you need some data to be stored securely and used within an extension, global variables would be the best option. Otherwise, you can store it through a widget.

  8. Is the sandbox data retained between tests?
    Yes. The data will be retained.

  9. How do widget and extension share data?
    Similar to how you add various components to your extension, widgets are also added as a component. Unlike the other components, widgets must be embedded into Zoho Books at a specific, customizable location. Consequently, data or values defined within an extension will be accessible from a widget. The visibility and accessibility of the data can be controlled depending on how it is defined.

  10. Can I access the Zoho Developer from my Zoho Books?
    No. Zoho Developer is a free cloud platform that allows users to build different types of apps for Zoho products. You can only develop extensions for Zoho Books using this platform.

  11. Use case: When a contact is linked to a product in Zoho CRM, a new ticket needs to be created in Zoho Desk. To implement this, how can I connect to Zoho Desk to create a ticket?
    To implement your use case, you must create an extension for Zoho CRM with a connector for Zoho Desk. You can invoke the Desk API to create a ticket using that connector.

  12. Is approval from the Zoho Books team required for a private extension?
    Yes. A review of private extensions will be done for the initial phase. Since finance suite extensions involve financial data, the review is mandatory.

  13. Which Zoho Books plan is offered in the developer platform? Also, which plan of Zoho Books is required to test and install an extension?
    The Ultimate plan of the Indian edition is applied by default in the Zoho Books developer platform to build extensions. All the features available as part of the Ultimate plan will be available during your extension development on the developer platform.

    With regard to the plan required to test an extension, a 14-day trial plan should suffice. However, if you already have a paid org, it's recommended to have a Premium or above plan to test and install the extension. If you're using other paid plans, the suitability depends on the component's limits. Please refer to this link for more details: https://www.zoho.com/in/books/pricing/pricing-comparison.html?highlight=professional#:~:text=Customization%20and%20automation

  14. Should we post in the developer forum or write directly to the support email for suggestions and help.
    If your query is a support question related to a Zoho product, you can email the respective Zoho product's support email address. However, the developer forum is ideal if you want to validate your thoughts from other Zoho users. There are 100+ million users in the forum. The challenge you face could have already been shared and discussed by other users. Hence, the Zoho Cliq developer forum is an efficient mode of quick exchange of thoughts.

  15. When will the comments in threads be accessible to Cliq channel users in EU data center?
    We love for all customers across the world to come together, exchange knowledge, and grow together. Our Cliq team is working to address some bottlenecks, like checking the thread, regardless of your DC. We will be the first to update you once the feature is ready.

  16. How can I use the request method within a widget?
    We have SDKs for widgets to communicate with Zoho Books. The ZFAPPS.request() method will help you to make a network request. You can learn more here.

  17. Will there be support for SDK methods for package module in future?
    We have currently supported SDK methods for limited modules. We will add the missing modules in future updates.

  18. Does the get method work only when we are on a particular module?
    The get method helps you to get records' data only on specific locations. For example, consider that you are on the sales order page; you can get the 'salesorder' data only. If you require other details, you have to use the request method to initiate an API call.

  19. What is the difference between Integration and extension?
    The terms integration and extension are almost similar. Integrations include both API-built apps as well as platform-built apps.

    Extensions: We use this term to the apps that are built using the Sigma platform, wherein you can make enhancements to extend the existing functionality of a Zoho product by customising the product or connecting with other applications.

    API-built apps: These apps could be built in any development environment of your choice, and you would consume the respective Zoho product REST APIs to implement your use case. In these types of apps, you would be operating more on the data of the respective apps.

  20. What's an example of a web tab?
    Say you've created a Zoho Creator application to manage the manufacturing process, POS, or a specific aspect of your business. You can copy the embed URL and create a web tab for it. Now, you’ll be able to access this Zoho Creator application within Zoho Books instead of opening it in a separate browser tab.

  21. Can we have a Zoho Books web tab directly inside Zoho CRM? Finance is available, but it is limited in its functionality.
    No, the entire Zoho Books product cannot be constructed as a web tab inside Zoho CRM. In general, a web tab is used to embed a page inside the product. However, Zoho finance inside the Zoho CRM is an integration with additional functionalities.

  22. What happens if an extension is not approved after review? Can it not be published on the Marketplace, or can I not use it as well?
    An approved extension can only be deployed in the Zoho marketplace. If it is not approved, you can make the necessary changes and send it again for review. Until then, you can use the extension locally and share it privately with your customers.

  23. What is the size limit for data storage in the Zoho Books widget?
    Up to 10000 characters can be stored.

  24. For third-party integrations, can you host the API pull request on Sigma?
    Yes. To invoke third-party APIs, you can use the request SDK method. These topics will be covered in our upcoming sessions. Stay tuned :)

  25. Is there any charge for building and listing extensions?
    No, the Zoho Developer platform is free, and hence, there is no charge for building extensions or listing them in the Zoho Marketplace.

  26. Can we create extensions using trial account also? I am unable to create extensions for CRM in my trial account.
    In general, trial accounts can be used to test product functionalities. Since Zoho Developer is a free cloud platform, you can sign up for a Zoho Developer account and directly start with extension development. Also, the extensions for Zoho CRM can be developed using a Zoho Developer account in the U.S. DC only.

  27. In the Zoho Books widget, is there any method to retrieve records from another module without using the request method, perhaps through any SDK methods?
    Sorry, this is not possible right now.

  28. As an individual developer and not a company, is it possible for me to create extensions?
    Yes, you can go ahead and create extensions if you have a Zoho Developer account.

    • Sticky Posts

    • Zoho Developer Community Monthly Digest - December 2024

      Hello everyone! As we step into the new year, let’s reflect on the strides we’ve made together and gear up for the exciting opportunities 2025 holds. This month’s digest highlights key updates, engaging discussions, and upcoming events designed to keep
    • Zoho Developer Community Monthly Digest - November 2024

      Hello everyone! Welcome back to the November edition of the Developer Community Monthly Digest. Dive in to explore the upcoming events, hands-on training sessions, exciting product updates, insightful discussions, and more to keep you informed and inspired!
    • Zoho Developer Community Monthly Digest - October 2024

      Hello everyone, This edition highlights October's product updates, upcoming community events, engaging discussions that sparked inspiration, and celebrates the top contributors who drove progress. Grab your favorite beverage and dive in! Upcoming Events
    • Zoho Developer Community Monthly Digest - September 2024

      Hello everyone, This month's Developer Digest is packed with resources to help you build powerful applications. Learn how to leverage Zoho CRM's new features, explore the latest in Zoho Finance and Catalyst, and join exciting bootcamps, webinars, and
    • Zoho Developer Community Monthly Digest - August 2024

      Hello everyone, Get ready for another exciting month of Zoho development! Our August digest is packed with events, resources, and community discussions to empower you as a Zoho developer. Let's dive right in! Upcoming Events To stay on top of the upcoming
    • Recent Topics

    • Lookup Field in Zoho Forms <> Zoho CRM Integration

      Hello, We use Zoho CRM to manage our products, create quotes, etc. I want to use Zoho Form to configure a simple form that allows customers to request quotes on our website. I completed the form and used a subform for the "Add items to your quote" part
    • An update to improve email delivery | Email Authentication & Relay

      Dear Zoho Recruit Community, We hope this message finds you well. This post is to inform you about an important update regarding the authentication of all email domains in your Zoho Recruit account. Effective 31st December, 2024, emails sent using email
    • Create custom rollup summary fields in Zoho CRM

      Hello everyone, In Zoho CRM, rollup summary fields have been essential tools for summarizing data across related records and enabling users to gain quick insights without having to jump across modules. Previously, only predefined summary functions were
    • 100 record view limitation

      I have just migrated from another CRM and am starting in ZOHOcrm with over 5000 contacts. It seems that my searches and sorts are limited to 100 live records....or am I missing something. This seems to be very limiting...in a lot of scenarios (mass email,
    • Setting Up Direct Mail Campaigns

      If I need to set up a 5 step direct mail campaign is that possible? Basically every week I upload names from a CSV to Zoho and then would need to mail them every 45 days for about 6 months. I would want to be able to take names off the list when they say their house is sold or that they don't want to be contacted. I don't necessarily need to have it integrated with click2mail or anything but would at least need to be able to export the file in a CSV/excel for each mailing.  Does anyone know if that's
    • RFQ MODEL

      A Request for quotation model is used for Purchase Inquiries to multiple vendors. The Item is Created and then selected to send it to various vendors , once the Prices are received , a comparative chart is made for the user. this will help Zoho books
    • ChatGPT

      Hola, sabéis si además de tener la licencia de chat GPT Plus hay que comprar créditos para usar chat GPT en zoho social? Gracias
    • Recruit - How to Force a Job Opening out of a Blueprint

      In past versions of Zoho Recruit, there was the ability to create a custom button on a record's page that would evoke a URL that would force a record out of a blueprint. What is that URL or is there a better way to force a record out of a blueprint?
    • Introducing Zia LLM: Zoho’s in-house Generative AI solution for CRM's AI capabilities

      Hello everyone, We're excited to announce the launch of our in-house Large Language Model (LLM) by Zia to power our AI offerings. What is LLM? LLM stands for Large Language Model, a powerful AI technology that processes and generates human-like text based
    • ERROR

      I deleted a contact card, I want to add it again but it says that the contact already exists. I searched the records and it is not there, and I even deleted it in the trash. The email is this one:xxxxx. Please help!!
    • How to Automatically Populate the Deal ID in the Parent Lead After Creating a New Deal with Blueprint?

      Hello Everyone! 🎉 I wanted to share a solution to a problem that some of you might have encountered. In Zoho CRM, when creating a Deal from a Lead using a Blueprint, data can only flow in one direction—from the Lead (parent) to the Deal (child). But
    • Chroniques de l'année 2024 Zoho France : avec vous, pour vous !

      Nous vous adressons nos vœux les plus chaleureux pour une année 2025 exceptionnelle et pleine de réussites ! Fidèle à son habitude, Zoho France vous réserve chaque année de nombreuses mises à jour, des événements marquants, des activités diversifiées
    • Why can't I see the delivered Zoho Campaign automation email on Zoho CRM lead record?

      I recently did update the field mapping on our Leads sync services between Zoho CRM and Zoho Campaigns. The end goal is to create tailored email drip campaigns with the use of segments and automation. I understand you can build cadences, email templates,
    • Custom Function to Format Phone / Mobile numbers in Australian Standard format

      So I got sick of phone numbers being formatted incorrectly and Zoho not doing anything to standardise phone numbers to meet E.164 formats. So I went and coded my own function to fix this. And figured I'd share with the community This is specifically for
    • Kaizen #173: A Comparison of Zoho CRM REST APIs and GraphQL APIs

      Hello everyone! Welcome back to another week of Kaizen! Zoho CRM offers two API architectures for its users: REST API and GraphQL API. Each of these API architectures has its own strengths and ideal use cases. In this post, we will discuss the difference
    • Marketer's Space: Leveraging CRM Data for Dynamic Content and Personalized Campaigns

      Hello Marketers! Welcome back to another post in Marketer’s Space! We’re excited to continue our series on the many advantages of integrating Zoho CRM with Zoho Marketing Automation (ZMA). This series is designed to help you unlock the full potential
    • How to preview a locked note? Or just lock one?

      Once a note is locked there is no preview, just a blur (good). But, if there are a lot of notes, wouldn't it be good to have the title show up and blur the rest? Or am I just being dumb - do they all unlock and lock at the same time?
    • Linkedin Plugin

      H, Is there a plugin to allow the connection to LinkedIn and simplify editing? I've looked at a few, but they all seem to be outdated and not working... What do you use or can you recommend?
    • Query About Updating Records in Batches via API

      We are working on integrating the Creator application with an external app, and we need to update thousands of records daily. I understand that the "Update Records" API is available; however, it appears to be designed for updating multiple records with
    • Unable to use Sign "You have entereed some invalid characters"

      Unable to use Sign "You have entered some invalid characters" I do not see any invalid characters. The text in "Leave a Note" is plain text which I entered directly into the field. See attached screenshot
    • Remove the link between app admin roles and org admin privileges

      Greetings Zoho One Team, Currently, assigning someone as an admin in certain Zoho apps, such as Cliq, Connect, Mail, Vault, or Forms (and maybe other apps as well) automatically grants them org admin privileges, even though they are not listed as org
    • !! URGENT My sent mail goes to spam

      I tested a few times and every time I send mail out it goes the recipients spam box.  Why is it marking my mail as spam? please help me ! thanks
    • Difference between Admin, Team leader/Manager, Clinets/user profile and roles in Zoho Project

      I've been wondering to find out the difference between the key feature of Admin,Manager, and client/user in Zoho Project. I am student and trying to learn about the Zoho Project. I could not find the roles and profiles difference between this 3 users
    • Missing Modules such as RFQ, Purchase request and Store room

      Hi, I wonder why zoho doesn't add Purchase requests module e.g. ( a lower level staff wants to request for provision of something) which can be approved or rejected by his/her manager. In case of approval, same request can be converted into RFQ. Secondly
    • Important updates to Zoho CRM's email deliverability

      Last modified on: Jul 24, 2024 These enhancements are released for all users across all data centers. Modified on: Oct 30, 2023 Organisations that are in the Enterprise and above editions of Zoho CRM, and have not authenticated their email-sending domains
    • 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
    • Zoho expense linked with Campaign instead of customers

      Hi, Is there a development planned for linked an expense or a report to a zoho campaign? Indeed, suppose I created a campain in which I add different clients (for example a trip to a foreign country where I meet 3 different clients), I would like this campaign to be linked to the expenses I have. Say I have a plane ticket, taxis and 1 hotel night, I would like those expenses to be linked to the 3 clients. With Zoho expense, it is not possible at the time (or maybe it is but I do not know how!). thanks
    • Function #4: Schedule Customer Statements

      Regularly sending statements to customers is an imperative part of many business processes as it helps foster strong customer relationships and provides timely guidance on payments. While you can generate the statement of accounts and have it sent over
    • Export multiple Invoice PDF

      As part of end of year accounting a client needs to export all of their Invoices in PDF from Zoho CRM. Do they need to click into every single Invoice and click the Export to PDF button. Is there a means of either doing a mass Export to PDF of all Invoices
    • How to create Sepa Direct Debit XML file: solution and code

      Even though Books provides a payment integration for Stripe and Gocardless (in Europe) there are customers that want to use the Sepa services of their own bank. Mainly because Stripe and Gocardless are quite expensive. In that case they would need a Sepa
    • Introducing 'Dynamic display' in the latest version of the Bigin Android mobile app.

      Hello everyone! In the latest version of the Bigin Mobile Android app (1.6.0), we have introduced support for Dynamic Display, which transforms the List View into a powerful and customizable visual interface. Dynamic Display: This feature allows users
    • CRM - Copy data from Single Line to Lookup Field

      Hello, I need help to create a workflow with a custom function in order to copy value from a single value field to a Lookup Field. Module : Shipment Single value field API name : Customer_ID Lookup field API name : Account_ID WOuld be great to have some
    • How to Parse XML Data Returned by API?

      I have several APIs integrated with my CRM and they work great. I am having some trouble though parsing data out of a large string/array in Funtions? I need to be able to pull the DeviceId and the WebSiteDeviceName from each PanelDevice. I would appreciate
    • Unable to add organization consultants and contractors in Zoho People

      Hello Team: I am unable to add my few consultants and contractors in Zoho People. How to add these people as Users?
    • Why can't I see the email from Zoho Campaigns Automation under Zoho CRM Leads module?

      I recently did update the field mapping on our Leads sync services between Zoho CRM and Zoho Campaigns. The end goal is to create tailored email drip campaigns with the use of segments and automation. I understand you can build cadences, email templates,
    • Linkedin - Recruiter System Connect

      Hi there! Does anyone here know how to connect Zoho Recruit to Linkedin Recruiter via Recruiter System Connect?
    • Lead Owner not importing all users only main user

      I have set up 3 users, 1 CEO, 2 Managers, all users have been verified. I'm using the Free ZOHO version. When I go to import Leads my Excel file has these 3 users listed as the Lead Owner. However when the import completes only 1 user is displayed as
    • Getting Data into zoho calendar from a creator app

      So how do you get a date that's created in an app, for example when a site visit is due, into the zoho calendar for the field engineers.
    • Create deal from estimate

      Hello, I have integrated CRM and books. I created an estimate on CRM but I would like to allocate that estimate to a deal with the contact. How can I do this please?
    • Lookup field, odd issue

      So I tried creating and app that has the names of engineers so I can use that for a lookup in the other apps that are being created . I add the look up in a new app, launch the app and when I try to fill out the form its just blank in the drop down menu
    • Next Page