MedusaPOS

Changelog

Released versions of MedusaPOS, newest first.

Each entry is the release note published with that version on GitHub. Unreleased work is not listed.

0.1.0 (2026-09-28)

Release on GitHub

The first tester release of Medusa POS. It's a browser point of sale for a Medusa store: the hosted app at https://app.medusapos.com, plus a Medusa plugin you install in your store. It supports cash sales, and payments taken on a separate card terminal, recorded as external payments. The POS never charges cards itself.

What's in it

  • App 0.1.0, hosted at app.medusapos.com:
    • sign-in to your Medusa store;
    • a live catalogue with stock on every tile and live variant stock;
    • a cart with discounts, and cash or card-terminal tender;
    • receipts, and an order history;
    • offline selling: every sale lands in Medusa exactly once;
    • registers: open with a float, cash movements, count and close with the last closure's figures, and manager approval;
    • per-till scanner settings;
    • a phone layout.
    • Browser storage is SQLite-wasm, one live tab per store.
  • Medusa plugin @medusapos/medusa-plugin 0.1.0:
    • requires Medusa 2.21.0;
    • POST /tally/v1/commands records each POS order exactly once, paid, fulfilled and completed, with stock deducted;
    • GET /tally/v1/info advertises order.create versions 1–3;
    • discounts arrive as POS adjustments;
    • the till's own receipt totals are stored on the order as the fiscal record (tally_pos_totals, ADR 0012);
    • it's ready for order.create v3, which adds display figures, per-rate tax, the register session and the chosen customer. The app sends version 2 until it moves to TallyUI 2.1.0;
    • it picks a shipping option at the sale's stock location that matches the products' shipping profile;
    • a store set-up problem, such as no sales channel, stock location or matching shipping option, refuses the sale with the reason (store_configuration) instead of retrying forever. Once the store is fixed, Retry sends it again.
  • Built on TallyUI 2.0.0: all eight @tallyui/* packages at exactly 2.0.0 from npm.

Install the plugin

In your Medusa store's directory:

npm install https://github.com/medusapos/app/releases/download/v0.1.0/medusapos-medusa-plugin-0.1.0.tgz

Then register @medusapos/medusa-plugin in medusa-config.ts, run npx medusa db:migrate, and restart the backend. The tester quick-start covers plugin options, CORS, stock, shipping, tax and signing in.

The tarball is a stopgap for this release. From the next release, the plugin is published to npm, and you'll install it by name: npm install @medusapos/medusa-plugin.

Known limits

  • One shipping profile per sale. A sale mixing products from several shipping profiles is refused.
  • With a large catalogue (about 2,000 products), the first sync takes about 45 s, and search is slow. A fix is in progress.
  • No card charging, refunds or returns yet.