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

        • Automatic Matching from Bank Statements / Feeds

          Is it possible to have transactions from a feed or bank statement automatically match when certain criteria are met? My use case, which is pretty broadly applicable, is e-commerce transactions for merchant services accounts (clearing accounts). In these
        • I cannot find my older documents from 2024 and 2023

          I cannot find my older documents from 2024 and 2023.
        • System default SLA descriptions can't be modified

          The system default SLAs have identical descriptions for all SLA levels, but their settings differ. However, I am facing an issue where I cannot modify these descriptions and save the changes. The content of the description box can be edited but the changes
        • Customising Help Center

          Hi I don't think it is possible to add custom pages to help center? We'd like to use this as a customer portal with support tickets, FAQ/Guides, Billing and contracts. Is there any plans to add a feature like this or an alternative way to do it other
        • Replies sometimes creating separate ticket

          Sometimes when a customer responds to an email coming from Zoho Desk, instead of adding a reply to the original ticket, a separate ticket is created. This happens even though the response subject line contained the ticket number, and the person responding
        • Ticket Approvals - External Users

          The ticket approval option - we need to be able to select external users (Contacts) for approvals. Sometimes we are working with an end user and their boss needs to approve a purchase. For example, working with a cashier on a broken cash register and
        • Force Users to Ask Answer Bot a question... First

          End users will always skip talking to a bot. It would be nice if Zoho adopted the standard and forced users to first ask a question to answer bot (or zia in some fashion) and then pass to the agent if it wasn't answered. Options to force the user to speak
        • View Answer Bot conversations?

          We are trialing Zia and are experimenting with Answer Bot on our knowledge base. So far so good! Management asks me if it is possible to view Answer Bot conversations, the purpose being to look over its shoulder and confirm that it is working as des
        • Mass Email an Account

          It would be nice to mass email an account stating there is an outage at their business or something specific to an account is needed to be mass communicated. Even if it makes a ticket for every Email Out to every contact in the Account. Think: the customer
        • Multiple Topics assigned to a single Campaign

          Hello, is it possible to assign multiple Topics to a single Campaign? We frequently write a content to our subscribers that spans multiple Topics and we would like to send it to all Contacts that are subscribed to at least one of the Topics. But it looks
        • Bigin Android app update: User management

          Hello everyone! In the most recent Bigin Android app update, we have brought in support for the 'Users and Controls' section. You can now manage the users in your organization within the mobile app. There are three tabs in the 'Users and Controls' section:
        • Zoho Projects Fonts and Accessibility missing

          I cannot find any more the tab where I can change the font in Zoho Project. I also checked the knowledgebase and there they have accessibility tab which I am completely missing. Is there some setup I am missing or is it a problem with our account?
        • Introducing Version-3 APIs - Explore New APIs & Enhancements

          Happy to announce the release of Version 3 (V3) APIs with an easy to use interface, new APIs, and more examples to help you understand and access the APIs better. V3 APIs can be accessed through our new link, where you can explore our complete documentation,
        • Zoho Books Custom Widgets Deprecation Error

          I created a simple sample widget with zet and published it using sigma Both in the Sandbox and Production the Widgets are showing this error
        • Problems with PDF files in notebook

          I'm evaluating Zoho Notebook as an alternative to Evernote and imported my Evernote account to Zoho Notebook. First issue is that notes in Evernote that comprise a PDF are turned into a 'group' with a single note page (that has the text from the Evernote
        • API (v3) Tasks sorting issue

          We are using the v3 API for Projects. When we gat all tasks, per page of 100 tasks, we get the task info alright. But when we try to sort based on DESC(last_modified_time) we don't get the correct sort order. It is roughly sorted by the last_modified_time,
        • Assemblies make my stock go negative

          I am sure this is just the way that we are using this feature, but we use assemblies, a lot. The issue for us is the way that the relive inventory and the fact that it makes our composite item stock go negative. I have added flows to auto assemble and
        • User Activity Reports

          I'd like to get data related to user activity.  For example, Login and logout times, emails sent/received, new records created , etc. Is that currently available. I just can't seem to find anything . Thanks, Dave
        • Help: Populate “Contact Owner” details into Customer custom fields (for email templates) in Zoho Books

          We want to send invoices on behalf of our sales agents, and include the agent’s name, email, and phone in the email body using placeholders. Plan is to copy the Customer Owner details into three Customer custom fields, so they can be used as placeholders
        • Undocumented Books API error message - 1000 - The requested action could not be completed. Please try again. | Unexpected error

          This code sometimes throws this error 1000 - The requested action could not be completed. Please try again. | Unexpected error What does it mean? result = zoho.books.updateRecord("salesorders",organization.get("organization_id"),salesorder_id,sales_
        • Partial payments for retainer invoices

          When a customer does not pay the entire retainer invoice there is no way to apply a partial payment. PLEASE add this function.
        • Making Tags Mandatory

          When creating an expense, is it possible to make the Tags field mandatory?  I see the option in settings to make other fields mandatory, like Merchant, Description, Customer, etc, but nothing about Tags. Thanks! Kevin
        • Mass Update not trigger workflows

          Hi, I have performed a mass update of all records in a custom module using a custom view. I have a dummy checkbox on my module that I turn on or off - hoping to trigger all the new workflows that have been created for that module. However, no workflows
        • Multi-Select lookup field has reached its maximum??

          Hi there, I want to create a multi-select lookup field in a module but I can't select the model I want the relationship to be with from the list. From the help page on this I see that you can only create a max of 2 relationships per module? Is that true?
        • Generating CRM reports based on date moved in staged history

          Hi everyone, I'm trying to generate CRM reports of jobs (I think these are called usually deals) based on when they were moved to a particular stage, ie all jobs that were moved to Proposal/Quote in the previous financial year. I can see from other similar
        • Modules for missed calls, emails, texts etc

          Hi there. Is there a way to create a module that would automatically show a list of all inbound calls that were missed by our users, as well as any inbound SMS's, emails & WhatsApp messages. That way, a user who is available, can work through that list
        • Subforms and automation

          If a user updates a field how do we create an automation etc. We have a field for returned parts and i want to get an email when that field is ticked. How please as Zoho tells me no automation on subforms. The Reason- Why having waited for ever for FSM
        • Conditional layouts - support for multi-select picklists

          Hi, The documentation for conditional layouts says the following: "Layout Rules cannot be used on the following field types: Auto Number Lookup Multi Select Lookup User Lookup Formula File Upload Multi Line" I have a custom module with a multi-pick list
        • Ability to Set a General Email Signature for the Organization in Zoho Recruit

          Dear Zoho Recruit Team, I hope you're doing well. We would like to request a feature that would allow us to set a general email signature at the organizational level within Zoho Recruit. Currently it is only possible for individual users to create their
        • Custom Buttons & Links Now Supported in Portals

          We’ve just made portals in Zoho Recruit more powerful and customizable than ever! You can now bring the power of Custom Buttons and Links to your Candidate, Client, Vendor, and Custom Portals — enabling portal users to take direct action without recruiter
        • Change Last Name to not required in Leads

          I would like to upload 500 target companies as leads but I don't yet have contact people for them. Can you enable the option for me to turn this requirement off to need a Second Name? Moderation update (10-Jun-23): As we explore potential solutions for
        • CC and/or BCC users in email templates

          I would like the ability to automatically assign a CC and BCC "User (company employee)" into email templates. Specifically, I would like to be able to add the "User who owns the client" as a CC automatically on any interview scheduled or candidate submitted
        • Is there a way to show contact emails in the Account?

          I know I can see the emails I have sent and received on a Contact detail view, but I want to be able to see all the emails that have been sent and received between all an Accounts Contacts on the Account Detail view. That way when I see the Account detail
        • Live webinar: Transform data into impactful visuals with Zoho Show

          Data is frequently a core part of a presentation, whether it’s a sales pitch, project update, research report, or performance review. But when it’s just numbers on a page, the message you’re trying to convey can get buried. The real magic happens when
        • Zoho Projects - Q2 Updates | 2025

          Hello Users, With this year's second quarter behind us, Zoho Projects is marching towards expanding its usability with a user-centered, more collaborative, customizable, and automated attribute. But before we chart out plans for what’s next, it’s worth
        • File attachments not working - web version

          Since Notebook announced better file attachments, I have experienced file attachments failing. When uploaded from my pc to the web version, notebook just spins. Acting like the attachment is very large. When it's 30k. If I cancel out of this, the notecard
        • API - Barebones Data for Send Doc For Signiture

          I am learning how to use with Zoho Sign API. I am wondering if someone can give me a bare bones JSON data sample for "Send Document For Signature". Below is the blank data that is pre-populated in postman. Seems like there is more here than the bare minimum
        • Revenue Management: #2 How to compute revenue?

          In our previous post, we discussed the revenue recognition standards under IFRS 15 and ASC 606 and the five-step model. Now, let's examine three distinct business scenarios to see how the standards and model work in practice. This will help you understand
        • External lookup in CRM (as in Books)

          Hello Context: We have a CRM module, similar to Deals, but for Purchasing. Once the PO is created, a link to this PO should be updated in that "deal". In Books, you can add a custom 'external' field which can look up into CRM modules. I'm asked to have
        • "Undo Send" Feature

          Would love it if TeamInbox had an "Undo Send" feature, that gives you 10 seconds or so to "undo" the sending of an email. Many other email clients already have this feature, and my clients really miss it, as it has saved them many times in the past when
        • Next Page