It is time to take our rough sketch apart and to start thinking in Zendesk terms. How does Zendesk allow us to achieve our desired setup? Looking at our flowchart, we can now take each element and review our options within Zendesk. We can therefore start to create a more detailed list of our requirements. Meaning, we can start creating a list of features that need to be set up in order to turn our plan into reality.
We should already keep in mind that everything we do now will help us create a quick road map later on. That is why we need to be specific enough so that a list of tasks can be generated without having to do any extra research.
It is also important to note that it might not always be as simple as working through the created flowchart from A to B. More likely, you will end up jumping around a little. This is due to the fact that each element has to fit together at the end. Planning the integration of one element might effect the way we need to set up another. Also, keep in mind that throughout this book, we are going to cover a lot of Zendesk topics in detail. A lot of these topics are mentioned before we cover them in all of their complexity. There is no need to understand everything until we get to the point of implementation later on.
Before we can create our final list of tasks as well as our road map, we should review our work so far. While some implementation tasks might become quite obvious, such as setting up the right views, looking at our plan we might wonder how we can achieve certain objectives. For now, we will only focus on those parts. Obviously, this is just an example. When planning your own Zendesk setup, you might already know all the answers, but the questions might be different altogether.
In order to come up with the right questions, let's start by going through our flowchart while keeping the overall process in mind:
The initial questions that come to mind are:
How can we actually know if a ticket requester is a VIP? How can we know anything about our customers when they contact us?
Clearly, it is not possible to get customer information in every scenario. In many cases, requesters might not even be customers yet. Therefore, we should focus on those cases where we can get the information and choose the right solution for us. In our case, there are two different types of information that come to mind:
- Information that will help us classify the ticket. In our case, is the user a VIP?
- Information that will help us solve the ticket, such as what software did the user buy?
While we do need to know if a user is in fact a VIP while the ticket is being created, it would be totally fine to receive information such as "products bought by the customer" when first opening the ticket. We already know, at this point, it will not be possible to get this information via a ticket created through Facebook, Twitter, or the standard Zendesk widget.
We could, however, allow the VIP information to be transferred to our Zendesk environment when a customer is using our support form. As we have the option to program on our own or change the existing support form, we can easily achieve this. Another way of achieving this would be using the Single Sign-On (SSO) technology for our end-users, which would allow us to set user tags. There are many ways that would lead us to the same outcome, some of which we will cover later in this book.
If we want to know more about our customers while answering their requests, it would be helpful to create our own little Zendesk app to help us out. Most companies have a unique identifier for each customer. In our case, we could use the customer's e-mail address. We could either display a generated link, that would open the companies backend, displaying the necessary information or we could go one step further and query those information from our servers and then display them within our ticket view itself. We will cover both options later in this book.
As a result of our two preceding questions, we can record the following:
Information that will help us classify the ticket. In our case, is the user a VIP?
- We can send the VIP information via Support Form
- We can use SSO and set the VIP status via a user tag
- We could set the user tag via API when the subscription is bought
Information that will help us solve the ticket, such as what software did the user buy?
- We could program an app that would generate a link to our backend
- We could program an app that would query all the information and display them directly in our app or ticket view
Our next questions would be:
How can we classify tickets as either EscalationTypeA or EscalationTypeB? How could we escalate these tickets differently depending on those two types?
In order to do that, we could simply create two Zendesk triggers and a custom ticket field. The first trigger would check whether the ticket was created via a social media channel. If so, it would set the custom ticket field to EscalationTypeA
. The second trigger would check whether the ticket was created via any of the other listed channels. In that case, it would set the custom ticket field to EscalationTypeB
. Both triggers could also assign the initial priority.
In order for the tickets to be escalated depending on the type, we can make use of automations. By setting up a few automations for both cases, we can easily check the type of the ticket and escalate the ticket after a certain amount of time. Here is an example automation:
Name: Escalation Rule - EscalationTypeA - Ticket age > 1 hour -> Escalation Level: High
Knowing how we would like to integrate our business rules for the purpose of ticket escalation, we can now decide on the exact rules and create a list of triggers and automations we will need to create.
Before we do that, however, let's take a look at our complete flowchart again in order to come up with the next questions:
Looking at our flowchart, the next question that comes to mind is:
How can we allow agents to push tickets to the Tier 2 view?
Right off the bat, I can come up with three different ways to achieve that. All of which will need a ticket field that either says tier1
or tier2
. In any case, we will need to create a trigger that sets the ticket field to tier1
as soon as a ticket has been created.
Now we can allow the agent to do three different things:
- The agent can set the drop-down to
tier
and submit the ticket as open
. - The agent can use a macro called
Push to Tier 2
, which we would need to create. The macro would then automatically set the right parameters. - The agent can simply click on a button named Push to Tier 2. For that we would need to create a little ticket sidebar app.
While I prefer the third option because of speed, we might want to start with option 2 and integrate option 3 later on.