TeleChat

$99 once. You own it.

Buy TeleChat one time and self-host it on your own server. No subscription, no per-seat billing, no seats to count - unlimited sites, visitors and operators.

TeleChat One-time license
Full source included
$99 once. No subscription, no per-seat pricing.
  • Self-host on your own VPS - one-command install, or Docker. Runs fine on 256MB.
  • Unlimited sites, visitors and operators. There are no seats to count.
  • White-label built in - your color, your title, "Powered by" removable.
  • Your own Telegram bot, your own SQLite file. Your data never touches my servers - I don't have servers.
  • Free updates, for now. Early buyers keep them.
Buy TeleChat - $99 once

Secure checkout through Polar. You get the source and your license by email right after paying, then it's on your own server. Not sure yet? Try the live widget on the home page first - it's the exact product you'd be buying. Questions? Email me.

I built TeleChat because I wanted live chat on my own sites - wpmultitool.com and makewpfast.com - without paying monthly for a dashboard I'd never open. It's been answering my visitors from my phone ever since. Open the widget and it's me on the other end.

How you run it

You own it, and it's one command to run. Pick how you run the server - bare metal or Docker, both first-class - then paste one tag. Either way it runs fine on a 256MB VPS.

First: get your Telegram bot (about 2 minutes)

  1. Open @BotFather in Telegram, send /newbot, and copy the bot token it replies with.
  2. Create a group, make it a supergroup with Topics enabled (group → Edit → Topics), and add your bot as an admin with the "Manage Topics" permission - that's what lets each visitor get their own thread.
  3. Send any message in the group, then open https://api.telegram.org/bot<token>/getUpdates in a browser and copy the group id - the -100… number.

The bot token and the group id are the only two things the setup wizard asks for. Everything below needs them, whichever way you install.

The fast path: let an AI install it for you

Unpack the source you got after buying, open an AI coding assistant in that folder (Claude Code, Cursor, ChatGPT - whatever you use), and paste this prompt. It reads the README and drives the whole install, verifying every step. The two manual methods below still work exactly the same.

You are my install assistant for TeleChat, a self-hosted live-chat widget (website chat in, Telegram replies out). You are running inside the unpacked TeleChat source folder. Start by reading README.md - it contains the full installation guide - then drive the install step by step, verifying each step actually worked before moving on.

1. Telegram bot: walk me through creating a bot with @BotFather (/newbot) and save the bot token. Then have me create a Telegram group, make it a supergroup with Topics enabled (group -> Edit -> Topics), and add the bot as an admin with the "Manage Topics" permission. To get the group id, have me send any message in the group, then open https://api.telegram.org/bot<TOKEN>/getUpdates and find the "chat":{"id":-100...} number.

2. Ask me which install I want, then run it with me:
   - Bare metal (Debian-ish VPS): ./install.sh to install deps and run the setup wizard, then sudo ./install.sh --deploy --tls for systemd + nginx + Let's Encrypt (drop --tls if Cloudflare terminates TLS).
   - Docker: python3 bin/setup.py to run the wizard, then docker compose up -d.
   The wizard (bin/setup.py) asks for the bot token, group id and public URL and writes .env - the token and group id from step 1 are the only secrets it needs.

3. DNS: help me point my domain (the host in TELECHAT_URL) at the server - either a Cloudflare-proxied A record (SSL mode Full) or direct with the Let's Encrypt cert from --tls.

4. Webhook: the app auto-registers the Telegram webhook on startup. Confirm it in the logs (journalctl -u telechat -f, or docker compose logs -f) - you should see "Telegram webhook set: https://mydomain/telegram/webhook". If not, diagnose before continuing.

5. Embed: give me the one-line deferred <script> tag from the README to paste before </body> on my site. Then have me send a test message from the site and verify it appears as a new topic in my Telegram group, and that my reply there streams back into the widget.

Do not skip verification steps. If anything fails, read the relevant config, script or logs in this folder, explain what went wrong, and fix it with me before moving on.

Or do it by hand - pick your method

Method A - Bare metal

systemd + nginx

./install.sh --deploy --tls

Native install on a Debian-ish VPS: systemd service, nginx, and a Let's Encrypt cert. An interactive wizard asks for your Telegram bot token and writes .env - nothing to hand-edit. Behind Cloudflare? Drop --tls and let the proxy terminate TLS.

Method B - Docker

docker compose

python3 bin/setup.py   # writes .env
docker compose up -d

Prefer containers? The setup wizard writes .env (or copy .env.example and edit it yourself), then bring it up. Your SQLite database persists in the named telechat-data volume. Front it with your own TLS proxy or Cloudflare.

Then paste the embed tag

<script defer src="https://chat.marcindudek.dev/static/widget.js" data-telechat-url="https://chat.marcindudek.dev"></script>
AttributeDoesExample
data-colorAccent color#7c3aed
data-titleHeader titleSupport
data-positionCornerleft / right
data-branding"Powered by" footeron / off
data-trigger-messageProactive greetingQuestions? Ask here 👋
data-trigger-pathOnly on matching pages/pricing
data-trigger-delaySeconds before it pops20

Before you buy

What do I get after paying?

The full source code and a license to run it. Checkout is handled securely by Polar; right after paying you get the source and your license by email, then it runs on your own server.

Is it really one-time?

Yes. $99 once - no subscription, no renewals, no per-seat billing. You run it on your own server for as long as you like.

Can I put it on more than one site?

Yes. One license, unlimited sites and operators. Each site can have its own color and title from the same server.

What happens if you stop working on TeleChat?

Nothing breaks. You have the full source code on your own server, and it talks to Telegram's Bot API directly. There's no service of mine in the loop that could shut down.