Enterprise grade multi-vendor Ecommerce Platform Specification

Needed System

  • Backend Services and API’s (That does the 70% of the work)
  • Admin Panel
    • Web
  • Customer App/Shopping App
    • Mobile Apps
      • Android 
      • IOS
    • Web App
  • Marchant App
    • Mobile Apps
      • Android
      • IOS
    • Web App


Modules at a glance

  • Multi-vendor Ecommerce
    • Inventory
      • Products and Stocks Management
      • Vendor Management
    • Ecommerce
      • Order Management & Tracking
      • Campaigns and Coupons
      • Handling delivery options and charges
      • Review & Rating
      • Issues & Complain Management
      • Refunds
      • Invoicing and Reporting
    • Accounting
      • Transaction Management
      • Digital Wallet
      • Payment Gateway Integration
      • User Billing & Ledger for merchant and system admin
    • Social & Messaging
      • Customer & Vendor Chat/Messaging Service
      • News Feed
      • Posts, Comments & Reactions
      • Notifications

Use Cases


  • Send Notification to merchants or customers for system events, like new orders, payment complete etc.
  • Generation of system reports
  • Email Alerts


  • Admin or operations team will create the product with images and description.
    • Ex. Yamaha R15
  • Admin will create variants for a specific product if needed. Like Yamaha R15 may have two variants, Indian and Indonisian. 
    • Ex. Yamaha Indian R15 yellow
  • Admin will create attributes when creating a product. 
    • Attributes are keywords for what products are described for.
    • Like Samsung Galaxy note 10 was added as a product. To help customer see the specification properly, we may some something like this in description
      • Processor: 5ghz
      • Ram:  3gb
      • Body: Aluminium 
  • Creation and approval of shops needs to be done by admin
    • Create a shop on behalf of a shop owner
    • Approve a shop verifying information provided by the shop owner. 
  • Create Campaigns
    • Admin may create a campaign for a specific period.
    • To enlist products for that campaign, sellers need to update their stock information and select that campaign.
    • All of the discount product prices will be calculated by the discount percentage configured with enlisted stock or specific campaign.
  • Add announcements/blogpost in the admin panel. Not a newsfeed just plain blog.
  • Issues/Complains Management
    • Reply an open ticket
    • Resolve or Close the ticket


  • Marchant will add Stock for a product, not create products every time.
    • If a product is available on system, marchant will add stock by selecting that product.
    • If not available, merchants will have an option to create a product and add stock for it. Though it won’t be immediately available on the system. An admin needs to approve it. 
    • During enlisting a product marchant will,
      • Select a campaign if available
      • Mention discount (in percentage) for that stock. Price will be calculated automatically
  • Track orders for their shop. 
    • Filter by order status
  • See billing history
    • pending bills from company
    • already paid bills
  • Marchant can see their own stock, both enlisted stock and pending stock/product 
    • By pending products we mean products that are added by marchant and haven’t been approved yet.
  • See issues for own shop.
  • See notifications from system
  • Create coupons with validity.
  • Change order status with note (Shipped)


  • Search products
    • Location wise
  • View shops based on their own location.
  • Purchase product from selected shop
    • User can only purchase products from one shop for a single order
  • Add products to favorites.
  • Order Management
    • View orders, filter by status.
    • Track an order.
    • Create a complaint/ticket for an order
    • Cancel order before confirmed.
  • Notifications
    • View notifications sent from system
  • Payments
    • View payment history
    • Customer can pay with cash on delivery or a payment method
      • Payment gateway integration (Need to specify clearly about the gateway and api on the forehand)
  • Account Information
    • View & Update
  • Customers can directly chat with the shop owner.


We might miss something here, please improve this document accordingly.


Time Schedules

  • The Requirement to complete the whole project is infinite. This type of project never ends.
  • What time can be predicted, is to develop the minimum viable product (MVP). So that it can be launched in the market for first release.
  • Let’s consider the deadline for this project is 6 months.


Team Requirement

Team size depends on time provided for the development of Minimum viable product (MVP).

Considering a deadline for 6 months for the development of a minimum viable product.

  • System Architect & Project Manager
  • Backend Developers
    • At least two backend developers (Senior)
  • Frontend Developers
    • 2 mobile app developer for flutter ( 4 in case project is fully native) (One senior, One Junior)
      • For Customer & Marchant App 
    • 2 web developer (Angular) (One senior, One Junior)
      • For Admin panel
      • For Customer & Marchant App

Pricing & Budget Estimation

  • Product Development Cost
    • Estimated cost for multi-vendor ecommerce: >= 10 lacs BDT depending on further requirements.
    • Buy & Sell (Not yet defined)
    • Rental (Not yet defined)
    • Services/Online Job platform (Not yet defined)
  • Recurring Costs
    • Server 
      • Dev, Staging & Production Server
      • ELK Custer ( multiple no of servers ) 
      • Other Cluster ( few servers for technologies like RabbitMQ, Reddis etc.
      • Depends on specifications needed but predicted is, 
        • at least &100 – $1000/month initially depending on no of users and visitors on the system.
    • Maintenance & Feature improvements
      • Totally depends on further requirements
      • Allocated budget.
      • One suggestion is, in this stage it’s a good idea to hire a technology team as the development will never end.

Leave a Reply

Your email address will not be published. Required fields are marked *