Gain control over record sharing with portal users through our new enhancement: criteria-based data exposure

Gain control over record sharing with portal users through our new enhancement: 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

    • Allow Manual Popup Canvas Size Control

      Hello Zoho PageSense Team, We hope you're doing well. We would like to request an enhancement to the PageSense popup editor regarding popup sizing. Current Limitation: Currently, the size (width and height) of a popup is strictly controlled by the selected
    • Why does Zoho’s diff viewer highlight parts of unchanged lines?

      Hi everyone, I’ve noticed something odd in the Zoho editor’s diff view. When I delete a single line, the diff doesn’t just mark that line as removed. Instead, it highlights parts of the next line as if they changed, even though they are identical. Example:
    • CRM x WorkDrive: File storage for new CRM signups is now powered by WorkDrive

      Availability Editions: All DCs: All Release plan: Released for new signups in all DCs. It will be enabled for existing users in a phased manner in the upcoming months. Help documentation: Documents in Zoho CRM Manage folders in Documents tab Manage files
    • Introducing Assemblies and Kits in Zoho Inventory

      Hello customers, We’re excited to share a major revamp to Zoho Inventory that brings both clarity and flexibility to your inventory management experience! Presenting Assemblies and Kits We’re thrilled to introduce Assemblies and Kits, which replaces the
    • Automating Employee Birthday Notifications in Zoho Cliq

      Have you ever missed a birthday and felt like the office Grinch? Fear not, the Cliq Developer Platform has got your back! With Zoho Cliq's Schedulers, you can be the office party-cipant who never forgets a single cake, balloon, or awkward rendition of
    • Zoho Survey reminder settings are extremely confusing

      Hi, I just want to set 3 reminders, one week apart from the first email out. Your form is too confusing and I don't understand. Can you simplify and be more specific regarding the language used on the form ?
    • Add deluge function to shorten URLs

      Zoho Social contains a nice feature to shorten URLs using zurl.co. It would be really helpful to have similar functionality in a Deluge call please, either as an inbuilt function or a standard integration. My Creator app sends an email with a personalised
    • form data load issue when saving as duplicate record is made

      Hello. I have a form with a lookup when a value is selected the data from the corresponding record is filled into all of the fields in the form. But the form is loaded in such a state that if any value is changed it will take all of the values pre loaded
    • Recurring Tasks and Reminders in Projects

      Recurring tasks are tasks that are created once, and then recreated automatically after a designated time period. For example, the invoice for your billable tasks is due every week. You can set that task to recreate itself every week. Also, the future
    • Unable to remove the “Automatically Assigned” territory from existing records

      Hello Zoho Community Team, We are currently using Territory Management in Zoho CRM and have encountered an issue with automatically assigned territories on Account records. Once any account is created the territory is assigned automatically, the Automatically
    • Google Fonts Integration in Pagesense Popup Editor

      Hello Zoho Pagesense Team, We hope you're doing well. We’d like to submit a feature request to enhance Zoho Pagesense’s popup editor with Google Fonts support. Current Limitation: Currently, Pagesense offers a limited set of default fonts. Google Fonts
    • Improved Contact Sync flow in Google Integration with Zoho CRM

      Hello Everyone, Your contact sync in Google integration just got revamped! We have redesigned the sync process to give users more control over what data flows into Google and ensure that this data flows effortlessly between Zoho CRM and Google. With this
    • Improved Functionality PO Bill SO Invoice

      Hello, I need to enter over 100 items, it's frustrating to scroll a few item rows and wait for more to load, then scroll again. It would be nice to have buttons that scroll to the top or bottom with one click. Furthermore, these items I'm adding are VAT
    • Wishes for 2026

      Hello, and a happy new year 2026! Let's hope it's better for everyone. I'd like to share some thoughts on Zoho One and what could be useful in the short, medium, and long term. Some things are already there, but not applied to Zoho One. Others seem like
    • How to Integrate Zoho Books with Xero (No Native Connection Available)

      Hi everyone, I’m currently facing an issue with integrating Zoho Books invoices with Xero, as I’ve noticed Zoho does not provide a native integration with Xero at this time. I would like to ask: What are the common or recommended solutions for syncing
    • error while listing mails

      I can't access email in any of my folders: Oops, an error occurred - retry produces the second error response: error while listing mails (cannot parse null string). I've signed in and out of Zoho, restarted my iMac.
    • Ability to Edit YouTube Video Title, Description & Thumbnail After Publishing

      Hi Zoho Social Team, How are you? We would like to request an enhancement to Zoho Social that enables users to edit YouTube video details after the video has already been published. Your team confirmed that while Zoho Social currently allows editing the
    • Critical Issue: Tickets Opened for Zoho Support via the Zoho Help Portal Were Not Processed

      Hi everyone, We want to bring to your attention a serious issue we’ve experienced with the Zoho support Help Portal. For more than a week, tickets submitted directly via the Help Portal were not being handled at all. At the same time no alert was posted
    • Hide/Show Subform Fields On User Input

      Hello, Are there any future updates in Hide/Show Subform Fields "On User Input"?
    • Cloning Item With Images Or The Option With Images

      Hello, when I clone an item, I expect the images to carry over to the cloned item, however this is not the case in Inventory. Please make it possible for the images to get cloned or at least can we get a pop up asking if we want to clone the images as
    • Custom validation in CRM schema

      Validation rules in CRM layouts work nicely, good docs by @Kiran Karthik P https://help.zoho.com/portal/en/kb/crm/customize-crm-account/validation-rules/articles/create-validation-rules I'd prefer validating data input 'closer to the schema'
    • Adding Default Module Image into mail merge field

      As with most people finding their way to these forums i have a specific requirement that doesn't seem to be supported by Zoho I have created 2 custom modules to suit my purpose 1 is an inventory type module that lists aluminium extrusions, and all relevant
    • Is it possible to roll up all Contact emails to the Account view?

      Is there a way to track all emails associated with an Account in one single view? Currently, email history is visible when opening an individual Contact record. However, since multiple Contacts are often associated with a single Account, it would be beneficial
    • Free Training - Explore What’s New in Zoho One 2025

      Greetings! We hope you have all had a chance by now to get hands-on with the new features and updates released as part of ZO25. Yes, we understand that you may have questions and feedback. To ensure you gain a comprehensive understanding of these updates,
    • Good news! Calendar in Zoho CRM gets a face lift

      Dear Customers, We are delighted to unveil the revamped calendar UI in Zoho CRM. With a complete visual overhaul aligned with CRM for Everyone, the calendar now offers a more intuitive and flexible scheduling experience. What’s new? Distinguish activities
    • Quick way to add a field in Chat Window

      I want to add Company Field in chat window to lessen the irrelevant users in sending chat and set them in mind that we are dealing with companies. I request that it will be as easy as possible like just ticking it then typing the label then connecting
    • How to create a two way Sync with CRM Contacts Module?

      Newbie creator here (but not to Zoho CRM). I want to create an app that operates on a sub-set of CRM Contacts - only those with a specific tag. I want the app records to mirror the tagged contacts in CRM. I would like it to update when the Creator app
    • Zoho Sheet for Desktop

      Does Zoho plans to develop a Desktop version of Sheet that installs on the computer like was done with Writer?
    • How to import data from PDF into Zoho Sheet

      I am looking to import Consolidated Account Statement (https://www.camsonline.com/Investors/Statements/Consolidated-Account-Statement) into zoho sheet. Any help is appreciated. The pdf is received as attachment in the email, this document is password
    • Zoho Projects Android app: Integration with Microsoft Intune

      Hello everyone! We’re excited to announce that Zoho Projects now integrates with Microsoft Intune, enabling enhanced security and enterprise app management. We have now added support for Microsoft Intune Mobile Application Management (MAM) policies through
    • Cant't update custom field when custom field is external lookup in Zoho Books

      Hello I use that : po = zoho.books.updateRecord("purchaseorders",XXXX,purchaseorder_id,updateCustomFieldseMap,"el_books_connection"); c_f_Map2 = Map(); c_f_Map2.put("label","EL ORDER ID"); c_f_Map2.put("value",el_order_id); c_f_List.add(c_f_Map2); updateCustomFieldseMap
    • About Zoneminder (CCTV) and Zoho People

      Hi team I would like to implement a CCTV service for our branches, with the aim of passively detecting both the entry and exit of personnel enrolled in Zoho Peeple, but my question is: It is possible to integrate Zoho People with Zoneminder, I understand
    • Admin asked me for Backend Details when I wanted to verify my ZeptoMail Account

      Please provide the backend details where you will be adding the SMTP/API information of ZeptoMail Who knows what this means?
    • Kaizen #223 - File Manager in CRM Widget Using ZRC Methods

      Hello, CRM Wizards! Here is what we are improving this week with Kaizen. we will explore the new ZRC (Zoho Request Client) introduced in Widget SDK v1.5, and learn how to use it to build a Related List Widget that integrates with Zoho WorkDrive. It helps
    • Set connection link name from variable in invokeurl

      Hi, guys. How to set in parameter "connection" a variable, instead of a string. connectionLinkName = manager.get('connectionLinkName').toString(); response = invokeurl [ url :"https://www.googleapis.com/calendar/v3/freeBusy" type :POST parameters:requestParams.toString()
    • Possible to connect Zoho CRM's Sandbox with Zoho Creator's Sandbox?

      We are making some big changes on our CRM so we are testing it out in CRM's Sandbox. We also have a Zoho Creator app that we need to test. Is it possible to connect Zoho CRM's Sandbox to Zoho Creator's Sandbox so that I can perform those tests?
    • I Need Help Verifying Ownership of My Zoho Help Desk on Google Search Console

      I added my Zoho desk portal to Google Search Console, but since i do not have access to the html code of my theme, i could not verify ownership of my portal on Google search console. I want you to help me place the html code given to me from Google search
    • Timeline Tracker

      Hi Team, I am currently using Zoho Creator – Blueprint Workflows, and I would like to know if there is a way to track a timeline of the approval process within a Blueprint. Specifically, I am looking for details such as: Who submitted the record Who clicked
    • Primary / Other Billing Contacts

      If you add an additional contact to a Zoho Billing Customer record, and then mark this new contact as the primary contact, will both the new primary and old primary still receive notifications? Can you stop notifications from going to the additional contacts
    • Is it possible to enforce a single default task for all users in a Zoho Projects ?

      In Zoho Projects, the Tasks module provides multiple views, including List, Gantt, and Kanban. Additionally, users can create and switch to their own custom views. During project review meetings, this flexibility creates confusion because different users
    • Next Page