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.
Marketplace tempat banyak penjual berjualan di satu etalase, dengan dana pembeli ditahan sampai pesanan beres.
Yang sudah berjalan
Mesin status escrow-nya nyata dan terimplementasi di app/Models/Order.php — logika menahan dan melepas dana ada di sana. Begitu pula katalog, keranjang, integrasi pembayaran Midtrans, toko per vendor, panel admin, dan chat pembeli–vendor. Ada 42 controller dan 39 migrasi.
Yang belum, dan perlu saya sebutkan
README repo ini menuliskan "Automated vendor payout system". Kodenya tidak mendukung kalimat itu. Di app/Models/Order.php baris 543 ada:
// TODO: Queue job to actually transfer money to vendor
dengan pemanggilan dispatch(...) yang masih dikomentari. Pencairan dana yang sesungguhnya dikerjakan manual: admin melakukan transfer bank sendiri, memasukkan nomor referensinya ke sistem, lalu sistem menandainya selesai. Tidak ada integrasi pencairan otomatis.
Ada lima TODO lain di jalur yang berkaitan dengan uang — pemberitahuan pengembalian dana untuk vendor dan pembeli, serta pemberitahuan sengketa.
Test
Sepuluh berkas test yang ada seluruhnya bawaan Laravel Breeze: autentikasi, verifikasi email, reset kata sandi, profil. Tidak ada satu pun test untuk produk, keranjang, pesanan, pembayaran, vendor, escrow, pencairan, atau chat — padahal itulah inti aplikasinya.
Stack
PHP 8.2, Laravel 12, Inertia 2 dengan React 18, Sanctum, dan SDK Midtrans. CI di GitHub Actions menjalankan Pint, PHPStan, dan php artisan test terhadap MySQL 8 dan Redis.
Angka yang terukur
| Commit | 25 |
| Rentang | 8 Jan 2026 – 13 Feb 2026 |
| Baris kode | 16.331 di 145 berkas PHP |
| Controller | 42 |
| Migrasi | 39 |
| Test yang menutup fitur inti | 0 |