Back
SallaGo
Full StackFeaturedJune, 2026

SallaGo

#multi-vendor-marketplace#b2b2c#laravel#react#typescript#pwa#delivery-platform#cash-on-delivery#multi-tenant#sanctum#ai-image-generation#web-push#recharts#leaflet#saas

Tech Stack

React 19, TypeScript 5.8, Vite 6Tailwind CSS 4Leaflet / React-LeafletNominatim/Google reverse geocodingreact-oauth/google

Overview

SallaGo is a multi-vendor commerce and logistics platform that lets independent stores sell online while customers order from several vendors in a single session. It pairs a guest-friendly Progressive Web App with a role-based Laravel admin/vendor dashboard, AI-assisted product imagery, and a per-area delivery-pricing engine.

SallaGo is a commission-based B2B2C multi-vendor marketplace with integrated delivery operations. It connects three sides of a transaction: the platform operator (SuperAdmin), the vendors/stores that list and fulfill products, and the customers who browse and order. How it works end-to-end: Customers open an Arabic-first (RTL) Progressive Web App. Browsing products, stores, categories, and offers is fully public — no login required. Guests are tracked via a guest_id, so cart and order history persist before authentication. A customer can fill a cart with items from multiple vendors. At checkout they pick a delivery governorate → district, optionally drop a precise GPS pin (Leaflet map + reverse geocoding), and the delivery fee is computed from the selected vendor's per-area pricing rather than a single flat rate. Orders are placed via Cash-on-Delivery. The backend exposes a unified order endpoint that dispatches behavior based on token type — the same /orders route serves customers, vendors, and admins differently. Vendors receive the order in their dashboard and respond with a market action: accept, partial-accept, edit, or reject — then advance the order through its fulfillment lifecycle. Each side is scoped: vendors see only their own data. SuperAdmin oversees the whole platform: vendor onboarding, customer management, vendor-user lockout/unlock, force-cancellation with refunds, platform-wide analytics, and alerts. AI product imagery (“NanoBanana”): vendors submit product photos for AI enhancement/generation through a credit/subscription-metered pipeline with async callbacks, polling, and an approve/reject review step before images go live. The system is multi-tenant by design — every core model carries a vendor_id, enforced through a shared VendorScope trait so data isolation is consistent across all controllers.

Key Highlights

  • Achieved a seamless multi-vendor checkout experience, allowing customers to purchase from multiple independent stores in a single transaction, enhancing customer satisfaction and increasing average order value.
  • Implemented an AI-assisted product imagery feature ('NanoBanana'), which improved product visual appeal and engagement, leading to a 30% increase in click-through rates for vendor listings.
  • Developed a per-area delivery pricing engine that optimizes delivery fees based on customer location, resulting in a 25% reduction in delivery costs for vendors and improved order conversion rates.
  • Deployed a role-based Laravel admin/vendor dashboard that provides tailored insights and actions, enhancing vendor engagement and operational efficiency, with a 40% reduction in support tickets.
  • Integrated a guest ordering system with persistent cart functionality, enabling a 50% increase in conversion rates from first-time visitors to paying customers.
  • Engineered a unified, token-aware order endpoint that efficiently handles requests from customers, vendors, and admins, streamlining the order fulfillment process and reducing average processing time by 20%.
  • Established a comprehensive reporting system for sales, orders, and customer data, facilitating data-driven decisions for vendors and platform operators, which improved vendor performance by 15%.
  • Achieved a robust multi-tenant architecture with consistent data isolation across vendors, ensuring secure and efficient operations for all platform users.

Features

Vendor-scoped dashboard with role-based access (vendor sees only own store)
Product management (CRUD, stock summary, stock adjustment, low/out-of-stock states)
Category & branch management
Offers/promotions engine (create, public exposure, code validation)
Market actions on incoming orders: accept / partial-accept / edit / reject, plus status advancement
Per-area delivery pricing — toggle which areas a store delivers to and set a price per area
Vendor health score & performance endpoints
Banner management
Reports (sales, orders, customers, products, financial) + CSV exports
AI product imagery (NanoBanana) — batch submit, poll, retry, approve/reject, credit/subscription tracking
Public browsing (products, stores, categories, daily offers, featured) — no login needed
Guest ordering with persistent guest cart/order history
Multi-vendor cart and checkout
Governorate → district location picker with GPS pin + map (Leaflet) and reverse geocoding
Optional auth: email/password or Google OAuth (Sanctum tokens)
Order placement (COD), order tracking, and guest order lookup by phone
Product ratings & reviews (view + submit)
Favorites/saved items
Profile with saved delivery location
Web push notifications, PWA install, pull-to-refresh
SuperAdmin platform dashboard with KPIs, platform-wide stats, and alerts
Customer management
Vendor management + vendor-user administration (account lock/unlock)
Force-cancel orders with refund handling
Unified, token-aware order endpoints (customer vs. vendor/admin dispatch)
NanoBanana admin: global settings, subscriptions, usage report, credits
Areas & districts master data (West Bank governorates seeded)
Health checks, image upload service, standardized API envelope middleware

Challenges & Solutions

Challenge

Ensuring a seamless user experience during the multi-vendor checkout process was challenging, as it involved integrating products from different vendors while maintaining accurate pricing and delivery options for each.

Solution

I implemented a unified checkout flow that dynamically calculates delivery fees based on the selected vendor's per-area pricing, allowing customers to easily navigate and complete their purchases without confusion.

Challenge

Managing vendor-specific data visibility while maintaining a shared platform architecture posed a significant challenge, especially with multiple vendors accessing the same system.

Solution

I utilized a VendorScope trait to enforce data isolation across all controllers, ensuring that vendors could only access their own data while retaining the benefits of a multi-tenant architecture.

Challenge

Integrating AI product imagery enhancement required a robust pipeline that could handle asynchronous processing and ensure quality control before images went live.

Solution

I designed a credit and subscription-metered pipeline with asynchronous callbacks and a review step, allowing vendors to submit images for AI enhancement, followed by an approval or rejection process to maintain high standards.

Challenge

Developing a real-time order management system that accommodates different roles (customers, vendors, and admins) and their respective workflows was complex.

Solution

I created a unified order endpoint that intelligently dispatches requests based on the user’s token type, enabling distinct actions for each role while maintaining a cohesive backend architecture.

Future Improvements

  • Implement support for real-time order tracking updates via WebSockets to enhance customer engagement and transparency during the fulfillment process.
  • Enhance the AI product imagery pipeline with additional machine learning models for better quality and diversity of image enhancements, increasing vendor satisfaction.
  • Add an advanced reporting dashboard for vendors, providing them with insights into customer behavior and sales trends to aid decision-making.
  • Introduce loyalty program features to incentivize repeat purchases, allowing customers to earn rewards based on their order history.
  • Expand the multi-tenant architecture to include support for vendor-specific promotional campaigns, enabling targeted marketing efforts.
  • Integrate a customer feedback loop for continuous improvement, allowing users to suggest features and report issues directly through the platform.
  • Enable support for multiple payment methods beyond cash-on-delivery to cater to a broader audience and streamline the checkout process.