Merchant Documentation

Complete guide to Merchant features, access, products & discount system

Access & Permissions
Product Management
Discount Codes
Orders & Returns
Analytics & Finance
Referral System
Merchant Access Overview

Merchants have a dedicated role (role: merchant) that gives them access to the Merchant Dashboard — a completely separate interface from the public shop and rider portal. The layout automatically detects the merchant role and renders the merchant-specific UI.

FeatureMerchantAdminRider/Public
Merchant Dashboard✅ Full access✅ Via AdminShop❌ No access
Add Products✅ Own products only✅ Any product❌ No
View All Products❌ Own only✅ All products✅ Approved+active only
Approve Products❌✅ AdminShop❌
Create Discount Codes✅ Own codes only❌ (admin uses shop directly)❌
View Orders✅ Orders with their products✅ All orders✅ Own orders only
Payout Requests✅ Via MerchantFinance✅ Process payouts❌
Analytics✅ Own data only✅ Platform-wide❌
Bulk Product Upload✅ CSV/Excel upload✅❌
Reviews✅ Can reply to own reviews✅ All reviews✅ Can submit
Merchant Onboarding Flow
1

Registration

Merchant visits /MerchantOnboarding and fills in business name, contact details, product categories, and agrees to terms.

2

Admin Review

Admin sees the application in AdminApprovals. Reviews the business information and decides to approve or reject.

3

Account Activation

Upon approval, admin sets user.role = 'merchant'. The merchant can now log in and access the Merchant Dashboard.

4

Profile Setup

Merchant completes their store profile via MerchantProfile page — logo, description, contact info, and payout preferences.

5

First Product

Merchant adds their first product from the Products tab. The product awaits admin approval before going live in the shop.

Merchants receive real-time notifications via the NotificationCenter component in their dashboard — new orders, order status changes, and review alerts are all surfaced instantly without page refresh.
Merchant Data Entities
EntityPurposeMerchant-Scoped?
ProductProduct listings with price, stock, category, images✅ Filtered by merchant_email
OrderCustomer orders containing merchant's products✅ Filtered by merchant_email
DiscountCodePromo codes the merchant creates✅ Filtered by merchant_email
MerchantReferralReferrals that led to product purchases✅ Filtered by merchant_email
MerchantPayoutPayout requests and history✅ Filtered by merchant_email
ProductReviewCustomer reviews on merchant's products✅ Via product_id
DeliveryChargePer-order shipping charge records✅ Via order_id
PlatformSettingsGlobal product categories configuration❌ Shared (read-only for merchant)