Quincer AI Docs Home Support Start free

Configure

Bring your own phone numbers

Keep the phone numbers your customers already know — including several toll-free lines — and have a Quincer AI persona answer them. Calls route by the number the caller actually dialed, so each line can map to its own persona even when they all share one connection to us.

How routing works

When a call reaches us we resolve it to a persona by the dialed number (DNIS). If a call is forwarded to us, the number the caller dialed is preserved (Twilio sends it as ForwardedFrom; SIP trunks pass a Diversion header) and we route on that first, falling back to the number the call actually arrived on. That means you can forward five different 1-800 numbers into a single connection and still send each one to a different persona — just register each number below.

Two ways to connect

Option A — Forward your numbers

Easiest, works with any carrier or PBX. In your phone provider, forward each number you want answered to the Quincer number we provision for you (or to a Twilio/Telnyx number on your own account). The original dialed number rides along, so we route each forwarded line to the right persona.

  1. Register each of your numbers in the dashboard (see below).
  2. In your carrier/PBX, forward those numbers to your Quincer number.
  3. Call each number and confirm the right persona answers.

Option B — Bring your own carrier (SIP trunk)

For teams who own their telephony (Avaya, Cisco, Mitel, or any SIP trunk): point an outbound trunk at Twilio or Telnyx as a bring-your-own-carrier termination. The call arrives with your real number as the dialed number, so it routes directly. Add your trunk identifier when you register the number so calls are attributed to the right trunk.

Option C — Connect a SIP trunk straight to Quincer

If you would rather not put a third-party carrier in the middle, you can point a SIP trunk from your PBX or SBC directly at us. We configure the connection on our side and send you the details to dial into. This is the right option when you sit behind a PBX (Avaya, Cisco, Mitel, Genesys, and similar) and want calls handed to your AI without leaving your own carrier contract.

Go to Settings → Voice and fill in Connect a SIP trunk. We ask for:

Submitting the form opens a support ticket you can track on the Support page. We reply with the hostname to send SIP to, the port, and your credentials. Once you point the trunk at that hostname, register each number in Phone numbers as normal so it maps to the persona you want.

i

Two requirements catch most trunks out: we answer on G.711 µ-law (PCMU) audio, and DTMF must be sent as RFC 2833 telephone-events rather than in-band tones or SIP INFO. Tell us in the form if either is a problem for your PBX.

Register a number

Open Phone numbers in the dashboard and fill in the Map a number form shown below. Phone number is the number your customers dial, in E.164 format; the optional Label is just a name for your list (e.g. Main support line). Persona picks who answers — leave it on Widget default persona to inherit the widget’s default. Carrier is how the call reaches us (Twilio or Telnyx), and the optional Carrier trunk ID is your BYO-carrier or SIP trunk identifier, for clean cost attribution. Click Add number, then forward the number (Option A) or trunk it (Option B).

Map a number

Register the number your customers dial, in E.164 format, and choose which persona answers.

Phone number
+18005551212
Label (optional)
Main support line
Persona
Widget default persona
Carrier
Twilio
Carrier trunk ID (optional)
BYO-carrier / SIP trunk SID
+ Add number

The Map a number form — one row per number, mapped to the persona that answers it.

i

Registering several numbers that all forward to one connection is fully supported — each row maps its own number to its own persona.

Check that it's working

Three tools on each row of the Numbers for … list help you confirm a number is set up correctly — so a customer's call isn't the first time you find out something's off. In the row below, the line under the number is the Last call received status, and the Check voice and Check SMS buttons (next to Disable and the delete icon) each run a live configuration check whose result expands inline beneath the row:

Numbers for Acme
+18005551212 · Twilio
Main support line · Sales persona — No calls received yet
Check voice Check SMS Disable ×
Webhook points at Quincer
Voice “A call comes in” is set to https://phone.quincer.com over HTTP POST — number is voice-capable and the account is active.

A mapped-number row — its Last call received status, the Check voice / Check SMS buttons, and a check result expanded inline.

Check SMS — will texts actually reach this number?

Check SMS is the same idea for texting, and it exists because the obvious test proves the wrong half: sending a test text exercises outbound only. It says nothing about whether a customer's reply reaches Quincer — that's the inbound webhook, and it's exactly where SMS breaks silently. The check is read-only: it reads what your carrier account itself reports, sends no message, changes nothing, and costs nothing. Each result panel is labelled SMS setup or Voice setup so you always know which check you're looking at.

For a Twilio number it verifies, in your own account:

For a Telnyx number the same button checks the messaging-profile chain instead: Telnyx routes inbound texts through a messaging profile, not the number itself, so the check verifies a profile is assigned and enabled, that its webhook is the Quincer URL (including the required ?carrier=telnyx parameter), and that the profile is on webhook API version 2 — a v1 profile delivers every message in a shape we can't read, so texts arrive and go nowhere. And on a direct SIP trunk number the check answers plainly: a raw SIP trunk carries voice only, so texts to it can't be received or sent — use a Twilio or Telnyx number for SMS.

Numbers for Acme
+18005551212 · Twilio
Main support line · Sales persona
Check voice Check SMS
SMS setup — configured, with warnings
✓ Number is SMS-capable  ·  ✓ SMS webhook points at Quincer  ·  ✓ Webhook uses HTTP POST
⚠ Recent outbound messages are delivering — 3 of the last 20 outbound messages failed. 30034 — the number is not registered for A2P 10DLC. US carriers block unregistered application-to-person traffic; register the brand and campaign in Twilio.

A Check SMS result expanded under the number row — the panel is labelled SMS setup, each line is a named check, and failures carry the carrier's own error code with the fix.

i

If you're out of voice minutes, calls are rejected and the caller hears a short “we're unable to take your call” message. The dashboard now shows a banner when your minutes are low or used up — top up on Billing → Voice.

Use your own Twilio / Telnyx account (voice + SMS)

To answer both calls and texts on a number you own, connect your carrier account and point its webhooks at Quincer. Unlike call-forwarding (which can't carry SMS), this runs voice and SMS on your own number end-to-end. In Integrations → Telephony → Connect your carrier account, the dashboard shows the exact values for the provider you pick; in short:

Connect your carrier account

Use your own Twilio or Telnyx account so calls and texts run on your number. Leave blank to use Quincer’s shared numbers.

Twilio
Account SID (AC…) + Auth Token
Connected
AC••••••••••
••••••••Auth Token
Replace TwilioSetup instructions
Send a test SMS
+14155550123
Send test

The Connect your carrier account card — paste your Twilio/Telnyx credentials, then Send a test SMS to confirm sending works.

In the card above, each carrier shows a Connected badge once its credentials are saved (Twilio takes an Account SID + Auth Token; Telnyx an API key + public key). The Setup instructions link opens a dialog with the exact Voice and Messaging webhook URLs for the provider you picked, and Send a test SMS fires one real text from the registered number so you know sending works before going live. Then:

  1. In your carrier console, set the number's Voice webhook to https://phone.quincer.com/carriers/<twilio|telnyx>/inbound.
  2. Set the number's Messaging / inbound-SMS webhook to https://<your-app-domain>/api/sms/inbound?carrier=<twilio|telnyx>. This is a different host from the Voice URL above — calls go to the voice gateway, texts come to the app. Reusing the voice host here is the most common way inbound texting is set up wrongly, and it fails silently.
  3. Paste your credentials into Connect your carrier account (Twilio: Account SID + Auth Token; Telnyx: API key + public key) — we use them to send replies from your number and to verify your webhooks.
  4. Register the number under Map a number and pick its persona.
  5. For US SMS, complete A2P 10DLC brand/campaign registration in your carrier account first, or texts won't deliver.
i

No carrier account connected? Numbers fall back to Quincer's shared account (or use call-forwarding above for voice). Two-way SMS to your own number requires connecting your account as above.

Set carrier keys once for the whole organization

If you run several brands on the same carrier account, you don't have to paste the keys into every brand. Set them once under Settings → Telephony carrier keys (owner/admin only), and every brand that hasn't connected its own account inherits them automatically. Keys are stored encrypted and never shown again once saved — the card shows only whether a key is configured.

Each brand then chooses, per provider, in Integrations → Telephony:

Resolution order for every call and text is: the brand's own keythe organization's predefined keyQuincer's shared account. A provider is only ever used when both of its fields are set at the same level, so a half-entered key is rejected rather than silently ignored.

How SMS replies work

A persona answers texts with the same knowledge and workflows it uses on calls and chat. The number's mapped persona replies (or the widget default); the thread appears under Inbox. Two-way SMS is gated by the “Text things to callers” toggle on the Telephony settings. Replies are sent from the number that was texted. Incoming texts are always free; outbound texts (replies + booking links) draw from your voice plan's included SMS.

How SMS conversations open and close

SMS is more transactional than chat, so threads don’t linger “live” all day. An SMS conversation auto-closes after 2 hours of inactivity; a WhatsApp conversation stays open for 24 hours. A closed thread simply drops out of the live inbox — the next inbound text starts a fresh conversation, and you can always re-open the old one to follow up.

Transfer a call to a human

When a caller asks to speak to a person — or presses 0 — the AI warm-transfers the live call to a real human and bridges the two together. No app required for the human; their phone simply rings.

The transfer is screened: the AI first asks the caller for their name (and email), then announces it to your teammate before connecting — “You have a call from {name}. Press 1 to accept, or hang up to decline.” Only an accepted call is bridged.

On a persona’s page, the Phone handoff — transfer calls to control (below) sets the target. The dropdown lists your teammates — each shown with their phone number, or greyed out with “no phone set” if they haven’t added one on OrganizationPeople. Pick a teammate to ring their phone, or leave it on A phone number (below) and type a number directly into the field it reveals. Leave both blank to only notify the team (no live transfer).

Showing the caller’s number to the person you transfer to

By default, a transferred call arrives showing your Quincer number. That is the number your carrier knows you own, so it always connects — but it means a call centre or CRM cannot look the customer up automatically, and the agent ends up asking for a phone number the caller already gave the assistant.

On a persona’s page, tick “Show the caller’s number to the person you transfer to” and the transfer arrives showing the caller’s own number instead, so your screen-pop works.

!

Check with your phone provider before turning this on. Many carriers only let you display numbers you own, and reject a call that presents one you don’t — the transfer fails at setup and your caller hears “I couldn’t reach anyone” instead of being put through. That is worse than a missing screen-pop, which is why this is off unless you turn it on. It runs on your own carrier account, so whether it is permitted is between you and your provider. If transfers stop connecting after you enable it, switch it back off — that is the symptom.

Two things it will not do. If the caller withheld their number, or the call didn’t come in over the phone, the transfer falls back to your Quincer number and still connects — you get no screen-pop for that call rather than a failed one. And it only ever presents a number that genuinely called your line; there is no way to make it display an arbitrary number.

Persona · Voice & phone
Phone handoff — transfer calls to
Jordan Lee (+14155550188)

When a caller asks for a human (or presses 0), we ring this teammate or number and bridge the call. On no answer, the caller leaves a voicemail and returns to the AI.

The persona’s Phone handoff target — a teammate with a phone set, or a direct number.

  1. To route to a teammate, set that person’s phone number on OrganizationPeople. The persona dropdown shows who has a number set.
i

If the teammate declines or nobody answers, the caller hears a short apology, leaves a voicemail, and is then returned to the AI so they can keep getting help.

Voicemails are confidential: the message goes to the person the call was being transferred to — their email address, or a text with a private listen link if we don’t have one — not to everyone in your account. Only if that person can’t be reached either way does it fall back to your location/brand notification list, so a message is never lost. Make sure each teammate and directory contact has an email address on file.

See what your AI texted (SMS activity log)

Whenever your AI texts a caller — a booking link, an install guide, a document — the attempt is recorded. Open the conversation under Inbox and, if any texts were sent, an SMS activity panel shows each one with its status, so you always know whether a promised text actually went out.

i

Owners and admins can see the SMS activity log. Booking links and the in-call “text me that” sends both appear here, alongside your inbound-SMS replies. To see every text across the whole brand in one place (filterable by status), open Integrations → Telephony and switch Call activity to the SMS tab.

Who called (caller identity)

Inbound phone and voice conversations show the caller's number instead of “Anonymous visitor” — and their name and email as soon as your AI collects them on the call. The caller's number is searchable in the conversation list, so a returning caller is easy to find. (Web chat still identifies visitors via sign-in / Google One Tap as before.)

Troubleshooting