Skip to main content
Featured Project

Tumbas Point of Sale

A Point of Sale system built to help small retail businesses manage inventory and transactions efficiently, reducing manual bookkeeping errors.

Lead Full-Stack Developer & Cloud Engineer
6 months
3 developers
Tumbas Point of Sale - Landscape View
Tumbas Point of Sale - Portrait View
Laravel MySQL Bootstrap JQuery AdminLTE

Architecture Diagram

graph LR A[Cashier Browser] --> B[Laravel Backend] B --> C[(MySQL Database)] B --> D[Redis Cache] B --> E[Reports Dashboard]

A comprehensive POS system built to solve real inventory and financial management challenges for small retail businesses.

Problem

Toko kelontong kesulitan memanage inventory, supplier, dan customer secara manual. Pencatatan laba-rugi, hutang, dan piutang sering tidak akurat yang menyebabkan kerugian finansial.

Solution

Membangun web-based POS dengan real-time inventory tracking, automated financial reporting, dan role-based access control untuk memastikan akurasi data dan kemudahan operasional.

Architecture Decisions

  • Chose Laravel + MySQL for rapid development and team familiarity — reducing learning curve while maintaining reliability
  • Implemented queue-based stock updates to handle concurrent transactions without race conditions
  • Used Redis caching for frequently accessed product data to speed up checkout process
  • Server-rendered pages instead of SPA for simpler deployment and better reliability on slow connections

Trade-offs

  • Prioritized reliability over cutting-edge tech stack — the business needed stability, not innovation
  • Accepted longer initial dashboard load for complete data accuracy
  • Chose synchronous stock validation over optimistic updates to prevent overselling

Lessons Learned

  • Error handling upfront saves hours of debugging in production
  • Database indexing is crucial — inventory queries went from 3s to 200ms
  • Always test with realistic data volumes, not just sample data

Features

  • Product and stock management
  • Daily sales with barcode scanning
  • Multi-user access with roles
  • Sales and debt reports
  • Customer and supplier tracking
  • Return & discount handling
  • Multi-outlet and offline support
  • Real-time sales dashboard

Challenges Overcome

  • Real-time stock updates during transactions
  • Optimizing performance for large data
  • Designing fast and intuitive cashier UI
  • Secure role-based access control
  • Integrating POS hardware (scanner, printer)