Semi-automatic Merge without appFeatured
As some of you may know, Zendesk doesn't have an automatic function to merge tickets and the only way to automatically do it is through paid Apps.
After putting some thought into it, I developed this is a semi-automatic method for merge tickets that I'll introduce here, using only Zendesk tools (trigger/automation) feel free to use it on your side.
It won’t merge tickets automatically but will allow you to have an alert on the tickets that need to be merged (1st picture below) and to see them in a dedicated view (allowing for quick merging of tickets before starting to work on all the other tickets - 2nd picture below).
The choice of names and tags is completely arbitrary. Here I chose “single” and “multiple”; single being the first ticket opened by the customer, and multiple being the ones that follow a single ticket while it is still active (not closed).
The ticket tag will be used to display the tickets in a merge-dedicated view and to start an automation, which will send an internal note in the ticket for the agent to see. A custom user field will also be used for the trigger system.
When you program the triggers and the view, it won't have consequences on your customers even if there's a mistake in the programming; but for the automation, I recommend running a few tests on draft tickets before implementing it fully on your system.
Customer Custom Field
You will need to create a User field so the information of the customer having an active ticket can be linked to his Zendesk profile. For flexibility purpose, I chose a Text custom field that we will fill in later and use as a condition for our triggers. We will:
- Leave it empty when this customer doesn’t have any active ticket (=less than solved)
- Write “single” for the ticket the customer will create when contacting us
- Change this value to “multiple” if several tickets were recently created by this customer
Picture 3 - Custom Field
You will need to create a number of triggers (5) to detect when a customer sends a message and already have an active ticket, but also to be able to know when the active ticket is closed so a new ticket received at an ulterior date won’t be identified as to be merged.
Picture 4 - Trigger list
If for some reason, you don’t want these triggers to update specific tickets that you think shouldn’t be merged; you can add more conditions than the ones shown below. As you can see, I personally added conditions for some tags and content text to be excluded from these triggers (these information are hidden on the screenshots for data privacy)
Trigger 1 - Add tag single for first ticket
The first trigger will be to detect that a new ticket was created by a customer; and that this customer doesn’t have any other ticket active. When these conditions are met, we will add the tag “singleticket” on that ticket and change the value of the User field we created as “single”.
Picture 5 - 1st trigger
Trigger 2 - Add tag single for existing tickets
This trigger will help you for tickets that are already in your system but haven’t been through the trigger yet (for example, for tickets that your agents create, or that were created prior to the creation of these triggers). Updating these tickets will make them go through this second trigger and be identified as “first ticket”/“single” ticket.
Picture 6 - 2nd trigger
Trigger 3 - Add tag multiple for non-first ticket(s)
This trigger detects if this customer already has an active ticket (or more); if so we add the tag “multipleticket” on the ticket and change the user field value to “multiple”.
Picture 7 - 3rd trigger
Trigger 4 - Remove tags when ticket closed
This trigger detects when a ticket is closed (with the exception of ticket merged) and removes both tags “singleticket” and “multipleticket” as well as resets the user field value.
Picture 8 - 4th trigger
Trigger 5 - Remove ticket tag when ticket closed by merge
This trigger will detects when a ticket is closed by a merge. This means an agent merged this ticket and it should therefore not be identified as a “multiple” ticket anymore. To do that, we simply delete the tag “multipleticket”.
Picture 9 - 5th trigger
Create a view that will display all the tickets identified as to be merged (aka with the tag “multipleticket”). This will allow your agents to merge all tickets in a row before taking care of the tickets during the day.
Conditions will be:
- Add the tag “multipleticket”
- Status less than solved
If you need, you can add this view only for a specific Group of your organization as I did in the example below and add other conditions you might want.
Picture 10 - View
Your view is already fully functional and you should start to see tickets as soon as the triggers get fired. You can test it by sending yourself several tickets from the same email address. You can check in the tickets and your profile that the tags we created get added properly.
Next step, if you want to add an internal note in the tickets, you can check the next part regarding the automation.
Please note that one of the limits of this view is that if your agent merge the first ticket into the ones that were sent after, the tag “multipleticket” will not be deleted from the tickets following the first one. These will therefore still appear in the view. To remedy this, simply go in that ticket and manually delete the tag and update the ticket, it will disappear from the Merge view. If you find a better solution for this, please feel free to share it here.
As written above, the purpose of this automation is to send an internal note in the tickets of the customer who sent several messages. The note will be sent in both the first and the other messages.
The first step to create this automation is to create a URL target that your automation can refer to in order to send the internal note.
To create this URL target, just follow the instructions given here by Andrew J: https://support.zendesk.com/hc/en-us/community/posts/4409515184282/comments/4409508056218
As threads are sometimes deleted/archived from Zendesk’s forum, I also add a screenshot of his post here:
Picture 11 - URL target by Andrew J
The URL to add is the following:
Here's my version of it:
Picture 12 - URL target for internal notes
Once you have this URL target, you can create your automation and add it in the action section.
Conditions for the automation to be triggered will be that ticket’s customer’s custom user field is “multiple”, ticket is less than closed and the hours since created is 0. This last one will prevent the automation from looping.
You can then add other conditions such as Ticket group for which the automation should work, or tickets with specific tags that you don’t want affected by the automation (useful if you receive tickets from one address but about different customers like for example Trustpilot reviews).
In the action section, simple Notify the target you created and write the message you want to see displayed in the internal note.
Picture 13 - Automation
You are now done, hope it helps. Let me know if you have a question, I'll try to help.
Have a great day!
Gracias por su atención y ayuda 😊
Thanks for putting this together, Florent! I'm going to move it over to our "User Tips" section to make it easier for others to discover.
Thanks for writing this! I have a few questions/comments
1- Couldn't trigger 1 and 2 be one single trigger, with the following under ANY conditions
Ticket is created
Ticket is updated
2- On trigger the, can we not replace the ANY conditions with
Has a Ticket "Not Present" ?
Why evaluate all the possible text values?
Based on how the triggers were setup, your first and second point can definitely work.
Please sign in to leave a comment.