All projects/projects/kasira
Full Stack

Kasira

Multi-outlet point-of-sale system for F&B and retail where one sale moves stock, cash, and the profit report at once — a Next.js back office on an ElysiaJS API, with QRIS self-ordering from the table.

Source stays with the client

Built with

  • Next.js
  • ElysiaJS
  • Bun
  • TypeScript
  • PostgreSQL
  • Drizzle ORM
  • Redis
  • BullMQ
  • TanStack Query
  • Tailwind CSS
Kasira interface

What it is

Kasira is a point-of-sale platform built on the rule that a sale is never only a receipt. Each transaction moves inventory, posts to a cash account, and reaches the profit report without being entered twice, and every stock and cash movement keeps an audit trail back to the document that caused it. The backend is a modular monolith on Bun and ElysiaJS over PostgreSQL with Drizzle ORM, with Redis and BullMQ running queued and scheduled jobs. It serves three surfaces side by side: an admin API for the back office, a cashier API with offline sales sync for the till, and a rate-limited public API for guests who scan a table QR code. The back office is a Next.js App Router app with TanStack Query that talks to the API through its own proxy, so the access token stays in an httpOnly cookie and never reaches the browser. Cashier shifts close against a physical cash count into a frozen recap. Guests order from the table and pay by QRIS or at the cashier, with idempotent gateway callbacks. Inventory covers per-outlet stock at weighted-average cost, transfers, and opname, plus FIFO batch tracking with expiry for raw ingredients; purchasing runs from PO through receiving and returns to supplier payment.

What it does

  • POS terminal with open bills, held carts, voids, returns, and thermal receipts
  • Cashier shifts closed against a physical cash count into a frozen recap
  • Cashier API with offline sales sync when the network drops
  • QR self-ordering with QRIS or pay-at-cashier, waiter calls, and paid workspace tables
  • Per-outlet inventory at weighted-average cost, plus FIFO ingredient batches with expiry
  • Purchasing from PO through receiving and returns to supplier payment
  • Single-writer cash ledger, expenses, bank accounts, and gateway payouts
  • Outlet-scoped RBAC, audit log, and reports with CSV/XLSX export

Open for commissions

Need something built like Kasira?

Send the scope and I'll come back with a timeline, a price, and what I need from you to start.

See rates