PluginProbe
WCPOS – Point of Sale (POS) plugin for WooCommerce / 1.10.21
WCPOS – Point of Sale (POS) plugin for WooCommerce v1.10.21
1.10.24 1.10.23 1.10.22 1.10.21 1.10.20 1.10.19 1.10.18 1.10.17 1.10.16 1.10.15 1.10.13 1.10.14 1.10.12 1.10.11 1.10.10 1.10.9 1.10.8 untagged-3d9b7ccddc54df87c672 1.10.7 1.10.6 1.10.5 1.10.3 1.10.4 1.10.2 1.10.1 All 168 releases
← All changes | readme.txt +29 -3 1.10.18 → 1.10.21 View file →
@@ -2,9 +2,9 @@
2 2 Contributors: kilbot
3 3 Tags: ecommerce, point-of-sale, pos, inventory, woocommerce
4 4 Requires at least: 5.6
5 5 Tested up to: 7.1
6 -Stable tag: 1.10.18
6 +Stable tag: 1.10.21
7 7 License: GPL-3.0
8 8 License URI: http://www.gnu.org/licenses/gpl-3.0.html
9 9
10 10 Turn any device into a register for your WooCommerce store — same catalog, stock and prices, online or off.
@@ -127,11 +127,37 @@
127 127 1. WCPOS main screen
128 128
129 129 == Changelog ==
130 130
131 += 1.10.21 - 2026/10/06 =
132 +
133 +- **Till totals now match your store to the cent** on stores that round tax at subtotal level.
134 +- **Adding a Bluetooth printer no longer crashes the app** on iPad and iPhone.
135 +- **Cashiers can only edit customer accounts**, never staff accounts.
136 +- **Changing a user's password signs them out of the POS on every device.**
137 +- **Cashiers can edit and delete their own sales again** when their role lacks "edit others' orders".
138 +- **Payment gateways with no customer-facing title now show a name** in POS settings and at the till.
139 +- **Fixes for stores using High-Performance Order Storage:** cash tendered and change, tax-ID suggestions and fiscal submission status now read correctly.
140 +- **Connecting the app to a store with no REST link on its front page works again.**
141 +- **A staging copy of your store no longer overwrites the live store in the app's site list.** A store moved to a new domain appears as a new site and needs connecting once more.
142 +- Developers: a faster product-ID listing on `wcpos/v2`, advertised as a capability on `GET /wcpos/v2/status`. Details on GitHub.
143 +
144 += 1.10.20 - 2026/09/23 =
145 +
146 +- **Checkout no longer reports "Checkout failed" for a sale that reached the store.** If the till was busy sending another change, or an earlier attempt had failed, the checkout screen could give up waiting even though the order had been saved. It now hears back as soon as the order is saved, and pressing Checkout again after a failure tries straight away.
147 +- **Search repairs a damaged search index instead of failing at every launch.** When the saved search index could not be read, search stayed broken with "Failed to initialize search". The index is now discarded and rebuilt from the till's records.
148 +- **Gateways that take no payment at the till — quotes, invoices, purchase orders — now close the order with the Order Status you set for them.** The checkout used to succeed but leave the order at POS - Open. Only gateways with an Order Status saved in POS > Settings > Checkout are affected, and the order is not marked paid.
149 +- **Refunds that arrive from a payment gateway now respect your POS customer-email settings.** A refund recorded by a gateway's webhook could email the customer even with POS customer emails switched off; refunds made in wp-admin or at the till were not affected.
150 +
151 += 1.10.19 - 2026/09/19 =
152 +
153 +- **A till no longer loses live records during its startup tidy-up.** With the POS open twice on the same device, the tidy-up could mistake live records — including the sign-in row — for damaged ones and remove them. It now leaves alone anything it cannot fully account for. Web merchants receive this through WCPOS plugin 1.10.19, which serves the storage worker; desktop and phone apps carry it in this release.
154 +- **A sale that could not be sent because the till was signed out now waits for sign-in instead of being given up on.** The cashier is told as soon as it happens, and the sale sends itself once the session is back.
155 +- **A refused POS request now says why it was refused.** A 401 from the POS routes names the reason in the response and in Health > Logs, instead of only reporting that the request failed.
156 +
131 157 = 1.10.18 - 2026/09/18 =
132 158
133 -- **A web till with the POS open in more than one tab repairs its local database again.** Since the 1.10 storage repairs shipped, every repair on web was refused whenever another tab of the same store could be open, so a damaged record stayed damaged and the same storage errors repeated on every sync. The tab that leads the store now owns the repair and the other tabs follow it. Web merchants receive this through WooCommerce POS plugin 1.10.18, which serves the storage worker; desktop and phone apps carry it in this release.
159 +- **A web till with the POS open in more than one tab repairs its local database again.** Since the 1.10 storage repairs shipped, every repair on web was refused whenever another tab of the same store could be open, so a damaged record stayed damaged and the same storage errors repeated on every sync. The tab that leads the store now owns the repair and the other tabs follow it. Web merchants receive this through WCPOS plugin 1.10.18, which serves the storage worker; desktop and phone apps carry it in this release.
134 160 - **Voiding an order the server had refused no longer fails silently.** When an order could not be created on the server (for example while the till was signed out) and the cashier then voided it, the void raised an error nothing caught and the order stayed in the cart. The till now removes the order and its failed request locally and confirms the removal; any other failure to void shows an error instead of nothing.
135 161 - **A till opened from WordPress admin no longer sends an invalid sign-in token on its first requests.** A request made before a token was stored carried the word "undefined" as its credential, which the server rejected as an invalid token instead of falling back to the WordPress login session. Such requests now carry no token, and a retry after a token refresh no longer keeps the old token in the request address.
136 162 - **A plugin update no longer restores cashier permissions the merchant had removed.** Every update re-granted every default capability, so a store that had turned off product or coupon editing for cashiers saw it come back after each release. Updates now grant only capabilities that are new since the last update; a deleted cashier role is still recreated whole.
137 163 - **Product search on the older `wcpos/v1` routes splits the typed text the same way as the rest of the POS.** Punctuation stays literal and single letters and common words count, so "IT 5012" no longer searches as "5012" and "0,4" is one term.
@@ -139,9 +165,9 @@
139 165 - **The older order-update route checks order ownership the same way as the current one under HPOS.** A role that can edit its own orders but not other people's is treated the same on both routes. Cashiers are unaffected.
140 166
141 167 = 1.10.17 - 2026/09/17 =
142 168
143 -- **A till no longer gets stuck at login on "Something went wrong: useStoreSession must be called within an active store session".** A damaged range in the till's local database made the login write fail and left the cashier on a red banner. The write is now repaired and retried, and if the saved session still cannot be honoured the till returns to the store list with a message instead of the banner. If the site has to be added again, it opens a fresh local database and does not pick up sales still waiting to sync in the old one. Web merchants receive the storage repair through WooCommerce POS plugin 1.10.17, which serves the storage worker; desktop and phone apps carry it in this release.
169 +- **A till no longer gets stuck at login on "Something went wrong: useStoreSession must be called within an active store session".** A damaged range in the till's local database made the login write fail and left the cashier on a red banner. The write is now repaired and retried, and if the saved session still cannot be honoured the till returns to the store list with a message instead of the banner. If the site has to be added again, it opens a fresh local database and does not pick up sales still waiting to sync in the old one. Web merchants receive the storage repair through WCPOS plugin 1.10.17, which serves the storage worker; desktop and phone apps carry it in this release.
144 170 - **A newly connected till no longer misses a stock change made in its first minute.** A product set out of stock on the server shortly after a new device, login or reset stayed "in stock" on the till indefinitely. The till now records the server's position before the first browse, so the change arrives with the next sync.
145 171 - **A variation whose stock is managed at product level shows the right stock in the variation picker.** When the parent product sold out, the picker's badge and Add to Cart button kept saying "in stock" for up to five minutes. They now read the parent's stock, the same way the cart does.
146 172 - **Switching stores no longer carries the previous store into the first requests of the new one.** Requests made while a switch was still completing used the outgoing store, so the first products or barcodes could belong to it until the next sync. Pro multi-store only.
147 173 - **Health > Logs records a screen error the app catches** as "Part of the screen failed to load", and reports it when you have allowed error reporting.