Taking inbound telephone calls with Zendesk Voice

After your voice channel has been set up and enabled by an administrator (see Setting up Zendesk Voice in the Zendesk Administrator Guide), you are ready to accept live phone calls and voicemails.

For information about making outbound calls, see Making outbound telephone calls using Zendesk Voice.

For tips about using Zendesk Voice, see these Zendesk Voice Tips from Zendesk Support.

You can also watch these short videos.

Using the Voice Channel (01:38)
Setting Up Voice Forwarding (01:01)

The incoming call workflow: how live calls and voicemails become tickets

All of the agents that make themselves available to take calls are added to a pool of available agents. Calls are queued and routed according to the following rules.

  1. If a new incoming call exceeds the maximum queue size (see Enabling the voice channel and configuring the general settings in the Zendesk Administrator Guide), the total number of calls that are allowed to wait in the queue, the caller is sent to voicemail.
  2. If a new incoming call is within the limits of the maximum queue size, the caller is queued for the next available agent. If you've configured that number to be routed to a specific group or set of groups, the caller must wait for an agent in that group to be available. The caller can dial 1 at anytime to leave a voicemail.
  3. If all the available agents are busy with other calls, callers are queued up to the maximum queue wait time (see Enabling the voice channel and configuring the general settings in the Zendesk Administrator Guide). Once they exceed that wait time, callers are sent to voicemail.
  4. The next available agent is the one who has been available the longest without accepting a phone call (the most idle agent). This is the agent that receives new incoming calls first.
  5. If the most idle agent does not answer the phone within 30 seconds or declines the call, it is placed back into the queue to wait for the next most idle agent. This continues until all available agents have accepted calls. Once this occurs, new incoming calls are handled based on the queue settings, as described in the previous steps.

Until an agent picks up the call, the caller hears the available agents and wait greetings (see Selecting voice greetings in the Zendesk Administrator Guide).

Selecting a browser or a phone to take calls

Agents can choose to take calls with a phone or with a web browser:

Selecting a web browser

Agents can take calls with a web browser running on a computer equipped with a microphone.

Note: Calling rates still apply because incoming and outgoing calls are still routed through Zendesk.

The web browser that an agent uses may affect audio quality. Zendesk recommends Google Chrome for the best experience. Chrome relies on browser-native audio compression and streaming capabilities known as WebRTC, or web real-time communications. The standard is currently only supported by Chrome.

The WebRTC standard provides better audio quality for the agent in terms of hearing a call as well as speaking to a customer. Another benefit is that it relies on the computer's audio settings for adjusting the microphone's volume.

Agents can use another browser such as Firefox, Safari, or Internet Explorer, even if the browser doesn't currently support the WebRTC standard. The browser in that case uses the Adobe Flash browser plugin to compress and stream audio.

Note: The Flash plugin is used by all browsers with Zendesk Classic.

To select a browser to take calls

  1. Log into Zendesk in the browser you want to use.
  2. Click the Voice icon () on the right side of the toolbar.
  3. In the Voice console, click the globe icon and then select Via Browser.

Regardless of the browser or technology used to stream audio, each agent must grant permission to Zendesk to use their computer microphone. The agent can grant permission while accepting the first call to the browser, or by using the Voice console.

To grant microphone permission while accepting the first call

  1. When prompted, grant permission to Zendesk to always use your microphone.

    Depending on your browser, the prompt may be a pop-up browser toolbar or an Adobe Flash dialog box.

  2. Click Accept to accept the call.

    In Chrome, the process is as follows:

To grant microphone permission with the Voice console

  1. In Zendesk, click the Voice icon () on the right side of the toolbar.
  2. Click the Settings (gear) icon in the Voice console.

  3. When prompted, grant permission to Zendesk to always use your microphone.

    Depending on your browser, the prompt may be a pop-up browser toolbar or an Adobe Flash dialog box.

Selecting a phone

Agents can forward calls to a forwarding telephone number specified in their user profile. The forwarding number is never visible to callers.

To select a phone to take calls

  1. In Zendesk, click your user icon on the right side of the toolbar and select View Profile Page.
  2. In the Agent Forwarding field in the left sidebar, enter a phone number where you can be reached.

  3. Click the Voice icon () on the right side of the toolbar.
  4. In the Voice console, click the globe icon and then select Via Phone.

Making yourself available to receive calls

By default, each agent's availability is set to Not Available for live phone calls. When no agents are available, all calls are sent to voicemail and new tickets are automatically created for each. You can review these and complete and assign the tickets based on your workflow.

When you're ready to accept live phone calls, you can make yourself available to answer phone calls within Zendesk and your Web browser.

Instead of answering calls via the browser, you can forward calls to the telephone number in your user profile. To add an agent forwarding number to your profile, click your name in the upper-right corner, and then click Add Number next to Agent Forwarding. Zendesk Classic: Click Edit in your profile page and add your number.

To make yourself available to receive calls and notifications
  • Click the Voice icon in the top toolbar, then hover your mouse over the Offline button and it will change to Online. Click the button to go online.

    Zendesk Classic: Click the Voice icon in the top toolbar, then select an Available option. You can choose to answer calls via the browser or via your personal phone (if you've added the number to your profile).
    Notice that the Voice icon () in the top toolbar appears to indicate that you are available for calls.

To enable voice notifications

When you're available to receive calls, your browser will request permission to show you notifications. You should click Allow or Show, depending on your browser.

In Chrome, the request looks like the following example:

In Firefox, the request looks like this:

Receiving and accepting a call

If you're in Zendesk and receive a call, the call console appears in the upper-right corner.

If you're not in Zendesk but are in another browser window and have enabled voice notifications, you can click the notificationthat appears in the upper-right corner of the screen to get to your Zendesk and the call console.

To take a call
  • Click Accept in the call console that appears under the Voice icon in the top toolbar.
    Zendesk Classic: Depending on how you are receiving calls, click Accept in the call console or answer your personal phone and follow the voice prompt. If you forwarded the call to your phone, you might also need to click Accept in the call console, depending on how your administrator set up Voice

    If you don't answer within 30 seconds or decline the call, it is placed back in the queue to wait for the next available agent.

When you accept the call, the call console begins recording the call and a ticket is created. While speaking with the caller, you can enter information as needed as a comment in the newly created ticket. The call console remains available at the top of the ticket. During the call you can mute and unmute as needed by clicking the microphone icon in the call console. While on a call, you can put the caller on hold so that you can consult with another agent or track down other information.
To put a caller on hold
  • Click the pause button on the lower-right side of the call console.

    While on hold, the caller hears the on-hold music and you hear a beep every 15 seconds. Click the pause button again to take the caller off hold.

Identifying the caller and handling new user accounts

Calls received from new, unknown users generate new user accounts that are identified only by the telephone number they are calling from. To communicate via email with these users going forward, you need to ask your callers for their email address while you're on the call with them and then add it to their new user account.

Each user must have a unique telephone number; this is how Zendesk Voice identifies them when they call in. Therefore, the user's profile phone number must be their direct line. If the user hasn't already done so themselves, you should verify that the number they are calling from is their direct line and then select the Direct Line option in the user profile, as shown here:

Setting a telephone number as a user's direct line means that the number cannot be used by any other users in the account.

If the caller is an existing end-user and their number has been added to their profile as their direct line, their name is displayed in the call console.

Unknown users can also actually be existing users if they're calling from a telephone number that they haven't added to their user profile. In this case, you can merge the new user account with their existing user account. For more information, see Merging a user's duplicate account.

Ending a call

To end a call
  • Click Hang up in the call console at the top of the ticket. Or, if you've redirected the call to your telephone you can end the call by hanging up.
    Zendesk Classic: Click Hang up in the call console.
In this state, with the call ended and the ticket still open, you're considered to be in wrap up and are unavailable to take more calls. This allows you to complete annotating and setting the ticket properties before moving on to the next call. When you are ready to go back into the pool of available agents, you can make yourself available.
Note: If your administrator has disabled agent wrap-up, then you are immediately available for another call when you finish a call; you do not need to make yourself available.
To make yourself available for another call
  • In the Voice console, click Available to take new calls.

    If you do not see this option, then your administrator has disabled agent wrap-up. This means you are immediately available for another call when you finish a call.

Completing the new voice ticket

When you accept the phone call a new ticket is created. You can add a comment to the ticket and update the ticket properties while you speak with the caller.

By default, when you answer a call you are assigned to the ticket. This overrides any triggers you have that also set the assignee.

When a ticket is created, a private comment is immediately added that includes the following call information:

The user won't see this comment of course, because it's private, but creating a new ticket fires the Notify requester of received request trigger and sends the user an email notification confirming that a ticket was created. This only occurs if the call is from a known user whose account contains their email address. If the caller is unknown, email notifications aren't sent until you've updated their user profile with their email address.

In the first case you might not want an email notification to be sent until you've updated and submitted the ticket. This can be done, by an administrator, by editing the Notify requester of received request trigger to exclude tickets received from the Phone call (incoming) channel. For more information, see Setting up business rules to track and manage voice tickets in the Zendesk Administrator Guide.

When you update the ticket by clicking Submit, the recording of your conversation is added as a new public comment. If you added a public comment with a summary of the support issue, both public comments are added at the same time.

Since two public comments were added, two ticket notifications are sent to the user. Your voice channel can be configured to prevent users from accessing the live call recordings (see Enabling the voice channel and configuring the general settings in the Zendesk Administrator Guide). If your administrator has allowed the recordings to be accessible, the user can click a link to the recording from the notification email or by accessing the ticket from the Web portal.

Note: Unlike voicemail tickets, live call recordings do not include a transcription.

When the caller leaves a voicemail

When no agents are available or the incoming calls exceed the maximum queue size or wait time, callers are sent to voicemail. Each voicemail message automatically becomes a ticket. If the call is from a new or unidentified existing user, a new user account is created (you can merge the new account with the user's existing account). Tickets generated from a voicemail message contain the voicemail recording and a transcription. Voicemail messages can be up to 3 minutes long.

In this example the caller is unknown and only identified by their telephone number; therefore they will not receive the received request email notification because the new user account doesn't contain their email address. Existing users who leave voicemails receive a notification just as if they had submitted a supported request via the other ticket channels.

To track all calls that have resulted in voicemails, you can set up a view (see Setting up business rules to track and manage voice tickets in the Zendesk Administrator Guide).

You can either manually, or using business rules, update voicemail tickets as needed and then respond to the caller.

Merging tickets when a new call is about an existing ticket

You may often find that callers are contacting you about an issue for which a ticket has already been created. To handle this situation, just conduct the call and add comments as needed to the new ticket. You can then merge the new ticket with the existing ticket.

For information about merging tickets, see Merging tickets.

Forwarding calls to a different phone number

In addition to answering calls via the browser, you can select to forward calls to your office or mobile phone.

To add a agent forwarding number

  1. Edit your user profile by selecting the User menu, then clicking View profile page.
    Zendesk Classic: Click your name in the upper-right corner, then click Edit in your profile page.
  2. Add your telephone number, including a plus (+) sign and the country code, to the Agent forwarding option.

    If your telephone number includes an extension, add it to the extension field. If you also use additional key presses, you can also add those to the extension field. For example, if a caller must dial '123' followed by a pound ('#') key, enter '123#'.

    Zendesk Classic: In Zendesk Classic, you can also click Test Forwarding to call the phone number you entered and make sure forwarding is working.
  3. Click Save to save your user profile.
    Zendesk Classic: Click Update.

Searching for voice tickets

You can search for tickets that were generated from phone calls and voicemails. You can also search for a user's tickets using their phone number.

Using the via keyword in a search you can search for either phone call or voicemail tickets, as in the following examples.

If you want to search for a user's ticket using their telephone number, you can use a search statement like this:
requester:+14154187506 status:new

For more information about searching the data in your Zendesk, see Zendesk search reference in the Zendesk Administrator Guide.

Have more questions? Submit a request


  • Avatar
    Bob Childress

    We already record calls and don't need that but saving the time on lookup of the customer would be nice but not worth .05/minute. Any chance of a version that just does the lookup?

  • Avatar
    Steven Yan

    Hi Bob, we do plan on enhancing our API to make phone-type integrations easier.  For example, you could use our search API to lookup tickets by requester phone #, is this what you are after?

  • Avatar

    If a user has more than one direct line, how do we enter that? For example, they may call from a cell phone or an office number?

  • Avatar
    Steven Yan

    Hi Jonathan, unfortunately there's no solution for that right now -- we only support one phone number field in Zendesk.

  • Avatar
    Lucas Jans

    Is there a way to transfer a call to other agents?

    Is there a way to send sales phone calls to a different phone number (outside this system?)

    How about a phone tree options where only support rings to the agents, and others ring elsewhere?

  • Avatar
    Lucas Jans

    What'st the cost? Same as Twillio's rates?

  • Avatar

    How do I add a land line so I can answer phone calls through that line but still be integrated with my zendesk?

  • Avatar
    Steven Yan

    @Jackson, thanks for highlighting the Linux issue.  We haven't done any testing on Linux/Ubuntu as it's not an officially supported platform of ours.  No plans at this time to add default greetings voices/tones, but if you're looking for a professional recording, I learned about fiverr.com (I'm at Twilio Conference right now) for getting inexpensive voice recordings from professional voice actors/actresses.

    @Lucas, there is no way to transfer calls or IVR functionality at the moment.  In this first version we provide a basic call queueing and call routing workflow.  Look for more enhancements in upcoming releases.

    @David, you can add a land line in your agent user profile and this will show up in the phone availability menu along with the embedded phone client (browser) option.

  • Avatar
    Aaron Pewtherer
    1. Voicemails are limited to 2 minutes.
    2. You can also search for phone numbers in Mange > People search box with "phone:+1##########"
  • Avatar

    I just have a question regarding zendesk voice, basically we want to calculate the stats of each agent, we tried to compute using minutes and seconds from "Phone call caller (xxx-xxxx)" notification but it does not match with the total we got from Call history.

    What is the process if we wanted to check the total of monthly stats (total minutes) per agent? Is Call history accurate or is call activity (or some other way) better to check it?

  • Avatar
    Aaron Pewtherer

    @Jeice At the moment, Voice calls are calculated as soon as they arrive in your Zendesk, in addition to the number of minutes your agent is on the call, plus wait time. Voice calls are not tracked for total talk time.

  • Avatar
    Harrison Perl

    hey guys - we currently use cisci desktop agent for our call management solution.  This software also allows us to choose skill levels for our agents which are linked to a phone tree for different types of issues (Ex. Press 1 for password reset, press 2 for claim status...).  Does this feature allow for the same type of call triage?  If not, is this something that might be rolled out some time soon?

  • Avatar
    Aaron Pewtherer

    @Harrison No triage or IVR at this time. It's something we are looking into.

  • Avatar
    Tom Corbett

    Great feature

    I assume at the moment it picks an agent as random to be the first one on the call rota and then cycles through available agents?

    I notice if i decline the call it bounces to the next availble member of staff.

    Is it possible to have all the agents called at once and not end on 30 seconds? Can we set up the call rota to say ring the phones in this order instead of the random order. i assume it looks at who last accepted a call and select the agent who hasn't had the most recent. Ideally have the call bounce through to an available agent is good but very easy to miss as it only rings for 30 seconds and then moves to next agent especially if using the available at this direct number option.

    What further ideas are being looked into on this channel as we are going to be logging and recording alot of inbound traffic if we look to go ahead with this.

    for example the reporting page /voice/settings#call_activity showing the amount of calls waiting be great if that was external page.

  • Avatar
    Steven Yan

    Hi Tom, currently, as you have discovered, we route to the next most idle agent first.  Currently we only support simple routing (one agent at a time) but we're interested in hearing how you prefer to route to agents.

    There are a number of things we are interested in adding, including outbound calling, IVR, and multiple phone lines.  As you can see in our forum, we are releasing this feature for UK numbers next month.

  • Avatar

    Our big features we would like to see are:

    Ability to transfer calls

    Setup "groups" to have specific people responsible for answering phones first

    Have all numbers in "group" ring at the same time.  First response wins.

  • Avatar
    Tom Corbett

    Hi Steve

    I like it routes to my most idle agent, could way to balance the work load.

    So things i would like or would be cool:

    •     The ability to have multiple direct lines for end users as we commonly have them call from different landlines in there office or mobile phone numbers.
    • Transfer between agents - eg from 1st line to second line support groups , this would then transfer the ticket created.
    • Filtering - based on tags so certain users may have a specific agent they liaise with with a custom message for that tag
    • Reporting - live reporting boards - so enhancing what is shown here /voice/settings#call_activity

    I assume this will mean more reporting views will be made available, such as calls accepted by agent by hour vs the total calls that came in that hour.

  • Avatar

    What bothers me most is when i get a ticket with a voicemail attached, i cannot quickly assign that voicemail to an existing user - or i missed something.


    I listen to the voicemail and hear the customer say their email. Then, i need a simple feature to type in that email and lookup my existing sd users. if none is found, then i click "create new user with this email that i just searched for and save ticket with that user".

    While testing, i had to click 3 levels away from the ticket to finally be able to type in an email address for the new user that was created for that ticket! Frustrating!

  • Avatar
    Steven Yan

    That's good feedback Norman!  We could make that more visible for voicemail tickets.

  • Avatar

    Hope that there will be support for German telephone numbers, soon. 

  • Avatar
    Ryan Engley

    Hi Steven - the screenshot at the top of this article implies that an agent can be available via browser or at an alternate phone number.  Am I interpreting that correctly?  If so, can you point me toward some instructions to enable availability at an alternate phone number?  I haven't been able to track anything down.  Thanks! 

  • Avatar
    Ryan Engley

    Nevermind - I saw that I can add a phone number under my agent profile which then populates the "Available at..." option.  Thanks again.

  • Avatar
    Steven Yan

    Hi Ryan, looks like you found it.  Thanks for pointing that out, we can make our documentation more clear.

  • Avatar
    Carsten Falborg

    I am running an internal helpdesk and having some issues with how Zendesk treats new numbers. I would very much like it to NOT create a new user every time a caller comes in. The reason is that my end users is calling from department phones and not individual numbers.

    It would be great to simply have an option in settings to make this not happen. Basically making it necessary for the end user to give an email address or name up front before we can create the ticket.

    If not, it would create a lot of work for us merging or reassigning tickets thus making Zendesk Voice almost completely useless!

  • Avatar
    Roy Platje

    Thank you for rolling out in the Netherlands. I created a numer but am not able to click "enable" in the Flash pup-up. Neither in Chrome or FireFox on mu Mac. Is there a workaround?

  • Avatar
    Steven Yan

    Hi Roy, can you tell me what version of Flash you have?  This is usually related to having an older version of Flash.  Try upgrading to the latest version on your machine.

  • Avatar
    Steven Yan

    Carsten, I'm very interested in your use case.  Specifically: "Basically making it necessary for the end user to give an email address or name up front before we can create the ticket".

    If your customers are calling from department phones, their tickets will create a user profile for every department phone number and new tickets will be created with this user profile ass the requester.  You could rename these user profiles to help identify additional callers who call from these numbers, and then change the ticket requester when you finally identify the user.

  • Avatar
    Carsten Falborg

    @Steven With the amount of people changing departments within the company or leaving the company that would be almost impossible to implement.

    I agree with @Jared - and your reply to him. I think the best way to do this would be to have something other than a ticket to hold the call until we have found the correct user or existing ticket.

    It seems to me (without actually having tested it) that the way you have chosen, with the merging of tickets and users, is not very "agent" friendly. From a system that i have come to love for its complex simplicity and userfriendliness this setup seems "wrong" :-)

  • Avatar
    Steven Yan

    I appreciate the feedback Carsten.  The fact that tickets are the main currency in Zendesk, and need to be used to support various channels which may have different needs, is a challenge.  The implications of introducing calls as a first class resource in Zendesk are far reaching.

    For example, what happens if you create this resource which represents a call?  We have to consider things like how these tie into triggers, automations and email notifications.  The last thing we want to introduce is another thing outside the ticket workflow to keep track of, which is a complaint from our users about how we handle suspended tickets today.  We do recognize the problem and we're thinking hard about how to solve it.

  • Avatar

    I know nothing is "simple", but wouldn't it be relatively simple to add an additional ticket type, called "call" or something like it, and allow us to filter and setup our own rules on how these are displayed?  Then let us decide how they are handled.  

    We can "sort of" do this now with tags, but they still tend to show up in our views.

    We could then prevent notifications from going out automatically on "calls", and choose to hide them from any of our views.  And even auto-solve them so they don't cloud up our helpdesk.

    I still agree that the user management caused problems autocreating on every new phone number that came in.  And there is no handling of shared (non-direct) numbers, or when users call from multiple phone numbers.  Perhaps it is complicated system-wise, but that is the way people use phones, so the system needs to handle it well/better.  If there is no match of a number, or the same number is found for two users, have a place on the screen where it guesses who the user might be and allow us to select it.  

    I have less of an issue with the system auto-creating users, and more of an issue that there is no way to handle numbers we know should tie to a specific user, but can't because you only get one DID, and it can't be shared/must be unique.  

    Have you considered tying phone numbers to organizations... then let us select the user/create a new one?  

    We haven't been able to use it internally for these reasons, and the lack of ability to transfer calls. (My apologies if this is a feature now!)

    I think it is close though...

Please sign in to leave a comment.