> ## Documentation Index
> Fetch the complete documentation index at: https://docs.lodgestory.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Masked Connect

# Masked Connect (Number Masking)

> **One business number that quietly connects each caller to the right person — without either side ever seeing the other's real phone number.**

> **TL;DR**
>
> * **What it is —** a routing type that looks up the number a customer is calling from and connects them to a specific person's phone (their "follow-me" number), masking both numbers. If the caller isn't recognised, they can enter an order code or their registered number on the keypad to be matched.
> * **Who it's for —** logistics and delivery operations (and any team that wants customer↔staff calls connected privately). Built so delivery agents never see customers' personal numbers, and customers never see agents'.
> * **Top outcome —** the right two people talk, neither learns the other's number, and every call is recorded and reportable.

## At a glance

|                       |                                                                                                                                                 |
| --------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------- |
| **Plan tier**         | Included with every Lodgestory Voice plan.                                                                                                      |
| **Who can manage**    | Account Owners and Admins set it up. Customers and agents just place and receive calls.                                                         |
| **What it routes on** | The number the customer is calling from. If unknown, an order code or the customer's registered number entered on the keypad.                   |
| **Privacy**           | The agent's phone shows your business number, never the customer's. The customer only ever dialled your business number.                        |
| **Media**             | Greeting, ringback, hold music, and a rejection message — upload from your media library or use text-to-speech.                                 |
| **Recording**         | Every connected call is recorded automatically (can be turned off per configuration). Transcribed too, if transcription is on for your account. |
| **Regions**           | Works on India and US numbers.                                                                                                                  |
| **API**               | Partner API available on request — push, update, and remove mappings automatically from your order system, or bulk-import by file.              |

## How to find it

**Sidebar:** Settings → Calling → \[your account] → **Masked Connect**.

**Direct URLs:**

* Masked Connect configurations: `/crm/settings/calling/{accountId}/masked-connect`
* Phone number routing: `/crm/settings/calling/{accountId}/numbers`
* Call flow view: `/crm/settings/calling/{accountId}/call-flow` — a read-only map showing which numbers route through Masked Connect.

📸 `[SCREENSHOT: maskedconnect-landing.png — Masked Connect list with fallback mode, mapping count, and status]`

## What is Masked Connect?

### The problem it solves

A delivery business hands out one support number. When a customer calls about their order, the call has to reach **their** delivery agent — not a random one — and it has to do so **without** exposing anyone's personal mobile number. Sharing real numbers is a privacy and safety problem: agents get called back off-platform, customers get unsolicited contact, and there's no record of any of it.

Masked Connect is the private switchboard in the middle. The customer calls your business number; Lodgestory recognises who's calling and patches them straight through to the exact agent handling their order. The agent's phone rings showing **your business number**, so they answer without ever seeing the customer's number — and the customer never sees the agent's. Either side can be reached only through your number, and every call is logged.

### What you get

* **Recognise-and-connect** — match the caller's number to the right person's phone automatically, with both numbers hidden.
* **A keypad fallback** for callers you can't recognise — they enter an **order code**, or the **registered number** they placed the order with (useful when they're calling from a different phone), and get matched anyway.
* **A rejection message** for callers that still can't be matched — a polite recording or spoken message, then the call ends.
* **Custom audio** — a greeting on answer, a ringback tone while the agent's phone rings, optional hold music, and the rejection message.
* **A simple mapping list** — each row links a customer's number to the agent's follow-me number, with an optional order code and label. Edit it in the dashboard, import it from a file, or have your order system keep it up to date automatically.
* **Automatic recording** of every connected call, and per-call reporting on *how* each call connected.

### How it's different

* **Routing decided by who's calling.** Most routing sends every caller to the same place; Masked Connect sends each caller to a different person based on their number.
* **Two-way number privacy by default.** The agent sees your business number, not the customer. The customer dialled your business number, so they never see the agent. No setup required to get this — it's how every connection works.
* **Designed for "calling from a new phone."** Real customers don't always call from the number on file. The order-code and registered-number fallbacks handle that gracefully instead of dead-ending.
* **Keeps up with your operations.** Map a customer to an agent the moment an order is dispatched, and clear it when it's delivered — by hand, by file import, or automatically from your order system.

### Customer scenarios

* **Last-mile delivery.** A courier company gives customers one number. Asha calls about order #4821; she's connected straight to Ravi, the agent out with her parcel. Ravi's phone shows the company number, not Asha's. When the delivery is done, the mapping is cleared.
* **Calling from a different phone.** Asha's phone is dead, so she calls from a friend's. Lodgestory doesn't recognise the number, so it asks her to key in her order code — she enters `4821#` and is connected to Ravi anyway.
* **One customer, two live orders.** Asha has two parcels out with two different agents. Because her number alone is ambiguous, Lodgestory asks for the order code to send her to the right one.
* **After-hours.** Outside delivery hours, the business number routes to a closed-hours message instead of Masked Connect, using a business-hours schedule.

### How it fits with Lodgestory Voice

* **Phone numbers point here.** Set a number's routing to Masked Connect and pick a configuration.
* **Business hours can switch it on and off.** A time condition can route to Masked Connect during delivery hours and somewhere else after.
* **Audio lives in your media library.** Upload greetings, ringback, hold music, and rejection messages once and reuse them.
* **Recordings and reports flow into the call log**, with a tag on each call showing how it connected.
* **It shows up in the call flow view** so you can audit which numbers use it.

## Core concepts

| Term                             | What it means                                                                                                                                         |
| -------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Masked Connect configuration** | A named set of behaviour — audio, fallback options, and the mapping list — that one or more phone numbers can use.                                    |
| **Mapping**                      | A single link between a customer's number and the agent's follow-me number, with an optional order code and label.                                    |
| **Follow-me number**             | The agent's own phone (usually a mobile) that the call is connected to. The agent answers there but only ever sees your business number.              |
| **Order code**                   | A short numeric code (e.g. an order number) the customer can key in if their number isn't recognised, or to pick between several live orders.         |
| **Fallback**                     | What happens when the caller's number isn't found: ask for an order code, ask for their registered number, or try the code first and then the number. |
| **Greeting**                     | Optional audio or spoken message played when the call is answered, before connecting.                                                                 |
| **Ringback**                     | What the customer hears while the agent's phone is ringing.                                                                                           |
| **Rejection message**            | The audio or spoken message played when no match can be made, just before the call ends.                                                              |

## Quick Start — set up private delivery calls in five steps

### Step 1 — Prepare your audio (optional)

In your media library, add any greeting, hold music, and a rejection message you want callers to hear. You can also use text-to-speech and skip recording.

📸 `[SCREENSHOT: mc-qs-1-media.png — media library with greeting and rejection clips]`

### Step 2 — Create a Masked Connect configuration

**Settings → Calling → \[your account] → Masked Connect → Create Config.** Name it (e.g. *"Mumbai Hub"*), pick your audio, and choose the fallback: *Order code, then registered number* is the most forgiving.

📸 `[SCREENSHOT: mc-qs-2-create.png — create dialog with audio pickers and fallback selector]`

### Step 3 — Add your mappings

In the lookup list, add a row for each active order: the **customer's number**, the **agent's follow-me number**, and an **order code**. You can type rows in, or use **Import CSV** to paste many at once.

📸 `[SCREENSHOT: mc-qs-3-mappings.png — lookup list with customer number, follow-me number, and code columns]`

### Step 4 — Point a phone number at it

Go to **Phone Numbers**, choose your delivery support number, set the routing type to **Masked Connect**, and select your configuration.

📸 `[SCREENSHOT: mc-qs-4-number.png — number routing set to Masked Connect]`

### Step 5 — Test

Call the number from a mapped customer's phone — you should be connected to that agent, and the agent's phone should show your business number. Then call from an unmapped phone and confirm the order-code prompt connects you too.

### What's next

* Have your order system add a mapping when an order is dispatched and remove it on delivery (see **API**), so the list stays current with no manual work.
* Set an expiry on mappings so stale ones drop off automatically.
* Review **Reports → Call Log** to see how often callers connect directly versus using the keypad.

## How it works

```mermaid
flowchart TD
  A[Customer calls your business number] --> B{Is the caller's number in your list?}
  B -- "One match" --> C[Connect to that agent's phone]
  B -- "Several live orders" --> D[Ask for the order code]
  B -- "Not found" --> E[Fallback: ask for order code and/or registered number]
  D --> C
  E -- "Match" --> C
  E -- "No match" --> F[Play rejection message and end the call]
  C -- "Agent doesn't answer" --> G[Call ends]
```

* A customer calls your business number.
* Lodgestory checks the number they're calling from against your mapping list.
* **One match** → it connects them to that agent's phone. The agent sees your business number; the customer only ever dialled your business number. Neither sees the other.
* **Several live orders for that number** → it asks the caller to key in their order code to pick the right one.
* **Number not recognised** (including callers who withhold their number, or call from a new phone) → it runs your fallback: enter an order code, enter the registered number, or try the code first and then the number.
* **Still no match** → it plays your rejection message and ends the call.
* **The agent doesn't pick up** → the call ends (there's no voicemail step in this flow).

Edits go live immediately — update a mapping or the audio, save, and the next call uses it.

## Features in depth

### The mapping list

Each row links one customer number to one agent follow-me number, plus:

* **Order code** — optional, used for keypad matching and to tell apart multiple live orders for the same customer.
* **Label** — a free-text note like the order reference or customer name.
* **Active toggle** — switch a mapping off without deleting it.
* **Expiry** — an optional date after which the mapping stops matching automatically.

You can manage rows by hand, paste many at once with **Import CSV**, or keep the list current automatically from your order system (see **API**).

📸 `[SCREENSHOT: mc-mapping-list.png — editable mapping rows with add, import, and per-row toggle]`

### Fallback options

Choose what happens when a caller's number isn't recognised:

| Fallback                               | What the caller does                                                                                              |
| -------------------------------------- | ----------------------------------------------------------------------------------------------------------------- |
| **Order code, then registered number** | Asked for the order code first; if that fails, asked for the number they ordered with. The most forgiving option. |
| **Order code only**                    | Asked only for the order code.                                                                                    |
| **Registered number only**             | Asked only for the number they placed the order with.                                                             |

You set how many digits an order code has, how many tries the caller gets, and how long the agent's phone rings before the call ends.

### Audio

Four points in the call can have your own audio (uploaded, recorded, or text-to-speech):

* **Greeting** — plays when the call is answered, before connecting.
* **Ringback** — what the customer hears while the agent's phone rings. Defaults to a standard ringing tone.
* **Hold music** — an optional short clip before a keypad prompt.
* **Rejection message** — played when nothing matches, before the call ends.

### Recording & transcription

Every connected call is recorded automatically; you can turn recording off for a configuration if you prefer. If transcription is enabled for your account, masked calls are transcribed too, with the customer and the agent shown separately.

### Per-call reporting

Every call is tagged with how it connected — matched **by number**, **by order code**, **by registered number**, or **not matched** — so you can see how often customers reach their agent directly versus needing the keypad, and spot configurations that need attention. Calls appear in your call log like any other.

## Roles & permissions

| Action                               | Account Owner | Admin |    User   |
| ------------------------------------ | :-----------: | :---: | :-------: |
| View Masked Connect configurations   |      Yes      |  Yes  | Read-only |
| Create, edit, delete a configuration |      Yes      |  Yes  |     No    |
| Edit the mapping list / import       |      Yes      |  Yes  |     No    |
| Upload audio                         |      Yes      |  Yes  |     No    |
| Receive masked calls (as an agent)   |      Yes      |  Yes  |    Yes    |

## Connections

* **Phone Numbers** — point any number at a Masked Connect configuration.
* **Business hours (time conditions)** — route to Masked Connect during delivery hours and to a message or voicemail outside them.
* **Media library** — greetings, ringback, hold music, and rejection messages live here.
* **Call Recording & Reports** — masked calls are recorded and logged with their match type.
* **Call flow view** — see at a glance which numbers use Masked Connect.

## Limits a user will run into

| Limit                      | Value                                                                                       |
| -------------------------- | ------------------------------------------------------------------------------------------- |
| Order code length          | Configurable, 1–20 digits (default 4–10)                                                    |
| Keypad retries             | 0–5 per prompt                                                                              |
| Agent ring time            | 5–120 seconds, then the call ends                                                           |
| Mappings per configuration | No hard cap — suitable for large, frequently-changing lists                                 |
| Order codes                | Must be numeric (so they can be entered on a phone keypad) and unique among active mappings |
| Audio file size            | Set by your media library upload limits                                                     |

## Errors & FAQ

**Does the delivery agent ever see the customer's real number?**
No. The agent's phone shows your business number on every masked call. The customer never sees the agent's number either, because they only ever dialled your business number.

**What if the customer calls from a different phone than they ordered with?**
They won't be recognised by number, so Lodgestory asks them to key in their order code (or the number they ordered with, depending on your fallback) and connects them anyway.

**What if one customer has two orders out at once?**
Because their number alone can't tell the orders apart, Lodgestory asks for the order code. Give each active order a unique code so this always resolves cleanly.

**What happens if the agent doesn't answer?**
The call ends. There's no voicemail step in this flow — it's built for live, time-sensitive delivery calls.

**Can my order system manage the list automatically?**
Yes. Mappings can be added, updated, and removed automatically as orders move through your system, or bulk-loaded from a file. See **API**.

**Can order codes contain letters?**
No — callers type them on a phone keypad, so codes must be numeric.

**Does it work for both India and US numbers?**
Yes.

**Can the same configuration be used on more than one number?**
Yes. Build it once and point multiple numbers at it.

### Troubleshooting

| Symptom                                               | Likely cause                                                                                           | Fix                                                                                               |
| ----------------------------------------------------- | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------- |
| A known customer still gets asked for a code          | Their number on file doesn't match the number they're calling from, or the mapping is inactive/expired | Check the mapping's number, active state, and expiry                                              |
| A code never matches                                  | The code isn't numeric, or its length is outside the configured range                                  | Use a numeric code within the configured length                                                   |
| Caller hears a standard tone instead of your ringback | No ringback audio was selected                                                                         | Pick a ringback clip in the configuration                                                         |
| Caller is rejected unexpectedly                       | No mapping exists for them and the fallback couldn't match                                             | Confirm the mapping exists and is active; widen the fallback to also accept the registered number |

## API

A partner API is available on request for teams that want their order system to drive Masked Connect:

* **Add or update a mapping** when an order is dispatched (customer number, agent follow-me number, order code, optional expiry).
* **Remove or deactivate a mapping** when an order is delivered.
* **Bulk-import** a whole list at once.

This lets the list stay perfectly in sync with live orders without anyone touching the dashboard. Contact your account team to enable it.

## Changelog

* **Jun 2026** — General availability: recognise-and-connect routing with two-way number masking, order-code and registered-number keypad fallbacks, custom audio, automatic recording, per-call match reporting, and file/API mapping management. Available on India and US numbers.

## Related modules

* **Phone Numbers** — where you point a number at Masked Connect.
* **Voice Menus (IVR)** — for menu-driven routing when you want callers to choose, rather than be matched.
* **Business Hours** — gate Masked Connect by your delivery hours.
* **Call Recording** — where masked call recordings land.
* **Voice product hub** — the overall picture.

<br />