POSMaster Help v1.2.0
Getting started

Requirements

Check this page before you install. Most shared hosting plans already meet every requirement.

Server requirements

Item You need
PHP 8.2 or newer (8.3 is recommended)
Database MySQL 5.7 or newer, or MariaDB 10.4 or newer, with utf8mb4
Web server Apache with mod_rewrite, or Nginx. The document root must be the public folder.
Disk space About 100 MB for the app, plus room for your product pictures and backups

Required PHP extensions

pdo_mysql, mbstring, openssl, gd, intl, zip, fileinfo, bcmath, ctype and json.

On cPanel you can switch these on in Select PHP Version → Extensions. On a VPS, install them with your package manager. For example, on Ubuntu:

sudo apt install php8.3-fpm php8.3-mysql php8.3-mbstring php8.3-gd php8.3-intl php8.3-zip php8.3-bcmath php8.3-xml

Note: You do not need Node.js or Composer if you use the download package. It already contains the vendor folder and the ready-built public/build assets. You only need Composer 2 and Node.js 18 or newer if you get the source code without vendor/, or if you want to change the CSS or JavaScript.

Browser support

Use an up-to-date version of Chrome, Edge, Firefox or Safari. Chrome or Edge is best for the POS screen and for printing receipts. Phones and tablets work too, and the layout adapts to the screen.

HTTPS

Run your shop on an address that starts with https://. Browsers only allow these features on HTTPS (or on localhost, the computer the app is installed on):

  • Camera scanning with a phone, tablet or laptop camera.
  • Offline mode: the POS page is kept in the browser so it opens without a connection, and the app can be installed. See Offline mode.

Most hosting plans include a free certificate. See Install on web hosting.

Hardware

Device Notes
Barcode scanner Any USB or Bluetooth scanner that works like a keyboard. Set it to add an Enter (CR) suffix after each code. No driver is needed.
Camera scanning Phones and tablets can scan with the camera. The browser only allows the camera on HTTPS or on localhost. See HTTPS.
Receipt printer Thermal printers for 58 mm or 80 mm rolls, or any normal A4 printer. POSMaster prints through the browser's print window.
Label printer Print barcode and QR labels on A4 sticker sheets or a label roll.
Cash drawer POSMaster does not control it. If your printer opens the drawer, that is done by the printer driver.
Customer display Optional. A second monitor on the same computer as the POS. See Customer display.
Kitchen printer Optional. Any receipt printer for 58 mm or 80 mm prep tickets. See Kitchen and prep tickets.

Tip: Pick the receipt paper size in Settings → Sales & receipts and set the same size in your printer's driver. See Troubleshooting if receipts print at the wrong size.

What is in the download package

The download is one ZIP file. Unzip it and you will see:

File or folder What it is
README.md A short introduction to the project
HowToSetup.md The setup guide in plain text (the same steps as this help site)
CLAUDE.md Notes for developers and AI assistants that work on the code
CHANGELOG.md What changed in each version
LICENSE-NOTE.md Licence information and third-party credits
laravel-project/ The application itself. Upload or copy this folder to your server. It includes vendor/ and public/build.
database/schema.sql A clean database for a new shop, with one admin account. See Install by importing SQL.
database/seed.sql A database with the full demo shop and demo accounts
docs/ This help site as static HTML. Open docs/index.html in a browser.
docker-compose.yml and docker/ Everything needed to run POSMaster with Docker. See Install with Docker.

Note: The database folder at the top of the package holds the two SQL files. It is a different folder from laravel-project/database, which holds the migrations the app uses.

POSMaster 1.2.0 · Help for shop owners, managers and cashiers