Development of a Marketplace Seller Rating System
On a marketplace with 10,000 sellers and hundreds of reviews per day, a simple arithmetic mean doesn't work: a couple of fake reviews distort the real picture. That's why we develop a rating system that considers not only star ratings but also objective order fulfillment metrics — delivery percentage, processing speed, cancellations, and returns. Buyers make decisions in seconds: a product from a seller with a 4.8 rating sells significantly better than the same product from a seller with 4.0. If the rating doesn't reflect reality, trust drops. Our goal is to provide a fair and transparent mechanism that encourages quality work and protects the platform from manipulation. The foundation is a multi-factor model with different weights and a 90-day sliding window.
Rating Components
The rating should not be reduced to just review stars. A quality system considers several parameters:
| Parameter |
Weight |
Data Source |
| Average review rating |
40% |
reviews table |
| Successful delivery rate |
20% |
order_deliveries |
| Order processing speed |
15% |
order_status_history |
| Cancellation rate (seller fault) |
15% |
order_cancellations |
| Return rate |
10% |
returns |
The final rating is a weighted sum of normalized indicators, scaled to 1–5. Each parameter is normalized using Z-score or min-max. This accounts for different metric natures and prevents one factor from dominating. This approach is more stable and less prone to manipulation than a simple average.
Review Collection: Process and Rules
Reviews can only be left after order delivery confirmation. This excludes reviews from non-existent purchases. The review form:
- Overall rating (1–5 stars)
- Parameter ratings: description accuracy, packaging, shipping speed
- Text (optional, with a minimum length)
- Review photo (upload via S3)
Review reminder: push/email 3 days after delivery, repeated after 7 days.
Review Moderation
Reviews undergo automatic filtering (profanity, spam patterns) and can be disputed by sellers. A seller can reply to any review — this is publicly visible and demonstrates engagement. A seller's complaint about a review is sent to a moderator. Grounds for removal: review about a different product, contains personal data, obvious fake. Algorithms analyze text for profanity, spam patterns (repeated phrases, links), and anomalously low ratings from new accounts. Suspicious reviews are flagged and sent for manual moderation. A seller can dispute a review by providing evidence (screenshots of correspondence, photos of shipment).
Why We Use a Sliding Window
The rating is not recalculated in real time (expensive), but on a schedule:
- Once per hour for active sellers (>10 orders in 30 days)
- Once per day for others
Example SQL query for sliding window
SELECT
seller_id,
AVG(rating) as avg_rating,
COUNT(*) as reviews_count,
AVG(CASE WHEN status='delivered' THEN 1.0 ELSE 0.0 END) as delivery_rate
FROM orders
WHERE created_at >= now() - interval '90 days'
GROUP BY seller_id
The rating is based on a sliding window: only the last 90 days are considered. This protects against "rotting" past data and encourages maintaining quality.
What Are the Consequences of a Low Rating?
- Rating < 4.0 — warning in the dashboard, products appear lower in search results
- Rating < 3.5 for 30 days — new orders restricted, support team notified
- Rating < 3.0 — automatic account suspension until review
This motivates sellers to improve rather than continue with a poor rating for years.
Rating System Development Process
- Analytics — gather requirements, analyze current metrics and architecture.
- Model Design — calculate weights, normalization, recalculation logic.
- API Development — create endpoints for reviews, ratings, and moderation.
- Admin Panel — interface for moderators and managers.
- Queue Integration — background task processing via Redis/Beanstalkd.
- Testing and Documentation — load testing, Swagger/OpenAPI.
- Deployment — on your server or cloud.
We guarantee the system will handle up to 100,000 reviews per day without degradation. For peak loads (after sales), a Redis task queue and horizontal scaling of workers are used. Team experience — over 5 years, 12 major projects implemented.
What's Included in the Work
Development includes: model design, API for reviews and moderation, admin panel, queue integration, load testing, documentation (Swagger/OpenAPI), training for your team, deployment on your server or cloud, and support for one month after launch.
Approach Comparison: Simple Average vs Weighted
| Characteristic |
Simple Average |
Weighted (Ours) |
| Spam sensitivity |
High |
Low |
| Rating stability |
Low |
High |
| Transparency for sellers |
Medium |
High |
| Manipulation protection |
Weak |
Strong |
A weighted rating better reflects actual service quality and is less prone to manipulation. Development cost depends on complexity and scale — calculated individually. The multi-factor rating model is recognized by the industry as the most objective.
More about reputation system principles can be found on Wikipedia.
Order development of a rating system for your marketplace — get a consultation from our engineer and an approximate timeline estimate. Contact us to discuss details.
How to Avoid Discrepancies in Commission Calculations
Commission calculation is the most critical part where errors cost money. Rule one: never store commission as a derived value, always as a fact. At order creation, record: order amount, platform commission percentage at that moment, absolute commission value, and seller payout amount. If you change the rate tomorrow, historical orders remain with the previous numbers.
Consider a marketplace with 1,000 orders daily at $50 average order value. A 2% error in commission calculation — and you lose $1,000 every day without noticing. Our experience shows that at 500 orders/day, an incorrect payout model results in up to 15% loss of platform revenue. We have solved this for 50+ projects, from niche B2B to horizontal retail. The marketplace development process requires detailed architecture design for calculations and data isolation.
Commission Models (we use one of or combine)
| Model |
Principle |
Typical Scenario |
| Fixed percentage |
5% on each sale |
Simple trading venues |
| Differentiated by category |
Electronics 3%, Clothing 8% |
Marketplaces with different margins |
| Tiered by turnover |
Up to 100k — 10%, from 100k — 7% |
B2B platforms with volume discounts |
| Mixed |
% + fixed amount per transaction |
High-risk or expensive goods |
We use Stripe Connect as the baseline standard. Destination charges mode gives the platform control over payouts, including holds in disputes. Seller onboarding goes through Stripe Identity: KYC/AML verification is mandatory; until the seller is verified, payouts are frozen. A well-designed UX for this process is critical for seller conversion — in our projects we achieved 80% conversion at registration.
Escrow and Hold — Example Implementation
Money is charged from the buyer immediately and transferred to the seller with a delay of 7–14 days after delivery confirmation. This protects against fraud and allows holds in disputes. Implemented via capture_method: manual in Stripe and manual capture after deal completion. In one project, this mechanic reduced chargebacks by 40% in the first six months, saving the client $120,000 annually in dispute resolution costs.
What commission model suits your marketplace?
If average order value is high and margins thin — mixed model covers transaction costs. For B2B with volume discounts — tiered works best. Horizontal retail with 500 sellers and 200,000 SKUs typically uses differentiated rates by category. The wrong model can cost 3–5% of GMV, which directly hits your bottom line.
Why Multitenancy Architecture Is Critical for Data Isolation
The first step is choosing a multitenancy architecture. In shared-schema mode, all sellers are in the same tables with vendor_id. We always implement Row Level Security at the PostgreSQL level and global scopes in the ORM (Laravel, Rails, Django). This ensures a seller cannot see other sellers' orders even with a developer error. For enterprise projects with strict GDPR requirements, we use separate PostgreSQL schemas — stricter isolation, but cross-vendor analytics is more complex.
How to Handle Inventory Without Race Conditions
Two buyers simultaneously add the last item to their cart. Who gets it? Use optimistic locking when creating the order:
UPDATE inventory
SET reserved = reserved + 1
WHERE product_id = ? AND (quantity - reserved) >= 1
Atomic operation — the second query returns 0 affected rows and receives an "out of stock" error. Typical schema for high-traffic marketplaces. Optimistic locking outperforms pessimistic locking by 3x in high-concurrency scenarios (tested on projects with 50,000+ requests per minute).
Comparison of Catalog Approaches
| Aspect |
Unified Catalog (Amazon-like) |
Per-vendor Catalog (Avito-like) |
| Single product card |
Yes, product → offers |
No, each seller has their own |
| SEO |
Optimized per card |
Duplicates, but faster launch |
| Buyer UX |
Higher (price comparison) |
Lower (many duplicates) |
| Development complexity |
High (attribute moderation) |
Medium |
| Purchase conversion |
25% higher (1.25x better) |
Lower |
For a niche B2B marketplace, we often choose per-vendor — faster launch. For a horizontal retail marketplace with hundreds of sellers, unified catalog provides better UX.
Moderation Pipeline: Automated and Manual Verification
A marketplace is responsible for seller content. Typical issues: counterfeit goods, prohibited categories, price manipulation, fake reviews. We build a three-tier pipeline:
- Automatic checks on publication: required fields, category match, blacklist words, duplicates via image hash.
- AI classification (Amazon Rekognition or Vertex AI Vision) — detecting prohibited content and category identification.
- Manual review queue for flagged items.
State machine: draft → pending_review → active / rejected → suspended. Each transition is an event with reason and moderator. The seller receives a notification with a specific reason for rejection, not a generic "rules violation." Review verification is mandatory — only after confirmed purchase. Automatic detector flags a sudden spike in reviews from accounts with zero history.
Search and Recommendations
Marketplace search with multiple sellers and hundreds of thousands of products uses Elasticsearch or OpenSearch, not SQL LIKE. Vector search for semantics, faceted filtering via aggregations. Personalized feed based on collaborative filtering. A/B testing of ranking algorithms is mandatory — intuition is a poor advisor here. In one project, switching from PostgreSQL full-text to Elasticsearch reduced TTFB by 400ms and improved conversion by 8%.
Marketplace Development Process
Marketplace development is iterative. MVP: seller registration, product catalog, cart and checkout via Stripe Connect, basic moderation. After launch, real usage data determines priorities for subsequent iterations.
Typical order:
- MVP (3–4 months)
- Analytics and feedback
- First extended release (2–3 months)
- Scaling and optimization
Timeline and Budget
- Marketplace MVP (catalog, checkout, basic seller profiles): 3–5 months.
- Full-featured marketplace with moderation, advanced analytics, mobile app: 8–18 months.
- Adding marketplace functionality to an existing e-commerce: 2–5 months.
Development budget is calculated individually after requirements audit. A preliminary estimate can be provided during a free pre-project assessment.
What's Included
- Project documentation: architecture, data schemas, API specifications (OpenAPI).
- Access to repository, CI/CD, deployment documentation.
- Training for the client's team on platform operation.
- Technical support for the first month after launch.
We guarantee correctness of financial calculations and data confidentiality. Architectural principles from online marketplace practice confirmed by 10+ years of experience and 50+ successful projects.
Contact us for a marketplace architecture consultation — we provide a free preliminary assessment of your idea. Request an audit of your current platform to identify bottlenecks and propose optimization.