criteria-based data exposure

criteria-based data exposure

Dear Customers,

We hope you're well!

Portals is a self-service avenue through which your clients can access and manage their direct and related data in Zoho CRM. This empowers them to be more independent and enables them to experience a sense of transparency with your business.
Here, the key term to notice is direct and related data. The current portal setup serves clients only with their own primary and related data via a lookup field. Here's a pictorial representation of the current setup:

While having access only to their records gives customers authority over their information, it presents some notable challenges.

Challenge #1: Lack of control
A record undergoes two types of processes: customer-driven processes like conversion, negotiation, winning a deal, and more, and internal processes like approvals, discussions, and rejections. While the former keeps customers informed about the progress of their deals, the latter reveals the business' internal decision-making process. Administrative information isn't necessarily meant to be seen, but the current portal setup exposes each stage a record goes through, unconditionally. This poses a problem: The business lacks control over the kind of information that's shared.

Imagine this scenario: Patricia is your customer. She has access to her profile, deals, and quotes. She can manage data all by herself and track records as they progress. While having access to her own records empower her with independence, witnessing all the process changes—including approvals and rejections of discounts that aren't yet final—might cause her some anxiety. It also violates the business's privacy policies.

Challenge #2: Lack of flexibility
The portals you have now only enable you to share clients' personal and transactional records. Clients can only see their own data. But what if they want to access information other than their own? Or what if they want to view records with a particular trait?
Say, for example, your business sells multiple products across Canada, and you want your portal users to see only the products available in their regions. This is a specific request that's based on the location of the customer. The current setup limits this requirement and fails to preserve context for the customer.

Thus, to give the admins control over any exposed information and simultaneously provide portal users with both flexibility and independence, we've developed an exciting addition to portals' data-sharing functionality: criteria-based data exposure.

Introducing criteria-based data exposure
Criteria-based data exposure is the ability to expose modules and data based on conditions that you use to control what data should be exposed and when, or to render contextual results for portal users.
Technically speaking, in addition to linking a primary module and a related module using lookup fields, admins can now define two types of criteria to expose other records with a particular trait in the module: match with fields and match with values.

Match with value: This criterion should be familiar to you as a seasoned Zoho CRM user. You can determine record eligibility by defining a fieldoperator, and qualifying value.

Example: Deal type is new business. All those deals that are new businesses will be displayed to the portal user.

Match with field: Here, the relationship between the related module and the primary module is established by mapping their fields. That is, the relationships between records in primary and related modules are established by fields with the same values.

Example: Implementation agent servicing area is the client's billing city.

Let's understand these criteria by addressing our initial challenges:

Solution for challenge #1 (lack of control)
By matching with value, we can allow Patricia to view her quote only after it reaches the approved stage. This way, your business's internal correspondence stays internal, and Patricia can track her quotes without any impact on her experience.

Below is how you can configure this feature. Again, let's suppose Patricia is your customer and that you want her to have access to her transactional data:
  1. Create a mutual lookup field called "Contact name" between the Contacts and Quotes modules.
  2. To control who can access this information, use the match by value criterion and add two conditions:
    1. Quote stage is approved
    2. Quote stage is not negotiating
      This way, Patricia's quote is visible only when it reaches the approved stage.
Solution for challenge #2 (lack of flexibility)
With the match with field criterion, your portal user can view all products that are available in Canada.

Let's look at how you can configure this functionality.
The Products module is a public module, accessible to all portal users, irrespective of their relationship to that module. To bring context to this setup, add a condition using the match by field criterion:
  • Available area is mailing country
Note:
In addition to configuring criteria, you can also use an "and/or" conditional to follow these criteria. That is, you can use both criteria and lookup, or either of the three (criteria, or match with values, or match with fields), or one of the criteria and lookup.

For example, let's say your Implementation Specialist module has an exhaustive list of agents that implement servers in different areas, with varying levels and types of expertise. To display the agents the user hired as well as other agents for reference, we can configure conditions, as shown below:
  • The primary module and the related module can be linked using the native lookup field to bring up agent records that users have hired directly.
  • To display other agents in the location, let's use conditions:
    • If the record matches with values, the customer can see all agents who belong to Michigan, Ohio, Chicago, Washington, and Indianapolis will be displayed.
    • If the record matches with fields, the customer can see all agents whose service region matches the contact's mailing state. 
This way, both the agents directly hired by the contact and those agents that are from a desired location are displayed for portal users' reference.

Thanks to these new criteria, we've updated the UI of the configuration page as well. What used to be called Filter by column (where the lookup value is selected) has been renamed to Linked as and conditions.
To understand the scope and impact of this enhancement, let's look at a couple more examples.

Example 1: Match with value
Let's say you sell electronics and accessories in bulk for large enterprise organizations. You've extended the following modules in portals for enterprise customers:
  • Primary module: Contacts
  • Related modules: Products, Invoices, Cases, Appointments
  • Public module: Channel partners
 
So that customers can look at all the products applicable for enterprise customers, you've formulated some criteria: Lookup and Match by value. Customer type is Enterprise.

Now clients can see their contact records, their products (thanks to the lookup connection), and products for enterprise customers (thanks to the match by value criterion), as well as invoices, cases, and appointments related to them, and, finally, all channel partners.

Example 2: Match by field
Saint Laurent Hospital is a multi-specialty hospital in Iowa. They let their patients manage their profiles, view their prescriptions, order medicines from the pharmacy, view lab results, and book appointments with doctors using a dedicated portal.

This is their setup:
  • Primary module: Patient's profile
  • Related modules: The Prescriptions module, Lab Results module, and Appointments module are related with the primary module via lookup fields, and the Doctors module via the Match by field criterion.
  • Public modules: Medicines 
As you can see, records with personal data (prescriptions, lab results, appointments) are directly linked to the patient's profile using lookup fields, and to map the doctors to the patients' ailments, the complaint field from the patient's profile is linked to doctors whose specialization is also the same as the ailment. This means that the patient can see all the doctors whose specialization matches their complaint.
(i.e.) Specialization contains Complaint. IBS specialist contains IBS

That's all for this enhancement to the Portals configuration.

We hope these criteria will enhance your clients' experiences with your business. If you have any questions or concerns, please drop a comment. Let's connect!

Release plan: This enhancement is available for users in all DCs.
Resources: Portals in Zoho CRM

Thanks and kind regards, 
Saranya Balasubramanian


        • Recent Topics

        • Leadchain BUG

          Hello i have a problem with Facebook Leadchain. All of the information is populated correctly in the CRM, except the campaign. I want to add new leads to an existing campaign, but the lead is not added to the campaign even tough i have selected the campaign
        • CRM HAS BEEN SOOO SLOW For Days 05/15/25

          I have fantastic Wifi speed and have zero issues with other websites, apps, or programs. It takes an excruciatingly amount of time to simply load a record, open an email, compose an email, draft a new template, etc. Am I in a subset/region of subscribers
        • Zoho Desk Validation Rule Using Custom Function

          Hi all, I tried to find the way to validate fields using custom function just like in Zoho CRM but to no avail. Is there a way to do this?
        • Invalid URL error when embedded sending url into iframe for my website when using in another region

          Hi team, My site is currently working on integrating your signature feature as part of the system functionality, it's working great but recently there's been a problem like this: After successfully creating the document, i will embed a sending url into
        • Validation Rules Trigger on Untouched Fields

          In Zoho Desk, validation rules trigger for ALL fields during an update—even fields that weren't modified in the current edit. This behavior is fundamentally different from Zoho CRM and other Zoho products, where validation rules only apply to fields actually
        • One notebook is on my Android phone app, but not on Web or PC app.

          This problem started in stages. At first my phone was occasionally failing to sync. Then I noticed two things added to my Phone App. One was an existing notebook had a new cover, and the other was a new Note Card with an odd text in it. These were only
        • Holding Shift to keep selected tickets

          It is annoying trying to change the category of tickets and then closing them. You have to select them one by one, no way to 'hold down left click and drag your mouse down to select multiple'. Once you have selected them and you change the category, you
        • Custom module history is useless

          Hi I am evaluating ZOHO DESK as my support platform. As such I created a few custom modules for devices assigned to employees. I want to be able to see the whole picture when a device was reassigned to someone, but the history shows nothing Is there any
        • Removed email address - can't access account

          Hi Zoho Support Team, I recently removed my email address from my Zoho Desk account (which is part of our organization's Desk setup) and then signed out. Now, I’m unable to log back in because there is no email address associated with the account, even
        • Custom sender email address - doesn't receive verification email

          Hello, We've just purchased the premium backstage license plan and are setting up a test event. However when adding a custom sender email address, it backstage doesn't send the verification email!? We've tried on multiple email addresses. Please advise
        • 請求書に添付されているファイルをAPI経由で取得する際の問題について

          Books APIリファレンス 現在、Books APIを利用して請求書内の添付ファイルを取得するメソッドを構築しています。以下のコードを参考にしているのですが、添付ファイルが複数アップロードされている場合、responseにおいて2つ目のファイルの情報しか取得できない現象が発生しています。 headers_data = Map(); headers_data.put("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f");
        • 5名限定 課題解決型ワークショップイベント Zoho ワークアウト開催のお知らせ(5/28)

          ユーザーの皆さま、こんにちは。Zoho ユーザーコミュニティチームの藤澤です。 5月開催のZoho ワークアウトについてお知らせします。 今回はZoomにてオンライン開催します。 ▷▷登録はこちら:https://us02web.zoom.us/meeting/register/l6xddhOoR--8rroMIgKWyA ━━━━━━━━━━━━━━━━━━━━━━━━ Zoho ワークアウトとは? Zoho ユーザー同士で交流しながら、サービスに関する疑問や不明点の解消を目的とした「Zoho
        • Zoho Sheet - Option to disable "Embed" button when publishing a sheet

          Hi Sheet Team, I've noticed that when I publish a Zoho Sheet publicly, there is an option for the viewer to "embed" the sheet. There is no option to disable this button and my idea/feature request is to include a checkbox in the Publish settings to hide
        • How can I get a nested value attributes inside a key par?

          Hello! Im getting the following output when reviewing a record I am after. I am trying to put some conditions based on a data value that is inside another data. For example, lets grab the below output. Info {"Account_Name":{"name":"Liberty Construction
        • Add Pinned Tickets to top of queue

          As an IT Helpdesk, we have some tickets where they will need to be looked at daily over a week or 2, and the ability to pin a ticket to the front/top of the queue would be handy as we can be reminded to take a look, rather than placing them on hold and
        • Shared Snippets Everyone

          Hi, Now that the Shared Snippets have been released and I think will be the most used feature implemented in 2023 :) Creating and Using Snippets in Ticket Responses - Online Help | Zoho Desk Maintain consistency in ticket responses with shared snippets
        • Quick resend/One-off send function

          Sometimes I might follow up with someone that opened an email and they say "Can you please send the email to me again?" Also, on occasion, a new person may have joined my mailing list and just missed a recent campaign, so it would be VERY handy just to send them the campaign email. Obviously, there is currently no quick or easy way to do this. So, would it be possible to have such a feature? It could work from a number of places, but probably the quickest and easiest way to implement it is under
        • WhatsApp Channels in Zoho Campaigns

          Now that Meta has opened WhatsApp Channels globally, will you add it to Zoho Campaigns? It's another top channel for marketing communications as email and SMS. Thanks.
        • Issue with inventory and shopify

          Hello! We're having some issues with Inventory not synchronizing all our products with our shopify store. We've tried multiple times to synchronize them. We have multiple locations and it seems to just be getting a part of the inventory. When we sell
        • Advanced search for Spam tickets in Zoho Desk

          Currently there is no way to use advanced search in Zoho Desk to find content in tickets marked as spam. Please add this functionality! I believe this should not be the default, but a simple check box "Include Spam Tickets" would be helpful.
        • How can I mark an account as VIP or similar for special treatment?

          I'd like to create a visual enhancement to mark an account as VIP in a way our agents can't miss it. What is your suggestion? Thanks!
        • Is there a way within Desk to allow for this timeline overlapping?

          We're encountering an issue where contract timelines for the same client at the same location might overlap or follow each other sequentially. Since a single client can have multiple contracts, and we offer various contract types, is there a way within
        • how can I change the font when I answer a ticket in zoho desk? thanks

          how can I change the font when I answer a ticket in zoho desk? thanks
        • Lookup fields can't be used for anything important

          Hi It seems the lookup fields are mostly.... informative, you can at most link stuff between modules... You can't use lookup fields in blueprints, you can't use them in layout rules or anything... It that correct?
        • Is it possible to add HTML or a button on email templates in Zoho Desk?

          Hello team, I am working on getting the best use out of Zoho Desk. I have noticed that when you hit 'reply' on a ticket, it comes with a small 'survey' to the recipient saying something like 'how would you rate your experience with us?'... so my question,
        • Is it possible to add buttons on email replies to internal team members?

          Hello everyone, I am currently trying to set up some workflow rules to trigger when a ticket is created. I have noticed there is a button that can be added to email templates when sending email alerts from workflow rules, for example ${Cases.SUPPORT_PORTAL_BUTTON}.
        • Widget function call not working – need help

          Hi everyone, I'm building a widget for Zoho CRM and trying to call a Deluge function from it using ZOHO.CRM.FUNCTIONS.execute, but it's not working. Here’s what I did: I created a Standalone function in Deluge. I'm calling it inside ZOHO.embeddedApp.on("PageLoad",
        • Announcing New Features in Trident for macOS (v.1.19.0)

          Hello everyone! Trident for macOS is here with interesting features and enhancements to elevate your workplace communication. Let's take a quick look at them. View and manage .pst files. A .pst (Personal Storage Table) file is an Outlook Data Storage
        • Canvas translation

          We want to offer our CRM system to our users in English and Dutch. However, it seems that text in our deal Canvas isn't available for translation through the translation file. The same applies to the field tooltips. They don't appear in the translation
        • Item bulk update

          Why is there no "pruchase rate" to select in the field selection ? We have far more purchase increases than we have selling price amendments !
        • Learning how to customize templates via code and best practices

          Hi! Our developers team want to learn how to edit our template files safely. The last time we messed with these files our site went down for a day and we had to reconfigure it from scratch. What are the best practices to do this? How can we get a template
        • Should I save dead quotes

          I work in vehicle transport, specializing in transporting vehicles for dealerships. My role involves collaborating with individuals at each dealership to facilitate the transport of their vehicles to customers and from auctions. My question is whether
        • Can't lock timezone in new Zoho Bookings

          Hi, since the new Zoho Bookings has been changed, I cannot seem to lock the timezone in for the meetings. I have set the working hours and location, but when I got on the link, it automatically gives me slots in my timezone. I want to lock it for an in-person
        • How to import subform data - SOLUTION

          To all trying to import subform data, I might have a solution for you. First of all, for this solution to work, the subform data needs to be an independent form (not ad hoc created on the main form). Furthermore, this approach uses Excel sheets - it might not work using CSV/TSV. If this is true, then follow these steps: Import the subform records Then export these records once more including their ID Now prepare an import file for the main form that needs to contain the subform records Within this
        • Can we customize the default client-facing icons?

          Is there any way to customize the client-facing icons that display in the Zoho Bookings UI?  For example, I'm using the Default page theme and would like to modify the default icon that is shown beside "Service."  The icon currently being shown looks like a baseball hat to me (see attached screenshot) which has no relevance to my business or clients. It would be great if Zoho could provide a different, more generic icon (perhaps a bell icon to represent service?) or better yet allow the icons to
        • reCAPTCHA

          Is the Bookings form protected by reCAPTCHA, or some mechanism to ensure submission of the appointment request form is made by a human vs. bot?
        • Zoho Books | Product updates | May 2025

          Hello users, We’ve rolled out new features and enhancements to elevate your accounting experience. From configuring approval at the module level to allocating landed costs to multiple bills, these updates are designed to help you stay on top of your finances
        • Zoho Notebook suddenly running very slow on long notes

          I have been a longtime user of Zoho Notebook. Historically, it has run quite well, but I've noticed over the last few days that it has begun to run unbearably slow when typing in large notes, to the point where I can type four words and have to wait for
        • Workflow Automation Instant Action

          Hello All I need help to resolve this. I have created a few workflow 1. When Deal Stage is Submitted to Onboarding, it will create a record in my Onboarding Module 2. When Deal Stage is Live, It will copy $Deal.GOliveDate to $Onboarding.GoLiveDate For
        • Multiple team members to access one office PC

          Hello, We have a high-performance PC in our office that we use for resource-intensive tasks. All team members need to remotely access this PC from time to time. However, when I enable remote access for myself through Zoho Assist, the PC does not appear
        • Next Page