Printer and setup
Guide for using Cursor POS with the GOOJPRT PT-210 and other 58 mm Bluetooth thermal printers.
Recommended printer
GOOJPRT PT-210 (portable, Bluetooth, 58 mm paper)
Wireless 58 mm thermal printer. Approx. size: 88 x 110 x 41 mm. Works with ESC/POS tickets from the browser.
Other compatible printers
Also works with other 58 mm Bluetooth thermal printers with ESC/POS support, such as MTP-2, similar GOOJPRT models, and many portable receipt printers. Use 58 mm paper and Serial connection (virtual COM port) in Chrome or Edge.
How to connect
- 1Turn on the printer and load 58 mm thermal paper.
- 2Pair it via Bluetooth in Windows (Settings > Bluetooth).
- 3Open this app in Chrome or Edge over HTTPS (or localhost).
- 4Click Connect Serial and pick the printer port (e.g. PT-210, paired MTP-2, or a Bluetooth COM port).
- 5Keep speed at 9600 baud and print a test ticket.
- 6On Windows, direct USB usually does not work in the browser; prefer Bluetooth + Serial.
Ticket modes
Cursor POS has four modes. Each includes a live preview and supports 58 mm or 80 mm paper.
- • Event ticket: editable fields, toggleable sections, and savable defaults.
- • Photo ticket: camera or upload, framing, countdown, and Cursor logo.
- • Luma check-in: QR scanning, confirm-before-print badges, and a live session log.
- • Cursor Credits: link queue from CSV; each print advances to the next QR.
Event ticket
Customize the ticket and enable only the sections you need. The preview updates instantly.
- 1Fill in business name, QR, event type, action, name, extra, and WiFi.
- 2Use Ticket sections to show or hide logo, QR, event type, action, name, and extra.
- 3Enable Include WiFi only when you want network and password on the printed ticket.
- 4Click Save defaults to remember values in this browser.
- 5Print or download the ESC/POS file as backup.
Luma check-in
Print badges when scanning guests. The app loads guest data from Luma but does not mark check-in in Luma (the public API no longer supports it). Use Luma's official scanner for attendance.
- 1Connect your Luma calendar (browser API key or LUMA_API_KEY on the server).
- 2Select the event and start scanning with the camera.
- 3On a valid QR scan you hear a beep and the Guest ready panel appears.
- 4Review the badge preview and click Print badge or Discard.
- 5The live log keeps recent scans with a reprint option.
Badge settings
- • Event ticket QR: uses QR content from Event ticket mode (recommended for custom links).
- • Guest check-in URL: uses the original Luma URL from the scanned QR.
- • Toggle logo, QR, action, ticket type, and timestamp under Ticket sections.
- • Action label and QR content can be edited before printing.
By default the printed QR is NOT the guest's Luma check-in URL—it uses the Event ticket QR unless you choose Guest check-in URL.
Cursor Credits
Hand out tickets with unique claim links. Each CSV row is one ticket; printing automatically advances the queue to the next link.
- 1Open Cursor Credits mode and upload a CSV with name and URL columns.
- 2Optional: edit title, subtitle, and ticket sections (logo, QR, label, etc.).
- 3Click Print next: the ticket QR is the current row's link.
- 4After printing, the queue advances. Use Reset queue or Clear queue if needed.
- 5Progress and queue state persist in this browser's localStorage.
CSV format
The parser looks for url, link, claim, or credit columns for the link, and name, label, email, or guest for the label. Semicolon separators are also supported.
- • Suggested headers: name, url
- • Example: Ana Garcia, https://cursor.com/redeem/abc123
- • A sample file lives at examples/cursor-credits-test.csv in the repo.
Connect Luma
- 1Option A — Paste your API key in the app (sessionStorage, this tab only).
- 2Option B — Fork the repo, deploy to Vercel, and set LUMA_API_KEY on the server (recommended for production).
- 3Requires Luma Plus. Event ticket, photo, and credits work without Luma.
On a shared deployment, the API key still passes through the server on each request if you use Option A.
App features
- • Four modes: event ticket, photo, Luma check-in, and Cursor Credits.
- • Large live preview with per-mode section toggles.
- • Event ticket: logo, QR, WiFi, timestamp, and savable defaults.
- • Luma: scan with confirmation, configurable badge, and reprint log.
- • Credits: sequential CSV queue with QR = claim link.
- • Direct Web Serial printing and ESC/POS download backup.
- • Spanish and English UI with light/dark theme.
Requirements
- • Browser: Chrome or Edge (recommended).
- • HTTPS required for camera and printer access.
- • 58 mm thermal printer (80 mm optional in settings).
- • Each station uses its own locally connected printer.
Source code
The project is open source. Report bugs, share feedback, or contribute on GitHub.
github.com/cursorcommunityled/cursor-pos