Devlly

get in touch

Devlly - a software studio. We automate business: from a Telegram bot to a full CRM/ERP system.

Get updates

  • Case
  • Ecommerce and dropshipping

DropUnion App - a Telegram store for clothing sellers

DropUnion App is not a single store but a platform that grows any number of them. A seller registers in the bot and receives a personal link - and a buyer who opens it lands in that specific storefront right inside Telegram. The catalogue can be kept by hand or pulled from MyDrop or a Google Sheet; orders, statuses, Nova Poshta delivery and subscription billing run on their own.

Who it fits: clothing, footwear and accessory sellers who trade through Instagram and Telegram and take orders in direct messages; dropshippers working off somebody else’s stock; and anyone who wants to launch a subscription platform of their own rather than a single store.

Stack: Python with aiogram for the bot, FastAPI and PostgreSQL on the back end, React with Vite for the Mini App, and integrations with MyDrop, Google Sheets, Nova Poshta and WayForPay.

  • Python
  • aiogram
  • FastAPI
  • PostgreSQL
  • React
  • Telegram Mini App
  • MyDrop API
  • Nova Poshta API
  • WayForPay

How the platform is put together

The key decision is a single bot for everyone. A seller does not get a separate bot to register, host and update: they sign up in the platform’s shared bot and receive a link carrying their own token. A buyer opens that link and sees exactly that shop - its products, its banner, its colours. The system can hold any number of stores, and none of them knows about the others.

From there the system splits into two halves working on one database: the storefront where the client buys and the bot where the seller runs the shop. Neither side installs an app or opens a website - it all happens inside Telegram.

1. The buyer’s storefront

The storefront is a React Telegram Mini App: a home screen with a banner and categories, a catalogue with search and filters, a product page with sizes and colours, a cart and checkout. Nobody maintains the category list separately - it is assembled from the products themselves, so it always matches what is actually in stock.

Checkout is built for the Ukrainian market: the Nova Poshta city and branch are suggested from a local copy of the branch database rather than an external API call on every keystroke. If the seller has turned on payment confirmation, the buyer must attach a screenshot of the transfer - without it the order is simply not created.

A Telegram clothing store front - the Mini App home screen with a banner and categories
The storefront home: a banner with the shop’s own photo and text, categories assembled from the product categories, and a popular block. The seller picks the accent colour in the bot.
Product catalogue in a Telegram Mini App - search, filters and cards with prices
The catalogue: search, the New, Popular and Sale filters, and paged loading. This shop holds 4,849 items - the catalogue is pulled from MyDrop rather than typed in by hand.
Product page in a Telegram store - photo, price, size picker and purchase buttons
The product page: photos, price, a size picker limited to what is in stock, quantity and two actions - buy now, straight to checkout, or add to cart. If the item is on sale, the old price is struck through.
Cart in a Telegram Mini App - the item list, delivery and the order total
The cart: the chosen size and colour show in every row, quantity changes in place, delivery and the total are recalculated at once. Checkout follows, with autocomplete for the Nova Poshta city and branch.

2. The seller bot instead of an admin panel

There is no separate admin panel - the shop is run entirely from the bot. Products are added step by step (name, description, price, category, photos, sizes, colours, availability), any step can be skipped, and an existing card can be edited field by field, hidden from the storefront or deleted.

The storefront look is configured from the bot as well: the accent colour of the buttons, the banner photo and the line under the shop name. Change it and buyers see the result at once, with nothing to restart. The manual lives inside the bot too, so the seller never has to look for instructions elsewhere.

Seller bot of a Telegram store - the main menu with products and orders
The seller’s main menu: products, orders, the personal shop link, settings and the manual. The greeting shows how many days are left in the paid period.
Store settings in a Telegram bot - payment details, storefront, integrations and subscription
Store settings: the payment details buyers transfer to, the storefront look (accent colour, banner and the line under the name), the catalogue sources and the subscription. Storefront changes reach buyers at once.
The seller’s personal Telegram store link inside the platform bot
The shop’s personal link. One bot serves every seller: the token inside the link decides whose storefront the buyer opens. The token is masked in the screenshot because the link is live.
The built-in seller manual in the Telegram bot - the help sections
The manual is built into the bot and split into sections - getting started, store settings, products, integrations, orders and the subscription. The seller never has to look for instructions elsewhere.

3. Where the catalogue comes from

The catalogue can be kept by hand, but the point of the platform is different: connect a ready source and stop dealing with products at all. There are three sources - MyDrop as a vendor (your own stock), MyDrop as a dropshipper (somebody else’s stock plus your markup, as a percentage or a fixed amount), a YML feed and an ordinary Google Sheet in which the bot works out the columns by itself.

Only one source can be active at a time, and switching wipes the previous import so the storefront never keeps items nobody supplies any more. Manually added products stay where they are. The catalogue and stock levels refresh themselves every half hour.

4. Orders, delivery and money

The moment a buyer places an order, the seller receives a card with the contacts, the items, the city and the delivery method - plus the payment screenshot if that option is on. Statuses change with buttons right under the card, and every change automatically notifies the buyer on behalf of the shop.

With MyDrop connected, statuses sync both ways and the waybill number is pulled in automatically - the seller never moves an order between systems by hand.

5. The subscription as the business model

The platform earns from subscriptions: the first days are free and require no card, after which recurring billing through WayForPay kicks in. If a payment fails, the system retries up to three times and tells the seller why; after a cancellation the shop keeps working until the end of the period already paid for rather than shutting down on the spot.

The logic that matters

  • Multi-tenancy on a single bot: the token in the link identifies the shop, so onboarding a new seller needs neither a new bot nor a separate deployment
  • Manual and imported products are kept apart: changing or resetting the catalogue source never touches what the seller entered by hand
  • Recurring billing with retries and a clear message about why a charge failed, instead of silently switching the shop off
  • Nova Poshta branches are stored locally and refreshed on a schedule - checkout does not depend on an external API being up

What the platform can do

  • A personal Telegram store for every seller - a Mini App storefront behind their own link
  • A catalogue with search, filters for new, popular and discounted items, and paged loading
  • A product page with multiple photos, sizes, colours, stock levels and a struck-through old price on sale
  • A cart and checkout with autocomplete for the Nova Poshta city and branch
  • Catalogue import from MyDrop (vendor or dropshipper with a markup), a YML feed or a Google Sheet
  • Automatic price and stock updates every 30 minutes with no seller involvement
  • Orders with statuses new → confirmed → shipped → delivered and automatic buyer notifications
  • Two-way synchronisation of statuses and waybills with MyDrop
  • Storefront styling from the bot: accent colour, banner and the line under the shop name
  • A subscription with a free period, WayForPay recurring billing, retries and a two-click cancellation

Want your own store or the same platform? Get in touch