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.
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 |
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.
If 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.
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
Recent Topics
Text snippet
There is a nice feature in Zoho Desk called Text Snippet. It allows you to insert a bit of text anywhere in a reply that you are typing. That would be nice to have that option in Zoho CRM as well when we compose an email. Moderation Update: We agree that
Kaizen #206 - Answering your Questions | Displaying Related Purchase Orders from Zoho Books in CRM Deals using Queries
Hello everyone! We're back with another post in the Kaizen series. We're grateful for the feedback we received from all of you! One of the questions we received was "I would like to see the list of Purchase Orders in Zoho Books for a Deal in CRM." We
Add Analytics function for Title case (capitalising each word in a string)
At present, you can only capitalise each word in a string in Analytics during data import. It would be really useful to be able to do this with a formula column, but there is no Title Case function.
How to conditionally embed an own internal widget with parameters in an html snippet?
Hello everyone, I'm trying to create a dynamic view in a page using an HTML snippet. The goal is to display different content based on a URL parameter (input.step). I have successfully managed to conditionally display different forms using the following
Where can I find rejected inbound mails and their reason for rejection
Hi, I was recently made aware by a mailing list which I am subscribed to (ffmpeg-devel@ffmpeg.org) that my Zoho mail Mail account is rejecting some emails. If I look under Admin Panel > Security & Compliance > Quarantine > Incoming, the list there is
Sync more than one Workdrive
Hello Please I'm facing some difficulties since some days. In my company we have many zoho accounts in different organisations. And I have to find a way to sync all these Workdrives. I spend many hours to search it on zoho Workdrive but no solution. Could someone help me ? Any idea how I can achieve it ? Thanks in advance. Regards
Zoho writer unable to merge documents to PDF with basic fonts in Hebrew or fonts from my computer
I created several forms that will be merged into PDF files through Zoho Writer and I am unable to receive the PDF in the basic fonts of the Hebrew language or in the fonts I have on my computer. The writer exports to PDF an exchange font that looks very
Base Currency Adjustment Reversal
Two questions surrounding the base currency adjustments (BCA). I recently ported over from QB so I need to enter the base currency adjustments. In QB, it will calculate the BCA for you at the end of the year and then reverse it at the top of the following year. Makes sense. Does Zohobooks not do this as well? I created a BCA for Dec 31, 2016 but no reversing entry was made Jan 1, 2017. Am I supposed to manually do a reversal? I'm not even allowed to post journals directly to the 'exchange gain loss'
Please implement UAE Central Bank FX rates
Hello, as I understand from your knowledge base, any UAE business account created from September 15, 2018 does not have foreign exchange rates fetched automatically. This is a serious inconvenience and I am not sure why ZOHO has not looked into the ways
Search Records returning different values than actually present
Hey! I have this following line in my deluge script: accountSearch = zoho.crm.searchRecords("Accounts","(RS_Enroll_ID:equals:" + rsid + ")",1,200,{"cvid":864868001088693817}); info "Account search size: " + accountSearch.size(); listOfAccounts = zoho.crm.searchRecords("Accounts","(RS_Enroll_ID:equals:"
Making digital signatures accessible to all: Introducing accessibility controls in Zoho Sign
Hi there! At Zoho Sign, we are committed to building an inclusive digital experience for all our users. As part of our ongoing efforts to align with Web Content Accessibility Guidelines (WCAG), we’re updating the application with support that will go
Super Admin Access to All Courses and Spaces in Zoho Learn
Dear Zoho Learn Team, We hope this message finds you well. We are using Zoho Learn extensively for internal and agent training. While managing our courses and spaces, we encountered a significant limitation regarding admin access and course management.
Print checks for owner's draw
Hi. Can I use Zoho check printing for draws to Owner's Equity? This may be a specific case of the missing Pay expenses via Check feature. If it's not available, are there plans to add this feature?
[New Release 2024] Create and embed custom capabilities across CRM with Kiosk Studio, our latest no-code tool
[Update | New series] We've started publishing a series of posts on Kiosk Studio. It's called Kiosk Studio Sessions and you can check out the first one here! [Update | 15 Oct} Session #2 is live! This one will look at how to create a kiosk for your call
Revenue Management: #10 Common Mistakes while Recognizing Revenue
We are at the end of the series on Revenue Management, covering how different businesses recognise revenue. Even with clear standards like ASC 606 and IFRS 15 in practice, businesses often struggle with the nuances of revenue recognition. Especially growing
Windows Desktop App - request to add minimization/startup options
Support Team, Can you submit the following request to your development team? Here is what would be optimal in my opinion from UX perspective: 1) In the "Application Menu", add a menu item to Exit the app, as well as an alt-key shortcut for these menus
integarting attachments from crm to creator
when i tried to integrate pdf attachments from crm to creator via deluge i am getting this error {"code":2945,"description":"UPLOAD_RULE_NOT_CONFIGURED"} the code i used is attachments = zoho.crm.getRelatedRecords("Attachments","Sales_Orders",203489100020279XXX8);
Search Option
🚫 Current Limitation: As of now (September 2025), Zoho FSM lacks a global search functionality, which makes it difficult to quickly: Find specific Work Orders by number or keyword Search for customer records or contact info Locate assets, jobs, or service
Mobile Chat Window - Full Screen
Hello, The mobile chat window takes up the full screen, which is highly confusing for most customers! Using a desktop machine, I see the same happens when reducing the browser width to 800px or below. This suggests that it responsive web design, causing the switch to full screen. Can we fix this very annoying behaviour ourselves using a custom css file? If so, can you please let me know how? Thanks
Is it possible to customize ZC Themes?
I understand you can choose a layout and customize Brand Color, App Header, Menu, and Sub-Menu components, but can you override some of the default theme settings with CSS or a config file? For example, - Table highlight color - Listview auto filter highlight
Is it possible to create Custom function-based Lookup field in Zoho CRM
Is it possible to create a custom function-based lookup field in Zoho CRM? If so, how? Use case: Need to fetch users from Zoho Projects into a dropdown field in Zoho CRM.
@mention in comments no notification
Hi, hope someone can help. When we @mention someone in the comments in Zoho Creator, how is that user notifed as we don't get anything on email or in the app notifications.
Zoho unified inbox
The new changes have definitely improved things for switching between accounts. But zoho still desperately needs a unified inbox. It sucks to have to enter filters and folders for each and every inbox. This seems like such a simple thing, i wonder why Zoho hasn't done it?
Add "Running Balance" column to Account Transaction Reports
Hello, Currently Zoho Account Transaction Reports give you the opening balance, then lists the transactions, then provides the closing balance. It would be great if you could add a column on the far right that shows the "Running Balance" on the account after each transaction. There are many times when analyzing or tie-ing out transactions that this would be very helpful. I currently have to frequently run a tape on my adding machine to get balance totals after a specific transaction on the list.
Unified customer portal login
As I'm a Zoho One subscriber I can provide my customers with portal access to many of the Zoho apps. However, the customer must have a separate login for each app, which may be difficult for them to manage and frustrating as all they understand is that
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.
error : Object code : 6500
b3 = map(); b3.put("name", "Test Project Name"); updateprojects2 = invokeurl [ url :"https://projectsapi.zoho.eu/restapi/portal/era0130/projects/169495000000928007/" type :PUT parameters: b3 connection:"in2" ]; info b3 ; info updateprojects2; ------------
How to book GST paid in zoho books
hi, i am a new user to Zoho books and not able to book GST paid in books, kindly suggest how i can book it in books. thanks, siddharth
I got unknown charge from Zoho
Good day, I need help disputing a charge I don't know from, zoho. I have ZohoMail and ZeptoMail. I purchase credits for ZeptoMail, and for ZohoMail I am not subcribed.
How can I see content of system generated mails from zBooks?
System generated mails for offers or invices appear in the mail tab of the designated customer. How can I view the content? It also doesn't appear in zMail sent folder.
Function 56: Automatically enable the option for customers to pay via bank account
Hello everyone and welcome back to our series! One of the key features of Zoho Books is its integration with multiple payment gateways, allowing you to receive online payments for your invoices. This ensures faster payments, automates payment tracking
Attach Files to Your Notecards and share them on the go!
Hey everyone! We’re excited to share a feature many of you have been asking for — you can now attach files directly to your text notecards and share with ease! 🙌 This update was built with your feedback in mind, especially for those who wanted a simple
Can i connect 2 instagram accounts to 1 brand?
Can i connect 2 instagram accounts to 1 brand? Or Do i need to create 2 brands for that? also under what subscription package will this apply?
Workdrive on Android - Gallery Photo Backups
Hello, Is there any way of backing up the photos on my android phone directly to a specific folder on Workdrive? Assuming i have the workdrive app installed on the phone in question. Emma
Integración Books para cumplir la ley Crea y Crece y Ley Antifraude (VeriFactu)
Hola: En principio, en julio de 2025, entra en vigor la ley Crea y Crece y Ley Antifraude (VeriFactu). ¿Sabéis si Zoho va a cumplir con la ley para cumplir con la facturación electrónica conectada a Hacienda? Gracias
How to add a % Growth column for year-over-year comparison (2024 vs 2025)
Hello, I am trying to build a monthly revenue comparison between 2024 and 2025 in Zoho CRM Analytics. My current setup is: Module: Deals (Affaires) Filter: Stage = Closed Won Date field: Closing Date Grouping: By Month Metrics: Sum of Amount for 2024,
How to searchByCriteria records that are under approval?
I need to search for both approved and pending approval records Is that possible with this method? Or I need to a different method? var priceReqID = $Page.record_id; log(priceReqID); var records = ZDK.Apps.CRM.Price_List_Item.searchByCriteria("Price_Request:equals:"
How to add Simple Analytics to Zoho Pages?
I have a website with Zoho Pages, how do I add Simple Analytics on it? They seem to have code they need to be embedded https://docs.simpleanalytics.com/script
End Date in Zoho Bookings
When I give my appointments a 30 minutes time I would expect the software not to even show the End Time. But it actually makes the user pick an End Time. Did I just miss a setting?
Cant seem to delete an email account
Hello, I have researching for 4 days how to delete an email account and I am absolutely without a clue. The email account I am trying to delete is support<AT>fyshoes<dot>com. It's the first email account I made and it (is???) was associated with the super user (me). I have since changed it to adming<AT>fychoes<dot>com and I see the support email in my list but I just cant seem to get rid of it. Ultimately I want to associate that email account with another user that I want to add. This is really
Next Page