FloCafe
FloCafe is the free, local-first restaurant POS in the FloPOS ecosystem. Run orders, tables, kitchen display, and local data without a software subscription.
Medusa POS is a free, open-source touchscreen point of sale for MedusaJS: checkout, every way to pay, returns and exchanges, cash register, receipts and orders on Windows, macOS and Linux.
CommerceTypeScript · RustGitHub @narisolutionsOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
Cross-platform Point of Sale desktop app built on Medusa and Tauri 2
Loading the full README.
Read the full README ↗Cross-platform POS app for Medusa built with React + Tauri 2.
Website: pos.nari.ge · Download · Getting started
This project is under active development. APIs, behavior, and UX may change.
Medusa POS is an independent open-source project and is not officially affiliated with Medusa.
| Capability | Vanilla Medusa (admin.product.list) | Medusa + POS plugin/custom /pos endpoints |
|---|---|---|
| Add product to cart | ✅ | ✅ |
| Reliable inventory check before adding | ❌ (variant inventory_quantity may be missing) | ✅ |
| Context-aware computed variant price | ❌ (raw prices array) | ✅ |
| Inventory kit availability checks | ❌ | ✅ |
@medusajs/[email protected], @medusajs/[email protected]If your backend is older/newer, behavior can differ (especially pricing and inventory fields).
engines in package.json)yarn install
# Browser (UI-only)
yarn dev
# Desktop (recommended)
yarn tauri dev
Important: full app flow requires Tauri runtime. This project stores backend configuration in
Tauri storage/config files on first setup, so yarn dev is only for limited UI work. Use
yarn tauri dev for real usage and testing.
yarn build
yarn lint
yarn typecheck
Use .env, .env.staging, or .env.production:
VITE_BACKEND_URL=https://your-medusa-instance.example.com/
The backend URL can also be configured at runtime via Store Setup.
| Topic | Support in Medusa (current observed behavior) |
|---|---|
Creating admin payment collections with payments[], provider_id, provider_data in one call | ❌ Not supported by current AdminCreatePaymentCollection typing/API shape (still order_id + amount only); since 2.16 a provider_id can be passed when marking a collection as paid |
This has no effect in the app, which records the provider through a payment session (or markAsPaid with provider_id) after creating the collection.
For every known limitation of the app — with impact, workarounds and the path to a fix — see Known limitations.
Prebuilt binaries are available on the Releases page for each tagged version.
| Platform | Architecture | Format |
|---|---|---|
| Windows | x86_64 | .msi installer |
| macOS | Apple Silicon (aarch64) | .dmg disk image |
| macOS | Intel (x86_64) | .dmg disk image |
| Linux | x86_64 | .AppImage |
All builds include signed updater artifacts so the app can auto-update itself after installation.
Windows — The MSI installer is not code-signed with a trusted certificate. Windows SmartScreen will show an "Unknown Publisher" warning on first install. You can bypass it by clicking More info → Run anyway.
macOS — The DMG is ad-hoc signed but not notarized with an Apple Developer ID. macOS Gatekeeper will block it by default. To open it, right-click the app → Open, or run xattr -cr /Applications/Medusa\ POS.app after dragging it to Applications.
Linux — No code signing is required. The AppImage runs directly after making it executable (chmod +x).
We're actively building out Medusa POS into a full-featured retail system. Here's what's coming:
@narisolutions/medusa-plugin-pos.@narisolutions/medusa-plugin-pos on npm