Handling identifiers during an import

Handling identifiers during an import

Importing your data

When importing data into an application, it is crucial to prevent data loss or duplication. These types of errors can hinder the development of a clean and well-organised database, which is essential for effective data management and security.


 
Zoho Desk provides robust functionality for importing your data. The system intelligently automates the mapping of modules and fields to reduce the risk of data loss and maintain data integrity. Users have the advantage of verifying the field mappings in advance, thus adding an extra layer of security to the import process.
 
This capability is essential not only for clarity but also in mitigating the challenges associated with user adoption. For instance, clients can be accurately mapped to the Contact name field, while company names can seamlessly align with the Account name field. This approach to data management helps maintain an organised database, thereby enhancing productivity and user trust in the system. 

Related knowledge base article: Importing data into Zoho Desk.
Info
Prerequisites
  • Users can upload a .csv file or a .zip file containing multiple .csv files. 
  • The .zip file must be named, for example, Contacts.zip, Accounts.zip, etc.

Working with the Identifier Field

When importing data into Zoho Desk, the Identifier Field is essential because it helps identify existing records and avoid duplicate entries. 



What are the Identifier Fields?  

Identifier fields are fields used to find and match existing records when importing data into the product. They also help link related records, like connecting a contact’s name with their email address.

Each module supports different unique identifier fields for identification, as described in the table below:


Module

Unique Identifier Fields

Accounts

Account ID 

Account External ID

Account Name

Contacts

Contact ID

Contact External ID 

Last Name

First Name

Email

Phone Number

Mobile

Tickets

Ticket ID

Ticket External ID

Ticket Number

Products

Product ID

Product External ID

Product Name

Tasks

TaskId

Task External ID

Calls

Call ID

Call External ID

Events

Event ID

Event External ID

Article Translation

Translation: External ID

Translation ID

Custom Modules

Record External ID

Custom Module Name


Idea

Points to remember:

  • While these fields help find matching records.
  • So, if multiple records match the value, the first matching record will be selected automatically.
  • This can lead to unexpected matches or data being updated in the wrong record if you're not careful.

For your understanding:

Some users expressed a preference for matching Contacts by Last Name instead of Email, highlighting the importance of flexibility in their workflow. Furthermore, some additional users approached matching through the use of a custom field, emphasising the need for tailored solutions to fit their unique requirements. Moreover, users requested that the functionality be enhanced by updating existing records with the relevant entity's Zoho Desk ID, aiming to streamline their processes and improve data accuracy.

Commonly used identifier fields:

  • Find By is used to identify an existing record during the import process.
  • Map By is utilized to link a child record to a parent record, for instance, by linking a Contact to a Ticket.

 

You can now select specific fields for matching, providing enhanced control and customization during bulk processes or integrations. This functionality enables more precise data handling, ensuring that the information aligns with your specific requirements. By tailoring the matching criteria, you can streamline processes, ultimately leading to enhanced efficiency and better outcomes for your team. This flexibility enables you to harness the full potential of your data.

Import Systems

Let's start by preparing the CSV file.

A sample tickets module CSV file is given below,


External ID

Subject

Contact Email

Contact Name

About

101

Hitman

rohit@bcci.com

Sharma

Rohit Sharma's journey from a gifted schoolboy to an international icon and fierce competitor reflects resilience, elegance, and remarkable leadership.

102

King Kohli

virat@bcci.com

Virat

Virat Kohli is a world-renowned Indian cricketer known for his aggressive batting, unmatched consistency, and passionate leadership across all forms of the game.

103

Lambu Ishanth

ishanth@bcci.com

Sharma

Ishant Sharma is a tall and experienced Indian fast bowler known for his 300 test wickets and key performances in overseas conditions.


Then choose the appropriate Find By identifier field.

The Find By field is selected from a predefined set of fields specific to each module. It is used to determine whether a record already exists in Zoho Desk.


When using the import tool, the system searches the Desk portal for a record (e.g., a ticket) that matches the value mapped to the selected Find By field. This prevents duplicate records by identifying existing entries based on the chosen field.  


  • Once the file is uploaded, you need to choose a Find By Field — for instance, Ticket External ID.
  • Whichever Find By field we choose must correspond to the relevant column in the CSV file. Since we've selected the Ticket External ID, the Case External ID column in your file should be mapped to the Ticket External IDfield.
QuoteIf the chosen operation is to 'create new records while avoiding duplicates', and there is no existing ticket with the External ID 101, the import tool will generate a new ticket using the mapped fields. To associate the ticket to the correct Contact, the import tool utilizes the Map By field feature.

Finally, choose the appropriate Map By field.

The Map By field enables users to link imported records to their corresponding dependent records, such as associating a ticket with a specific contact. This functionality ensures that when you import ticket data, the import tool actively searches for a matching Contact in Zoho Desk based on the value defined in the selected Map By field.


For instance, during the field mapping process, you can specifically choose to map the Ticket to a Contact using criteria such as the Contact's email ID. This approach enhances the accuracy of data integration by ensuring that each ticket is correctly associated with the relevant Contact, thereby improving data integrity and streamlining the support process. This meticulous mapping not only minimizes the chances of errors but also facilitates a more organized and efficient ticket management system, ultimately leading to improved customer experiences and satisfaction.


Idea

Map by identifier field functionality

The tool efficiently searches for contacts associated with the provided email address.    


Search: When a user submits a ticket, the system initiates a search for contacts associated with the specified email address.   


Match found: If a single match is identified, the ticket is seamlessly associated with that Contact, ensuring that all relevant customer information is readily accessible for support agents.   


Multiple Matches: If numerous contacts are found with the same email address, the system will prioritize and use the first match. This helps streamline the ticketing process while maintaining clarity in customer support.   


No Match Found: If no matches are found within the system, the ticket will not be created. This prevents unnecessary duplication and ensures that support agents are only working with valid, existing customer records. 

In summary, the strategic use of Custom Unique Fields and External ID fields as identifiers, along with the potential for composite identifiers, positions support teams to operate more effectively and improve overall customer interactions.

Significant improvements in user experience 

Transparent process and status tracking 

We’ve implemented a straightforward, step-by-step process for data imports, complete with real-time status updates for each stage. This transparency enables users to monitor import progress and understand the current state of the process.

Unique identifiers for entity mapping 

New fields have been introduced to help users identify if a parent entity already exists when importing related child entities. For example, users can seamlessly map a contact to an existing account in Zoho Desk, streamlining the import process while minimizing the risk of duplicate entries.

Enhanced error handling and log accessibility

We’ve made significant improvements in error handling by allowing users to download detailed error logs directly from the history page in the event of import failures. This enhancement provides users with greater insight into any issues, facilitating faster troubleshooting and resolution.

Support for custom modules

The import UI has been revamped to support custom modules, providing users with greater flexibility and customization options. This enables a more personalized and efficient data import experience.

Takeaway

For instance, a large corporation merging client data from multiple legacy systems into Zoho Desk modules will benefit significantly from automatic field mapping, ensuring that contact and account names are accurately aligned. This attention to detail not only improves the user experience but also enhances overall data integrity during the merging process.
 
Please stay tuned for more Desk updates.
 
Cheers,
 
Kavya Rao
The Zoho Desk Team

      • Sticky Posts

      • Zoho Desk Partners with Microsoft's M365 Copilot for seamless customer service experiences

        Hello Zoho Desk users, We are happy to announce that Zoho Desk has partnered with Microsoft's M365 to empower customer service teams with enhanced capabilities and seamless experiences for agents. Microsoft announced their partnership during their keynote
      • WhatsApp pricing changes: Pay per message starting July 1, 2025

        Starting July 1, 2025, WhatsApp is shifting from conversation-based pricing to per-message billing. That means every business-initiated message you send will count. Not just the first one in a 24-hour window. Pricing updates on the WhatsApp Business Platform
      • Live Webinar - Work smarter with Zoho Desk and Zoho Workplace integration

        Hello customers! Zoho Desk and Zoho Workplace are coming together for a webinar on 14th May, 2024. Zoho Workplace is a suite of productivity apps for email, chat, docs, calls, and more at one single place. Zoho Desk is closely integrated with a few tools
      • Apple iOS 17 and iPadOS 17 updates for Zoho Desk users

        Hello Zoho Desk users! Apple recently announced the release of iOS 17 and iPad OS 17. These latest OS updates will help you stay productive and efficient, through interactive and seamless user experiences. Zoho Desk has incorporated the updates to help
      • Zoho Desk Cheat Sheet For The Year-End

        Check out these Zoho Desk best practices to end this year on a high and have a great one ahead! #1 Set Business (Holiday) Hours - If you have limited working hours, please make sure you restrict your business hours or set them as holidays for the coming days. Let your customers know when you will, and won't, be available. #2 Update the Annual Holiday List - Check the holidays for the new year and update the holiday schedule. Usually, holidays from the current year will be carried over for the next

        • Recent Topics

        • Package Geometry

          how can i add the dimensions and weight capacity of the available boxes to be default in the system everytime we use it ?
        • How to create a Master Kanban Board that syncs with Child Projects?

          Hello, We're currently using Zoho Sprints for managing our interdepartmental teams, and we're looking to enhance our workflow using Kanban boards as part of a company-wide productivity improvement initiative. Our goal is to implement a project structure
        • Writer.. Broken?

          Hello,  Writer has been really good to me during the months I've used it, up until now.  I usually launch the app by tapping the icon and I could immediately pick up where I left off.  Now I'm greeted by a loading circle not reaching 100% and I only have the option to create a new account.  By pressing that button it now switches to a login screen and I can access my account. However, it seems (only speculating ofc) to be stuck in cell-phone mode? everything looks scrambled.  I can't access any of
        • How to access Recruit Variables in a Deluge function?

          I have set up Recruit Variables in Zoho Recruit, and I would like to know how to retrieve these variables from within a Recruit custom function (Deluge). Could someone please explain the correct way to access them? I tried the following code, but it did
        • Upon De activate a user what name doe sthe contacts candidates go under?

          When deactivating a user, does the user name remain the same, as the candidate owner? If not what/who, does it change to? Do I need to change the user name in contacts and candidates before I deactivate the user?
        • Weekly Tips: Customize alerts from your Priority Users

          You might receive hundreds of emails daily, but messages from your manager, clients, or team leads often require immediate attention, as they may contain urgent requests or critical updates. How would you ensure you never miss important messages from
        • Maximum 100 records in Sheet View is limiting. How can I increase this?

          Thanks in advance for any help with this. There was a similar post that showed answered but it did not help with increasing the number of records you see in a Sheet View. Editing in the Sheet View is fast and efficient but I have 3500 records and I need
        • Revenue Management: #3 Revenue Recognition Simplified

          In continuation of the previous post on how to compute revenue recognition, let's explore a solution that helps businesses handle real-world complexities. While the Accounting Standards provide a clear framework for recognizing revenue, the real challenge
        • Tip #40- Strengthen Remote Support with IP-based Restrictions in Zoho Assist– ‘Insider Insights’

          Protecting sensitive data and preventing unauthorized access is a top priority for any organization. With IP-based restrictions in Zoho Assist, you can ensure that only users from trusted networks can initiate remote support sessions. Say your IT team
        • Push Invoices to Xero Manually

          Hi guys, I'm wondering if anyone has wanted to do this and has a workaround or knows of an app that may be able to help with this. I sell B2B and B2C. The customers can purchase on our website or through marketplace, all of which send sales to zoho. The
        • OpenAI error code: 1010 in a Zobot

          Please see short linked screen recording. Insights welcome. Please and thank you! https://workdrive.zohoexternal.com/external/f3247ba9c872639157b707700c0300c433c7664aea924a034f4da3c3ad2e355f
        • Ability to Create Sub-Modules in Zoho CRM

          We believe there needs to be a better, more native way to manage related records in Zoho CRM without creating clutter. Ideally, Zoho would support "sub-modules" that we can create and associate under a parent module. Our use case: We have a custom module
        • Installing EMAIL Setup in New Domain

          Respected Support team, I'm facing an issue with cloudflare in Pakistan, I want to setup Zoho Mail Setup but I Don't know how to enable Zoho mail setup without cloudflare. My Website https://stumbleguymod.com/ is using CF, and I want a different Zoho
        • Does Zoho Sheet Supports https://n8n.io ?

          Does Zoho Sheet Supports https://n8n.io ? If not, can we take this as an idea and deploy in future please? Thanks
        • Signature change

          I cannot see how to change signature or out of office details easily now in the new format.
        • Inventory API - Retrieve all uploaded product / item images

          I know that I can get the primary image for each product / item or composite item, by using the /image endpoint.  https://inventory.zoho.com/api/v1/compositeitems/<item-id>/image?authtoken=<TOKEN> This will return only one photo, even if the item has multiple images uploaded. Is there a way to retrieve all images stored for an item via the Zoho Inventory API?
        • Ebay Integration malfunction

          My eBay integration in Inventory has always worked well. It suddenly malfunctioned. It is creating its own parts in Inventory that are unavailable instead of selling the parts I've always sold. Tech help was unable to resolve this. The latest sale attempt
        • 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
        • how to get all the records in the custom View more than 200 records , Without using the page Concept

          how to get all the records in the custom View more than 200 records , Without giveing page as default in the Loop Concept Pls help how We can Achive this void schedule.Lead_Attempt_To_contact_schedule_10_30() { pages = {1,2}; for each pg in pages { query_map
        • The way that Users can view the ticket

          I have created users. What I would like to achieve is the following: All users under the same company account should be able to view each other’s tickets.
        • Zoho UAE SMS/WHATSAPP

          Hello everyone, so I have a question as regards DC and their impact on automation, integration and app usage. For example I am working with a UAE clientniw but each time I tried to connect their WhatsApp and sms then automate their process I tend to receive
        • Looking to Flag or Tag contacts/ accounts on Zoho Desk?

          I am looking for a way to flag certain accounts and make it obvious on the views pages. So for example if a has a certain package or needs extra attention it is clear before even clicking on the ticket. This could be via adding a tag or flag onto an account,
        • setting date-time field from string

          hello everyone, i hope someone could help me. i have a date-time field in a form that i want to fill in from two separate fields of date, and time. i need to combine the two fields to a one date-time field but can make it work. i tried to convert the
        • Calendars and CRM Contacts

          I'm finding having multiple calendars in Zoho One so confusing. I have a few questions so I can get this straight. We have a meeting room that we have set up as a resource in Calendar. Can this be set up in Bookings and the CRM Calendar? Using Zoho Calendar,
        • Announcing new features in Trident for Mac (v1.23.0)

          Hello everyone! Trident for macOS (v.1.23.0) is here with interesting features and thoughtful enhancements to elevate your workplace communication and productivity. Here's a quick look at what's new. Record your meetings. You can now record audio and
        • Applying a record template

          Hi all, I can't figure this out. I hope you can help. The scenario: We have learners who have to complete a 'digital' journal with tasks in order to qualify. Those tasks, once completed, need a final signature from their 'Mentor', which will trigger their
        • Quickbooks invoice with Zoho Creator

          Is it possible to push data from Zoho Creator directly to an invoice on QuickBooks? If so, where can I find information on how to do this?
        • Help: Capture full page URL in hidden field when same Zoho Form is embedded on multiple pages (iframe)

          Hi all, Goal Use one Zoho Form across multiple pages and record the exact page URL (incl. subdomain + path + hash) where the user submitted it. Example pages: https://www.example.com/cargo/ https://www.example.com/cargo/containers/#contact https://cargo.example.com/auto/
        • Automatically Populate fields - HELP!

          There have been many discussions on this but I still can't seem to get it to work for me. I am trying to create a lookup field and have other fields automatically populate. Based on the instructions in the Help Center, I should be using the "on user input". It's just not working, here is the layout...   Both forms are in the same application. Current form is called Add Note, form to fetch records from is called Add Client. Lookup field is called Select_Client_ID related field in fetch form is called
        • Push notifications to portal users

          Hi all, it is possible to send push notifications to portal users?
        • Rename the attachment from record template pdf in the sendmail deluge script

          Hello Zoho, I urgently need a feature to rename record templates that I send via the sendmail feature. The program I created sends emails to clients with an invoices that have been created in the invoice database. If the user selects 3 invoice numbers,
        • Alt Text On Multiple Images

          I'm using Zoho Social to post to a charity website. Often the posts have multiple images, but it seems there is only one field for Alt Text. Does that mean I can only include it for the first image? Or is there a way to add alt text for all the imag
        • [SOLVED] Getting 401 when trying to download ticket attachment via API

          I'm able to use the API just fine to access ticket content. But I cannot download ticket attachment, keep getting 401 Client Error. Example: https://desk.zoho.com.au/api/v1/tickets/{ticket_id}/attachments/{attachment_id}/content?orgId={org_id} For headers,
        • Zoho project – Workdrive integration.

          Hello everyone, I was wondering something, we did the Zoho projects integration with Zoho Workdrive but nowhere during this integration we could set the location of the folders that would be automatically created in Workdrive. As I understand it, it creates
        • Scriptを埋め込みたくてOn User Inputを探しているのですが・・・

          編集モードで、Scriptを埋め込みたい項目を選択し、「項目のプロパティ」パネルで、その下のほうに「フィールドアクション(Field Actions)」という見出しがあると聞いたのですが、そもそも、それが見つかりません。そのために、On User Inputなどのイベントが選べません。 画面の英語を日本語に訳しているためにわけわからん状態になっているのかも知れませんが、わかる方、いらっしゃいますか?
        • Problem with cloud query exceeded

          When making a call I get this error, It is associated with a function in node that calls external APIs This is the code //tokenConsultar = thisapp.ObtenerToken(); //input.token = tokenConsultar.get("output").toMap().get("token");
        • Showing Total of Funnel Chart Legend (With Values) Items

          Hi, We are using the funnel type chart for displaying our zCRM sales pipeline stages and associated sum of deals in each stage.  We have configured the legend to show the associated value (Deal Amount (Sum)) for each stage adjacent to the legend items (Stages). Is there a way to display the total of the values in the same chart?  For example, at the bottom of the legend or maybe as a #merge placeholder in the legend title?
        • How to Convert VCF Contacts to CSV using Excel

          Many users switch from traditional address books to digital formats like vCard and CSV. These formats allow users to easily manage their contacts. However, a difficulty comes when you need to transfer your contact information to another application or
        • Field authorization for Linking module in Zoho CRM portal

          Hi guys! Currently building a customer portal for one of my clients, and I ran into a bit of a roadblock while using a multi-select lookup field. The issue is that there is no way to hide or define access in the linking module created by this multi-select
        • Kaizen #63 - Layout Rules in Zoho CRM

          Hello and welcome to another week of Kaizen! This week, we will be discussing Layout Rules in Zoho CRM. If you need to modify the layout of a module based on user inputs, or to show or hide sections based on the value of a specific field, we have got
        • Next Page