A telegram bot for a chess shop. You can find it in Telegram via this link: https://t.me/chess_shop_bot
A Telegram bot for browsing chess products (boards, pieces, clocks) with a simple interactive menu and simulated order system.
- Interactive Telegram menu
- Product categories and subcategories
- Display of photos + descriptions
- Generation of unique order numbers
- Automatic deletion of old messages
- Easy extensibility (just add a photo + .txt)
Below is a visual representation of how the user interacts with the bot:
-
Welcome Stage
- User starts the bot with
/start - Bot sends logo image
- Displays main menu:
- Products
- Share Bot
- User starts the bot with
-
Share
- User can copy and send bot link:
-
Browse Products
- Categories:
- Boards
- Pieces
- Chess Clocks
- Categories:
-
Boards → Subcategories
- Classic
- 3-Player Boards
- 4-Player Boards
- Custom (e.g. Space-Themed Boards)
-
Product Page
- Product image
- Description (from
.txt) - "Add to Cart" button
- /start
- Shop items
- Chess boards
- Classic
- 3 players
- 4 players
- Custom boards
- Chess pieces
- Classic pieces
- Royal period
- Harry Potter
- Chess clocks
- Mechanical
- Electronic
- Custom
- Chess boards
- Share this bot
- Shop items
- Chess_Shop_Bot/
- chess_shop_bot.py
- requirements.txt
- .env
- README.md
- imgs/
- logo.jpg
- boards/
- pieces/
- clocks/
.txt file:
board1.jpg
and
board1.txt
git clone https://github.com/chessmaster987/Chess_Shop_Bot.git
cd Chess_Shop_Bot python -m venv venv
Activate:
Windows
venv\Scripts\activate
Linux / Mac
source venv/bin/activate
pip install -r requirements.txt
BOT_TOKEN=your_telegram_bot_token_here
Get token via Telegram @BotFather
python chess_shop_bot.py
Make sure your code includes:
bot.remove_webhook()
bot.infinity_polling()
bot.remove_webhook()
- check imgs/ folder
- check filenames
Use polling instead of webhook
- Add new products → just add:
- image
- .txt description
- Easy to modify categories via callback_data
- Bot auto-cleans old messages
