Open-Source Bar Automation & POS System
A modern, self-hosted point-of-sale system designed for events, parties, and hospitality — with NFC payment support, smartphone ordering, and real-time sales tracking.
Running a bar at an event shouldn't mean juggling cash, miscounting change, or losing track of sales. CatLab Drinks gives you a complete digital bar management system that you can deploy on your own server in minutes.
No more miscounted change or incorrect totals. Every order is tracked digitally with accurate pricing.
See exactly what's selling, how much revenue you're generating, and where your orders are coming from — all in real-time.
Let your attendees order drinks from their own phone. Orders go straight to the bar — no waiting in line.
Issue prepaid NFC cards for cashless payments. Top up, pay, and track balances — no cash needed.
Bad WiFi at the venue? No problem. The POS system continues to work offline and syncs when reconnected.
Your data stays on your server. Deploy your own instance, customise it to your needs, and keep full control.


CatLab Drinks is designed to be self-hosted. You deploy it on your own server, keeping full control over your data and configuration. Getting started is straightforward:
A Docker Compose configuration is included for quick deployment. Check the repository for detailed setup instructions.
CatLab Drinks implements a closed-loop NFC payment system using NTAG213 chips. Here's how it works technically:
Each NTAG213 NFC chip stores a unique card ID, balance, transaction counter, and a cryptographic signature. Data is written directly to the card's NDEF-compatible memory sectors.
Card data is protected using AES encryption with an organisation-level secret key. Each transaction updates the balance and a rolling counter, which is signed to prevent tampering or replay attacks. Cards from one organisation cannot be used at another.
You need NTAG213 NFC tags for each attendee. For reading cards, you can use the CatLab Drinks Android app on any device with a built-in NFC reader. Alternatively, you can use an ACR122U (or compatible) USB NFC card reader with a lightweight companion service that communicates with the POS browser over a socket.io connection.
Because the balance is stored on the card itself, transactions can be processed even when the internet connection is intermittent. Transactions are synced to the server when connectivity is restored.
For USB NFC readers, the companion service runs on a Raspberry Pi or any machine with USB access. See the NFC socket.io service repository for setup instructions.
CatLab Drinks is free software released under the GNU General Public License v3. You are free to use, modify, and distribute it.