App Ojol Lokal — Food Delivery 4 Role
Platform pesan-antar makanan ala GoFood/GrabFood yang menggabungkan empat peran — Pelanggan, Driver, Merchant, dan Admin — dalam satu codebase Flutter (Android & iOS). Backend Firebase dengan 17 Cloud Functions production menangani alur order end-to-end: dari browse merchant, checkout dengan map picker, auto-broadcast ke driver terdekat, tracking real-time, sampai payout otomatis ke merchant & driver. Dilengkapi defenses skala komersial — transaction atomic, security rules berlapis, dan dispute resolution.
Kunjungi Website- Platform
- Android · iOS
- Tahun
- 2026
- Industri
- Food Delivery / On-Demand
- Peran
- Full-cycle: arsitektur, app Flutter 4 role, backend Firebase & Cloud Functions
Tampilan aplikasi
Klik gambar untuk memperbesar — geser kiri/kanan untuk berpindah.
Fitur utama
4 role dalam 1 APK
Pelanggan, Driver, Merchant, dan Admin berbagi satu aplikasi dengan routing type-safe + role guard (GoRouter).
Checkout dengan map picker
Auto-detect lokasi GPS atau pin manual di Google Maps, address book tersimpan, dan catatan untuk driver.
Tracking driver real-time
Marker live driver di peta sejak accept (ke toko) hingga sampai ke pelanggan, lengkap dengan ETA estimasi tiba.
Auto-broadcast ke driver terdekat
Order siap diambil otomatis disebar ke 8 driver terdekat via FCM; re-broadcast radius 15 km bila >2 menit belum diambil.
Background location driver
Foreground service Android + iOS background mode menjaga posisi driver tetap terlacak walau app di-background.
Pembayaran fleksibel
Saldo dompet, transfer, QRIS, dan e-wallet via Midtrans/Xendit — tinggal switch gateway lewat .env.
Payout & komisi otomatis
(Subtotal − komisi) masuk saldo merchant dan ongkir masuk saldo driver saat delivered — idempotent, anti double-credit.
Panel admin lengkap
Approve merchant & driver, set komisi/ongkir, kelola voucher & banner, approve withdraw, dispute resolution, dan laporan keuangan.
Sorotan teknis
Bagian canggih di balik layar yang membuat sistem ini bekerja mulus.
- Race-protected accept: Firestore transaction mencegah dua driver merebut order yang sama, dengan validasi status suspend real-time.
- Tarif ongkir distance-based: jarak Haversine merchant → pelanggan dengan base fee, per-km, dan min/max yang konfigurable admin.
- Webhook Midtrans/Xendit idempotent + amount validation, dengan fallback polling bila webhook miss.
- Order timeout sweeper: scheduled Cloud Function tiap 5 menit auto-cancel order nyangkut + refund saldo & quota voucher otomatis.
- Security rules field-level: user tidak bisa mengubah balance/role sendiri, driver tidak bisa unsuspend dirinya.
- 17 Cloud Functions production (broadcast, payment, payout, dispute, sweeper) dengan dokumentasi handover untuk operator non-teknis.
Tech stack
Butuh aplikasi serupa?
Halaman berikut menjelaskan fitur yang biasanya dibutuhkan, tahapan pengerjaan, dan kisaran biayanya.
Mau aplikasi seperti ini untuk bisnismu?
Kami sudah pernah membangun sistem seperti App Ojol Lokal dari nol sampai dipakai. Ceritakan kebutuhanmu — konsultasi awal gratis, tanpa komitmen.

