OFFLINE-FIRST POS
SAAS BISA PUTUS. OPERASIMU JANGAN IKUT MATI.
Internet drop saat jam sibuk? KasirKu commit transaksi lewat repository guard ke IndexedDB lokal. Sync cloud opsional, bukan syarat hidup.
Spatial PWA
Install sekali, pakai offline, data di perangkatmu. Multi-outlet, ledger audit, tanpa langganan cloud wajib.
Pilar arsitektur
Offline-first
Read/write IndexedDB via repository. Sync bonus, bukan gate transaksi.
Ledger immutable
SHA-256 chain append-only. Rekayasa log terdeteksi di audit trail.
AES-GCM
Field sensitif dienkripsi lokal. Kunci tidak keluar perangkat.
Multi-outlet
requireOutletId() di setiap write path repository.
Web Workers
Agregasi laporan berat di worker, UI kasir tidak freeze.
Kenapa kami buat ini
Dari catatan manual ke kasir yang tetap jalan offline
KasirKu dibuat tim kecil di Praim Enterprise — early access, belum ribuan pengguna, tapi alur kasir sudah dipakai di toko uji.
Belum ada testimoni massal. Badge menandai ilustrasi vs terukur.
Data berdasarkan arsitektur umum SaaS POS — tanpa internet wajib.
KasirKu vs SaaS POS
| Aspek | KasirKu | SaaS tipikal |
|---|---|---|
| Kepemilikan data lokal | IndexedDB Dexie di perangkat kamu | Tenant server vendor |
| Wajib internet untuk transaksi | Tidak, commit lokal | Sering wajib online |
| Biaya bulanan wajib | One-time / lifetime opsi | Langganan bulanan umum |
| Audit ledger kriptografis | SHA-256 append-only chain | Log vendor, bervariasi |
20+ pilar fitur
Termasuk modul enterprise v3 (opt-in via feature flag).
Transfer stok antar-outlet
Mutasi tersalur dengan outlet guard + jejak stok per gudang.
Bundle / kombo
UI bundle engine core, harga kombo dihitung di kasir lokal.
Reservasi & slot
Booking jasa offline-first, slot tidak menunggu API cloud.
Gift card & stored value
Ledger internal + redeem di kasir tanpa server wajib.
Multi-tier pricing
Harga berlapis per pelanggan/outlet, apply di checkout lokal.
Quotation → PO
Estimasi PDF lokal, konversi ke PO supplier di IndexedDB.
KPI kasir
Agregasi shift & transaksi read-only dari repository guard.
Customer display
Second screen via BroadcastChannel, tanpa backend relay.
Auto-PO forecast
Saran order dari prediksi stok lokal di analytics worker.
Audit exception workflow
Pengecualian bukti ledger + tindak lanjut integritas SHA-256.
Offline-first PWA
Dexie v16 IndexedDB, zero server wajib di runtime.
Immutable ledger SHA-256
Rantai hash append-only untuk jejak finansial audit.
Multi-outlet RBAC
Guard outlet konsisten di seluruh repository write path.
Industri preset
isService + trackStock flag per preset industri UMKM.
Web Workers analytics
Agregasi berat di analytics-worker, main thread bebas.
Smart import/export
CSV/Excel dengan Zod validate sebelum IndexedDB write.
Promo & pajak
Aturan komersial real-world, kalkulasi di checkout lokal.
HR & shift
Jam kerja, komisi kasir, tutup shift dengan ledger trail.
Kiosk mode
Self-checkout route terpisah, transaksi tetap lokal.
Enkripsi lokal (AES-GCM)
Field sensitif dienkripsi AES-GCM, kunci vault lokal.
8 industri
Kuliner
Meja + KDS dapur, hold order rush hour. Semua record lewat Dexie lokal.
Retail
Scan SKU, promo tier, mutasi stok antar-outlet tanpa sync cloud wajib.
Fashion
Varian ukuran/warna per SKU, stok per outlet, diskon tier pelanggan.
Jasa
Reservasi slot + layanan non-stok, invoice tanpa menunggu server.
Bengkel
Suku cadang per WO, partai kecil, stok bengkel multi-gudang.
Bangunan
Material berat, PO supplier, tier harga kontraktor vs retail.
Pertanian
Margin tipis: kontrol biaya, opname stok, laporan margin per kg.
Umum
Preset industri siap pakai: jasa vs barang, track stok on/off.
Cara kerja (3 langkah)
Install PWA dari build rilis
Setup outlet + gudang + kasir
Mulai jualan — online optional
Alur POS di perangkatmu
Setiap langkah jalan lokal — tanpa menunggu cloud.
-
PELANGGAN TIBA
Scan barcode atau tap dari katalog — data dari IndexedDB lokal.
-
PEMBAYARAN DITERIMA
Qty, diskon, pajak dihitung instan di perangkat.
-
DIPROSES DI KASIRKU
Tunai, digital, atau QRIS — transaksi tidak menunggu server.
-
STRUK DICETAK
Struk thermal atau digital, langsung dari browser.
-
LUNAS — TERSIMPAN
Rantai SHA-256 append-only untuk jejak finansial.
Diuji di toko pilot, bukan kutipan fiktif
Early access — bukti lapangan
Dipakai sejak November 2024
Belum ada testimoni massal. Sinyal di bawah dari telemetry nyata dan pilot internal — tanpa kutipan buatan.
Toko uji
Alur kasir dogfooded di toko pilot Praim Enterprise.
Offline-first
Transaksi IndexedDB lokal — tanpa server wajib.
Skala sesuai pertumbuhan bisnis
Lifetime Pro (one-time) — bukan langganan SaaS. Bayar sekali, pakai selamanya.
Lifetime Pro (one-time) — bukan langganan SaaS. Bayar sekali, pakai selamanya.
Batas tier bersifat advisory — transaksi tidak pernah diblokir di runtime.
FAQ brutalist
Bukan. Fokus kepemilikan lokal & offline-first; cloud opsional bukan syarat.
Setelah menyelesaikan konfigurasi toko, pilih operator **"ADMIN"** dan masukkan PIN default **"123456"**. Demi keamanan, sistem akan langsung mengarahkan Anda ke halaman **"GANTI PIN DEFAULT"** untuk membuat PIN baru yang lebih personal. Setelah disimpan, masuk kembali dengan memilih operator **"ADMIN"** dan masukkan PIN baru tersebut sebelum mengklik **"BUKA TERMINAL"**. Seluruh data PIN dan transaksi Anda disimpan secara lokal terenkripsi di IndexedDB perangkat Anda dan tidak dikirim ke server cloud mana pun.
Di perangkatmu (IndexedDB). Kamu yang pegang berkas backup/export.
Ya—dengan filter outlet aktif konsisten di seluruh repository.
Ya—immutable ledger SHA-256 untuk jejak finansial penting.
Migrasi additive; v21 tetap utuh, v23 menambah tabel baru + feature flag OFF default.
Ya—itulah inti desain; sync adalah tambahan.
Ya—route terpisah memantau keranjang via BroadcastChannel.
Target tinggi—kurangi JS, astro static, gambar optimasi.
Manifesto anti-SaaS
Tanpa berlangganan memaksa
Lifetime one-time. Tidak ada fitur mati karena kartu kredit gagal renew bulan ini.
Tanpa cloud wajib untuk jualan
Transaksi commit lokal saat WiFi putus. Sync antar-outlet bonus, bukan syarat checkout.
Bukan penyewaan data
IndexedDB di perangkat kamu. Export backup JSON/CSV kapan saja tanpa izin vendor.
Kepemilikan penuh
PWA yang kamu install. Tidak ada tenant ID di dashboard orang lain.
Coba alur belanja tanpa cloud: tambah produk, cetak struk, semua di perangkatmu.
Simulator kasir (sandbox)
Penyimpanan
Sandbox lokal
Service Worker
Aktif
Koneksi
Offline
Latensi DB
4ms
Transaksi sandbox tidak keluar dari perangkat — bukti offline-first.
Belum ada item — tap produk di kiri