FAQ
Short answers to the questions most often asked about installing and running an HWD POS server.
Accounts and access
On the server, open the panel and choose option 7 (Reset password), then pick the user and type the new password:
sudo hwdpanelYou can also use the admin tool directly:
php /var/www/HWDPOS/scripts/hwd-admin.php list-users
php /var/www/HWDPOS/scripts/hwd-admin.php reset-password <user>The second command asks for the new password interactively. See hwdpanel.
The installer generates it and saves it in a file readable only by root:
sudo cat /var/www/HWDPOS/deploy/DB-CREDENTIALS.txtOn a database-only server there is no application folder, so it is in /root/HWDPOS-DB-CREDENTIALS.txt. You can also view it with sudo hwdpanel → option 8 (DB credentials).
Installation
If you can still choose, use Ubuntu Server 24.04 LTS: it is the system HWD POS is mainly configured and tested on. Ubuntu 22.04, Debian 12, AlmaLinux 9/8, Rocky Linux, RHEL and CentOS Stream are also supported and end up equally functional. See Requirements.
No. Windows Server is not supported: the system relies on systemd services, Linux printing paths and pcntl. Any Linux with PHP older than 8.1 is not supported either.
Yes. It does not delete data: it puts permissions, web server configuration, services and firewall back in place. It also keeps the database password that already works and applies it to the database user, so the credentials file and the database always match. It is the quickest way to fix a server someone has changed.
The simplest way is to rerun the installer with WEB_PORT:
curl -fsSL https://3r.com.pa/hwdpos_inst/bootstrap.sh | sudo WEB_PORT=8080 bashIt updates the virtual host, the web server's Listen, the firewall and the addresses in the summary together. Ports 22, 3306 and 8108 are rejected because the system already uses them. Terminals and tablets must then use the address with the port, for example http://192.168.1.50:8080/. See Web server configuration.
It needs outbound access: to activate the license, to check for updates and to send email. It does not need to be reachable from the internet; everything works on the local network.
No. Publishing the server on the internet is only needed if you want to use it from outside the store; in that case, add HTTPS yourself (for example with Let's Encrypt). The installers do not configure it.
Updates and reinstalling
From inside the system: System → Updates. It checks for a new version, downloads it, backs up the database and the files, and applies it. Updates only touch the system code, not plugins, configuration or uploads.
Make a database backup first from System → Database backups. If an update changes the background services, restart them once with sudo hwdpanel → option 17. See Upgrade and reinstall.
This deletes all of the store's data. Only do it on a test server or when you really want to start over, and make a backup first.
sudo rm -f /var/www/HWDPOS/storage/installed.lock
sudo mysql -e "DROP DATABASE hwd_pos;"Then open http://SERVER-IP/install again to run the setup wizard.
Optional features
No. Typesense is an optional, typo-tolerant search engine. Without it (or if it is down), every search uses the usual SQL search, so you never lose search. See Typesense search.
Only for printing A4 documents and for network printers over IPP/AirPrint. Thermal printers (ESC/POS, 80 mm and 58 mm) work without them. Use WITH_PRINTING=no on a server that does not print. See Printing.