Backend overview

The backend is a robust, modular system built on top of MedusaJS that serves as the core engine of the platform. It’s designed to handle complex business logic, data management, and API integrations while providing a secure and scalable foundation for the entire application.

Check Mercur main repository: Github

API

The backend exposes three main APIs:

  • Admin API: Provides administrative capabilities and system management.
  • Vendor API: Built to resemble Admin API, this interface enables sellers to manage their own resources including orders, products, customer groups, promotions, and other marketplace-specific features. Each seller has access only to their own data and operations.
  • Store API: Handles customer-facing operations and e-commerce functionality.

Actors

MercurJS recognizes three types of actors:

  • User: this actor has all administrative privileges, and is the only actor type who can use the administration panel.
  • Seller has access to the vendor panel. Each seller account is assigned to only one store it can manage.
  • Customer is a regular marketplace user.

Using authentication middleware provided by Medusa, each API is protected from being used by incorrect actor.

Admin Panel Overview

The admin panel is built on top of Medusa’s admin framework, providing a powerful and extensible interface for managing your marketplace.

Custom Features

Commission System

Our platform includes a sophisticated commission management system that allows for flexible commission structures:

Marketplace commission settings

  • Multiple Rule Types:
    • Seller-specific rules
    • Product category-based rules
    • Product type-based rules
    • Site-wide default rules
  • Calculation Methods:
    • Percentage-based commissions
    • Flat-rate commissions
    • Tax-inclusive/exclusive options
    • Minimum and maximum commission limits

You can find more information here: Commission

Marketplace Configuration

The marketplace configuration section allows administrators to manage global marketplace settings and rules:

Configuration Rules

  • Global Product Catalog: Enable/disable global product catalog visibility
  • Product Request System: Toggle the product request submission system
  • Product Approval Requirements: Enable/disable mandatory product approval
  • Product Import: Control product import functionality

You can find more information here: Marketplace Settings

Requests Panel

The requests panel is a communication interface between sellers and marketplace administrator. They can request certain actions to be performed:

  • New Seller Applications: Review a new seller account.
  • New Product Submissions: Review a new product listings.
  • Product Collection Request: Review a new product collection.
  • Product Category Request: Review a new product category.
  • Review Remove Request: Review a submission to remove unfair review.
  • Product Type Request: Review a new product type.
  • Product Tag Request: Review a new product tag.

Requests are submitted by sellers to the marketplace administrator for review. Once the administrator makes a decision, the action is automatically executed by the Mercur backend.

You can find more information on requests here: Requests

Sellers Panel

The sellers panel provides tools for managing marketplace vendors:

  • Seller Profiles: View and manage seller information
  • Store Suspension: Activate or suspend seller accounts
  • Product Management: Oversee seller product listings
  • Order Management: List seller orders
  • Customer groups Management: List seller customer groups