Developing a Bot for Answering Questions on Marketplaces
Every day sellers on Ozon, Wildberries, and Yandex.Market receive dozens of identical questions: availability, size, delivery times. Manually answering each takes 2-3 minutes, and 50 questions consume 2 hours. Missing a question or answering incorrectly reduces buyer trust. Automation removes this burden and lets managers focus on complex requests. We develop bots with LLM processing that answer standard questions in seconds and escalate non-standard ones to a manager. This cuts response time from 4 hours to 30 seconds and boosts conversion by 15-20%.
Why Automating Questions Pays Off
The hours spent on repetitive answers can be redirected to product development and marketing. The bot works 24/7 without breaks or vacations—every missed question may lose a sale. Customers who receive quick answers are more likely to place orders and return.
Architecture of Question Processing
The bot polls the marketplace API every 60 seconds or receives webhook notifications. For each question, classification runs: it's compared against a template database via cosine similarity of embeddings. If similarity is above 0.9, a prepackaged answer is sent. If lower, the LLM takes over.
We use gpt-4o-mini or similar models with temperature 0.3 to generate answers based on the seller's knowledge base. For more details, see OpenAI API. An additional LLM call evaluates confidence: if below 0.85, the question is escalated to a Telegram chat for the manager.
Fetching Questions via Marketplace API
# Ozon Seller API — получение новых вопросов
import httpx
class OzonQAClient:
def __init__(self, client_id: str, api_key: str):
self.headers = {
'Client-Id': client_id,
'Api-Key': api_key,
}
def get_unanswered_questions(self) -> list:
resp = httpx.post(
'https://api-seller.ozon.ru/v1/qa/list',
headers=self.headers,
json={'status': 'without_answer', 'page_size': 50}
)
return resp.json().get('result', {}).get('questions', [])
def reply(self, question_id: str, answer_text: str) -> bool:
resp = httpx.post(
'https://api-seller.ozon.ru/v1/qa/answer/seller',
headers=self.headers,
json={'question_id': question_id, 'text': answer_text}
)
return resp.status_code == 200
Why LLM Is Better Than Templates Alone
| Feature | Templates Only | LLM + Templates |
|---|---|---|
| Auto-response rate | 30–50% | 80–95% |
| Accuracy on non-standard questions | Low | High (with escalation) |
| Setup time | Low | Medium (one-time) |
| Response flexibility | Fixed | Adaptive to context |
LLM handles questions absent from the database and formulates answers in natural language, maintaining a consistent tone of voice.
Classification and Answer Generation
from openai import OpenAI
client = OpenAI()
FAQ_CONTEXT = """
Вы — помощник продавца на маркетплейсе. База знаний:
- Доставка: 3-7 дней по России, СДЭК или Почта России
- Гарантия: 12 месяцев на все товары
- Возврат: в течение 14 дней
- Оплата: картой, СБП, наличными при получении
"""
def generate_answer(question: str, product_info: dict) -> dict:
system_prompt = FAQ_CONTEXT + f"\n\nТовар: {product_info['name']}\n{product_info['description']}"
response = client.chat.completions.create(
model='gpt-4o-mini',
messages=[
{'role': 'system', 'content': system_prompt},
{'role': 'user', 'content': question},
],
temperature=0.3,
)
answer = response.choices[0].message.content
# Определяем уверенность через отдельный запрос
confidence = classify_confidence(question, answer)
return {
'answer': answer,
'confidence': confidence, # 0.0 — 1.0
'auto_send': confidence >= 0.85
}
Escalation to a Manager
Questions with low confidence are forwarded for review:
if not result['auto_send']:
# Отправляем менеджеру в Telegram с кнопками
await telegram.send_message(
chat_id=MANAGER_CHAT,
text=f"❓ Вопрос по товару \"{product['name']}\"\n\n"
f"Вопрос: {question}\n\n"
f"Предлагаемый ответ:\n{result['answer']}",
reply_markup=InlineKeyboardMarkup([[
InlineKeyboardButton("✅ Отправить", callback_data=f"approve:{question_id}"),
InlineKeyboardButton("✏️ Изменить", callback_data=f"edit:{question_id}"),
]])
)
Step-by-Step Bot Setup
- Integration with marketplace API — we connect to Ozon Seller API or Wildberries API.
- Upload knowledge base — you provide typical questions and answers, we configure embeddings.
- Choose LLM model — typically
gpt-4o-miniorclaude-3-haiku, optimal for price and quality. - Set confidence thresholds — you decide the probability at which the bot auto-answers vs. escalates.
- Deploy on a server or cloud function — using Docker or serverless.
- After deployment, load testing ensures stability.
What’s Included in the Work
- Development and integration of a question collection module via marketplace API.
- Configuration of the classifier and LLM generation with your knowledge base.
- Implementation of Telegram escalation with approve/edit buttons.
- Architecture documentation and operation manual.
- Handover of server access, API keys, and source code.
- Team training: updating templates, changing thresholds, adding new managers.
- Technical support for one month after launch.
- Monitoring and alert setup for failures.
What Else This Approach Provides
Beyond automation, the bot collects question statistics, identifies common product issues, and helps improve product cards. For example, if 10% of questions are about size, add a size chart.
Platform Comparison by API Capabilities
| Platform | Webhook | Filter by Product | Image in Reply |
|---|---|---|---|
| Ozon | Yes | Yes | Yes |
| Wildberries | Yes | No | No |
| Yandex.Market | Yes | Yes | Yes |
Platform choice affects integration complexity; for instance, Wildberries does not support image replies, which limits options.
Timelines
A basic version for one marketplace with Telegram escalation: 5–8 business days. If multiple marketplaces, complex logic, or CRM integration is needed, the timeline may extend to 14–20 days.
How to Start?
We’ll evaluate your project for free — contact us. We’ll clarify which marketplaces you use, question volume, and knowledge base requirements. The solution is delivered turnkey: from analysis to launch and team training.
Our team has over 5 years of experience in marketplace integrations and LLM. We guarantee the bot will automatically handle at least 80% of questions. Get an engineer’s consultation for your project.
Architecture Diagram
Marketplace API (polling / webhook)
↓
Question Classifier
↙ ↘
Template Answer LLM Generation
(FAQ base) (OpenAI / Claude)
↓ ↓
Auto-Reply Manager Review
↓
Marketplace API → Send Answer







