Kolaborasi — Sewa Jersey
Kolaborasi adalah platform e-commerce untuk menyewa jersey olahraga secara online, hidup di sewajersey.id. Dibangun dengan satu codebase Flutter yang berjalan di Web, Android, dan iOS, dengan backend Firebase + Cloud Functions dan pembayaran online via Xendit. Sistemnya menangani ketersediaan stok berbasis periode sewa, kalkulasi ongkir otomatis dari peta, diskon berjenjang, voucher, hingga pelacakan status pesanan 10 tahap.
Kunjungi Website- Platform
- Web · Android · iOS
- Tahun
- 2026
- Industri
- Olahraga / Rental
- Peran
- Full-cycle: arsitektur, frontend Flutter, backend Firebase & Cloud Functions
Fitur utama
Katalog & ketersediaan real-time
Pilih tanggal sewa, lalu sistem menyembunyikan produk yang stoknya sudah penuh di periode itu — dihitung dari overlap tanggal pesanan aktif.
Sewa per hari + minimum order
Penyewaan berbasis durasi hari dengan minimum 6 item, pemilihan ukuran (S–4XL), dan stok per varian.
Ongkir otomatis berbasis peta
Pilih alamat lewat Google Maps atau GPS; jarak dihitung otomatis (Haversine) dan ongkir = jarak × tarif per km.
Antar-jemput & jadwal
Opsi ambil sendiri atau antar-jemput, dengan pengecekan tanggal yang diblokir admin secara otomatis.
Diskon berjenjang & voucher
Diskon otomatis berdasarkan lama sewa, plus sistem voucher potongan harga atau gratis ongkir dengan validasi.
Pembayaran Xendit
Pembayaran online via Virtual Account, e-wallet, QRIS, dan kartu kredit — invoice dibuat lewat Cloud Functions.
Pelacakan 10 tahap
Status pesanan dari PENDING hingga COMPLETED, dengan halaman tunggu pembayaran ber-countdown dan polling status.
Panel admin lengkap
Manajemen produk & varian, voucher, diskon tier, jadwal antar, banner, dan pengaturan toko secara real-time.
Sorotan teknis
Bagian canggih di balik layar yang membuat sistem ini bekerja mulus.
- Cek ketersediaan stok per varian via overlap rentang tanggal, dengan token anti race-condition saat filter dipanggil berulang.
- Kalkulasi ongkir dinamis: geocoding alamat → jarak Haversine dari koordinat toko → tarif per km dengan ongkir minimum.
- Cloud Functions: createXenditInvoice, xenditCallback, dan releaseExpiredOrders untuk auto-release stok pesanan kedaluwarsa.
- Stock lock per periode (lockStart/lockEnd) mencegah double-booking jersey yang sama di tanggal yang tumpang tindih.
- Order PENDING otomatis dihapus jika pembuatan invoice gagal — mencegah ghost order menahan stok.
- Responsive satu codebase: layout dua kolom di desktop, bottom-bar checkout di mobile, dengan caching stok & harga.
Tampilan aplikasi
Klik gambar untuk memperbesar — geser kiri/kanan untuk berpindah.
Tech stack
Siap mulai project kamu?
Konsultasi awal gratis. Cerita kebutuhanmu, kita bantu cari solusi yang paling masuk akal untuk bisnis kamu.