Galang Susanto
All apps
Kasira icon

Kasira

G-Labs · React NativePersonal project

Kasira is a point of sale I designed, built and publish myself. It is made for small Indonesian and Malaysian businesses that lose signal or data quota during the day: every transaction is stored on the device, so the till keeps working without internet and no sales data ever leaves the shop. Cafés get tables, split bills and variants; shops get barcode scanning and an automatic stock ledger; everyone gets thermal receipt printing, shift reconciliation and daily reports. A 14-day trial is followed by a one-time purchase or a subscription through Google Play.

Screenshots

  • Kasira screenshot 1
  • Kasira screenshot 2
  • Kasira screenshot 3
  • Kasira screenshot 4
  • Kasira screenshot 5
  • Kasira screenshot 6

What I built

  • Offline-first data layer on WatermelonDB and SQLite, with money handled as integer rupiah and stock as an append-only ledger.
  • Café mode: tables, dine-in or takeaway, split and merge bills, variants and toppings.
  • Retail mode: barcode scanning via camera or Bluetooth scanner, product catalogue with photos, stock opname and low-stock alerts.
  • Cash with change calculation, static QRIS, discounts, tax and service charge, and ESC/POS printing to 58mm and 80mm Bluetooth thermal printers.
  • Shifts with opening float, cash in and out, and end-of-shift reconciliation; daily sales reports, best sellers, void and refund with reasons.
  • Owner and staff accounts with PIN lock (PBKDF2 hashed) and permission limits; one-file backup and restore.
  • Indonesian, Malay and English; Rupiah, Ringgit and custom currencies; light and dark themes.
  • Pure domain layer covered by 90+ unit tests, release pipeline on EAS Build.