POSMaster - Point of sales system - POS | Vibe96

Finance & Accounting

POSMaster - Point of sales system - POS

Source code included

Laravel point-of-sale with offline mode, multi-branch inventory, loyalty, coupons and 14 chart reports

Built by Dynamicsoft Updated 27 Oct 2026 44,363 lines of code

Open live demo Built withClaude Code

About this software

About POSMaster - Point of sales system - POS

POSMaster is a Laravel 12 point-of-sale and inventory system for shops and multi-branch stores. It handles barcode/QR scanning (USB, Bluetooth or camera), offline sales that sync when the connection returns, product variants, multi-unit selling (piece/box/kg), stock transfers between branches, purchases with partial payments and returns to suppliers. Selling tools include coupons, gift cards, loyalty points, multi-item promotions, quotations, returns and voids. Fourteen reports (sales, profit & loss, product sales, stock valuation, low stock, customers, suppliers, expenses, payment methods, cashiers, tax, branch comparison, marketing) each have date and branch filters, CSV export and print. A customer display shows cart and total on a second screen; kitchen tickets print without prices for prep staff.

Category: Finance & AccountingStack: Laravel 12 · MySQL 5.7 / MariaDB 10.4Built with: Claude Code Licence: Single-site, full source

Why POSMaster - Point of sales system - POS

What makes it better
than the alternatives

  1. 01

    Offline POS

  2. 02

    Multi-unit selling

  3. 03

    Kitchen/prep tickets

  4. 04

    Returns to suppliers

  5. 05

    Demo mode

Point of Sale

  • Barcode/QR scanning (USB
  • Bluetooth scanner or device camera via html5-qrcode)
  • Autocomplete product search
  • hold and resume sales
  • split payments (cash
  • card
  • bank transfer
  • cheque
  • other)
  • Keyboard shortcuts (F2 search
  • F4 customer
  • F8 hold
  • F9 pay)
  • Line discounts
  • order discount
  • coupon code
  • gift card redemption
  • loyalty points redemption
  • Receipt printing (58 mm
  • 80 mm or A4 PDF)
  • optional email after every sale
  • Customer display (second screen shows cart
  • total
  • change
  • thank-you QR
  • promo pictures)
  • Preparation tickets (kitchen/bar
  • no prices
  • notes per line
  • turned on per category)
  • Offline mode (installable PWA
  • syncs sales when connection returns
  • review page for differences)

Products & Inventory

  • Single products or variants (size
  • colour
  • etc.); each variant has SKU
  • barcode
  • cost
  • sale price
  • stock per branch
  • Multi-unit selling (piece
  • box of 12
  • kg/g); POS and purchase screens let user pick the unit; stock movements record base unit
  • Automatic EAN-13 barcode generation
  • QR codes
  • CSV import/export
  • Barcode/QR label printing (A4 sheets or label roll
  • configurable layout)
  • Categories (with parent/child hierarchy
  • optional image
  • prep ticket flag)
  • brands
  • tax rates
  • Stock per branch
  • stock transfers
  • stock adjustments (add/subtract with reason)
  • full movement ledger
  • Low-stock alerts (product.alert_qty compared to branch_stocks.qty)

Purchasing & Suppliers

  • Purchases from suppliers (line editor
  • partial payments
  • status: pending/ordered/received/cancelled
  • Returns to suppliers (lower what you owe or record a refund
  • adjusts stock
  • writes movement ledger)
  • Supplier master (name
  • company
  • phone
  • email
  • address
  • tax number)
  • Purchase PDF and email (Arabic shapes and reads right-to-left)

Sales & Customers

  • Sales list (invoice_no
  • customer
  • branch
  • total
  • paid
  • due
  • status: completed/pending/void
  • Quotations (convert to sale
  • PDF and email)
  • Returns (full or partial
  • refund or store credit
  • adjusts stock)
  • Voids (mark sale as void
  • restore stock
  • record in activity log)
  • Customer master (name
  • phone
  • email
  • tax number
  • address
  • loyalty points
  • gift cards)
  • Customer detail page (sales history
  • loyalty transactions
  • gift cards)

Marketing & Loyalty

  • Coupons (percentage or fixed
  • min order
  • max discount
  • usage limit
  • per-customer limit
  • date range)
  • Gift cards (code
  • balance
  • expiry
  • used_count
  • customer)
  • Loyalty points (earn X points per currency unit spent
  • redeem Y points for Z discount; configurable in Settings)
  • Multi-item promotions (e.g. 'buy 3 drinks
  • save 10%'; applies automatically at checkout)

Reports & Analytics

  • 14 reports: Sales
  • Profit & Loss
  • Product Sales
  • Stock Valuation
  • Low Stock
  • Customers
  • Suppliers
  • Expenses
  • Payment Methods
  • Cashiers
  • Tax
  • Branch Comparison
  • Marketing (coupons/gift cards/points)
  • Each report has date and branch filters
  • CSV export
  • print
  • Charts (Chart.js): daily sales
  • top products
  • payment methods
  • branch comparison
  • Dashboard today/yesterday/month KPIs
  • 30-day chart
  • recent sales
  • low stock items)

Multi-Branch & Warehouses

  • Branches (name
  • code
  • phone
  • email
  • address
  • is_warehouse flag
  • is_active)
  • Stock per branch (branch_stocks table: branch_id
  • product_variant_id
  • qty)
  • Stock transfers (from_branch_id
  • to_branch_id
  • status: pending/in_transit/received/cancelled
  • Branch switcher in topbar (session('active_branch_id')
  • middleware ActiveBranch)
  • Warehouse branches (stock only
  • no POS sales; is_warehouse = true)

Users & Permissions

  • Users (name
  • email
  • password
  • branch_id
  • is_active
  • must_change_password
  • last_login_at)
  • Roles (spatie/laravel-permission: name
  • permissions array)
  • Permission matrix (module.action: products.view|create|edit|delete
  • sales.view|create|edit|delete
  • etc.)
  • Activity log (spatie/laravel-activitylog: log_name
  • description
  • causer
  • subject
  • properties
  • created_at)

Settings & System

  • Business info (name
  • phone
  • email
  • address
  • tax number
  • logo upload)
  • Currency format (symbol
  • position
  • decimal separator
  • thousands separator)
  • Tax settings (default tax rate
  • tax inclusive/exclusive)
  • Document prefixes (invoice
  • quotation
  • purchase
  • adjustment
  • transfer)
  • Receipt layout (header text
  • footer text
  • show logo
  • show tax number)
  • POS & scanner (barcode mode: scan-to-add or scan-to-search
  • prep ticket enabled)
  • Loyalty rules (points per currency unit
  • redemption rate)
  • Email (SMTP host
  • port
  • username
  • password
  • from address
  • from name; test button)
  • Backups (manual create with optional password
  • upload
  • restore
  • automatic nightly with retention)
  • Demo mode (lock deletes/edits
  • nightly reset command
  • POS_DEMO_LOCK env flag)
  • Languages (English
  • French
  • Arabic included; Super Admin can upload JSON for more)

Installation & Deployment

  • Web installer (requirements check
  • folder permissions
  • database setup
  • admin account
  • shop details)
  • Docker Compose (app
  • MariaDB
  • phpMyAdmin; entrypoint.sh runs migrations and seed)
  • SQL install files database/sql/schema.sql and seed.sql; built by pos:sql command)
  • CLI install (php artisan pos:install --email=… --password=… --name=…)
  • Demo data (php artisan migrate:fresh --seed or pos:demo-reset; 100+ products
  • sales
  • customers)
  • Help site resources/docs/*.md → docs/*.html; built by pos:docs command)

Quality report

Manually reviewed

80/ 100

Automated audit score

✓ Passed the audit

Passed the audit and a manual review.
Audit run: 22 Oct 2026
Reviewed by Vibe96 staff, Dubai.

Security77
Code structure82
Docs & completeness100
Dependency health82
Build & deploy92
Reviewer notes (4 minor)

Dependencies mostly current; a few outdated packages but no known critical vulnerabilities; strong auth guards on all routes; minor ownership gaps on read endpoints; weak default passwords in docker example and committed .env with app_key; moderate code duplication and some oversized files; structure generally sound but refactoring needed; multiple unscoped deletes, missing indexes on foreign keys, and raw sql concatenation risks. None of these stop the software from working; the developer has been told and improvements come in a future update.

Versions & updates

1.0.0
First release27 Oct 2026✓ Reviewed & audited

No updates yet. New versions appear here with a changelog.
Buyers receive updates free for 1 year.

Quality report

What you get

  • </>Full source codeThe complete audited source, delivered as a download from your account. No obfuscation.
  • ▤DocumentationSetup guide, architecture notes, CLAUDE.md and AGENTS.md.
  • ↻One year of updatesEvery new version the builder publishes, free for 12 months.
  • ♧30 days of supportInstallation and defect support through Vibe96 tickets.
$49Single-site licence Details