🇬🇧 English version
A simple e-commerce Telegram bot built with C# (.NET 6) and Entity Framework Core. All products are stored in local .txt files and delivered directly through the bot inside Telegram.
- 🛒 Product catalog with categories
- 👤 User system (Telegram user ID + balance only)
- 💳 Purchase and order processing
- 📦 TXT-based inventory storage (one line = one item)
- 🔄 Automatic stock removal after purchase
- 📩 Instant digital delivery via Telegram
⚠️ Insufficient balance / out-of-stock handling- 🤖 Fully interactive Telegram bot interface
- C# (.NET 6 Console Application)
- Telegram Bot API (
Telegram.Botv18) - Entity Framework Core 7
- SQL Server (only user balance storage)
- Local TXT files (product storage system)
The database stores only user balance information:
- Telegram User ID
- Balance
No product or inventory data is stored in SQL Server.
- User starts the bot in Telegram
- Browses product categories
- Selects a product
- System validates:
- user balance (SQL Server)
- product availability (TXT file)
- If purchase is valid:
- one line (item) is read from TXT file
- item is sent to the user
- balance is updated in database
- line is removed from file
- If purchase is invalid:
- bot returns an error message
🇷🇺 Русская версия
Простой e-commerce Telegram бот, созданный на C# (.NET 6) и Entity Framework Core. Вся продукция хранится в локальных .txt файлах и выдаётся через Telegram-бота.
- 🛒 Каталог товаров с категориями
- 👤 Пользователи (только Telegram ID + баланс)
- 💳 Обработка покупок и заказов
- 📦 Хранение товаров в
.txtфайлах (одна строка = один товар) - 🔄 Автоматическое удаление товара после покупки
- 📩 Мгновенная цифровая выдача через Telegram
⚠️ Проверка баланса и наличия товара- 🤖 Интерактивный Telegram интерфейс
- C# (.NET 6 Console Application)
- Telegram Bot API (
Telegram.Botv18) - Entity Framework Core 7
- SQL Server (только баланс пользователей)
- TXT файлы (основное хранилище товаров)
В базе данных хранится только информация о пользователях:
- Telegram User ID
- Баланс
Товары и инвентарь в базе не хранятся.
- Пользователь запускает бота
- Выбирает категорию товаров
- Выбирает товар
- Проверка:
- баланс пользователя (SQL Server)
- наличие товара (TXT файл)
- Если покупка успешна:
- товар считывается из файла
- отправляется пользователю
- баланс списывается
- строка удаляется
- Если покупка невозможна:
- выводится сообщение об ошибке