Kaizen #166 - Handling Query Variables in Zoho CRM

Kaizen #166 - Handling Query Variables in Zoho CRM


Hello, Code Enthusiasts! 

Welcome to another week of Kaizen!

This week, we'll dive into handling variables in Zoho CRM Queries and see how they can be deployed in Kiosk to dynamically retrieve data. This technique is especially useful for integrating data from third-party applications or CRM itself into your custom interface, such as Canvas and Kiosk. 

Variables

Variables are placeholders in Queries that are replaced with real values at runtime. Instead of hard coding data, you can use variables to make your Queries flexible and reusable.

Syntax: {{Variable_Name}}

Query variables in Zoho CRM function differently from conventional Zoho CRM variables. While CRM variables act as containers for dynamic values that can be stored and reused anywhere within the organization, query variables are designed to receive their values at runtime.

Query variables enhance flexibility and are specifically used in:
  • COQL: To dynamically filter and retrieve data.
  • REST API: For runtime data fetching based on specific parameters.
  • Query Criteria: To define conditions dynamically for fetching records.

How to Use a Variable?

To use variables, ensure the fields providing the variable values are available in the context where the Query is executed.

Let’s say you want to evaluate a marketing campaign's performance. For this, you need to fetch all leads with a specific lead source. Since each campaign is associated with a different lead source, you can define the lead source as a variable. When viewing a campaign's details, the lead source will be passed dynamically to the Query.

Business Scenario : Nearby Delivery Hubs

Imagine a telecommerce platform using Zoho CRM to manage sales and deliveries. When a customer provides their PIN code, the salesperson must confirm with the customer for a nearby post office for package pick-ups and drop-offs in Kiosk.

With Zoho CRM Queries, you can achieve this by dynamically fetching the nearby post offices list based on the customer's PIN code and displaying it on the Contact record’s detail page. Here's how to set it up using the Kiosk feature.

Setting Up the Query in Kiosk

1. Access Kiosk Studio

  • Log in to Zoho CRM.
  • Go to Setup > Customization > Kiosk Studio and click Create Kiosk.

2. Configure the Current Module

  • Choose the module where the Kiosk will be deployed.
    For this example, select Contacts to use the PIN code from the Contact record.

  • Configuring this Current Module is mandatory to use variables from the current record. 

3. Add a Screen

  • Click the + icon on the flowchart and select Screen.
  • Name the screen and click Add.

4. Add a Query

  • Under Display Elements, choose Get Data Via Queries.
  • Click New Query and then Add Query to create a new one.

5. Set Up the Data Source

  • Any custom source has to be enrolled either in the Trusted Domains or in the Connections. For demo, 
  • In the Add Query pop-up, click Source and create a new source.
    For this demo, we’ll add India Post to fetch post offices based on PIN codes.
  • Add default Headers and Parameters to the source if any. This will be added by default whenever the source is used in a query. 

6. Define the Query

  • In the Information section, provide the query’s Name and API Name to refer to the query wherever needed.
  • Use the endpoint URL with a variable, e.g., https://api.example.com/post_offices/{{Mailing_Zip}}.
  • You can add headers and parameters specific to the query, but let us skip that for the demo. 
  • Add a JavaScript serializer to process the Query response. For our case, we will serialize the response with return result[0].PostOffice;
  • You can test your serializer with the help of Preview. Once finished, provide a test value to the variable for generating Schema for the Query Response.
    The test value you provide is temporary and not permanent. The value of a variable will be declared using merge fields when you associate the query with a component. Check Step 7 to know how it is used in our demo. 

    You can also manipulate the response by changing data types of keys in the raw response. To keep the demo simple, let's go with the raw response. 

7. Link the Query to Kiosk

  • Use Dynamic Parameters to map the variable to the Mailing Zip field from the Contact record. Enter # to merge the fields. 
  • In Choose Fields, select which data to display in the Kiosk.
  • You can further manipulate the query response in the Record Preferences section.
    Select your preference to view the response as a Single Record or Multiple Records.
    • For Single Record, choose the data that has to be displayed from the query response and click Save.
    • For Multiple Records, fill in the following details as shown in this image. 
    • The Selection Limit helps you with the maximum number of records that have to be chosen in the kiosk after publishing. 
    • Identifier field functions as the primary field to identify each record. 
    • In the fields section, choose the data that has to be displayed from the query response.

  • Customize the Kiosk button and click Done to save your configuration.
  • 8. Test and Publish

    Test the Kiosk using a sample Record ID from the Contacts module. If successful, the list of nearby post offices will display in an iframe as it would appear on the Contact detail page.


    Once satisfied, publish the Kiosk to make it live. 
    Let us check the Kiosk from the Contacts detail page. 

    Example Scenarios

    • Loan Approval: You can display a customer's CIBIL score using their Social Security Number (SSN) directly within a Canvas. The SSN serves as a runtime variable, allowing you to approve loans without manual data entry and shifting tabs.
    • Customer Support: In a Records Detail View kiosk, display all high priority tickets linked to an account. The current account's ID acts as a runtime variable, ensuring that support agents have immediate access to relevant queries and resolve issues faster.
    • Insurance Verification: In a Records Detail View kiosk, the customer's ID proof number can be used to verify their details on official government sites. The ID proof number dynamically functions as a variable, streamlining the insurance verification process.
    We hope you found this post informative and beneficial.

    If you have any queries or a topic to be discussed, reach out to us at support@zohocrm.com or drop your comments below. 

    Cheers!

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

      • Recent Topics

      • Announcing new features in Trident for Windows (v.1.27.4.0)

        Hello Community, Trident for Windows is here with exciting new features to elevate your communication and enhance productivity. Let’s dive into what’s new! Smart Sign-in. You can now sign in to Trident with Smart Sign-in. With this new addition, you can
      • Inactive Items - Make Less Prominent by Default

        Currently, when one marks an Item as "Inactive", it really doesn't do much of anything to hide it or get it out of the way. Search and reporting within Finance should, by default, hide inactive Items from standard reports, searches, etc. If one specifically
      • Add Lookup Field in Tasks Module

        Hello, I have a need to add a Lookup field in addition to the ones that are already there in the Tasks module. I've seen this thread and so understand that the reason lookup fields may not be part of it is that there are already links to the tables (
      • Time Entry : Auto fill fields Hours minutes seconds

        Hello world, Do someone know a script (for workflow rules) which fill automatically fields hours spent, minutes spent, seconds spent when we fill Executed time and End time Formula should start from (End time - Executed time) Thx in advance
      • Zoho Forms - edit the settings of the Zoho CRM field to change the integration with CRM

        I've created a Zoho CRM field in my form to pre-populate selected CRM details into the form, following the instructions here https://help.zoho.com/portal/en/kb/crm/integrations/zoho/zoho-forms/articles/zoho-forms-crm-integration#Step_2_-_Add_Zoho_CRM_Field_in_the_form
      • Ability to add notes to an appointment and add notes/attach docs to a consultation

        As an idea for the future, it would be helpful to be able to add notes to an existing appointment--there is a place to add notes for the customer, but I don't see one for the appointment. It would also be helpful to be able to add notes or attach documents
      • Im trying to white list domain dynamically in zoho desk extension

        Im trying to white list domain dynamically in zoho desk extension. But it show error Error: {errMsg: 'No entry found in plugin-manifest whiteListedDomains for requested URL'} syntax "config": [ { "displayName":"Shopify Admin API access token ", "name":
      • Zoho Payroll: Product Updates for India - May 2025

        This May, we are glad to unveil new capabilities in Zoho Payroll that simplify your payroll activities. Here's the list: Let Employees Choose Their Tax Deduction Method for One-Time Payments Calculate variable earnings based on percentage of CTC Carry
      • Bulk Update Tasks/Task Lists/Milestones

        Is there a way to bulk update tasks/task lists/milestones? We have several projects that are in the same template, and our staff complete them tasks at a time - and would like to go in an bulk update all related tasks/task lists/milestones at once. But you can't do this. I remember in an old version you could export your tasks, update the excel doc and reimport. But it doesn't seem like that option is available anymore. Can someone provide a solution/idea? Otherwise we are spending a lot of time
      • Sync failed: Invalid Date value

        Hi, I have a local .sqlite database. After importing one table through the Databridge, and produced my dashboards, I cannot sync. I get an error regarding the date column: [Line: 2 Field: 4] (2018-07-12) -ERROR: Invalid Date value The data found at the
      • Office 365 is marking us as "bulk"

        All of a sudden (like a couple of days ago) all of our customers who are on Office 365 are getting our mails in their junk email. This is not the case with Gmail or other random mail servers, nor between us. We got a 10/10 score on mail-tester.com. Also,
      • Zoho Assist

        Hi, We are using zoho assist unattended access in some windows server 2012 and recently the agent lets you connect but not let you do anything on the remote machine. Sometimes you can click on something but nothing happens. There's a issue with this new
      • Modify workflow from "ON CREATE & EDIT" to "ON CREATE" only

        Salut, Is there a way to easilly change my choice of trigger of workflow from on create & edit to on create only, or do I have to re-do the whole worklow from scratch ? Sylvain
      • Access custom modules via API?

        Is it possible to access a custom module in Zoho Inventory via the API? I can not find any reference to this in the API docs.
      • Welcome to the Zoho Service Plus community

        Hey everyone, We are excited to welcome you to be a part of the Zoho Service Plus community. Here's a quick overview of what Service Plus is all about and how the community can help us work together. What's Zoho Service Plus? Zoho Service Plus is a unified
      • Restrict Zoho Cliq Webinars and Announcements to Admins Only

        Hi Zoho Team, We hope you're doing well. We would like to raise a feature request regarding in-app announcements in Zoho Cliq, such as the recent webinar popup about the Cliq Developer Platform: While these announcements are useful, they are not always
      • Track ZohoForm Conversion using Postmessage event

        Hi, I’ve been using a third-party lead tracking tool to capture leads from my website along with their source. Earlier, with the HubSpot form, the third-party script was able to detect the postMessage event that iframe forms typically send back to the
      • Share Notebook with group created in Zoho One

        I have created a group in Zoho One for a section in my company. Is it possible to share a notebook with that Zoho One Group? Currently, it seems only possible to share to emails. Unfortunately for large teams, this will mean we are constantly having to
      • Create Tasks in arbitrary Zoho Project triggered from CRM [Zoho Flow]

        Community, hello What I'm trying to do is to create a Zoho Project when a Deal is created in CRM and then to be able to add tasks to this Project also from Zoho CRM with the trigger (Blueprint/ Workflow). I succeeded in creating Project using Zoho Flow,
      • Outlook Add-in security times out needs to login 10 times a day

        hi we've just switched the Zoho. We use Azure SSO. All users have stopped using it. Sometimes it asks every 5 minutes. What should I lot at to solve this?
      • Simplify Zoho API integration with Deluge’s invokeAPI task

        Hello all! Happy New Year! As we kick off 2025, we’re excited to share some of the latest updates to enhance your Deluge experience. While Deluge already offered robust API integration capabilities, we’ve taken it to the next level with the introduction
      • Simplify Zoho API integration with Deluge’s invokeAPI task

        Hello all! Happy New Year! As we kick off 2025, we’re excited to share some of the latest updates to enhance your Deluge experience. While Deluge already offered robust API integration capabilities, we’ve taken it to the next level with the introduction
      • Attention: Display Issues on Chromium Browsers with Intel® Core™ Ultra Processors

        Dear Customers, We've recently identified a display-related issue that may affect some of our Zoho Assist users, particularly technicians using devices powered by Intel® Core™ Ultra Processors. What’s Happening? If you're running a Chromium-based browser
      • [WEBINAR] Smooth year-end closure with Zoho Books (KENYA)

        Hello there, This webinar is for all Kenyan businesses looking to wrap up their financial year smoothly! Join our free session to learn how Zoho Books can simplify your year-end process. What to expect from this webinar: - All the latest updates in Zoho
      • Is the "schedule 10 mass emails/module" limit a per user or per organization limit?

        For scheduling emails out of Zoho CRM, there is a 10 scheduled mass emails per module limit according to Zoho documentation (https://help.zoho.com/portal/en/kb/crm/faqs/emails/articles/how-to-schedule-mass-emails-in-zoho-crm). Is this limit per user or
      • How do I show file uploads in my Zoho Creator approval workflow?

        As far as I can tell I'm not able to add the file upload field to the approval workflow show fields list. As a work around I'm making a plain text field that links to the files URL. But I'm not sure how to get a link to that url that will me to preview
      • Zoho Bookings - variable appointments

        Hello, I am looking to see if its possible for zoho bookings to recognise booking slots in the calendar or a way to do this. I would like appointments only booked in at certain times of the day and this could vary per host. I have provided a calendar
      • Best Practices - Extensions for Zoho Finance Suite

        With Sigma, the extension developer platform, you can create custom extensions that enhance the functionality of Zoho Finance apps like Zoho Books, Zoho Billing, Zoho Inventory, Zoho Expense, and Zoho Invoice. Here’s how to get started: Sign up: Create
      • QR code image is not exported in PDFs

        The new QR code field works fine when I include it in a report template and I choose the print option: https://creatorapp.zoho.com/<username>/<app_link_name>/record-print/<report_link_name>/<record_ID>/ But when I try to save the document to a .pdf file
      • Zoho Form to Zoho Form Integration

        I've created an application form that asks for references. I would like the submission of the application form to trigger a form to the reference using the email id and name entered in the first form. In the reference form that is triggered I need to
      • CRM: related table using module queries, are links possible?

        Hello. I was exploring the possibility of using a module query to get a filtered related list. For example, I'm using a Canvas custom details page and if an account has an open deal I'd like it to appear at the very beginning of the account page, with
      • 【開催報告】名古屋 ユーザー交流会 Vol.1 2025/6/6 Zohoで社内システム管理を実現するユーザー事例の共有

        ユーザーの皆さま、こんにちは。コミュニティチームの藤澤です。 6/6(金)に名古屋 ユーザー交流会 Vol.1を開催しました。当日は11名の皆さまにご参加いただきました。 本投稿では、当日実施したセッションの様子と投影資料をご紹介します。会場にお越しいただけなかった方も、ぜひご覧ください。 ユーザー活用事例セッション:Zoho CRM Plusによる引合~見積~受注までのプロセス統合 日本アイリッヒ株式会社の清水裕さんに登壇いただきました。以下に一部抜粋して掲載しています。ぜひご覧ください。 セッションの後半は、清水さんの環境を投影いただき、実際の画面上で操作しながらご説明いただいたため、本記事では掲載しておりません。予めご了承ください。
      • Better reorder point functionality?

        1. How about having item reorder point warehouse level instead branch? 2. Considering committed stock and to be received quantity also as reorder point calculation? 3. Considering associated items as committed when sales order created on composite i
      • Batch tracking updates

        I applaud the Zoho team for their recent updates to batch tracking information and even though I have 'chatted' to the Zoho team, I'm still batteling to understand the reasoning on the below. We buy stock in bulk and it is received into the Bulk Warehouse.
      • Custom Button in Shipments

        Custom buttons feature is very much needed in shipments. Please work on this feature request!
      • Zoho Support is Dysfunctional & Don't Know Their Own Support Hours

        Seeking clarification on Zoho support hours and contact numbers please. We have been trying to phone Zoho support on +61 2 8066 2898 at 9:20am AEDT for the second day in a row, and gotten a message on Zoho's support line: "support is open monday through
      • What are the knowledge database limit for AnswerBot and which app its integrate?

        1) Can AnswerBot be integrated in Trainer Central? 2) Can AnswerBot learn from external websites and excel spreadsheets? 3) Is there a limit size or number of documents for the knowledge based content to train AnswerBot? Thanks
      • Reports showing 24hr days instead of business hours

        I am not sure what I am missing, I created a report to look at resolution times in business hours but it is displaying hours based on 24hr days. I have business hours set (7am-5pm) and all that functionality is working, the reports are displaying 2 days
      • Skip Pages - Zoho form

        Hi Team, I need help with skipping pages based on the below logic in Zoho form: If field number of borrowers is 1 and field number of dependants is 0 then do not show page borrower 2 and 3 If field number of borrowers is 2 and field number of dependants
      • How to print blank form and also how to use form offline

        I have created a form in PC and want to use the form in the field to gather information. Can I use the form offline in PC - in case I have no internet access? As a fail safe, I'd like to print the blank form ut just in case the PC form doesnt work for
      • Next Page