Chatonio

This is taking longer than usual.

Features

Everything between a question and a good answer

Follow one customer message, stage by stage: where it lands, what the answer is built from, what stops that answer going out wrong, and who takes over.

No credit card · a channel connected in minutes

One inboxanswering
Telegram group

“the March invoice still hasn’t come through”

Telegram · 09:12
Web chat

“says delivered but nothing came”

Web chat · 03:47
WhatsApp

“can I move my booking to Friday?”

WhatsApp · 18:30
Email

“Re: invoice for March”

Email · 10:11
Help center

“how do I add a second operator?”

Help center · 11:05
It arrives

Wherever your customer already is — including the group chat

Telegram, WhatsApp, Viber, web chat, email and your own help center land in the same inbox, with one history per person and the same assistant on every one of them. The hard one is the shared Telegram group, where a billing question, a bug and a feature request arrive braided together — so that is the one this page shows.

Acme Corpshared group · 3 threads
DKinvoice for March still hasn’t come through
SKalso the export button does nothing on Safari
DKand can we get SSO on this plan
SKthe Safari thing is blocking our finance team btw

Three threads, three owners

March invoice
Dmitri · 2 messages
waiting
Export fails on Safari
Sam · 2 messages
escalated
SSO on this plan
Dmitri · 1 message
AI answering

The group does not change. Your customers keep typing into one room the way they always have. What changed is that three of your operators can own three of those conversations without tripping over each other — and when a message lands in the wrong thread, you move it into the right one and it stays there.

It gets grounded

Answered from your knowledge, and from your own systems

Every reply is assembled out of things you own: your articles, your FAQ, and live data pulled from your own API in the middle of the conversation.

Your knowledge base
Write an article once and the assistant pulls it into the reply when it is relevant, serving your translated version when the customer writes in another language. The same articles are published as your help center, so the two never drift apart.
Your own systems
Point it at your API and it looks the answer up while the customer waits — order status, account state, a delivery date. It answers from what actually came back, not from what would have been a reasonable guess.
Your customer’s language
The assistant works out which language each person is writing in and answers in that language, from the very first message, using their browser or Telegram setting as an opening guess.
Your systems
Order APIAPI
Billing APIAPI
Knowledge baseKB
FAQFAQ
Chatonio
Grounded answer
checked before it is sent

It reads on its own. Before it changes a record, it asks — when you switch that on.

Any tool that changes something can be marked confirm-first. The assistant then stops, states what it is about to do in the customer’s own words, and waits for a clear yes before it runs. Confirm-first is a switch per tool, so a read-only lookup never nags and a refund never fires unasked.

See it on a live exchanger
It gets checked

Nothing the assistant cannot back up reaches your customer

After the assistant writes a reply and before anyone sees it, a second pass reads it back against the tool results from this turn, what the customer actually said, and your own content. Anything specific that is in none of those does not go out.

“Amounts, order numbers, transaction IDs, card numbers, recipient names, dates and statuses must come from a tool result, from the customer’s own messages, or from your knowledge base. If you cannot find the value, do not write it.”

Rule 2 of the platform instructions, appended after every business’s own prompt. No setting removes that rule.

told never to

Never invent an order, an amount or a name

The instruction sits after your own prompt and cannot be removed. The assistant can ask the customer for something it is missing. It cannot fill the gap itself.

checked by the platform

Every link has to come from somewhere

Any web address in a reply has to already appear in a tool result, in something the customer wrote, or in your own content. A plausible-looking domain that nobody gave the assistant is blocked before the message is sent, with no model involved in that decision.

not sentYou can reset it yourself at https://acme-support.com/reset — takes about a minute.
acme-support.com is in no article, no tool result, and nothing the customer said.
I can get you to the right place — do you want the reset link sent to the email on your account, or shall I get someone to do it for you?

That domain does not exist. The assistant produced it because it looked like the sort of thing that ought to exist — which is exactly how a support bot sends your customer somewhere real, run by somebody else.

Blocked
The draft never becomes a message.
Rewritten once
It is handed the exact claims it could not support and gets one attempt to answer without them. When that works, the customer never notices anything happened.
Or handed over
If the second attempt fails too, the customer gets a short honest reply and a real operator is paged.
It goes the other way

It does not only answer conversations. It starts them.

The same assistant, the same knowledge base and the same inbox also reach people before they ask: a popup on the page they are stuck on, a greeting that opens a chat on its own, a campaign from your own sending domain — and the numbers that tell you which of those actually worked.

  • Popups, banners and lead capture
  • Greetings that open a chat on their own
  • Email campaigns from your own domain
  • Live visitors, site analytics and goals

Email campaigns on Advanced and up. Popups, proactive greetings and analytics on Pro and Ultimate.

It gets handed over

To a person, with everything already in front of them

You decide what a handoff is — an angry message, a dispute, a plain ask for a human, a keyword you name. The platform does the paging, the routing and the audit line. The assistant is a passenger in that decision.

Handoff on your rules
Keywords that always escalate with no model involved at all, plus a policy you write in plain language and the platform applies each turn. Or switch escalation off entirely, or on for every conversation from the first message.
The claimed conversation that goes quiet
The dangerous conversation is the one an operator already claimed — it is off the queue, so nobody else is going to look at it. If it goes silent past the timer you set, the assistant comes back in with full context, and stands down again the moment your operator replies — until the next silence.
And you can switch the assistant off in one click
Per conversation: let the platform decide, pin the assistant on, or switch it off and take the conversation yourself. It picks up again with the whole history the moment you hand it back.
Customer asks
on any channel
The assistant answerslive
grounded, and checked
A person is needed
your rules decide
An operator is free
Paged, claims it, and picks up with the whole conversation already in front of them.
Nobody is free yet
The assistant keeps going until someone takes it. It never goes quiet.
Where the knowledge came from

You don't have to write your knowledge base

Give Chatonio your website. It reads the pages worth reading, writes the articles, harvests the questions you already answer in public, and drafts a system prompt in your own voice. Then you edit whatever it got wrong.

help.chatonio.com
Help center
Search articles… semantic
Popular articles
How withdrawals are processed
Billing · EN · RU · DE
Setting up two-factor auth
Security · EN · RU
Refunds & returns policy
Billing · EN · RU · ES
Connecting a Telegram bot
Setup · EN

from 6 pages·14 articles·9 FAQ entries

Real articles, not a prompt blob
They land in your knowledge base as editable articles and FAQ entries, live for the assistant immediately and publishable to a branded help center on your own domain.
Nothing is invented
Every fact it writes has to appear verbatim in something it actually read, or the fact is dropped. Regenerating never overwrites an article a person has edited.

Try it on any site, yours or not

Paste any URL and talk to an assistant built from it — no account, nothing to install. It takes about a minute.

Build a live demo
Then it closes the loop

The conversation is not the end of it

Once a conversation resolves, it turns into three things: work your team can pick up next time, an article the assistant answers from, and a reason to open the next conversation first.

Swipe — 3 groups

Around the conversation

On every plan. More seats from Advanced. The API on Pro and up.

  • Roles and permissions
  • Shifts, time zones, auto-routing
  • Many operators, clean transfers
  • Internal notes, never sent
  • Saved replies and tags
  • Web push and native apps
  • Captcha and rate limiting
  • REST API and signed webhooks

Back into the knowledge base

On every plan.

  • Conversation into an article
  • Rewrite with an instruction
  • Translate, screenshots intact
  • Re-index for the assistant
  • AI on, off or automatic per chat

Out to the next customer

Email campaigns on Advanced and up, with one-click unsubscribe built in. The rest on Pro and Ultimate.

  • See who is on your site now
  • Site analytics and goals
  • Greet visitors before they ask
  • Popups, banners, lead capture
  • Email campaigns from your domain
  • Telegram broadcasts
Before you start

The questions people ask first

What does the free plan actually include?
The web chat widget on your own site and a Telegram bot for one-to-one chats, one operator, and the knowledge base — plus the assistant itself, billed by the tokens each answer uses from a top-up balance on every plan. WhatsApp, Viber and email come with the paid plans; API integrations and email campaigns start on Advanced; Telegram groups, the branded help center on your own domain, live visitors and insights, popups, proactive chat and Telegram broadcasts are on Pro and up. The pricing page has the full split, with no asterisks.
Can it do things, or only look them up?
Both, and they are separate switches. A read-only lookup runs on its own. A tool that changes something — cancel an order, resend a payout — can be marked confirm-first, and then the assistant states what it is about to do in the customer’s own words and waits for a clear yes.
How does it decide to escalate?
You decide. Hard keywords escalate with no model involved at all. Beyond that you write the policy in plain language and a small model applies it — or you set it to escalate every conversation, or none. And in the automatic mode, if the assistant itself promises a handoff, that alone counts as evidence to escalate.
Will it answer before I’ve finished typing?
It waits. Customers send four messages in nine seconds and all four are one question, so the assistant holds for a beat you configure, reads them as a single message, and picks up the correction the customer made two messages ago instead of answering the last fragment.
What happens when it doesn’t know?
It says so and stops. It is not allowed to fill the gap with something plausible, and it is not allowed to tell your customer that a person is coming unless a person has actually been paged.

Stop taking our word for it

Point Chatonio at your own website and talk to the assistant it builds. About a minute, no account, nothing to install — and if you like it, that assistant becomes your first project.

Plans, limits and what AI usage costs — see pricing