Where every conversation lands
Portal is the team inbox that ships with TruSend. Every channel your customers use lands as one timeline, a copilot answers from your own content beside every thread — and it drafts your starter setup the day you point it at your site
This is the inbox — push on it
Pick a conversation on the left, hit AI for a grounded draft, resolve it. The same three-pane workspace your team gets, drawn live — not a screenshot
Point it at your site — it drafts the desk
Portal's AI reads your website and drafts a starter setup — teams, ticket types, topics, SLAs, macros and help-center articles, plus a draft AI agent. You review every line and apply it in one step; nothing goes live until you say so
It sets up the desk, not the whole company — triggers, work calendars and live channels stay in your hands. What it does is get you from an empty account to something you can actually reply from, in minutes instead of an afternoon of forms.
One conversation, whatever the channel
Chat, email and the messengers your customers already live in arrive as one timeline per person — and stay one history, not a pile of scattered inboxes. Add a channel later and it just joins the same thread
Whatever channel they use, it’s one conversation — chat, email and the messengers your customers already live in, merged into a single timeline per person. Not one inbox per channel to keep switching between.
Each message keeps its source, and your reply goes back to wherever the customer last wrote — the route sits on auto, and you can override it per reply. Add a channel and it just joins the same timeline; nothing to rewire.
The composer knows the rules of each channel: it warns before you reply outside Meta’s 24-hour window, keeps reactions to what the channel accepts — and a sensitive-data guard catches card numbers and IBANs before they leave the composer, on both client and server.
A teammate you can ask, in every ticket
Open the Portal tab in any conversation and ask in plain language. It answers from your team's own content with the sources it used, drafts a reply you drop in with ⌘I, and remembers each customer across conversations
It’s a chat, and it answers from your content — not a black box. Ask in plain language and it draws from the sources your team already keeps, with a link back to each one.
It remembers each customer
Open issues, promises and confirmed facts follow the person across conversations — and your agent can pin, correct, forget any of them.
The summary is already there
Open the panel and the conversation is summarized before you type — then /short / /formal and the rest refine any draft in a keystroke.
The decision always stays with the person — it drafts, your agent sends.
Reshape your own words, in place
Highlight a rough sentence in your reply and fix it — extend, rephrase, tidy the grammar or set the tone. A separate tool from the copilot chat, and every change is previewed before it touches your draft
This one works on your words, not the customer’s — highlight a rough sentence in your own reply and reshape it in place. It’s a separate tool from the copilot chat: no thread, just the text you selected.
Or set the tone — formal, friendly, empathetic, concise, apologetic. Every change is previewed before it touches your draft, so nothing rewrites itself behind you.
When Nerv steps back, nothing drops
An unsure AI conversation lands in Portal with its full history — and the copilot already has the summary waiting. Your customer sees a named person join, never a silent switch from bot to human
Double-charged in May; the bot couldn’t confirm the second charge — invoice #4192 attached. No refund started yet.
Hand-offs are never billed — the bill scales with AI resolves, not with your team
SLAs shaped to how you run, not the clock
Scope a policy to the work that matters, set a different clock per priority, and measure business hours — not wall-clock. Here's how one gets configured, and how one ticket lives under it
Scope it to the work that matters
Match a policy on channel, priority, team, type, tag — with is, is not, in, not in — or leave it open as your default. Priority support and a quiet free tier don’t answer to the same clock.
A different clock per priority
One policy holds targets for first response, next response, resolution, periodic update — 15 minutes to first response on urgent, hours on the rest — each set per metric and priority.
It counts business hours
Attach a work calendar and the clock pauses outside working hours and on holidays, then warns at 80% of the target — before it’s a breach, not after.
And every breach is on the record — P50 / P90 / P95 response percentiles, breach reasons, and a table of every ticket that missed, in the SLA report.
Everything about the customer, beside the reply
The contact record lives next to the conversation, not in a separate tool — qualification, notes and custom attributes, right where you're writing back
The customer record lives next to the conversation. Contact and Company tabs sit beside the thread — qualification is click-to-edit in place, and an email or phone your customer mentions is captured without leaving the chat. Custom attribute types — text, number, list, date, currency, rating and more — are yours to define in Settings, most of them editable inline on the record.
And it stays a real workspace, not a junk drawer. Build segments from contact and company fields with a full set of operators, archive in bulk with one-click undo, tag in bulk, export any filtered view to CSV — and duplicate contacts get flagged with a side-by-side compare before you merge them.
Changes stream into every open screen live — a teammate’s edit shows up without a refresh.
The whole desk, one keystroke away
A real command palette over the whole workspace — reports, KPIs, knowledge actions — and the inbox answers to single keys. Watch it run
Every command, report and KPI is one keystroke away. The palette deep-links every KPI straight to the highlighted card, opens any report by name, and runs knowledge actions from anywhere in the workspace.
Most shortcuts are rebindable from a settings panel, and they match physical keys — so they keep working on a Cyrillic layout.
See what's happening before your customers tell you
What needs attention rises to the top, a live view refreshes every 30 seconds, and a CSAT drop calls itself out with a dated banner — so a bad day is something you catch, not something you read about later
Needs attention, on top
SLA breached, at risk under 15 minutes, unassigned, open backlog — switchable Now / Today / This week
Live Operations
queue depth, active agents, wait time and capacity, refreshed every 30 seconds
Anomalies call themselves out
a sudden CSAT drop or spike gets a dated banner on the report — not a footnote you find later
SLA reporting goes deep
P50/P90/P95 response percentiles, breach reasons, and a table of every breached ticket
Top agents
a leaderboard by CSAT, SLA, volume or resolution time
Pin it, export it
pin reports to the sidebar with trend deltas; export any report to CSV
Your own tools, right in the reply
The panel beside a conversation takes your tools too — add one from an integration or embed any page as a custom widget, sandboxed and opened straight to the right customer
The panel beside the thread is yours to build — the built-in widgets (contact & company, notes, custom attributes) are there from day one, and you rearrange them to how your team works.
Need your own tool in the frame? Add it as an Integration or a Custom widget. Either way it embeds an external page in a sandboxed iframe right next to the conversation — and Portal hands it the customer and conversation ids, so your tool opens straight to the right record. Your URL in a frame, not a marketplace of pre-built apps.
Each agent keeps their own layout, and admins can set which widgets a team always sees.
The grown-up controls, on every plan
The parts you only miss once you've been burned — an audit log, real permissions, work calendars, defaults you can lock. Nobody demos them, everybody ends up needing them, and here they're in the box, not fenced behind an enterprise call
An audit log that remembers
settings changes across every area, with who, when, and before/after values — kept 90 days
Business hours, everywhere
named work calendars with holidays — SLA clocks and teams count business time, not wall-clock
Workspace defaults with locks
set the language, timezone and privacy defaults teammates start with — lock a field and the server rejects overrides
Notifications with manners
Every event type scoped by role, one-click Do-not-disturb, and an off-hours quiet mode the server enforces
Invite the team in one go
paste a list of emails, pick a role, send — with a live seat meter against your plan
Mentions and scheduled sends
@-mention teammates into a personal mentions inbox; schedule a reply and edit or cancel it before it goes
The ones owners actually ask
The money answers come from the same source /pricing reads — the two pages can't disagree
Does the AI set up my workspace for me?
It drafts it. Point Portal at your website and its AI proposes a starter setup — teams, ticket types, topics, SLAs, macros and help-center articles, plus a draft AI agent. You review and edit every line, then apply it in one step. Nothing is created until you do, the agent stays inactive until you activate it, and there's a 24-hour undo.
Do hand-offs to my team cost anything?
No. If the AI passes a conversation to a person, that isn’t a resolve — it doesn’t count against your allowance and is never billed. Your team’s work is always free.
Is TruSend priced per seat?
Not the way help-desk suites do it. Every plan includes seats — Free starts with 3, Growth comes with 6 — and extra seats are a flat $12 (Starter), $15 (Growth) or $10 (Pro) a month. The bill scales with what the AI resolves, not with how many people you hire.
Are all channels on every plan?
Yes. Email, Telegram, WhatsApp and Meta are on every plan, Free included — no channel is locked behind a higher tier.
Is the copilot a separate chatbot or part of the ticket?
It's a tab inside each conversation. You ask it in plain language and it answers from your team's content — knowledge base, macros and past conversations — with the sources it used, always in the context of that customer. It drafts; your agent inserts, edits or ignores it. The decision stays with the person.
Can I put my own tools next to the conversation?
Yes. The panel beside a thread is built from widgets — the built-in contact, notes and custom-attribute panels, plus a custom widget that embeds any external page in a sandboxed iframe. Portal passes it the customer and conversation ids, so your tool opens straight to the right record. It's a URL embed, not a marketplace of pre-built integrations.
Does the AI route and classify my tickets?
Routing stays in your hands: type, topic and priority are set from the side panel, teams have a default for new conversations, and SLA policies scope by channel, priority, team, type or tag. What the AI does run is quality triage — it clusters its own failed conversations into issues with a recommended fix.
Open the workspace with your team
Free plan, 3 seats, no card — the inbox and your team’s replies stay free even with zero AI resolves
The other half — the widget your customers talk to? See Nerv →