Kaizen #159 - Configuring Telephony Extension Widget in Zoho CRM

Kaizen #159 - Configuring Telephony Extension Widget in Zoho CRM




Hello Developers! 

Welcome back to the Widgets fold in our Kaizen series.

In this post, we will learn how to build a custom telephony extension widget for call centers and deploy it within a Zoho CRM organization. This helps in establishing unified communication support without leaving the platform.

Why configure a Telephony?

Telephony integration with Zoho CRM is vital for businesses that rely heavily on customer communication and sales. Following are a few key reasons for its vitality:
  • Centralized Communication: Make and receive calls directly within the CRM, streamlining the communication process.
  • Automatic Call Logging: Calls are automatically logged, helping businesses track communication history without manual effort.
  • Enhanced Collaboration: Sales, marketing, and customer service teams can access shared communication logs for improved teamwork.
  • Automated Follow-Ups: After each call, you can trigger follow-up tasks or emails, ensuring no lead is forgotten.
While the Zoho Marketplace within Zoho CRM offers a variety of telephony extensions, we will look at how to create a private extension that allows you to customize the integration to suit your specific needs.

Info
Note:

For this demonstration, we will use RingCentral as our telephony platform. Although RingCentral is available in the marketplace, we will assume it is a private connected app in this scenario.

Business Scenario

Imagine that you are running a sales agency and you want a widget that lets your sales reps make calls directly from Zoho CRM while tracking all call details seamlessly within CRM records.

The private extension should allow you to control the user interface, customize call-related actions, and manage data flow directly into the CRM, optimizing your sales process.

Creating a Private Telephony Extension

Start by logging into your Zoho CRM account and follow the below steps to build a private extension powered by Zoho Sigma. 

Set Up a Private Extension

1. Navigate to Setup > Marketplace > Extension Builder.

2. Create a workspace in the new tab and click on the New Extension button.Provide the necessary details as shown in the image and choose the service as Zoho CRM.


3. Provide the necessary details as shown in the image and choose the service as Zoho CRM.



4. Click Create.

5. The private extension that you have created will be listed in the Extensions page. Choose your extension and click the edit icon. 
You will be redirected to the Zoho Developer Console



Configure the Telephony Widget 

6. In the console, go to Utilities > Connected Apps on the left-side menu.

7. Follow the steps provided in this kaizen to create a new Zoho CRM widget for this use case. 

8. Fill in the details of the application as shown in this image. 



We have chosen External Hosting for the demo, as our sample widget code is hosted on Amazon Web Service (AWS).

Refer to the 'Code Logic for Integration' section below to see how the widget code should be handled.

9. Click Save.

Code Logic for Integration

10. Here is the core logic for handling telephony events like Dial and DialerActive using the Zoho CRM JS SDK:

DialerActive Event Listener:
  • This listener is triggered when the softphone icon at the bottom of your screen is toggled.
  • It makes a call to the dialed number using Ring Central SDK.
Dial Event Listener:
  • The listener is activated when a user initiates a call from a Zoho CRM record using the phone icon next to the Phone fields.
  • The phone button passes the specific record data to the widget, allowing Ring Central to display the record name and dial the number. Following it, the Ring Central SDKs play the role to execute call related functions.
Call Completion and Notes Update:
  • Once a call ends, the widget opens a note section.
  • The text added to the widget is fed to the Notes Related List of the corresponding record using the Add Notes SDK.
For detailed instructions and to get started, the demo code is available on our GitHub page. Ensure to replace your telephony app credentials, SDKs, and its versions in the rc.js and handler.js files to suit your production needs.

Configure the Call Center

11. Navigate to Build > Telephony in the left menu. 

12. Provide a Name and the Resource Path of your widget. 



13. Click Save.

Packaging and Publishing

14. Go to Package > Publish on the left-side menu and publish the extension. 

15. You will receive a prompt asking if you would like to submit your extension to the Marketplace and avail it like other telephony platforms. 
Once submitted, the review process will take from three weeks to one month for approval.



Instead of waiting for approval, we will proceed with deploying the extension using the private plugin deployment link.

Deploy in your Organization

16. Log into your Zoho CRM organization.

17. Replace the URL of your Zoho CRM page with the deployment link from the Developer Console to install the widget extension.

18. Approve the addition of this extension to your CRM.

19. Once installed, refresh the page and check for the softphone icon at the bottom of your screen.



Click the icon to log in to your telephony platform, such as RingCentral.

Try it Out! 

Once the softphone is installed, try out the following features:
  • The softphone icon opens an iframe dialer pad.
  • You will see a phone icon near the Phone data fields, enabling quick calls directly from the record.
  • After calls, you can take notes and log them as a related list for the CRM record.

Additional Components

Consider adding these components to enhance the functionality of your telephony extension widget:
  • Call Recordings Widget: Create a related list widget that automatically stores all call recordings for future reference. Refer to this page for help. 
  • Call Analytics: Using Ring Central SDKs support users can integrate call duration, frequency, and outcomes into a CRM dashboard Widget for performance tracking.
  • Custom Workflow Triggers: With the help of Insert Records SDK in the extension widget, you can automatically log the call details into the Calls module. This enables you to trigger workflow rules for follow-up tasks, notifications, or actions based on call outcomes. 
From managing call center operations to automating task follow-ups, the potential of widgets is vast and adaptable to a variety of business needs. We encourage you to explore the complete potential of widgets to build custom solutions that elevate your workflows. 

For further assistance, explore our Widget fold in the Kaizen collection or reach out to us at support@zohocrm.com. You can also drop your questions in the comments below. 

Cheers! 

-----------------------------------------------------------------------------------------------------------------------------------

Related Reading

-----------------------------------------------------------------------------------------------------------------------------------

    • Sticky Posts

    • Kaizen #198: Using Client Script for Custom Validation in Blueprint

      Nearing 200th Kaizen Post – 1 More to the Big Two-Oh-Oh! Do you have any questions, suggestions, or topics you would like us to cover in future posts? Your insights and suggestions help us shape future content and make this series better for everyone.
    • Kaizen #226: Using ZRC in Client Script

      Hello everyone! Welcome to another week of Kaizen. In today's post, lets see what is ZRC (Zoho Request Client) and how we can use ZRC methods in Client Script to get inputs from a Salesperson and update the Lead status with a single button click. In this
    • Kaizen #222 - Client Script Support for Notes Related List

      Hello everyone! Welcome to another week of Kaizen. The final Kaizen post of the year 2025 is here! With the new Client Script support for the Notes Related List, you can validate, enrich, and manage notes across modules. In this post, we’ll explore how
    • Kaizen #217 - Actions APIs : Tasks

      Welcome to another week of Kaizen! In last week's post we discussed Email Notifications APIs which act as the link between your Workflow automations and you. We have discussed how Zylker Cloud Services uses Email Notifications API in their custom dashboard.
    • Kaizen #216 - Actions APIs : Email Notifications

      Welcome to another week of Kaizen! For the last three weeks, we have been discussing Zylker's workflows. We successfully updated a dormant workflow, built a new one from the ground up and more. But our work is not finished—these automated processes are
    • Recent Topics

    • Introducing note actions and dynamic visibility in Kiosk Studio

      Hello all, We are introducing enhancements to Kiosk Studio that will improve the product scope and meet your custom needs more precisely. What's new? Add notes as Actions: You can add notes to CRM records as kiosk Actions, as well as insert merge fields
    • CRM x WorkDrive: We're rolling out the WorkDrive-powered file storage experience for existing users

      Release plan: Gradual rollout to customers without file storage add-ons, in this order: 1. Standalone CRM 2. CRM Plus and Zoho One DCs: All | Editions: All Available now for: - Standalone CRM accounts in Free and Standard editions without file storage
    • Challenges with data consistency when integrating Zoho with other systems

      In setups where Zoho (CRM/Inventory) is connected with external systems like eCommerce platforms, maintaining consistent and reliable data across systems can be challenging. Some common issues that tend to come up: Product data mismatches (variants, pricing
    • Logging Calls not working

      For some reason, logging calls is not working anymore. Description of problem: On a Lead's record, in the "Open Activities" block, clicked on "Add New" Clicked on "Call", clicked on "Log a call" Nothing happens. If I click on "Schedule a call" nothings
    • How to transfer files from Creator file upload fields to CRM file upload fields

      This article describes how to transfer files from Zoho Creator file upload fields to Zoho CRM file upload fields. I'm posting it here because the current documentation does not fully and accurately describe how to do this with certain file types (PDF,
    • Announcing Zoho Sheet desktop app for macOS and Windows (Beta)

      Hello Sheet users, We know you’ve been waiting for this one. It has always been the top priority on our roadmap to provide a single native desktop app for macOS and Windows that works both online and offline. Today, we are excited to announce that the
    • Zoho Mail Android app update: UI revamp

      Hello everyone! We are excited to share that the first phase of the Zoho Mail Android UI revamp is now live. In this update, we have redesigned navigation bar at the bottom to quickly access the Email, Calendar, Contacts, and Settings modules. Also, the
    • Records Per Page

      Can we get max number of records per page increased from 100 to 250 and 500 please? Or alternatively allow us to use the Zoho Sheet View for all records and not just the max 100 showing on the page? thanks.
    • This campain is on hold

      Trying to start a Zoho Campaign for our company but the error message when we try to send it out it this: This campaign is on hold Our compliance team needs additional information about your sender domain address. They'll reach out to you shortly via
    • Enable Screen Recording in Zoho WorkDrive Mobile Apps (Android & iOS)

      Hi Zoho WorkDrive Team, How are you? We are enthusiastic Zoho One users and rely heavily on Zoho WorkDrive for internal collaboration and content sharing. The screen-recording feature in the WorkDrive web app (similar to Loom) is extremely useful- however,
    • Blueprint transitions on locked records

      We use the ability to automatically lock records (quotes, sales orders, etc.) based on criteria, such as stage. For instance, if a quote has been sent to a client, the quote is then locked for further edits. Our ideal quote stage process is: Draft>Sent>Won.
    • 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
    • Sales Ordes removes TAX at random for some or all prodcuts, even after creating it

      Hi at Zoho CRM, in the Sales Orders section, when Creating, Cloning or editing any Sales Orders the TAX of one or all products gets "unchecked" at random. All of our products ALWAYS must have the same TAX selected automatically. At least it used to be
    • Turning off self view in Zoho Meeting

      Hi Is it possible to turn off/hide self view in meetings?  Cant see any options for it. Thanks
    • CRM to Desk Contact Sync Issues?

      Hello, I noticed none of the contact changes in CRM are being transferred over to Desk. Anyone else experiencing this? I checked the sync history in desk and it confirms it - it doesn't show "X Contacts Synced" like it normally does.
    • Please add Deluge code editing for Forms

      Assuming Forms is built on the same codebase as Creator, etc., it would be wonderful to be able to edit form code, cut and paste form elements across different forms, share code with other users, and so on.
    • Is there any workaround or method to restrict user login to a particular device

      Hi, I want to restrict my CRM user from accessing the Zoho CRM/Zoho One application to the company provided devices only. As far as I have explored there is no direct way to do this. Is there any workarounds that will allow me to do this. I want to ensure
    • Email from CRM being Blocked or Marked as Spam by Google (and maybe more)

      In the past 24 hours we’ve noticed that emails sent via Zoho CRM are being blocked or flagged as phishing, particularly by Google. The issue seems to occur specifically when emails contain links. URLs like www.domain.com or www.example.com are automatically
    • Introducing SlyteUI : From Idea to a Working Interface in Minutes

      Hello everyone! Are you spending hours building basic UIs? Does even the smallest customization feel like a major task? CRM customization should feel intuitive and straightforward, not time consuming or exhausting. SlyteUI makes this possible by simplifying
    • All new Address Field in Zoho CRM: maintain structured and accurate address inputs

      Availability Update: 29 September 2025: It's currently available for all new sign-ups and for existing Zoho CRM orgs which are in the Professional edition exclusively for IN DC users. 2 March 2026: Available to users in all DCs except US and EU DC. 24
    • Zoho Tables - Form default entry

      How so I set a form field to be populated with an entry from another table? I created a view on my source table limiting the results to just the one thing I want to see. When adding a Client via my Add Client form, I want the Client Type field to already
    • Payment Card or Identity form-fill from Vault?

      Hello! I'm working on replacing Bitwarden with Vault and one issue I've run into is that I can't find any option to fill address and payment forms from Payment Card or Identity info that has been saved in Vault. Is there a way to do this? Is it a planned
    • Introducing Bin Locations In Zoho Inventory

      Hello users, We are excited to let you know that your wait for the Bin Locations feature has now come to an end! Yes, you heard us right! We are here to introduce the much-awaited Bin Locations now in Zoho Inventory. But before we dive into the feature
    • Add Actionable “Smart Commits” for GitHub Integration

      Hi Zoho Projects Team, I am submitting a feature request to introduce Smart Commits support for the GitHub integration in Zoho Projects. The Current Limitation: Currently, Zoho Projects offers a "passive" integration. Including a Task ID in a commit message
    • Item Details Field - New Barcode / Document option?

      Is this a new feature??? its in both books and inventory.
    • Items attribute questions

      Many of my items have attributes, such as size and color. How can I add new fields to the "New Items" screen to capture that in my Purchase Orders, Items, and Sales Order pages? I only see these attribute fields when adding an Item Group. Also, on the
    • SEO recommendation of H1 tag for website tittle

      The exact words are “ It is good practice to place the page title inside the H1tag.” Now I already have one H1 tag on my website but it is not website tittle. In the SEO recommendation that is clear too that I have h1 tag on my page. Now I don’t know
    • Anyone Building AI-Based SEO Dashboards in Zoho Analytics?

      Hey everyone, I’m currently working on an SEO reporting dashboard in Zoho Analytics and looking to enhance it with AI-based insights—especially around AI visibility, keyword trends, and traffic sources. The goal is to track not just traditional metrics
    • Knowledgebase SEO

      We have a custom-domain mapped help center that is not restricted via login. I have some questions: a) will a robots.txt file still allow us to control indexing? b) do we have the ability to edit the sitemap? c) do category URLs get indexed by search
    • Marketing Tip #15: Rank better with keyword-rich URLs for product pages

      Your product page URL is a small detail that can make a surprisingly big difference. Clean, readable URLs help in two ways: They’re easier for customers to trust and remember (no one likes clicking a link that looks messy or random). They help search
    • Marketing Tip #26: Optimize product images for SEO

      Product images can do more than make your store look good. They can also help customers discover your products through search. Since search engines can’t "see" images, they rely on text signals to understand what an image is about. Two small actions make
    • Zia Agents in Zoho CRM: a better way to set up digital employees

      Hello everyone, If you've been using Zia Agents in Zoho CRM, so far using Connections was the only deployment method you're familiar with. You create an agent in Zia Agents (define its objective, write instructions, use tools, add knowledge base) and
    • Cross Module Filtering – Use Fields from Lookup modules in Custom Views criteria and Advanced Filters

      Hello everyone, Zoho CRM now enables you to achieve deeper filtering of records in a module, using fields of a lookup, thereby enhancing your data management experience manifold. This filtering based on lookup module fields is now available in advanced
    • How can we use Loop Structures in Deluge script?

      Hi, I am using GetRecords() function to fetch records from a module in Zoho CRM,  the number of records is 800+, but GetRecords() function returns 200 records at one time,  So, I want to use loops to achieve my task, but it gives me error when i use any loop instead of For each loop. How can I perform my task? Please help Zoho community. Thanks 
    • Stock Count

      The stock count is a nice new feature, but we cannot figure out how to: 1. Use it without assigning to a person, we have a team or one of multiple do stock counts as do most any company. 2. Add any extra fields to what the "counter" sees. The most important
    • SalesIQ Operator Activity Reports in Zoho Analytics

      I'm busy building a dashboard in Zoho Analytics and I want to include SalesIQ stats in the dashboard, but I'm unable to get the statistics mentioned in the attached image. Any idea where I can get the stats for Operator Activity?
    • Multi-Select Field Option Limit Inquiry

      Hello FSM Team, We would like to inquire about the limitation of the Multi-Select field in Zoho FSM. Currently, the system allows a maximum of 10 selectable options, and we encountered the message: “Option count more than allowed count of 10.” Issue:
    • MS Teams integration

      I followed all the steps to configure the bot chanel notifications, for all events. All configuration worked fine, without issues, but I don´t recevie any notification in the Teams chanel. Must I configurate aditional permission set in MS 365 or Zoho
    • Zoho Bookings - Feature Request - Services Which Include A Resource and Consultant

      Hi Bookings Team, My feature request is to have the ability to add Consultants and Resources to Services. Use case: Your business provides first aid training and there are certain equpment you require to provide the half day training. There are only specific
    • Six important date functions every professional should know

      You probably use plenty of formulas already, but there are some that are essential for people in business roles, such as date functions. These tools help with scheduling, predicting, and tracking, and they can be useful whether you're dealing with payrolls,
    • Next Page