Skip to the content

Projects06 / 07 · AI assistant · 2023–present

ChatGPT Bot 06

A Ukrainian-language AI assistant in Telegram with a paid tier that actually collects money — 15,000 orders of it.

Tech lead & co-founder · full-stack design and implementation
Skip to the engineering
In plain words

In 2023, most Ukrainians simply could not sign up for a Western AI service

Cards were declined, phone numbers rejected, the interface was in English. This bot removed all of that: open Telegram, ask a question in Ukrainian, get an answer. Free to start, topped up over the first week, paid if you need more.

It is deliberately a small product with one job, and it is the clearest commercial proof I can show: 289,000 people used it, the product has taken 15,000 paid orders, and the money keeps arriving through automatic renewals. Nobody sends an invoice, nobody reconciles a spreadsheet — the product bills itself.

A detail I like. AI answers are slow, and silence feels broken. So the bot keeps typing — literally: a parallel thread pings the “typing” indicator every seven seconds for the whole duration of the response, so the chat never looks dead.

For engineers

Threads for perceived latency, sessions for context, the scheduler for everything else

Sidekiq was tuned up to 300 workers to hold the peak, then back down as traffic settled; payments, throttling and referrals reconcile without human involvement.

Threaded UX pattern

The API call and the typing-indicator loop run as concurrent threads, pinging every seven seconds for the full response duration. Perceived latency is a product problem solved in the product layer — the model is not going to get faster because you wished for it.

Context window per session

The last five question/answer pairs are carried in an ordered structure scoped to the chat session, not globally to the user — so two parallel conversations don’t contaminate each other. Cheap to compute, and it is the difference between “the bot remembers” and “the bot is confused”.

Recurring payments end to end

Payment-token storage, a daily autopay worker at a fixed hour, and callback handling with status verification before anything is credited. Money code gets the same rule as everywhere else: never trust the callback, verify the state.

Freemium mechanics

Four paid durations, a free starting allowance topped up by the first-week drip, referrals and admins, and a 300-second duplicate-request throttle to stop accidental double spend. Users hammer the button when an answer is slow — the throttle exists because of that, not because of a threat model.

Referral accounting

A 15% bonus credited on every purchase made by a referred user, tracked per account without manual reconciliation. Referral logic is where money quietly leaks; this one balances on its own.

Load shape · operator tooling

Sidekiq was tuned up to 300 workers to hold peak traffic, since most of the work is waiting on an upstream API rather than burning CPU — and back down to ten once the peak passed. Plus an admin panel for statistics, broadcasts, bans and the admin roster — so running the product does not require a console.
873k
AI responses served
300s
duplicate-request throttle
7s
typing ping interval
3+
years in production
Stated plainly: this is the least architecturally ambitious project here and the most commercially direct one. I include it because “I have shipped a product that takes money from strangers and renews it automatically” is a different claim from “I have shipped a product”.

Who worked on it · 2 contributors

Danyil Shkoropad

tech lead & co-founder · 2023–2026
  • Whole application: recurring payments, freemium mechanics, referral accounting, the admin panel.
  • The threaded typing-indicator pattern — perceived latency solved in the product layer.

Mykhail Yun

co-founder · product & growth · 2023–2026
  • Spotted the 2023 gap — Ukrainians could not sign up for Western AI services — and wrote the spec that week.
  • Four price tiers, the 15% referral scheme, and the campaigns behind 289k users.

Read to the end and want to talk it over?

rubyco.in