Download

Una cassa, ogni dispositivo.

macOSRilevata

Versione 1.10.3 · Apple Silicon · .dmg

Scarica per macOS

Hai un Mac Intel? Scarica la build Intel

Ogni app si collega al plugin WordPress gratuito — installalo prima.

Come funziona insieme

Un negozio al centro. Ogni cassa sincronizzata.

  • Un solo plugin per iniziareIl plugin gratuito aggiunge una REST API sicura al tuo negozio WooCommerce. Questa è tutta l’installazione — niente da ospitare o configurare per ogni dispositivo.
  • Ogni app legge e scrive nello stesso negozioRegistra una vendita sul desktop, rimborsala dal telefono — un unico set di prodotti, ordini e clienti, aggiornato in tempo reale.
  • Offline-first, così la cassa non si ferma maiOgni dispositivo continua a funzionare senza connessione e si risincronizza appena torna online.

Cosa resta sincronizzato

  • Prodotti e prezzi
  • Livelli di stock
  • Ordini
  • Clienti
  • Imposte e ricevute

Inizia

Tre passaggi per la prima vendita

Servono circa due minuti, dall’inizio alla fine.

  1. 1

    Installa il plugin gratuito

    La base a cui tutto si collega. Nella tua bacheca: Plugin → Aggiungi nuovo, poi cerca “WCPOS”.

    WCPOSGratis · GPL

    Ultima 1.10.2 · WordPress 5.6+ · WooCommerce 5.3+ · PHP 7.4+

  2. 2

    Scegli il dispositivo

    Tutti gratuiti, tutti sincronizzati. Scarica quello rilevato sopra oppure uno di questi.

  3. 3

    Vuoi di più? Passa a Pro

    Un plugin con licenza che aggiunge pagamenti con terminale, rimborsi e controllo dello stock sulla stessa base.

    Sblocca la cassa completa

    Pagamenti, rimborsi, stock e prezzi, gestione ordini, report di fine giornata, multi-store e supporto Discord prioritario.

Cronologia versioni

Novità

Modifiche recenti — ogni app condivide la stessa linea di versione.

Le note di rilascio provengono da GitHub e potrebbero essere visualizzate in inglese.

1.10.2Ultima26 ago 2026
  • Fixed a regression in order save speed for CPT orders -- HPOS orders are not affected. (#1727)
1.10.125 ago 2026

Nessuna nota di rilascio per questa versione.

1.10.025 ago 2026

WCPOS 1.10.0

The biggest release since we rebuilt WCPOS in React Native back in 2023. Your store now syncs through a proper change log: the POS asks the server what changed since it last checked, instead of re-downloading your catalogue and hoping it landed. Nearly everything below follows from that.

⚠️ Please don't update lightly. This is a major update — update when your store is quiet and you have time to check everything over, and be ready to roll back if you hit a problem.

Sync and performance

  • The sync engine has been rebuilt end to end, on a new server API (wcpos/v2). Your store now syncs through a change log: the POS asks what changed since it last checked instead of re-downloading the catalogue. This is the foundation the offline queue and Store Health below are built on.
  • Product search matches inside words, so compound-word languages work correctly — searching "saippua" now finds "Kuorintasaippua".
  • Customer search matches every word, so full names like "John Smith" work against the server.

Offline and reliability

  • Browsing, cart building and saving orders keep working offline. The sync engine queues the changes you make — customers, coupons, stock and price edits (Pro), and receipt emails — and replays them on reconnect.
  • Taking payment still needs a connection. Checkout renders a server-hosted payment page, so the payment step cannot complete offline. Offline checkout, starting with cash, is the focus of 1.11.
  • Anything the server rejects lands in a recovery list with the reason, and can be edited and resent.
  • Unreadable local storage now blocks checkout with a reload prompt instead of losing the sale; barcode scans fail loudly in that state rather than going quiet.
  • The crash screen's "Try again" no longer discards unsent sales.
  • Web: cross-tab leader election, so multiple tabs share one writer and can't produce phantom orders.
  • Order write conflicts auto-recover once and surface if they can't.
  • Store switching is transactional — hydrate, then commit, with errors surfaced.

Prevent overselling (new, off by default)

  • Enable in Checkout settings. The cart blocks quantities beyond available stock and shows what's left.
  • The server independently refuses the order (wcpos_insufficient_stock, HTTP 400, every failing line listed), so a stale or bypassed device can't oversell either.
  • Backorders (allow/notify) never block. Variation stock aggregates to the parent stock owner. Draft and cart syncs always succeed — only checkout is gated.
  • Variation stock shown in the picker; out-of-stock variations can be hidden.

Barcode scanning

  • Camera scanning on every platform, in a resizable panel below the filters.
  • New transports: USB serial and HID-POS (Web Serial / WebHID), Bluetooth SPP, and Bluetooth LE via vendor GATT. Electron gains a device chooser; Android gains a native key interceptor.
  • Keyboard-wedge detection now requires a scanner-like burst, so fast typing doesn't register.
  • Scanner Setup Wizard and a test panel that measures your scanner and suggests fixes.
  • UPC-A barcodes resolve to the digits printed on the package.
  • Barcode field defaults to GTIN (_global_unique_id); _sku and custom meta_data: mappings selectable. Changing the field rebuilds the catalogue's barcode index.
  • Optional scan sounds with themes. Scans route to the search field on the Orders screen.
  • Online fallback with auto-add for barcodes not in the local catalogue.

Store Health (new)

  • Database — what's on the device vs. what's on the server, real storage usage, variation totals, server clock-skew detection, per-collection "check for changes now".
  • Performance — measured actuals, live tuning dials, trend charts.
  • Logs — flat ledger with duration and status columns, level filters, expandable rows, infinite scroll. Every sync warning carries a registry error code with a copyable value and a link to its explanation in the docs.

Money and tax

  • Cash change and card cashback render in the order's currency rather than the site default.
  • Receipts print the currency symbol rather than the ISO currency code.

Printing and receipts

  • Star CloudPRNT negotiates media types properly, with a text/plain fallback.
  • Receipts can be rendered server-side as PNG for printers that can't decode StarPRNT.
  • Auto-print rules can trigger on order creation or only once paid, and can print multiple copies.
  • Offline receipts render in the correct language — the store payload now ships a label dictionary.
  • Retried print failures no longer stay stuck in "Needs attention".
  • Thermal fixes: mbstring fallback, wider Star width table, shared text layout, preview and print clamp out-of-range attributes identically.
  • Templates are labelled "Thermal" rather than "ESC/POS".

Access and permissions

  • Cashiers can create and edit products by default. Deleting stays opt-in.
  • Catalogue and coupon writes are checked against real WordPress capabilities; a rejected edit reverts locally and shows the server's reason.
  • Capability toggles on the Access screen are grouped by task.

Platform

  • Expo SDK 57 / React Native 0.86. Desktop app on Electron 43, with the Node stack retired from the main process.
  • Native local storage moved to the Expo filesystem engine.
  • Fixed dropdowns not opening on iPad.
  • Fixed language changes not reaching every part of the app.
  • New transport fallbacks for restrictive hosts: query-parameter JWT, ?rest_route= mode, a header echo probe, and an opt-in response-body envelope for hosts that strip headers.
  • Settings redesigned; Settings and Store Health open as panels rather than modals.

⚠️ Changes that may affect you Only things that differ from released 1.9.17. Internal contracts that changed during 1.10 development are not listed — they were never in a shipped build.

  • Legacy API\Settings controller methods are removed (get_general_settings(), update_access_settings(), get_general_endpoint_args(), remove_license_transient() and others). The class alias survives; the methods do not. Third-party code calling or overriding them needs updating.
  • The StarPRNT fixed-layout output adapter has been removed. Templates using it need switching to another output.
  • Default cashier capabilities changed — catalogue create and edit are now granted by default. Deleting stays opt-in.
  • The POS product grid now defaults to name ascending, replacing the previous default order.

For integrators

  • New wcpos/v2 REST namespace. Syncing lives here, and the shared POS services previously served from wcpos/v1 are now wcpos/v2 pass-throughs. The wcpos/v1 routes still register and still work — they are frozen, and the POS no longer calls them.
  • New public endpoints: wcpos/v2/site (discovery), wcpos/v2/ping (reachability), wcpos/v2/echo (header probe).
  • POS line-item pricing storage is now documented for third-party sync compatibility.

Upgrading Don't update while your store is busy. Pick a time when you have some free time to check everything over, and be ready to roll back if you run into a problem.


Full Changelog: https://github.com/wcpos/woocommerce-pos/compare/v1.9.17...v1.10.0

1.9.177 ago 2026

What's Changed

  • Smaller plugin package — the download is around 2.4 MB smaller (optimized template gallery images, removed unused bundled files). This also shrinks the Pro package and resolves installation failures on hosts with restrictive upload or disk limits. (#1538)
  • Fixed Pro update downloads using a stale licence key — changing or re-activating a WCPOS Pro licence now clears WordPress's cached update information, so the next update download always uses the current licence key. (#1444, #1480)
  • Fixed duplicate cashier identity on multisite — on multisite networks a cashier could be assigned two different internal IDs depending on which endpoint served them, splitting one user into two identities in the POS. All endpoints now serve a single ID per user. (#1465)
  • Hardened the orders API against malformed metadata — a malformed metadata entry in a batch create/update could cause a server error partway through the batch, risking duplicate orders on retry. Malformed entries are now safely skipped and invalid IDs rejected up front. (#1473)
  • POS audit metadata is now server-authoritative — order metadata recording which cashier and store created an order is now stamped by the server and can no longer be altered by the client. Cash amounts are also validated more strictly. (#1464)
  • Internal cloud print improvements — consolidated printer-provider handling; the server now reports which template engines each print provider supports. (#1463)

Full Changelog: https://github.com/wcpos/woocommerce-pos/compare/v1.9.16...v1.9.17

1.9.164 ago 2026

Bug fix

Fixed stale price ranges on variable products. The POS product grid could show an outdated price or price range for a variable product even after variation prices changed — and clearing local data did not help — because the freshly recomputed range was discarded in favour of an old stored value when building the server response. Responses now always serve the current values, so the displayed range matches the live variation prices. The price charged at checkout was always correct; this fixes what the grid displays. Server-side fix — no app update needed.


Full changelog: https://github.com/wcpos/woocommerce-pos/blob/v1.9.16/readme.txt

1.9.154 ago 2026

Security patch

Custom thermal receipt templates can no longer run PHP. A user with POS management access (eg: a shop manager) could embed PHP in a custom thermal receipt template and have it execute when a receipt was rendered, because the thermal engine fell through to the legacy PHP renderer. Thermal templates now render exclusively through the safe Mustache/XML pipeline, which discards embedded PHP; malformed markup fails closed. If you use custom receipt templates, please update.

More reliable thermal receipt rendering. Thermal render failures are now logged so a broken template is diagnosable, and browser-printed HTML receipts are constrained to the configured paper width so wide rows no longer overflow the roll.


Full changelog: https://github.com/wcpos/woocommerce-pos/blob/v1.9.15/readme.txt

Cronologia completa su GitHub — Gratis · Desktop