Building extensions #2: Publishing an extension

Building extensions #2: Publishing an extension

Hello developers,

Welcome to our next post about building extensions for Zoho Finance Suite applications.

In our previous post, we looked at extensions, their purpose, and how to create and test them. To recap, extensions are installable plugins or add-ons that include customizations to improve the existing functionality of a Zoho product. They can be shared with other users, allowing them to install the plugin and have the customizations reflected in their account as well.

If you wish to customize any Zoho product on your account alone, you can use in-product customizations. Extensions, on the other hand, are created as custom, installable bundles that can be shared and used by multiple users.

In this post, we'll be discussing how to publish extensions both privately and publicly.

Why publish an extension?

The ultimate goal of creating extensions for Zoho products is to share them with users so they can install them and use their features in their own Zoho products.

In order to make the extension available as an installable component, it must first be published.

Private and public extensions

Extensions can be developed for internal organizational purposes or for a larger audience, and they can be published either privately or publicly.
  1. Private: Published to be shared privately with other users or within an organization.
Example: An organization uses Zoho Books to manage its financial activities, and its employees need customizations to meet their specific demands. In this scenario, extensions would be useful so the customizations could be shared with other users in the organization.
  1. Public: Published in Zoho Marketplace and made accessible to Zoho users.
Example: A developer creates an extension with some common or general use cases that would help most business categories, e.g., a payment gateway integration, a message integration app, or an extended feature for a Zoho Finance application. In this scenario, the developer could list the extension publicly for a larger audience.

How to publish an extension
  1. Enter the developer portal of the Zoho Finance extension you want to publish. For our demo, we're using a Zoho Books extension.
  1. Navigate to the Publish section and click Publish.

  1. A pop-up displays the list of components you've added to your extension. Check and validate these components.

  1. Choose either major or minor versioning. Major rounds off and increments your version number to the next integer (version 1, version 2, etc.), while minor increments the version by 0.1 (version 1.1, version 1.2, etc.).
  1. Enter the release notes in the Release Notes section. Click Publish.

  1. The extension is successfully published, and a private installation URL is created.

  1. As a developer, you can use the private installation URL to test the extension in your Zoho Books organization.
Note: In order to install and test the extension privately in Zoho Books, your Zoho Books account should be the same as the one you used to develop the extension.

  1. In order to share the extension with other users, it will have to be reviewed internally by the Zoho Finance team. To do this, click the Submit for Private Review button that appears after publishing the extension. Read the Zoho Finance extension review guidelines for more information.

  1. A pop-up displays the auto-populated details on a mail that will be sent to the Zoho Finance review team. Verify the details and click the Send Mail button.
  2. The extension is successfully submitted for private review and is under the status "Submitted For Review."
Note: If you want to make changes to the submitted version, you have to deprecate the version submitted for review. Once deprecated, the Finance team can't approve the version you originally submitted.

  1. As the developer, you'll also receive a copy of your submission email.
  1. The Zoho Finance team will review the extension and, once successfully validated, approve it, changing the private review status from "Submitted For Review" to "Approved."

  1. Now that the extension has been privately approved, you can share it with other users. Go to the Shared List option in the left panel, and click the Share Privately button.

  1. Enter the organization ID and email ID of the user you want to share the private extension with. Click Share.

  1. The extension is successfully shared.

  1. The user will get an email about the shared extension, along with the installation URL. They can simply click the link to install the extension.
  2. To publish and list the extension publicly in Zoho Marketplace, it'll have to be reviewed and approved by the Zoho Marketplace team as well.
  3. To publish publicly, follow the above steps, then submit your extension for Zoho Marketplace review using the Submit for Marketplace Review button.

  1. You'll be redirected to the extension details page, where you can view a Submit to Marketplace button beside the extension version. Click Submit to Marketplace.

  1. A pop-up appears with extension details that will be listed in Zoho Marketplace. Fill in the details to complete the submission process.


Extension compatibility across Zoho Finance Suite applications

Once you've developed the extension and submitted it for private review, check to see if it has any common use cases that would work with another Zoho Finance application. If it does, you can reach out to extension-submission@zohofinance.com and say you would like to have your extension reviewed for whichever other Finance applications you think it would suit. The Finance review team will evaluate your suggestion and guide you accordingly.

Once these reviews are validated, you can publicly list the extension for the other apps with ease. Using the available Marketplace installation URL, you can directly submit another application through the Zoho Marketplace Partner console.



When providing details in the Zoho Marketplace Partner console for the compatible application, make sure to change the product name in the Marketplace installation URL. Once submitted, the Zoho Marketplace approval team will internally validate it with the Zoho Finance team, review it themselves, and list the extension if it's verified.

Example

Zoho Books includes modules that are present in other Zoho Finance apps. Assume you've created a Zoho Books extension and shared it with the Finance team for private review. You can also contact the Finance team and request a review for Zoho Inventory because the extension's use case is compatible.

If the Finance team approves the review for both applications, and you want to publicly list the extension on both counts, instead of creating and publishing an extension for Zoho Inventory from scratch, simply change the product name from Books to Inventory in the Marketplace installation URL when submitting the application in the Zoho Marketplace Partner console.



In this post, we've given you a detailed outline of the steps involved in publishing an extension for a Zoho Finance application, both privately and publicly.

Going forward, we'll look at Zoho Books extension creation since Zoho Books includes features and functions that are found in the other Zoho Finance Suite products. We hope you found this information useful. Keep following this space for more useful guides!

SEE ALSO

    Access your files securely from anywhere

        Zoho FSM Video Tutorials


              All-in-one knowledge management and training platform for your employees and customers.






                                    Zoho Developer Community




                                                          • Desk Community Learning Series


                                                          • Digest


                                                          • Functions


                                                          • Meetups


                                                          • Kbase


                                                          • Resources


                                                          • Glossary


                                                          • Desk Marketplace


                                                          • MVP Corner


                                                          • Word of the Day


                                                          • Ask the Experts





                                                                    Manage your brands on social media



                                                                          Zoho TeamInbox Resources



                                                                              Zoho CRM Plus Resources

                                                                                Zoho Books Resources


                                                                                  Zoho Billing Resources

                                                                                    Zoho Projects Resources


                                                                                      Zoho Sprints Resources


                                                                                        Qntrl Resources


                                                                                          Zoho Creator Resources



                                                                                              Zoho CRM Resources

                                                                                              • CRM Community Learning Series

                                                                                                CRM Community Learning Series


                                                                                              • Kaizen

                                                                                                Kaizen

                                                                                              • Functions

                                                                                                Functions

                                                                                              • Meetups

                                                                                                Meetups

                                                                                              • Kbase

                                                                                                Kbase

                                                                                              • Resources

                                                                                                Resources

                                                                                              • Digest

                                                                                                Digest

                                                                                              • CRM Marketplace

                                                                                                CRM Marketplace

                                                                                              • MVP Corner

                                                                                                MVP Corner









                                                                                                  Design. Discuss. Deliver.

                                                                                                  Create visually engaging stories with Zoho Show.

                                                                                                  Get Started Now


                                                                                                    Zoho Show Resources

                                                                                                      Zoho Writer

                                                                                                      Get Started. Write Away!

                                                                                                      Writer is a powerful online word processor, designed for collaborative work.

                                                                                                        Zoho CRM コンテンツ


                                                                                                          Nederlandse Hulpbronnen


                                                                                                              ご検討中の方





                                                                                                                        • Recent Topics

                                                                                                                        • Change email address

                                                                                                                          I would like to change the email address to info@gogetherenterprises.com
                                                                                                                        • Free Methods to Convert PST to MBOX on Mac & Windows

                                                                                                                          Converting PST files to MBOX is often needed when moving Outlook mailbox data to email clients such as Thunderbird, Apple Mail, or other MBOX-supported applications. The process can be different on Windows and macOS, and free methods may involve several
                                                                                                                        • Enhanced audit trail in Zoho Creator

                                                                                                                          Hello everyone, We're pleased to announce that the Audit Trail feature has been significantly enhanced by expanding its scope to give you a more complete picture of activity across your applications. What was once a simple record-and-report log is now
                                                                                                                        • Allocating inventory to specific SO's

                                                                                                                          Is there a way that allocate inventory to a specific sales order? For example, let's say we have 90 items in stock. Customer 1 orders 100 items. This allocates all 90 items to their order, and they have a back order for the remaining 10 items which could
                                                                                                                        • Zoho Sheet as KB Document

                                                                                                                          It would be nice if Zia Agents could take Zoho Sheets as part of the knowledge base. The use case here is that it's infinitely easier for humans to maintain a spreadsheet table than any .md / TAML / JSON document. For situations where humans are responsible
                                                                                                                        • Introducing native agents: Configure your CRM with natural language

                                                                                                                          Hello all, Configuring your CRM just got a lot faster. We're introducing native agents into Zoho CRM that configure your settings using natural language. Instead of navigating multiple screens, describe what you need and the agent builds it for you. What's
                                                                                                                        • Transferring CRM Templates

                                                                                                                          I have two different scenarios for transferring the CRM template and would like to know if it is possible to do for either.   1.  When designing my CRM template, I created all the fields in the Leads module.  I have not duplicated all of the fields (or their positions on the page) in other modules like the Contacts, Potentials, Accounts, etc.  Once I get my Leads template designed the way I want, I would like to copy the fields and their page positions to the other modules.  Is it possible to do
                                                                                                                        • Is it possible to clone my Lead module layout to Customer and Potential layouts?

                                                                                                                          I've customized all fields and their order for Leads module and I would like to know if I'm able to clone those fields into another modules, only to avoid repeated work. Awaiting.
                                                                                                                        • URGENT: Stalled DC Migration >72 Hours - Records Locked [Ticket #: 167813877

                                                                                                                          The DC migration was started on 1st October at 6 pm and we were informed migration period as 48 hours but even after more than 72 hours, the migration seems still in progress. We sent two emails to check the status but no responses. We need the migration
                                                                                                                        • Error AS101 when adding new email alias

                                                                                                                          Hi, I am trying to add apple@(mydomain).com The error AS101 is shown while I try to add the alias.
                                                                                                                        • Account not Active For any support or queries, kindly contact support@zohomail.com

                                                                                                                          HI! I am trying to sign up to Zoho Mail which is not working. All I can see is the following error message, " Please help me. Account not Active For any support or queries, kindly contact support@zohomail.com"
                                                                                                                        • How can I add a Custom Field (or Customer_name) to a picklist?

                                                                                                                          Our workflow is Shopify-->SO -->Picklist-->Package-->Shipment. We would like to have the Picklist template to include a custom field "Customer_Notes" (we have created this field already). This way we get alerted when a customer has notes on their account.
                                                                                                                        • Introducing Zoho Commerce 2.0 — It's more than just selling!

                                                                                                                          Hello! We are proud to launch Zoho Commerce 2.0, a reimagination of how online businesses look, feel, and function. This launch is both timely and symbolic, as we reaffirm our commitment to empowering small and medium enterprises with powerful, yet simple-to-use
                                                                                                                        • Zoho Thrive connection to off-line purchases

                                                                                                                          Is it possible for Zoho thrive to connect to subscriptions or Books and pull purchase data from clients who purchase off-line or maybe through a different sales department where items are not listed on a website for sale? Say I have a customer that signed
                                                                                                                        • Kiosk / CRM Timezone Oddity

                                                                                                                          I grant you this is much easier to see than to explain, and snapshots here won't help much and I don't want to snapshot my record anyway in a forum, so bear with me... Effectively... As there had been discussions on times coming through in different timezones
                                                                                                                        • Payroll Options

                                                                                                                          Would like to see a payroll service implemented; Maybe not a true payroll but at least the ability of tracking payments to employees without making them a vendor. please help. Thanks. I didn't find the right solution from the internet. References: https://zohofinance.uservoice.com/forums/283818-zoho-books
                                                                                                                        • Esta dirección de correo electrónico ya se encuentra en uso en otra organización... agregar usuarios

                                                                                                                          Buenos dias , tengo este problema a la hora de agregar usuarios mi dominio es implementos.com.pe
                                                                                                                        • How to setup noreply@ example.com

                                                                                                                          How do I setup noreply@example.com so the mail never gets delivered. I currently have a catchall setup aswell.
                                                                                                                        • How do you associate multiple contacts to a deal in the mobile app?

                                                                                                                          When opening a deal in the mobile app, only one customer shows as the contact. How can we add multiple contacts on our mobile device?
                                                                                                                        • Zoho Books Support

                                                                                                                          Dear Team, Zoho Books offers a demo before you purchase zoho books. But after that when he actually purchases the product he has to rely on toll free number or help documents. But this might get frustrated in the initial period. Specially in initial period.
                                                                                                                        • Linking Multi-UOM Barcodes to Products in Zoho Books

                                                                                                                          Greetings, I'm using Zoho Books for retail shop and I'm running into a bit of a challenge with products that have multiple Units of Measurement (UOMs) and corresponding barcodes. For example, I sell cigarettes both as individual packets and in cartons
                                                                                                                        • Best practices for importing phone numbers

                                                                                                                          I've recently found a problem with my phone provider, integrated with Zoho CRM, where a phone number that starts with 00 instead of + won't work. The problem has no solution: they tell me to replace all 00 with + I've always preferred using 00 instead
                                                                                                                        • Has anybody managed to do ANYTHING with Zoho CRM Zia Agents?

                                                                                                                          I have 'hired' a few agents from the 'store', and also built the super simplest Agent I could think of (retrieve the email address for a given Contact), and none of them work. I get errors like "LLM Inference failed" even from the store Agents (e.g. "Search
                                                                                                                        • custom function

                                                                                                                          I want to send a request following the webhook pattern with Endpoint Type Intranet, I received a Zoho access response from Daniel. Please advise on how to implement invokeUrl with Endpoint Type Intranet and a probe
                                                                                                                        • ERROR CODE :554 - Your access to this mail system has been rejected due to poor reputation of a domain used in message transfer

                                                                                                                          This message was created automatically by mail delivery software. A message that you sent could not be delivered to one or more of its recipients. This is a permanent error. *****, ERROR CODE :554 - Your access to this mail system has been rejected due
                                                                                                                        • Announcing the new SKILL.md for Zoho CRM and the updated OAS repository!

                                                                                                                          We are introducing a new zoho-crm skill to make working with Zoho CRM Developer tools (like APIs, functions, widgets, client scripts, queries etc) easier and faster, with the help of AI in your preferred AI harness like Claude Code, Codex, Cursor, VSCode
                                                                                                                        • Function #46: Auto generate list of lapsed customers using Custom Button

                                                                                                                          Hello everyone, and welcome back to our series! Customer retention is one of the key factors that impact the long-term success and sustainability of a business. High customer retention rates indicate satisfied customers, quality products or services,
                                                                                                                        • Lookups and Custom Modules

                                                                                                                          I created a Custom Module that I'm calling "Item Purchasing Group". This module will store information for groups of Items that must be purchased together (including minimum overall quantities and/or values, etc.). This will have a one-to-many relationship
                                                                                                                        • Zoho Writer for Android - Headings

                                                                                                                          Hello Zoho team, I have created structured doc with headings in writer web version on pc. Then I have opened it in my phone. Write is crashing while used function: menu "three dots", Document Navigation, Headings. Zoho Writer for Android 6.1.4 Samsung
                                                                                                                        • Can't connect to POP and SMTP over VPN

                                                                                                                          I use Thunderbird to access Zoho Mail via POP and SMTP. I have configured an app-specific password for Thunderbird to use. Everything is properly configured and works correctly — until I enable my VPN. I'm using a paid commercial VPN service (Mullvad).
                                                                                                                        • Ask the Experts: Five-hour live Q&A session with Zoho WorkDrive product experts

                                                                                                                          Have questions about WorkDrive 5.0? Let’s talk! We recently launched Zoho WorkDrive 5.0, packed with powerful updates to help your team work smarter, stay secure, and get more value from your business content. From content-centric workflows and AI-powered
                                                                                                                        • Possible to reorder Pipelines position?

                                                                                                                          I have multiple Pipelines and want to reorder their positions, so that in the Deals module record for the Pipeline field, I have them ordered in a certain way. Is there a way to reorder the position of the Pipelines without deleting existing Pipelines
                                                                                                                        • Pleas unblock E-Mail-Adress service@montana-energie.de / kontakt@montana-energie.de

                                                                                                                          Dear Zoho Support, Could you please unblock service@montana-energie.de / kontakt@montana-energie.de which belongs to a regular customer with whom we are having frequent business-related conversations. Thank you very much in advance, Erdem Kar homewise
                                                                                                                        • Unable to preview attachments using Apple Safari on Mac

                                                                                                                          When attempting to preview an image attachment in Zoho desk the image will fail to load and present a "missing" icon in the middle of the display.  This is using Safari 14.0.3 on macOS Big Sur 11.2.3.
                                                                                                                        • Kaizen #262 - Using Zoho CRM Skill to build Queries

                                                                                                                          Hello everyone! Welcome back to another edition of the Kaizen series, where we uncover powerful ways to extend and customize Zoho CRM. In the previous Kaizens, we explored how the zoho-crm skill can help developers work with Zoho CRM APIs, Client Scripts
                                                                                                                        • 【10/30福岡】他社はZoho CRM×AIをどう使う? 営業に役立つ実践デモ&事例解説|10〜12月のイベント予定も!

                                                                                                                          ユーザーの皆様、こんにちは! ゾーホージャパンの中野です。 10月30日(金)の福岡ユーザー交流会では、CRM×AIのデモ / 事例紹介と、 Zoho社員によるAIエージェントの解説を通じて、自社での活用を考えるヒントをお届けします。 ■ 福岡で学べる・話せる3つのこと ① CRM×AIで、営業の仕事はどう変わる? 株式会社etikaの宮村佳祐さんが、具体的な連携デモをご紹介します。 ・提案中の商談に、参考になる過去の類似受注案件を表示 ・打ち合わせの文字起こしをCRMに自動連携し、項目を更新 ・取引先のニュースを集約し、営業担当者へお知らせ
                                                                                                                        • #10 India Specifics: GST, GSTIN And E-way Bills

                                                                                                                          Meera's new client sent a purchase order, a vendor form, and one line that changed the whole invoice: "Invoices without a valid GSTIN and correct place of supply will be returned unpaid." She had entered her own GST details. The customer's details were
                                                                                                                        • Invoke a Widget buttons not opening in Bigin web – open_in missing from response

                                                                                                                          Hi, I’m seeing an issue with Invoke a Widget custom buttons in Bigin web. In the Bigin Developer Sandbox, the button works correctly and the custom button response includes: "open_in": "new_tab" However, once the topping is installed in a normal Bigin
                                                                                                                        • [Zoho Desk] Follow-up: Show Full Recipient Email Address Display Improvement ?

                                                                                                                          Hi Zoho Desk Team, I would like to follow up regarding the recipient display behavior when replying to tickets in Zoho Desk. Currently, when we reply to a ticket, the To, CC, and BCC fields are combined into a single “Recipients” field. In addition, when
                                                                                                                        • How to record refund of expenses in zoho books

                                                                                                                          Hi, i bought a air ticket and recorded the expense in money out. The ticket was cancelled and the fare (after deducting cancellation charges) was credited back to my bank account directly. How can i record the the above transaction?
                                                                                                                        • Next Page