The WordPress plugin

Real WooCommerce,
not a bolt-on.

The plugin half of Oliver POS — REST-native WooCommerce, offline-first sales, sub-second cross-device sync, fulfillment pipelines, multi-outlet inventory, a visual receipt builder, and a 120-permission staff role system. Everything that lives in wp-admin.

wp-json/wc/v3/* native HPOS compatible Blocks compatible Application Password auth
01 · Native plugin

It is WooCommerce.

Oliver POS is the only WooCommerce POS that speaks the official wp-json/wc/v3/* REST API directly. No proprietary database, no exported CSVs, no vendor lock-in.

  • Orders, products, customers stored as standard Woo records
  • Every plugin you already use keeps working
  • HPOS, Product Blocks, Cart & Checkout Blocks — declared and tested
02 · Sub-second sync

One heartbeat. Every device.

A ~200-byte /heartbeat endpoint, polled every 5–10 seconds. Price changes, stock counts, staff permissions, payment toggles — everything propagates to every register in under 10 seconds.

  • 8 change-detection hashes — orders, products, stock, staff, taxes, more
  • Devices only pull when something actually changed
  • Negligible bandwidth, zero polling overhead on your host
03 · One Hub, many outlets

The back office, in wp-admin.

Per-outlet stock with atomic transfers. Branded receipts with a visual designer. 120-permission staff roles. Audit-ready cash management. Seven POS reports — all inside the WordPress admin you already log into.

  • Multi-outlet inventory with audit-log transfers
  • Customisable fulfilment pipelines for kitchen and warehouse
  • Integer-cents reports your accountant can actually reconcile
yourshop.com/wp-admin/edit.php?post_type=shop_order
WooCommerce orders inside wp-admin
Today · Downtown
€4,218
+18% vs yest
Transactions147
Avg ticket€28.70
Cash variance€0.00
Refund rate1.2%
Native plugin

Real WooCommerce — no middleware, no bolt-on.

Oliver POS is the only WooCommerce POS that speaks the official wp-json/wc/v3/* REST API directly. No proprietary database. No vendor lock-in. If you ever leave, your data stays exactly where it already is.

  • Standard Woo records — orders, refunds, products, inventory, customers, all where you already manage them.
  • Every Woo extension keeps working — shipping, accounting, loyalty, marketing plugins, all unchanged.
  • HPOS, Product Blocks, Cart & Checkout Blocks — declared compatible and tested.
See foundation features
REST Schema Webhooks
1POST /wp-json/wc/v3/orders
2status: "processing",
3payment_method: "oliver_terminal",
4line_items: [5],
5meta_data: [3]
6 201 Created · order_id 18247
Offline-first

The line never stops.

When the internet drops, the cashier keeps selling. Every order is queued locally on the device and drains into WooCommerce in the exact order it was rung up the second connectivity returns.

  • Zero lost sales during ISP outages, router reboots, or congested networks.
  • Action Scheduler-backed queue with retry counts and error capture in oliver_order_queue.
  • Same cashier flow online or offline — no awkward "we're down" at the counter.
See sync & realtime
Offline · selling continues
Queue · 3 orders
#18247 · €42.802× espresso, 1× croissantQueued
#18248 · €17.501× sandwichQueued
#18249 · €9.201× pastry, 1× coffeeQueued
Last sync 4m agoReceipts already printed
Storefront SEO

"In stock near me" — for every product, every outlet.

Display real-time per-outlet inventory on every WooCommerce product page, and feed Google a Schema.org/Product JSON-LD payload with availableAtOrFrom: Place data so your shop ranks for "near me" searches.

  • Drives foot traffic — "In Stock at Downtown — 3 remaining" converts browsers into buyers.
  • Drops "is this in stock?" calls — your storefront answers it before the phone rings.
  • Status, quantities, or in-stock outlets only — three display modes, plus a [oliver_pos_availability] shortcode for blog posts and landing pages.
See storefront SEO features
Italian Roast · 250g
€14.50
Available at these stores
Downtown3 in stock
Airport KioskLow — 1 left
NorthsideOut of stock
Realtime heartbeat

Sub-second cross-device sync.

A ~200-byte /heartbeat endpoint that POS devices poll every 5–10 seconds. Eight change-detection hashes rotated server-side — orders, customers, products, stock, staff, taxes, gateways, settings. Devices only pull when something has changed.

  • Price change in Woo → live on every register at every outlet within seconds.
  • Web order placed → appears instantly in the fulfilment queue.
  • New staff member → PIN and role on every device immediately.
See realtime features
Downtown iPad
Airport iPhone
Northside web
Pop-up iPad
Fulfilment pipeline

Kanban for kitchens and warehouses.

A drag-and-drop pipeline builder that drives kitchen displays, packing benches and warehouse boards — with stale-order alerts, branded email triggers, and three ready-to-go presets out of the box.

  • Three presets — Restaurant (New → Preparing → Ready → Complete), Retail/Warehouse (Received → Picking → Packed → Shipped), and Simple.
  • Fully customisable steps — name, brand colour, stale-after-N-minutes alert, email trigger.
  • Per-product prep time, KDS priority and station routing — configured right inside the Woo product editor.
See fulfilment features
yourshop.com/wp-admin/admin.php?page=oliver-fulfilment
Oliver fulfilment Kanban inside wp-admin
Receipt designer

A visual receipt builder with live preview.

A WooCommerce-native receipt designer with drag-to-reorder sections, live preview, and six receipt types that all share the same template engine across the cashier, the printer, and the customer's inbox.

  • Six templates per outlet — Sale, Refund, Gift, Order Ticket (kitchen), Z-report, Park slip.
  • 14 modular sections — logo, business info, totals, payments, barcode, return policy, loyalty, social.
  • 58mm and 80mm previewed live · email receipts use the same engine — what prints is what gets emailed.
See receipt features
Logo
Business info
Line items
Totals
Payment details
Barcode
Return policy
OLIVER & SONS
12 Water Street · Downtown
2× Espresso€7.00
1× Croissant€3.50
1× Italian Roast 250g€14.50
Total€25.00
Card · Stripe Terminal€25.00
Thank you · Earn 25 points

Every WordPress-side feature, in one place.

47 features and counting. Pick a category, or search by what you need.

Foundation

Real WooCommerce

The only WooCommerce POS that speaks the official REST API directly. No proprietary DB, no CSVs, no vendor lock-in.

Foundation

Connect with site URL

Type your WordPress URL on the iPad, approve a single Application Password prompt, the device self-configures. No QR codes, no copy-pasting keys.

Foundation

HPOS & Blocks compatible

Declared and tested against High-Performance Order Storage and the Product, Cart, and Checkout Blocks.

Foundation

Clean uninstall

Removes every option, table and meta key Oliver POS created. WooCommerce orders, products, and customers are left untouched.

Foundation

Security hardening

Rate-limited pairing and PIN endpoints, station-bound API keys, Deprecation headers on phased-out endpoints, no card data ever touches the plugin.

Sync & realtime

Heartbeat endpoint

A ~200-byte /heartbeat polled every 5–10 seconds. Server-side changes appear on every register in under 10 seconds.

Sync & realtime

8 change-detection hashes

Orders, customers, products, stock, staff, tax, gateways, settings — eight hashes rotate server-side so devices only pull what actually changed.

Sync & realtime

Offline-first sales

Orders queue locally in oliver_order_queue with retry counts and error capture. They drain to WooCommerce in the exact order they were rung up.

Sync & realtime

Instant catalogue sync

Two-tier sync — scheduled snapshots plus debounced rebuilds within 30 seconds of any change. Concurrency-safe with GET_LOCK mutex.

Storefront SEO

Schema.org JSON-LD

Feed Google per-outlet availability with availableAtOrFrom: Place so your shop ranks for "near me" searches.

Storefront SEO

Store availability widget

"In Stock at Downtown — 3 remaining" right on the product page. Three display modes: status, quantities, or in-stock outlets only.

Storefront SEO

Availability shortcode

Use [oliver_pos_availability] on landing pages, blog posts, or any block to surface stock anywhere.

Fulfilment

Pipeline builder

Drag-and-drop pipeline editor. Every step has name, brand colour, stale-after-N-minutes alert, and email template trigger.

Fulfilment

Three presets

Restaurant (New → Preparing → Ready → Complete), Retail/Warehouse (Received → Picking → Packed → Shipped), and Simple.

Fulfilment

Prep time & KDS priority

Per-product prep time and low/normal/high/urgent priority — set inside the WooCommerce product editor.

Fulfilment

Station routing

Fulfilment category on each product routes tickets to the right kitchen or packing station automatically.

Fulfilment

Branded "ready" emails

"Your order is ready" emails with merge tags — {order_number}, {customer_name}, {outlet_name}.

Receipts

Visual designer

Drag-to-reorder sections, live preview, global typography, spacing and density controls.

Receipts

Six templates per outlet

Sale, Refund, Gift, Order Ticket (kitchen), Shift Summary (Z-report), and Park / Hold slip.

Receipts

14 modular sections

Logo, business info, header/footer text, custom text, separators, transaction info, line items, totals, payments, barcode, policy, loyalty, social.

Receipts

58mm, 80mm, email parity

Both paper widths previewed live. Email receipts share the same template engine — what prints is what gets emailed.

Inventory

Multi-outlet stock

One product, multiple outlets, per-outlet stock — synced back to the global WooCommerce _stock field so existing reports keep working.

Inventory

Atomic transfers

One click moves stock from Downtown to Airport with paired entries in oliver_stock_log — who, when, where, why, previous & new qty.

Inventory

Online order auto-deduct

Online orders auto-deduct from a configured fulfilment outlet — no double-counting between online and in-store sales.

Inventory

Per-outlet low-stock

Per-outlet thresholds drive the Store Availability widget's "Low Stock" badge on the storefront and trigger email alerts.

Payments

Every Woo gateway

If WooCommerce supports it, Oliver POS supports it. WooPayments, Stripe, PayPal, Klarna, Square, Mollie, Amazon Pay, Authorize.net — all of them.

Payments

Stripe Terminal native

Pair a reader to an outlet. Amount due is pushed automatically at checkout, processed by Stripe, and recorded on the WooCommerce order.

Payments

Apple Pay & Google Pay

The gateway's own checkout opens in a WebView on the POS — Apple Pay and Google Pay work automatically through any wallet-enabled gateway.

Payments

Balance-based gateways

Store credit, gift cards, and wallets show up only after a customer is attached to the sale — no accidental selection.

Payments

Auto-register Stripe locations

Outlets with a Stripe address are auto-registered as Stripe Terminal locations via the Oliver Pay backend — no dashboard juggling.

Staff & cash

120-permission roles

Granular role builder with 120 permissions across 12 categories, backed by real WordPress capabilities.

Staff & cash

Rate-limited PIN login

PIN verification is online-only and rate-limited (5 failures / 15 min per IP+user) — stolen devices can't be brute-forced offline.

Staff & cash

Custom roles & groups

Custom roles unlock on Pro; role groups (head office vs. floor staff vs. store managers) on Enterprise.

Staff & cash

Denomination counting

Staff count notes and coins individually instead of typing a single total — drives down errors and detects skim-from-the-till patterns.

Staff & cash

Blind close

Hides the expected cash total during reconciliation so the cashier can't adjust their count to match.

Staff & cash

Variance reasons

When over/under exceeds a configurable amount (default $5), staff must select a reason (Refund, Tip Out, Petty Cash, Bank Drop, Other).

Staff & cash

Cash rounding rules

None / 0.05 / 0.10 / 0.25 / 0.50 / 1.00 with nearest / up / down — covers Canada, Australia, Switzerland, NZ regulations.

Staff & cash

Auto-print Z-report

Auto-print at close with the full per-shift cash ledger — adds, removes, drops, deposits, adjustments — every event timestamped.

Reports

7 POS reports

Shift Summary, Sales by Cashier, Sales by Outlet, Payment Methods, Cash Reconciliation, Cash Activity, POS vs Online (Channel).

Reports

Cross-outlet BI

Enterprise rolls every outlet up into one view — head office sees the whole estate at a glance.

Reports

Integer-cents math

Every report is integer-cents accounted — no floating-point drift on tax or discount math. Your accountant can actually reconcile it.

Reports

CSV exports

Every report exports to CSV with every tax line broken out — accountant-ready, not "we'll get back to you".

Extras

Camera barcode scanner

Uses the iPad / phone camera — works out of the box with SKU or any custom meta-key barcode field.

Extras

Park / hold sales

Pause an order, customer walks away, come back to it from any register at any outlet.

Extras

Tip handling

First-class tip line items — surfaced in shift summaries and the per-cashier report, not buried in a custom field.

Extras

Coupon support

Apply any WooCommerce coupon at the POS exactly as it works online — Smart Coupons, dynamic discounts, restrictions, all of it.

Extras

Free Forever plan

No credit card, no trial timer, real sale-ringing capability before the merchant ever pays.

Install Oliver POS on the WooCommerce store you already have.

No migration. No exports. No rebuilds. The plugin pairs in 60 seconds, the register signs in with a URL, and your shop floor is ringing sales today.