fullstack e-commerce-web-app

Marketplace Multi-Vendor dengan Laravel

Marketplace banyak penjual dengan katalog, keranjang, pembayaran Midtrans, toko per vendor, alur pesanan bergaya escrow, dan chat pembeli–vendor. Otomatisasi pencairan dana ke vendor belum selesai.

fullstack kode sumber saja · e-commerce· escrow· laravel· midtrans
E-Commerce Escrow Laravel Midtrans PHP Realtime Chat

Lokapasar multi-penjual di atas Laravel 12 dan React 18 yang disatukan Inertia.js — satu basis kode yang melayani pembeli, penjual mandiri, dan administrator platform, dengan sistem escrow yang menahan dana sampai pesanan benar-benar tuntas.

Sorotan

  • Escrow, bukan pencairan langsung — uang hasil penjualan ditahan alih-alih langsung diteruskan, lalu dilepas otomatis begitu pesanan mencapai status selesai. Satu keputusan itulah yang membuat lokapasar dengan penjual yang belum tepercaya bisa berjalan sama sekali, dan itu pula sebabnya perpindahan status pesanan sampai punya panduan penelusuran masalah tersendiri di repositori.
  • Inertia alih-alih SPA terpisah — React 18 merender tampilan sementara Laravel tetap memegang routing, validasi, policy, dan sesi. Tidak ada permukaan API terpisah yang harus dijaga selaras dan tidak ada logika otorisasi yang terduplikasi, dengan Ziggy membuka nama-nama rute ke frontend.
  • Pencairan dana otomatis — pembayaran ke penjual berjalan sebagai proses sistem di atas buku besar escrow, bukan direkonsiliasi manual.
  • Integrasi pembayaran yang mengeras lewat iterasi — Midtrans terdokumentasi dalam dua panduan perbaikan khusus, satu di antaranya khusus penanganan virtual account, yang memang tempat integrasi pembayaran biasanya patah dalam praktik, bukan dalam teori.
  • Redis di depan jalur tersibuk — caching dan optimasi kueri diperlakukan sebagai bagian rancangan, lengkap dengan panduan penyiapan dan dokumen pemantauan, bukan dibiarkan tersirat.
  • Keamanan ditulis sebagai daftar periksa, bukan klaim — perlindungan CSRF, XSS, dan injeksi SQL, kontrol akses berbasis peran lewat policy Laravel, verifikasi surel melalui Breeze, serta pembatasan laju API.

Fitur Utama

  1. Pengelolaan produk — CRUD lengkap dengan kategori, varian, dan pelacakan stok.
  2. Keranjang dan checkout — keranjang yang bertahan dengan pembaruan seketika, mengalir ke Midtrans dengan beragam metode pembayaran.
  3. Siklus hidup pesanan — pelacakan status menyeluruh dari pemesanan, pengiriman, hingga penyelesaian, lengkap dengan pelacakan untuk pelanggan.
  4. Dasbor penjual — pengelolaan toko, analitik penjualan, serta laporan pendapatan dan penghasilan untuk tiap penjual.
  5. Escrow dan pencairan — penahanan dana yang aman dengan pelepasan otomatis, plus pembayaran ke penjual secara otomatis.
  6. Obrolan seketika — komunikasi langsung pelanggan ke penjual, dengan panduan obrolan admin yang menutup sisi moderasinya.
  7. Notifikasi — lewat surel dan di dalam aplikasi, di atas antarmuka responsif mobile-first yang sudah disiapkan untuk pelokalan.

Tech Stack

  • Laravel 12 + PHP 8.2+
  • React 18 + Inertia.js 2.0
  • Tailwind CSS 3 + Vite 5
  • MySQL 8 / PostgreSQL 13+ dengan Redis 7 sebagai cache
  • Midtrans PHP SDK 2.6 (pembayaran)
  • Laravel Sanctum 4 (autentikasi API) + Laravel Breeze (kerangka autentikasi)
  • Ziggy 2 (nama rute di frontend)
  • Laravel Pint + PHPStan + GitHub Actions

Status & Kematangan

Aktif, dan satu-satunya project di katalog ini yang punya CI terpasang — GitHub Actions berjalan berdampingan dengan Pint untuk perapian format dan PHPStan untuk analisis statis, dibungkus lewat composer quality. Pengujian otomatis masih terbatas pada suite autentikasi Breeze, sehingga logika khas lokapasar — terutama pelepasan escrow — diverifikasi lewat prosedur manual yang ditulis di TESTING-ORDER-COMPLETION.md. Deployment, pemantauan, dan penyiapan Redis masing-masing punya dokumen sendiri.

Metrik Terukur

Commit 25
Rentang Tanggal 8 Jan 2026 – 13 Feb 2026
Baris kode 35.135 baris yang dilacak git
Test otomatis suite autentikasi Breeze
dimulai 8 Jan 2026 · diperbarui 29 Aug 2026