Extension pointers #13: Handle cases with personalized solutions using custom actions

Extension pointers #13: Handle cases with personalized solutions using custom actions

In our last post, we detailed the steps involved in creating a custom action and the workflow from the developer and end user's side. Now let's look at a working example of how we can create a custom action and implement it in a Zoho CRM account to make the end user's work simpler.
 
You are a sales representative (the end user/extension user) handling cases and their solutions in a Zoho CRM account. While cases may arrive by phone, web, or email, you must log them with basic information, such as the subject, description, and priority.
 
Issues are typically recorded in cases modules using the Subject field, which contains a brief description of the problem. You may discover an immediate solution to the issue while manually logging the cases. In those cases, you must still manually feed the solution into the Solution field. How convenient would it be if the solution for a case could be auto-populated when a case with a common issue arises? We can streamline this process by creating a custom action.
 
Note: Throughout the following example explanation, the terms "sales representative", "end user", and "extension user" can be used interchangeably, but refer to the same person. The sales representative is the end user who installs and makes use of the extension features in their Zoho CRM account. 
 
Create a custom action as part of extension development that includes a custom UI for obtaining personalized solution inputs and an action that will update the solution in the Solution field of a case. After installing the extension, the end user can simply create workflows and associate the custom action with them. 
 
Because the sales representative who installs the extension will be dealing with the cases in their Zoho CRM account, they can easily create different workflows. Each of these workflows can be assigned criteria so that when the Subject field contains specific keywords typically used by the sales representative while logging, the custom action updates the personalized solution provided as part of that workflow custom action.
 
Let's go over the steps in order to achieve this. 
  1. Create a custom user interface (widget-connected app) that allows the user to enter their personalized solution inputs. 
  2. In the Zoho Developer console, create a custom action. 
  3. Associate the custom UI to the custom action. 
  4. Define an action that performs the function of updating a case's Solution field. 
  5. Create workflows (as an end-user perspective that meets specific subject criteria (e.g., if the subject contains keywords like "widget," "not," and ''loading," then set a personalized solution in the case) and associate a custom action to them.
 
Creating a custom UI to obtain an end user's personalized solution inputs
  • Create a custom UI to retrieve the end user's personalized input for the solution field and later be updated in a case based on the workflow the user creates.
Case handling.html code snippet
 
<html>
<head>
  <link rel="stylesheet" href="../css/style.css">
  <script src="../js/lib/zsdk.min.js"></script>
  <script src="../js/custom.js"></script>
  <script src="../js/jquery-min.js"></script>
</head>
<body>
<input type="text" id="solution" placeholder="Solution..."><br>
<button type="submit" class="submit_button" onclick="Util.save()">Save</button><br>
<script>
    $(document).ready(function(){
         ZOHO.embeddedApp.init();  
       });
   </script>
</body>
</html>
 
Case handling.js code snippet
 
Util={};
Util.save=function()
{
     ZOHO.CRM.ACTION.setConfig (
     {
               Caseid: "${!Cases.Id}",
               Solution : document.getElementById("solution").value
      })
}
 
  • The above javascript code snippet will fetch the current case's ID and set it to a variable "Caseid". The end user's inputted solution through the UI is also set to a variable "Solution".
  • These values will be passed as parameters to the custom function that will be associated with the custom action in the coming section.
Creating a custom action
 
1. Create a custom action called "Casehandling" using the Create an Action button under the Custom Actions option, available in the Components section of the Zoho Developer console. 



2. Provide a name for the custom action and a description if necessary. Click Next.



3. Associate the custom UI created earlier with the custom action by specifying the html page of the widget's connected app. Click Next.



4. Then write a Deluge function to perform the desired action by clicking the Create Function button. As shown on the right hand side of the page, the values obtained in the custom UI earlier will be passed as a JSON object parameter to this Deluge function, and then the functionalities can be performed based on these inputs from the custom page.


 
Case handling Deluge function code snippet
 
caseinfo = {"ID":config.get("Caseid"),"Solution":config.get("Solution")};
response = zoho.crm.updateRecord("Cases",config.get("Caseid"),caseinfo);
  • The above Deluge code snippet uses the current case ID and the solution input by the end user through the UI to update the personalized solution to the Solution field of the case using the updateRecord deluge task. 
  • Click Save to save the custom action.
Now that the functionality is defined, the extension can be published and installed.
 
Creating workflows in Zoho CRM as an end user

1. As an end user, install the extension.
2. Now create a workflow using Setup->Automation->Workflow rules. Create workflows for two commonly arising cases so that, as an end user, you can predefine some personalized solution inputs for these common cases. This will thereby update the solution to the case when the workflow criteria is satisfied. The two sample workflows handled for this example are:
When a widget is not loading or a 404 page not found occurs in the user's Zoho CRM account.
When a connector unauthorized error occurs.
3. First, define a workflow for "Widget not loading" case by specifying the when and condition criteria.



4. Now under "instant actions," you will find the custom action installed as part of the extension. Associate the case handling custom action with this workflow.



5. Enter the personalized solution in the custom UI displayed.


 
6. Go to the Cases module. Log a case with the Subject field, satisfying the workflow criteria.



This automatically updates the Solution field with the predefined solution entered by the end user for this workflow. 



Similarly, you can create multiple workflows for different cases for which you can define predefined solutions to make the case logging process easy. 


 
In this way, you can use custom actions to ease the end user's work by reusing templates created for them. We hope you find this information useful. Keep following this space for more insights!
 

 SEE ALSO




        • Recent Topics

        • Member Portal with Subscriptions

          We are a subscription box business using Zoho One.  How do our members login to make changes to their subscriptions, contact details, etc.  Is there a portal?  If not, what should we do to create one?  Also, we must be able to customize the portal with tabs and custom fields.  Finally, we need form and survey information to show up in the portal with some items editable and others read only.  I really need this information soon.  Thank you! Paige
        • How to select alternate invoice email notification template

          When we reissue an invoice, we want to send a different notification email. I am able to set up the alternate email body using Email Notifications/Invoice Notification settings, but I can't figure out how to attach that template to a specific invoice.
        • Rearrange web - hidden components

          When you have a good number of forms, reports and pages, searching for one among the hidden components to add it to the menu is simply hell. Huge amounts of time are wasted.
        • Telegram -> Zoho Creator answer via API.

          Hello! Did anyone work or established back connection from Telegram to Zoho Creator via API? I'm able to send notification from ZC to TG Bot successfully. (webhook is set) My notification consists of some information and inline buttons "yes" and "no".
        • How Can I Easily Access and Manage My GEPCO Online Bill Using Zoho Sheets?

          Hello everyone, I'm looking for an efficient way to access and manage my GEPCO online bills. I've heard that Zoho Sheets can be a powerful tool for organizing and tracking bills, but I'm not sure how to set it up for this specific purpose. Does anyone
        • Update a form record based on another form with same user ID

          Hi, I have 2 forms linked : Customer and Subscription When a customer fills-in a subsequent subscription form, there is a automatic subscription number created in the subscription form that I want to paste in a miroir field in the customer field. What
        • Notes Filter is not working

          I am trying to filter the CRM down to specific notes that I want that'll show up all the data that has a specific keyword for example, "stocks" and it says no leads are found... Don't know how to fix. don't know if it's a system glitch. I even put a note
        • CASE Module - email function

          HI there, I dont know if this has been asked or answered before as i couldnt find it on the forums. Issue: when a new case is raised, it goes under case tab and everything is captured. Then how do i send emails to the client who raised case with the details
        • How to Initiate WhatsApp Message on SalesIQ?

          I've just activated a Business WhatsApp phone number through SalesIQ because of its touted omnichannel chat approach. Sounds exciting. I understand that when a customer sends me a WA message, I can reply to it on SalesIQ and keep the chat going, perfect.
        • Introducing the New SalesIQ Live Chat Widget: Twice as Fast, Fully Optimized for Engagement!

          Hello everyone! To celebrate our 10-year milestone, we're thrilled to unveil the new and improved SalesIQ Live Chat Widget! Redesigned at both the User Interface and performance levels, this enhanced widget is not only optimized but also 2X faster than
        • E-mails to suppliers

          Hi, i want to upload a spread sheet every day and send an e-mail to our suppliers every day (or when triggering a button?) with info from the spreadsheet lines. The supplier e-mail would be on each line. Unfortunately, when creating a scheduled automation,
        • How can I transfer data from Production to Development environment?

          Hi, I am using Creator V6 and would like to bring all the data in production to the Development and Testing environments? Is there an easy way of doing that or I have to export and import each table?
        • Issue Configuring SSO Integration with Cognito in Zoho Help Center

          Dear Zoho Support Team, We have been working on configuring SSO integration for our Zoho Help Center using Amazon Cognito. While the setup appears to be completed successfully, we are encountering an issue when attempting to access the Help Center. The
        • Custom Roles & Granular Permission Control in Zoho SalesIQ

          Hello Zoho SalesIQ Team, We appreciate the functionalities offered by Zoho SalesIQ, but we would like to request a crucial enhancement regarding user roles and permissions. Current Issue: At present, Zoho SalesIQ provides fixed roles—Admin, Supervisor,
        • Zoho Creator Upcoming Updates - October 2023

          Hello all! As we step into the final quarter of this year, we're ushering in a fresh wave of improvements and new features to supercharge your experience with Zoho Creator. Join us today as we present the newest updates and enhancements for this month:
        • Sales without an invoice

          Sales without an invoice is not included on the “payments received” report. Also, sales without an invoice is not listed in the transactions under the customer’s profile, also making it easy to do a double entry. Is there a way for me to see my sales
        • Rebrand your CRM with the all-new custom domain mapping setup

          UPDATES TO THIS FEATURE! 19th Jan, 2024 — Custom domain mapping has been made available for portal users in Zoho One and CRM Plus. 23rd June, 2023 — Custom domain mapping has been made available for all users, in all DCs. Hello everyone! We are elated
        • Nested Sub-forms (Subform within subform)

          Hi Team, Whether there is any possibilities to add sub-form with in another sub-form like Main Form       -> Sub form A             ->Sub form B If we tried this, only one level of sub form only working.  Any one having any idea about this? Thanks Selvamuthukumar R
        • Enhancements to the formula field in Zoho CRM: Auto-refresh formulas with the "Now" function, stop formula executions based on criteria, and include formulas within formulas

          Dear Customers, We hope you're well! By their nature, modern businesses rely every day on computations, whether it's to calculate the price of a product, assess ROI, evaluate the lifetime value of a customer, or even determine the age of a record. With
        • Zoho CRM Kiosk Upload Files

          Hello all, We are trying out Kiosks at the moment to see where it can fit best in our business. We are still a bit off in the application but lets say we will sort this out. My question is the following - when I create a Kiosk I can add "File Upload"
        • Delay Function

          Hello, I would like to emphasize the importance of incorporating a delay functionality within custom functions, particularly in the context of integrating multiple platforms. As I understand, a delay function is not available by default in Zoho. However,
        • Client Script | Update - Introducing Subform Events and Actions

          Are you making the most of your subforms in Zoho CRM? Do you wish you could automate subform interactions and enhance user experience effortlessly? What if you had Client APIs and events specifically designed for subforms? We are thrilled to introduce
        • Whatsapp Connection Status still "Pending" after migration

          Hello, I migrated my WhatsApp API to Zoho from another provider a day ago. So far the connection status is still “Pending”. There is a problem? How long does it usually take?
        • Marking a Desk ticket as Unread after merge

          We have a custom script that runs against every new ticket and auto-merges it with any existing ticket that matches our criteria. That works fine but there is no functionality that reverts the newly-updated ticket back to an "unread" state. I found the
        • How to add a customized/dynamic Zoho Booking link in email footer?

          We just installed the latest version of the Zoho Desk <=> Zoho Booking extension from the marketplace and are quite happy to see the feature where a ticket-specific appointment booking link can be inserted in a reply. Is there any way to configure this
        • Date Time

          Hi Everyone, I would seek some help about this concern that bugs me. I'm currently working using Zoho Flow to automatically plot a calendar on the Calendar Report. Whenever a ticket from Zoho Desk Field was updated this will trigger to create a plotted
        • How to change contact record owner to its creator?

          When I convert a lead record into a contact and a deal then a the contact record will have User AAAA as record owner, and the contact record will have User XXXX as the record creator. I don't have any workflow rules in Contact module. I use the blueprint
        • Custom function inside a CUSTOM BUTTON - BOOKS CUSTOM MODULE

          I am trying to upload the attachment in a custom module(Books) to a work drive. One module is working, but another module(New) is not giving me the desired result as it is also giving an error. Of course, I changed the module name etc. Attaching the script
        • Function to update field in CRM Meetings from Bookings Appointment Status

          Hello, We're creating some reporting in Zoho Analytics using data from CRM and Bookings. Unfortunately it looks like when Bookings Appointments are carried over to CRM Meetings, the Bookings Appointment Status is not recorded in CRM Meetings. We would
        • Introducing Bot Filtering for Accurate Email Campaign Analytics

          Update : This feature has been revamped. For the most current information and improved functionalities, please visit the updated version here. Dear Marketers, We're excited to announce a new feature designed to enhance the accuracy of your email campaign
        • Zoho Meeting very bad video quality

          Hello, I need 1080p HD on my Zoho Meeting as explained here: Low Resolution/Quality Video (zoho.com) Currently, video quality is lagging with 400mb internet which is not acceptable for my business. My 1080p 60FPS webcam performs well on platforms like
        • Multi Day booking for resources

          I have following business-case: Rental for Tablets. Customer should be able to select how many device for how many days he'd like to rent. Same as a car rental for multiple days. Is this possible with Bookings on the current version?
        • How can I make time entry mandatory for tickets?

          Hi guys,  I just want to make a time entry field mandatory for tickets. How can I do that? At this stage of our usage, it's not mandatory and it could be forgotten to input a time for a ticket.  Thanks in advance 
        • Set Mandatory Lookup Fields in Ticket Layout

          I added a custom module called 'Site' in the desk. I also added a lookup field 'Site' in the ticket layout. Now, I want the 'Site' field to be mandatory in the blueprint transition. How can I do that?
        • When converting a lead to an account, the custom mandatory fields in the account are not treated by zoho as mandatory

          In my Account module I have a number of custom fields that I have set as mandatory. When I enter a new customer as a new account they work, I can't save the record without populating them. However when I convert a lead, my CRM users are able to save the
        • Zoho Workplace gets yet another security boost: The addition of Zoho Vault

          Hello Community, Passwords are often the first line of defense, yet they're also one of the most common weak points. We're thrilled to announce that Zoho Vault is now integrated with Zoho Workplace! Zoho Vault Standard is now included at no extra cost
        • Announcing new features in Trident for Windows (v.1.20.4.0)

          Hello Community, Trident for Windows is here with some new features to elevate your work experience. Let's take a quick look at what's new. Export emails. You can now export emails in the .eml file format as compressed zipped files to create a secure
        • Best Carding Forum 2025 | Trusted Hacking Forum | Verified Carder Forum | Carder Forums 2025

          Best Carding Forum 2024 | Trusted Hacking Forum | Verified Carder Forum Welcome to Legitcarding.net , the #1 Trusted Carder Forum of 2024! Whether you're a seasoned carder or just starting out, our platform offers everything you need to succeed in the
        • Automatic Email Alerts for Errors in Zoho Creator Logs

          Hello, We would like to request a feature enhancement in Zoho Creator regarding error notifications. Currently, Zoho Creator allows users to view logs and errors for each application by navigating to Zoho Creator > Operations > Logs. However, there is
        • Quickbooks Online Customer Creation Code

          Hi! I'm looking for code that will automatically create a quickbooks customer account when clicking on a button located directly within Zoho CRM - Contacts Module. Here's what I have and I can't seem to figure it out. xxxxx is our company id which we
        • Next Page