Recipe: Quality Assurance Workflow

With a combination of SweetHawk apps, you will be able to make the most of our Zendesk support and add Quality Assurance workflows directly into your tickets, as outlined in our Quality Assurance solution.

Apps recommended for Quality Assurance workflow

Zendesk tasks and project management app advancedslas_logo.png Zendesk field rules app
Tasks and Subtickets Timers Survey Notify
Field Rules


Quality Assurance Workflow Recipe

Topics covered in this recipe:


Create Zendesk custom fields & form

The first thing we will need to create for this workflow are the fields that your QA team will fill out for each ticket they will rate. These fields can be anything you like, including drop downs, number, text boxes or multi line fields.

Create the fields in the Zendesk admin area, and also create a form to contain these new fields for your QA team.


If your Zendesk plan does not include forms, you will be able to use our Field Rules app to control when to show these new QA fields on your ticket. 

Some example fields you could create, but not limited to, are:

Drop down - Was the response clear and concise?
Drop down - Was the agent's tone professional and respectful?
Drop down - Did the agent demonstrate sufficient knowledge about the product/service?
Numeric - Rate the agent's overall performance (1 - 5)
Text box - What specific coaching points will you provide to the agent?
Text box - What steps should be taken for improvement?

The Field Rules app can also be used to create conditional scenarios, such as if a rating is poor then extra comment fields are added to the ticket to be filled in.


Create task list for a QA subticket

To facilitate the automatic creation of a QA subticket, we need to set up a task list in our Tasks and Subtickets app. This is necessary because it's not possible to automatically apply a single task directly.

So, in our Tasks and Subtickets app, create a new task list with 1 task (though you are free to create more!) that will have an attached subticket.

Create ticket template

First, we will create a ticket template that will contain all the information we need for our QA team. So that your QA agent doesn't need to keep clicking into the main support ticket, copy over as much information as you can from the parent ticket, including comment data and any important fields and don't forget to assign the ticket to your QA team.

Additional optional data from our apps that you can copy are Timer/SLA information and customer survey responses.

To copy all the comment data including any attachments, please see this article. Here is an example liquid markup that you can use in the comment box:

{% for comment in ticket.comments %}<hr><b>{{}}</b> - {{comment.created_at_with_time}} {% if comment.is_public %}(Public){% else %}<span style="background-color:yellow">(Private)</span>{% endif %}
{% for attachment in comment.attachments %}<a href='{{attachment.url}}'>{{attachment.filename}}</a><br>{% endfor %}{% endfor %}

Create task list

Now that your ticket template is created, create a new task list and add 1 task. Under the new task, click define new subticket and set the template we have created above.

Lastly, we will setup the task list to be automatically added to the ticket when required. In your trigger, you can define conditions such as when the ticket is solved, or when a survey is responded to, or it can be set through an automation like 3 days after a ticket is solved.


Create webhook to push QA data to support ticket

Now that we have a subticket ready for QA to score, the results can be pushed back into the parent ticket for the agent to review once completed.

To do this, we will need to create a webhook, please follow this guide on how to set this up.

The condition of the trigger firing should be once the QA information has been filled in, such as a certain field being 'present'.
In the trigger under JSON body, add the placeholders for the custom fields we created above, plus any other information you would like to add back to the support/parent ticket.


Notify agents of new QA rating

At the same time as the webhook above pushing the data back into the support ticket as an internal note, the agent will need to be notified of their new rating.

Our notify app is perfect for this as it will send a popup message to the assignee.

You can always use a trigger at this point to also email the assignee as well.


Optional - push Survey & Timer data into subticket

If you prefer your QA team to only work on one ticket instead of going back and forward from the original support ticket, all the required information from Timers and Survey apps can also be added to the subticket.

To ensure that Survey and Timer data exists before the QA ticket is created, you will need to make sure the task list above is only added to the ticket after survey data is recorded and/or the timer has stopped.

Timer data

There is a large range of metrics that can be stored on the ticket from our Timers app, from response duration or time lapsed/remaining to how many times the ticket was re-opened. Please see this guide on how to setup Timer metrics on your tickets.

Survey data

Our Survey app automatically stores all survey responses into custom fields, so you do not need to do any setup here. The fields with data can be found in the Admin tab of the Survey app, along with their field IDs. They are called:

Organization score (0-10):

Organization score comment:

Ticket score (0-10):


Note that built-in Zendesk satisfaction comments cannot be copied to subtickets. To be able to copy this you will need to turn off the option to 'Convert ticket score to built-in satisfaction score' in the Survey settings and using your own custom field to store the 'Ticket score comment'.

Include Survey & Timer data in the ticket template

In the ticket template step above, you can now include the Timer and Survey app ticket fields to copy over to your QA ticket.


Video guide

Was this article helpful?
0 out of 0 found this helpful



Please sign in to leave a comment.