---
title: "The softphone interface"
description: "Make and receive calls with UltraCart's browser-based softphone: start the connection, manage call controls, transfers, recording, audio devices, and agent status."
doc_type: how-to
audience: merchant
sidebar_position: 9
# Provenance — do not edit by hand; used by re-run diffing and redirects.
confluence_page_id: "4160258110"
confluence_url: "https://ultracart.atlassian.net/wiki/spaces/ucdoc/pages/4160258110"
last_updated_in_confluence: "2026-02-18T17:45:44.945Z"
---
The UltraCart softphone is a browser-based phone built directly into the CRM interface. It lets you make and receive calls from any modern browser with a headset -- no desk phone required. The softphone supports two simultaneous call lines, a full dial pad, call controls, audio device selection, and an active call banner that follows you as you navigate the application.

## Overview

The softphone appears in the Calls section of the UltraCart CRM. It handles all voice interactions: dialing out, answering inbound calls, transferring, conferencing, recording, and managing your agent status. The softphone connects to the phone system through your browser, so all you need is a computer with a headset and an internet connection.

## Starting the softphone

When you first navigate to the Calls page, the softphone panel shows a **Start** button. Select it to initialize the connection. This registers your browser as an active softphone endpoint and connects you to the phone system.

> **Important:** Your browser prompts for microphone access the first time you start the softphone. You must allow microphone access for callers to hear you.

Once connected, four status indicators show the health of your connection:

| Indicator | What it monitors |
| --- | --- |
| UltraCart Accounts | Authentication with UltraCart |
| UltraCart PBX | Connection to the phone system backend |
| Twilio Voice | Voice call capability |
| Twilio Task Router | Automatic call assignment |

All four indicators should show green when you're fully connected.

## Making outbound calls

1.  On the softphone dial pad, select a **From** number using the outbound number dropdown. This is the caller ID the recipient sees.
2.  Enter the destination phone number or an internal extension.
3.  Select **Dial**.

You can also make outbound calls by selecting a phone number from a customer profile (click-to-call).

### Class of Service restrictions

If your [Class of Service](./class-of-service-call-restrictions.md) blocks the number you're trying to dial, a restriction warning appears on the dial pad. The dial button is disabled for restricted numbers. You can request a supervisor override to place the call.

## Receiving inbound calls

When an inbound call arrives, the softphone displays:

-   The caller's phone number (and matched customer name, if found)
-   The queue the call arrived from
-   A live timer counting up from when the call started ringing
-   **Answer** and **Reject** buttons

Select **Answer** to connect, or **Reject** to decline the call (it returns to the queue or goes to voicemail).

### Desktop notifications

If your browser tab is in the background when a call arrives, a desktop notification appears (if you've granted notification permission). This ensures you don't miss calls while working in another tab or application.

### Active call banner

When you navigate away from the Calls page during an active call, a persistent banner appears at the top of the screen. The banner shows the caller information and call duration, keeping you aware of the active call while you work in other areas of the CRM (such as looking up an order or customer profile).

### Poor call quality banner

If the system detects degraded audio quality during a call, a banner appears alerting you to potential call quality issues. This can indicate network congestion, high latency, or packet loss.

## Call controls

During an active call, the softphone displays a grid of control buttons:

| Control | Function |
| --- | --- |
| **Mute / Unmute** | Toggle your microphone on or off. When muted, the caller cannot hear you. |
| **Hold / Resume** | Place the caller on hold (they hear hold music) or resume the conversation. |
| **Dial Pad** | Open the DTMF keypad to send touch-tones during the call (for navigating phone menus or entering account numbers). |
| **Transfer** | Initiate a cold transfer to another agent, queue, or external number. |
| **Warm Transfer** | Initiate a warm transfer -- speak to the receiving party before connecting the caller. |
| **Conference** | Add a third party to the call. |
| **Start / Pause / Resume Recording** | Control call recording. The button label changes based on the current recording state. |
| **AI Coach** | Start an AI coaching session (if configured for the queue). |
| **Participants** | View and manage all participants in the current call. |
| **Settings** | Open audio device settings. |
| **Hang Up** | End the call. |

For details on transfers, conferencing, and recording, see [Transfers and conferencing](./transfers-and-conferencing.md) and [Call recording](./call-recording.md).

## Multi-line calling

The softphone supports two simultaneous call lines:

-   **Line 1** -- your primary call line for inbound and outbound calls
-   **Line 2** -- used for warm transfers and conferencing

When you initiate a warm transfer or conference, the softphone opens Line 2 to dial the receiving party while keeping the original caller on hold on Line 1. Line state indicators show the status of each line (incoming, active, on hold, or dialing out).

:::info

You don't manage lines manually. The softphone switches between lines automatically when you use transfer and conference features.

:::

## Audio device management

Select the **Settings** button (available from the dial pad or during a call) to configure your audio devices:

### Device selection

-   **Microphone** -- choose which input device to use. A **Test** button and visual level meter let you verify the microphone is working.
-   **Speaker / Headset** -- choose the output device for call audio. A **Test** button plays a sample tone.
-   **Ringtone Device** -- choose which device plays the ringtone for incoming calls. A **Preview** button plays the ringtone.

### Audio processing

Toggle these browser audio processing features:

-   **Noise Suppression** -- reduces background noise
-   **Echo Cancellation** -- prevents echo from speakers feeding back into the microphone
-   **Auto Gain Control** -- automatically adjusts microphone volume

:::tip

If callers report hearing echo, enable Echo Cancellation. If you're in a noisy environment, enable Noise Suppression. These settings are saved per browser.

:::

## Agent activity status

Your activity status controls whether you receive inbound calls. Manage it from the status dropdown at the top of the agent panel.

### Status types

| Status | Color | Description |
| --- | --- | --- |
| Available | Green | You're ready to receive calls. Inbound calls from your queues ring your softphone. |
| Unavailable | Red | You're logged in but not accepting calls. Calls skip you and go to other available agents. |
| On Call | Orange | You're on an active call. This status is set automatically when you answer or place a call. You cannot set this manually. |
| Wrap-Up | Orange | Post-call cooldown period. A countdown timer shows the remaining time. You don't receive new calls until wrap-up expires. |
| Offline | Red | You're not connected to the phone system. This status appears when the softphone is not started or the browser is closed. |

### Changing your status

Use the status dropdown to switch between **Available** and **Unavailable**. The dropdown hides **On Call** and **Offline** since those are managed automatically by the system.

During wrap-up, the dropdown shows "Wrap-Up" with a countdown timer (e.g., "Wrap-Up (00:25)"). You can end wrap-up early by switching to **Available** before the timer expires.

:::info

When you end a call, the system returns you to whatever status you had before the call started. If you were Available before answering a queue call, you return to Available after wrap-up. If you were Unavailable and received a direct call, you return to Unavailable.

:::

## Multi-tab behavior

Only one browser tab at a time can operate as the active softphone. If you have UltraCart open in multiple tabs, the softphone coordinates between them to ensure only one tab is registered as the active phone endpoint. Opening the softphone in a second tab takes over from the first.

## Related pages

-   [Getting started with UltraCart Calls](./getting-started-with-ultracart-calls.md) -- initial softphone setup
-   [Transfers and conferencing](./transfers-and-conferencing.md) -- warm transfers, cold transfers, and conference calls
-   [Call recording](./call-recording.md) -- recording controls during calls
-   [Agent-assisted payments](./agent-assisted-payments.md) -- capturing payments during calls
-   [Queue monitoring](./queue-monitoring-and-dashboard.md) -- agent status panel and queue dashboard
-   [Class of Service](./class-of-service-call-restrictions.md) -- outbound dialing restrictions
