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

      • Recent Topics

      • access to quartz for my customers

        Hi how can I have access to the application quartz you use for us to send you screen rocording, this feature would be immensely useful for our customers support https://quartz.zoho.com/
      • Issue with Inline Images in Email Reply via Zoho Desk API

        Hi, I am attempting to send inline images in an email reply using the Zoho Desk API, but the images are not being displayed inline for the recipient. I have followed this documentation: https://desk.zoho.com/DeskAPIDocument#Uploads https://desk.zoho.com/DeskAPIDocument#Threads#Threads_SendEmailReply
      • How to search a value stored in a subform?

        Hello, We store serial numbers in subforms but now we would like to be able to search the values to be able to easily find the record with the serial number. I saw that it's not possible to search such values through global search but is it possible to do it an other way? Thank you,
      • Field Dependency Not Working on Detail Page in Zoho Desk

        Hi Support Team, I’ve created field dependencies between two fields in Zoho Desk, and they are working correctly on the Create and Edit layouts. However, on the Detail page, the fields are not displaying according to the dependencies I’ve set — they appear
      • How do the keyword critera work?

        Hi, I'm working on automated assignment of tickets based on keywords. How does this feature work? Where does this criteria look for keywords - email address, subject, email body? Can you please clarify this as I want to avoid overlapping with criteria
      • Error: Unsupported content type: text/html;charset=UTF-8 after tryeing to get the token for n8n automation

        I am working on ZOHO Desk automation and need to get the ZOHO auth token for n8n I have created the app in ZOHO Desk API, got client id and client secret. Added all data required to get a token in n8n. After I sign in with my ZOHO credentials in ZOHO
      • Improving Collaboration Features in Zoho Portal

        Hello Zoho Community, I’ve recently started exploring Zoho services and I’m really impressed with the wide range of features. However, I feel there is still room for improvement in the collaboration area. For example, it would be really helpful if we
      • Automated Shopify Emails Not Being Delivered

        I have an ecommerce store with Shopify. I recently set up my email to be served through Zoho. Since doing this, customers are not receiving some of our automated emails from Shopify itself. Our initial email that confirms their purchase goes through but our Shipping Notification that is automatically sent out upon fulfillment is not going through. Sometimes we get a notice that it's been classified as spam, sometimes nothing. I can send/receive email via Outlook on my desktop and I can send/receive
      • I can't log in to my account on Thunderbird

        I've just had to rebuild my PC (calamitous mess from Microsoft with Win10/Win 11 'upgrade' - they confirmed I had to start with a new build). I have used Zoho mail for years via Mozilla Thunderbird, but now I've had to download the latest version of TBird,
      • Send a campaign to one recipient.

        Very often I speak to a customer and they say they didn't see my email (maybe it went in Junk, maybe they deleted it). Anyway, I just want to go into the Campaign and send it to one person. You already have a feature very close to this - when sending a Test. While developing a campaign, I can send tests to anyone. Why can't we have this AFTER  the campaign has been sent? I know, there's a caveat, and that's in the use of merge tags. Most of the time I only use FNAME, but maybe you could check if
      • Try FSM again for our business

        We already have our customers individual equipment in CRM with serial numbers, install dates, warranty length and importantly next service which is generally 2 years. a month before the service date is due we get get a report and send out service reminders.
      • Use Zoho Books to bill for work done in Zoho Desk??

        I'm trying to see if something is possible (and if yes, how). We use Zoho One to manage our business. We have a lot of clients that will put in a ticket (via portal) to have work done. Out techs will pick up the ticket, do the work, and then log the time
      • Get Cliq Meetings in my O365 calendar

        Hi, we are currently evaluating to replace the Teams Messaging and Meetings with Cliq. We currently still have all our email and calendars in O365. What i want to achieve is, to create a (ZOHO) meeting from Cliq and have this meeting added to my Outlook/O365
      • Issue with Zoho Help Portal – Tickets Missing or Not Answered

        Hi, How are you? I think there may be an issue with the Zoho Help Portal. I opened a few tickets directly in the help portal a some time ago but never received any response I also opened ticket 148356451 by email. I did receive a reply to it, but the
      • DUNS & Bradstreet and Credit risk monitoring integration with Zoho books

        Small businesses not being paid by bigger clients and clients of all sizes is a huge problem. It will be nice if Zoho develops integration with DUNS & Bradstreet(D&B) and Credit risk monitoring integration with Zoho books. That have small businesses can
      • Zoho Forms - Form Rules based on attachment fields

        Many businesses use forms to collect documents and images from customers. In many cases, you may want to trigger a notification or other automation based on whether or not an attachment was added. I've noticed that attachment fields do not appear in Rules
      • How to sync from Zoho Projects into an existing Sprint in Zoho Sprints?

        Hi I have managed to integrate Zoho Projects with Zoho Sprints and I can see that the integration works as a project was created in Zoho Sprints. But, what I would like to do is to sync into an existing Zoho Sprints project. Is there a way to make that
      • Add multiple users to a task

        When I´m assigning a task it is almost always related to more than one person. Practical situation: When a client request some improvement the related department opens the task with the situation and people related to it as the client itself, the salesman
      • Can't open draft email for editing

        Last night I started composing an email and I let it save in drafts. This morning I want to continue working on the email. It is in my Drafts folder but it will not open. The only option there is to delete it. This is not the first time it has happened. On previous occasions I have just deleted the draft and started afresh, but I really want this one back. Windows 10 with Pale Moon 28.10.0 browser.
      • Open filtered deals from campaign

        Do you think a feature like this would be feasible? Say you are seeing campaign "XYZ" in CRM. The campaign has a related list of deals. If you want to see the related deals in a deal view, you should navigate to the Deals module, open the campaign filter,
      • Change scheduling emails time

        When sending an individual email there is a great feature to schedule them to send later. I could only use the one time that is suggested. Is there a way to select another time? Regards, Glenn
      • Zoho CRM: how can I control which contacts to sync with Outlook?

        I was just playing around syncing contacts from Zoho to MS Outlook (MS365 account.) The problem is our firm has hundreds of thousands of contacts and I don't want to bury my contacts list in outlook. Any help with this is greatly appreciated.
      • How to overcome limitations in meetings

        As a company, one of our deliverables is a meeting between two other companies, where we act as facilitators. So, if we recorded this meeting  in Zoho CRM, it should be connected to 2 accounts, 2 contacts, and 1 campaign (a campaign, in our use, is the
      • Different MRP / Pricing for same product but different batches

        We often face the following situations where MRP of a particular product changes on every purchase and hence we have to charge the customer accordingly. This can't be solved by Batch tracking as of now so far as I understand Zoho. How do you manage it as of now? 
      • Add a 'Log a Call' link to three dot icon in Canvas

        Hi, There's a three dot element when creating a canvas called 'More'. I would like to modify this to add a link that says 'Log a Call' in order to quickly record the details of a cellphone call. I'd also like this to be a simple 'contact' selection and
      • Syncing Zoho Forms with Bigin - Embedding issue?

        Hello everyone, I created a Zoho Form for a page on my GoDaddy website to collect leads, which then transfers the data to Bigin. However, I'm facing an issue where it doesn't seem to work properly. I've integrated Zoho Forms with Bigin and tried embedding
      • Can not add fields to a Section

        I feel like I'm missing something obvious: I can add new Sections to my form but I can not add fields to the Sections. I've tried fields already on the form as well as dragging and dropping new fields into the Section but nothing will go into it. What
      • Record Logged in User while using CRM lookup field

        Is it possible, while using the Zoho CRM lookup field, to automatically use the user account logged into Zoho CRM in a hidden field? I was hoping to add employee accounts to my current plan. But would like a record on the Form submission of who submitted
      • Form Rules for Suburb Categories to alternate landing pages or Making a Fields Contents ALL CAPS

        I need to send differentform submissions to two to three different thank-you URLs (for Meta/Google pixels) depending on which suburb a user selects in a form. I have ~400 suburbs split into two categories (A and B, based on business value). Current challenges:
      • Collaps Notes

        There are times when long/large notes are added to a record i.e. Accounts or Deals etc. Currently, the full note is displayed in the notes related list section. It would be great if by default only 5 to 10 rows of the note are displayed when the note
      • Zoho Down

        I have a drop in my Zoho One services.
      • Runing RPA Agents on Headless Windows 11 Machines

        Has anyone tried this? Anything to be aware of regarding screen resolution?
      • Problem for EU users connecting Zoho CRM through Google Ads for Enhanced conversions

        Has anyone else experienced this problem when trying to connect Zoho CRM through Google Ads interface to setup enhanced conversions? Did you guys get it fixed somehow? The Problem: The current Google Ads integration is hardcoded to use Zoho's US authentication
      • Why am I getting event Pop-up Notification for events that have been cancelled?

        Why is Calendar Notification still popping up for events that have been cancelled or changed? Each time events are cancelled or changed, I have observed that I am still getting notifications for them. Below is a sample pop-up notification for one of the
      • Whatsapp Limitation Questions

        Good day, I would like to find out about the functionality or possibility of all the below points within the Zoho/WhatsApp integration. Will WhatsApp buttons ever be possible in the future? Will WhatsApp Re-directs to different users be possible based
      • Create a draft in reply to an email via Emails API

        Hi, I’d like to use the outgoing webhook to automatically create a draft reply to incoming mail. How can I use the Emails API to create a draft reply that is linked to an existing email thread? I couldn’t find the relevant method in the documentation.
      • India Tech Support

        Is there no phone tech support number for India? And no chat facility either?
      • Billing Management: #1 Billing a Universal Business Routine

        Hello, As the saying goes, "Do the hardest job first." We started with the complex subject of finance and revenue management, which is considered the backbone of any business. Now, let's shift our focus and take a deep dive into this Billing Management,
      • Show/ hide specific field based on user

        Can someone please help me with a client script to achieve the following? I've already tried a couple of different scripts I've found on here (updating to match my details etc...) but none of them seem to work. No errors flagged in the codes, it just
      • What is a a valid JavaScript Domain URI when creating a client-based application using the Zoho API console?

        No idea what this is. Can't see what it is explained anywhere.
      • Next Page