# Set up an IVR

An IVR (Interactive Voice Response) answers incoming calls with a recorded greeting, presents callers a menu of options, and sends each call to the destination you assign to the key they press. The caller's key presses reach the system as DTMF (Dual-Tone Multi-Frequency) touch-tone signals. This page walks you through creating an IVR and defining its menu.

## How many IVRs you can create

The number of IVRs available on your system scales with the size of your extension plan:

| Maximum extensions (N) | Number of IVRs |
| --- | --- |
| N ≤ 50 | 32 |
| 50 < N ≤ 200 | 64 |
| N > 200 | 128 |

## Before you begin

An IVR needs an audio greeting to play to callers. [Record a custom prompt](/pbx/administrator-guide/record-a-custom-prompt/) or [upload a custom prompt](/pbx/administrator-guide/upload-a-custom-prompt/) first so it is ready to select when you build the menu.

## Create the IVR

1. Sign in to the PBX (Private Branch Exchange, your phone system's admin portal) web portal and go to **Call Features > IVR**, then click **Add**.

2. On the **Basic** tab, configure the general settings:

   - **Number**: The virtual number callers reach to enter this IVR. By default, IVR numbers fall in the [6200 to 6299 range](/pbx/administrator-guide/system-preferences/#system-preferences__extension-preference).
   - **Name**: A label that helps you recognize the IVR in your configuration.
   - **Prompt**: The greeting that welcomes callers and describes the menu options. You can add up to five audio files, which play in the order you list them. If you leave this unset, the system plays the default message: *"Dial the extension number or press 0 for operator."*

     :::tip
     In the greeting, name each option and the key that triggers it (for example, "For sales, press 1"). Make sure the keys you announce match the destinations you configure on the **Key Press Event** tab, or callers will press keys that go nowhere.
     :::

   - **Prompt Repeat Count**: How many times the greeting replays while the caller stays inactive during each **Response Timeout(s)** window.
   - **Response Timeout(s)**: How long, in seconds, the system waits for the caller to act.
   - **Digit Timeout(s)**: How long, in seconds, the system waits for the caller to enter the next digit.

     :::note
     These three timers work together. After the greeting plays, the system waits **Response Timeout(s)** for a key press; if nothing is pressed it replays the greeting, up to **Prompt Repeat Count** times. **Digit Timeout(s)** applies while a caller is typing a multi-digit entry (such as an extension number) and controls how long to wait between digits.
     :::

   - **IVR Alert Info**: Optional. An "alert info" text added to the `Alert-Info` header of the SIP (Session Initiation Protocol) INVITE request that sets up IVR calls. A receiving phone reads this header to decide which ringtone to use for the call.
   - **Cloud Voice App Distinctive Ringtone**: Select or upload a ringtone to play on an extension user's Cloud Voice App when a call arrives from this IVR.

     :::note
     - Manage uploaded ringtones under **PBX Settings > Voice Prompt > Custom Ringtone**.
     - A custom (non-built-in) ringtone applies only to the Cloud Voice App web and desktop clients for IVR calls. The mobile client uses the ringtone set within the app instead.
     - If the caller is a contact who has a distinctive ringtone assigned in the user's Cloud Voice App, that contact ringtone overrides the IVR ringtone.
     :::

   - **Dial Extensions**: Controls whether callers can dial extension numbers from the IVR.
     - **Disable**: Callers cannot dial any extension.
     - **All Extensions**: Callers can dial any extension.
     - **Allowed Extensions**: Callers can dial only the extensions you select.
     - **Restricted Extensions**: Callers can dial any extension except the ones you select.
   - **Allow Calling Numbers**: Whether callers can dial ring group, queue, or conference numbers from the IVR.
   - **Dial Outbound Routes**: Whether callers can place outbound calls from the IVR.

     :::danger
     Enabling **Dial Outbound Routes** lets anyone who reaches the IVR place outbound calls that bill to your account. Attackers actively scan for IVRs that allow this and use them to run up long-distance and international charges (toll fraud). Leave this off unless you have a specific business reason to turn it on.
     :::

   - **Dial to Check Voicemail**: Whether users can reach voicemail from the IVR.
   - **Dial #9 to Modify IVR Prompt**: Whether users can dial the `#9` feature code to record and apply a new IVR greeting.

     :::caution
     When a new prompt is applied through `#9`, the system removes the previous greeting from the IVR's **Prompt** setting and keeps only the newly recorded one. The old prompt is not retained, so anyone who knows this feature code can overwrite your greeting.
     :::

3. Open the **Key Press Event** tab to build the menu. You have three ways to define how keys route calls:

   - To route the same key to different destinations depending on when the call arrives, see [Set key events based on time conditions](/pbx/administrator-guide/set-key-events-based-on-time-conditions/).
   - To require callers to enter a PIN (Personal Identification Number) before a key routes them, see [Set up IVR custom key](/pbx/administrator-guide/set-up-ivr-custom-key/).
   - To route each key to a fixed destination, configure the following:
   1. For each key (**0**-**9**, **\***, and **#**), choose a destination from the **Key Press** drop-down list.
   2. In the **Response Timeout** drop-down list, choose where to send the call when the caller stays inactive through the **Prompt Repeat Count**.
   3. In the **Invalid Input Destination** drop-down list, choose where to send the call when the caller presses a key that the IVR does not define.

        :::caution
        Always give **Response Timeout** and **Invalid Input Destination** a safe fallback, such as an operator, a ring group, or a queue. If you leave them without a usable destination, callers who wait too long or press an undefined key can be disconnected instead of reaching a person.
        :::

   4. Optional. Select **Allow Opt-out of Call Recording** to prevent calls routed to this key's destination from being recorded, even when [Call Recording](/pbx/administrator-guide/call-recording-overview/) is enabled.

        :::caution
        This option silently skips recording for calls sent to that key's destination. Confirm this matches any policy or legal requirement to record calls before you enable it, because those calls will have no recording at all.
        :::

4. Click **Save**, then **Apply**.

   :::caution
   Changes do not take effect until you click **Apply**. Clicking **Save** alone stores the configuration but leaves the live IVR unchanged.
   :::

## What to do next

[Set up an inbound route](/pbx/administrator-guide/set-up-an-inbound-route/) and point its destination to this IVR so external callers land in the menu.

:::note
An IVR does nothing on its own until an inbound route (or another feature) sends calls to it. Without that step, callers will never hear your menu.
:::
