A marketplace where the ad is submitted in the bot and the storefront lives on the site
The seller fills in the card right inside Telegram and attaches a video. The moderator presses one button. The ad goes to the channel and to the site at the same time. One database, three entry points.
Ads lived in chat messages
− How it was
Sellers sent product descriptions as free-form messages. Half the cards arrived without the key specifications, and the admin chased them up by hand. Publishing to the channel was done by copy and paste. There was no search, and the history got lost in the feed.
+ What was needed
One submission form that will not let a field be skipped. Moderation in one click. A storefront with search and cards, so that an item can be found instead of scrolled past in a channel.
What was built
A step-by-step form in the bot instead of free text
Submitting an ad is split into ten steps with validation on each one: numeric specifications, choices made with buttons, the price, linking the account. A field cannot be skipped, the card simply will not assemble. The result is that every ad comes out in one format.
Video with limit checks
A clip of up to 250 MB and 5 minutes is attached to the card, and the bot checks the size and the length before the upload rather than after. Photos are deliberately not accepted: in this niche they prove nothing, while video does.
Moderation in one click
A new card lands with the admin together with buttons. Once approved, the ad goes to the channel and appears on the site from the same database record. Nothing has to be duplicated by hand.
A storefront on Next.js
A site with a catalogue and an ad page, pulling its data from a shared API. The backend FastAPI serves both the bot and the front end. One data model, and no drift between "what is in the channel" and "what is on the site".