Building extensions #1: Creating and testing extensions for Zoho Finance Suite applications

Building extensions #1: Creating and testing extensions for Zoho Finance Suite applications

Hello developers!

We're excited to announce a new series called "Building extensions" to assist developers in creating efficient extensions for Zoho Finance Suite products. We'll support and guide you through the process of creating an extension and using the features offered in the developer portal.

What are extensions?

Extensions are installable plugins or add-ons that help enhance the existing functionality of your Zoho product or seamlessly integrate and interact with third-party applications for data transmission.

How can you build extensions?

Zoho offers a developer platform called Zoho Developer that allows you to build different types of applications. Sigma is a platform offered within Zoho Developer that is specifically designed for creating extensions for various Zoho products. Throughout this series, we'll look at how to create and develop extensions for the Zoho Finance Suite applications using Sigma.

Get to know all about extensions and building them further in detail.

Sigma extension support

The Zoho Finance Suite consists of seven applications: Zoho Books, Zoho Inventory, Zoho Expense, Zoho Invoice, Zoho Billing, Zoho Checkout, and Zoho Payroll. Currently, the Sigma platform supports creating and building extensions for these five Zoho Finance applications:
  • Zoho Books
  • Zoho Inventory
  • Zoho Expense
  • Zoho Invoice
  • Zoho Billing
Creating an extension
  • Log in or sign up at developer.zoho.com.
  • Go to Sigma and access your workspace.
  • Once you enter your workspace, you'll be taken to the Extensions section in Sigma.
  • Click the New Extension button to start building an extension.                                                                                     
  • Enter a name and description for the extension and choose the service you want to build the extension for. As mentioned earlier, Sigma offers support for Zoho Books, Zoho Invoice, Zoho Inventory, Zoho Billing, and Zoho Expense.                                                                                          
  • For our demo, let's choose the service as Zoho Books. Accept the terms and conditions, and then click Create.                                                                                          
  • The extension is successfully created. You can click the Extension Details icon to see an overview of the extension.                                                                                          
The extension details page shows the general details of the extension, such as creation date, creation time, and version, and allows you to associate developers with the extension.
  • Click the Edit Extension icon to start developing the extension.                                                                                  
  • The Zoho Books Developer Portal opens with the options and native features available to customize, curate, and develop your extension.                                                                
Zoho Books Developer Portal sections

The developer portal has four different sections to help customize and build your extension.

Learn: This section lists the native Zoho Books capabilities that can be used to create and develop extensions. Clicking the Set up Now button next to each feature will take you to the feature's development setup page.
                                                                                           

Build: This is the development setup section, which includes customization, automation, and components like connections, widgets, schedules, webhooks, and signals. You can customize your extension preferences, establish connections to integrate with other applications, and design custom interfaces to enhance user experience.
                                                                                          

Configure: This section assists with handling your extension's required configurations, whether they are generic settings or customizations required from the user. You can add global fields, which can be incorporated as either variables that store static data or through custom widgets that retrieve user inputs. You can also define functionalities that happen during installation and uninstallation.
                                                                                          

Publish: Once the extension has been built and configured, you can use this section to publish it for either private or public use. In both cases, the Zoho Books team will review the extension; for public extensions listed on Zoho Marketplace, the Zoho Marketplace approval team will also review them. You can share your privately published extension with other users using the Shared List option.
                                                                                          

We will explore more about each of these sections and their features in upcoming posts.

Testing an extension

The Zoho Books Developer Portal offers a dedicated testing environment for each extension, allowing you to test and validate it before publishing.

As a developer, you can use the Test Your Extension option in the top right corner of the portal to access your extension's sandbox environment.
                                                                  

This will redirect you to the sandbox testing environment for the extension you're developing, which is similar to Zoho Books and contains relevant modules to test with.
                                                                  

You can populate necessary data and test your extension functionality. Once everything is validated, you can go ahead and publish your extension for private or public use.

For support or questions related to Zoho Finance Suite extension development, you can email developer@zohofinance.com.

We hope you found this guide useful. Keep following this space for more information!



        • Recent Topics

        • Marketing Tip #5: Improve store speed with optimized images

          Slow-loading websites can turn visitors away. One of the biggest culprits? Large, uncompressed images. By optimizing your images, your store loads faster and creates a smoother shopping experience leading to higher sales. It also indirectly improves SEO.
        • Why can I not choose Unearned Revenue as an account on items?

          Hello, I do not understand why we don't have the ability to code an item to unearned revenue. It is not an uncommon situation to have in business. I understand that there is the Retainer invoice as an option, however that doesn't really work for us. Our
        • Form Submission Emails

          Is there a current delay with submission emails being sent? We've had 10-20 forms completed today but only a handful of emails.
        • Rules not working properly

          I created a rule to display certain fields on certain states. But it seems to be not working. It hides the fields even when I selected California, (which is a state that should show the fields when selected)
        • Notebook font size issue

          If I copy something from somewhere and paste it in my notebook, the font size becomes smaller.
        • Sign in process is beyond stupid. I'd rather plug my phone into USB and copy files than sign in to this POS.

          792 clicks and fields to fill in just to get into a 3rd rate app is too stupid for me.
        • cant use mail API

          I have generate Auth token from https://accounts.zoho.com/apiauthtoken/nb/create?SCOPE=ZohoMail/ZohoMailApi&EMAIL_ID=Zoho Mail Username or Email ID&PASSWORD=Your Zoho Mail Password and get the token but when i use that token on http://mail.zoho.com/api/organization/
        • Ampersand in URL parameter // EncodeURL does not work

          Hi Zoho, I have a url link with a parameter. The parameter is including ampersand in some cases (Can be "H&M" or "P&I") When trying to use %26 instead of "&"  (the result I get using EncodeURL()) I get H%26M instead of H&M in the parameter field. How can I solve this? Thanks! Ravid
        • how can we create in zoho crm a new contact when the looup does not find a similar existing one

          In forms/integrations/zoho crm / ne w record tab, contact name is to be mapped with my form contact name. When I go in biew edit/lookup configuration, I don t get the options (help dedicated page simply repeat the same info you get in the app) and does
        • Directory Websites

          Directories are a good website category to gain search engine traffic. Directories for a professional service category as an example can help their members in search results over their individual website. It would be nice to have a directory template
        • Manage Task on Mobile

          How do we manage our task on mobile devices? It seems that there should be a standalone mobile app to handle the new task features. The new features released in regards to Task management are great by the way! Now we need to bring that all together in
        • Set Default Payment Method & Default account

          Hi, I would like to know how to set the default payment method and default bank account when recording payments in zoho books. At present we have to change these fields everytime we record a payment, which leads to potential error and as we have a very
        • Customer Portal on Zoho Desk

          Hi, I'd like to know more about the items below I found when setting up the Customer Portal on Zoho Desk. Could someone help me explaining these in details? Especially the 2nd and 3rd point. Thanking you in advance! Permissions Customers can sign up for Customer Portal Customers can view tickets of their organization (contacts) Customers must register to access Customer Portal Display Community in Customer Self Service portal
        • Computer Showing Offline in Unattended Access

          I have a computer that was connected to the internet but showing offline in Assist. I tried uninstalling the program and deleting it from Zoho Assist the reinstalling and it still does not show up. I have been a user for several months and am not pleased with the lack of connectivity with Assist. If this continues I will have to find another product. The computer I reinstalled it on is not even showing up in Assist now. The name is NYRVLI-PC. Thanks
        • Zoho CRM Portal Error

          Hi, We’re experiencing an issue with the Zoho CRM Portal. When we try to access it, we receive an HTTPS connection error: net::ERR_CERT_COMMON_NAME_INVALID. If we proceed past that, we then get a 400 Bad Request error. Could you please help us resolve
        • Integrating Zoho CRM EmbeddedApp SDK with Next.js — Initialization and Data Fetching Issues

          You can get an idea from my code I have given in end: First, I worked on a React project and tried the same thing — it worked. My goal was to import the Zoho script and then load contacts using the Zoho Widget SDK, which was successful in React. Now,
        • monetizing the courses

          Can I add a price for course enrollment ?
        • Can we add zoho books features like invoices estemates etc on our zohocommerce website. When our customer login with their account they can able to see all books features in one place on zohocommerce?

          Can we add zoho books features like invoices estemates etc on our zohocommerce website. When our customer login with their account they can able to see all books features in one place on zohocommerce?
        • Copy paste from word document deletes random spaces

          Hello Dear Zoho Team, When copying from a word document into Notebook, often I face a problem of the program deleting random spaces between words, the document become terribly faulty, eventhough it is perfect in its original source document (and without
        • Taxes for EU B2B Transactions

          Currently, ZC doesn't seem to have a procedure for validating VAT numbers of businesses purchasing in another EU state, and removing local VAT is valid. This is essential for all inter EU B2B trade.
        • Unable to Receive Emails on Zoho Mail After Office 365 Coexistence Setup – Error: 553 Relaying Disallowed

          Hello, My domain name is bigniter.com, and I’ve been using Zoho Mail as my email service provider without any issues. Recently, I followed the steps outlined in the Zoho documentation to enable Coexistence with Office 365: 🔗 https://www.zoho.com/mail/help/adminconsole/coexistence-with-office365.html#multi-server
        • CRM Related list table in Zoho analytics

          In Zoho Analytics, where can I view the tables created from zoho crm related lists? For example, in my Zoho CRM setup, I have added the Product module as a related list in the Lead module, and also the Lead module as a related list in the Product module.
        • Candidate Registration/Invitation

          It would be great to include the 'invite' candidate functionality into some of the automation functions - ether through a custom function trigger or webhook or accessible through an email template.  Currently there is no way to add this functionality into any workflows or blueprint steps which, I find limits the ability to invite candidates to engage with us directly through our candidate portal. 
        • [Free Webinar] Learning Table Series - Creator for Infrastructure Management | A Partner-driven collaborative session

          Hello Everyone! We’re excited to invite you to another edition of Learning Table Series, where we showcase how Zoho Creator empowers industries with innovative and automated solutions. About the Learning Table Series The Learning Table Series is a free,
        • Where we can change the icon in social preview

          Hi, we changed our logo, and the image that appear in preview (ex : when we post a appointment link somewhere) is still our old logo. I did change our logo in the org setting. https://bookings.zoho.com/app/#/home/dashboard/settings/basic-info?clview=false
        • I have error AS101 when I try to add paypal@mydomain.com to Zoho

          Please help me with this. I tried to call the help line 4 times but don't get any response.
        • VAT on Multiple Expenses

          Firstly, might I say I am based in Ireland, and I'm not an accountant, and therefore my understanding of procedures could be somewhat limited. Scenario. An employee pays for items throughout a month, and therefore their claim for expenses includes multiple items - some of the items are VAT deductible (eg, an IT product) and some are not (eg, a client lunch). Discovery The odd thing in ZBooks, is that whilst it seems possible to add a VAT rate to a one-off item of expense, it is not possible to add
        • Problema Verificacion con proveedor NIC.AR

          No puedo realizar la verificación del correo, he seguido los pasos indicados y configurado los MX. Y no puedo verificar el correo. He leido en el foro que otros han tenido el mismo problema. Alguno pudo solucionarlo?
        • Agent assignment filter?

          Godo day, We are starting to play with FSM to see if it's going to work for our needs. Now so far we have found that it's very restrcitve in the field department you you have layout rules or can't even hide fields depending on the users roles. We can't
        • DKIM Now Mandatory - Changes to Zoho Forms Email Policies

          Hello Zoho Forms Users, This post is to inform you about an important update regarding the authentication of all email domains in your Zoho Forms account. This year, we are doubling down on our commitment to deliver a secure, seamless, and empowering
        • is it possible to add more than one Whatsapp Phone Number to be integrated to Zoho CRM?

          so I have successfully added one Whatsapp number like this from this User Interface it seems I can't add a new Whatsapp Number. I need to add a new Whatsapp Number so I can control the lead assignment if a chat sent to Whatsapp Phone Number 1 then assign
        • Kiosk Page Refresh

          We have a Kiosk running from a button in contacts to update values and also add related lists, which works great, but when the kiosk is finished the page does not refresh to show the changes. Is there a way to force the contact to refresh/update when
        • Tips & tricks: Make SalesIQ automations work for you

          Every day, thousands of visitors land on your website. Some browse, some buy, and some leave without a word. But, wouldn’t it be great if you could automatically know who’s interested, engage them at the right moment, and never miss a lead, and all this
        • Add Custom Reports To Dashboard or Home Tab

          Hi there, I think it would be great to be able to add our custom reports to the Home Tab or Dashboards. Thanks! Chad
        • Digest Octobre - Un résumé de ce qui s'est passé le mois dernier sur Community

          Chers utilisateurs, Faisons le point sur les temps forts du mois d'octobre au sein de notre Community Zoho France. Partager des informations sensibles, comme des mots de passe, peut vite devenir compliqué et risqué. Les données circulent par email ou
        • How do I fully delete a user account

          Hi, I have two old accounts on my CRM which are inactive and show as 'Closed' in the list of users. BUT they are basically still there. How do I fully delete these accounts? They appear in some parts of CRM still such as the on the contact record emails
        • Automatically Add Recurring Zoho Meeting Events to Zoho Calendar / Zoho Meeting Calendar

          Hello Zoho Meeting Team, Hope you are doing well. We would like to request an enhancement regarding recurring meetings created inside Zoho Meeting. At the moment, when we schedule a recurring meeting in Zoho Meeting, it does not appear in Zoho Calendar
        • Credit Management: #6 Tackling Common Mistakes in Credit Based Billing

          Businesses extend credit to build relationships, make buying easy, and drive more sales. But somewhere between extending and collecting, things begin to slip. A few late payments here and there, an overlooked invoice, and a backlog make cash flow feel
        • Tasks Statuses

          Hi, The task status "Completed" is a final status which closes the task. We need to have a status "Cancelled". However, when the status is set to "Cancelled", the task prompt still has a blue button to Close Task. When the customer clicks that and closes
        • Updating Blueprint stage from my Deluge function

          Hi all, I need to update the blueprint stage. Its almost working, but ONLY if the current Deal stage is 'Closed Lost'. On any of my custom stages that Ive specified in the pipeline it doesnt work! My code: dealmap = Map(); deal_stage = deal.get("Stage");
        • Next Page