duckPOS

Description

Front-end POS:
Use the shortcode on a page to browse categories, search products (including SKU/barcode-style search), manage the cart, enter customer details, and pay via PayPlus EMV, PayPlus gateway iframe, cash, or other WooCommerce gateways where supported.

WooCommerce admin (Orders):
Orders created through duckPOS are tagged with order meta so you can filter the WooCommerce orders screen to show all orders, only duckPOS orders, or exclude duckPOS orders. You can also bulk-export selected orders to CSV (Excel-compatible UTF-8) or to an Excel-openable .xls file.

Installation

  1. Install via wordpress plugins.
  2. Activate.
  3. Create a new page (make it private for admin only) and add a shortcode [duckpos_pos_page] to it.
  4. Save , publish and navigate to the page.
  5. You can now start using it.

Reviews

There are no reviews for this plugin.

Contributors & Developers

“duckPOS” is open source software. The following people have contributed to this plugin.

Contributors

Translate “duckPOS” into your language.

Interested in development?

Browse the code, check out the SVN repository, or subscribe to the development log by RSS.

Changelog

1.1.25

Added – Settings: “Hide empty categories in POS” (default on) — omit categories with no catalog-visible products from the POS category list (hide_empty-style behavior).

Fix – WooCommerce orders list (HPOS): “Exclude duckPOS orders” filter no longer triggers extremely slow meta queries; exclude logic simplified for fast SQL.

Tweak – POS product pagination (Previous / Next / page indicator): force readable label colors so themes that style buttons with white text no longer hide labels on light backgrounds; category scroll buttons hardened the same way.

1.1.24

Added – WooCommerce admin: bulk actions on the orders list to export selected orders to CSV (Excel-compatible, UTF-8 BOM) or to Excel (.xls HTML table format).

1.1.23

Added – WooCommerce admin: dropdown filter on the orders list — All orders, duckPOS orders only, or Exclude duckPOS orders (uses order meta _duckpos_order).

1.1.9 – 1.1.22

Added/Tweak – POS sales-rules integration (when enabled), cart total loaders and UX, optional “search across all categories,” global barcode/paste handling for product lookup, PayPlus/iframe messaging hooks, and fixes for POS caching/nonce issues with page caches.

1.1.8

Added – Customer search in the customer details form: search existing customers by name, email, or phone and auto-fill their details.

1.1.7 – 20-04-2026

Added – Product search now also matches by SKU (barcode), including variation SKUs, in addition to product title.

1.1.6 – 16-02-2026

Added – General product: create and use a general-purpose product with an editable price directly in DuckPOS (Activated via plugin settins).
Added – Inline price editing: adjust the price of single or multiple items within the same cart line.
Added – Sale price support (BETA): when enabled in settings, DuckPOS cart calculations will respect sale prices from supported plugins.

1.1.5 – 27-01-2026

Added – Support for variable products with variant selection and management.
Added – Cart item action buttons (increment, decrement, remove) for improved cart management.

1.1.4 – 02-06-2025

Added – PayPlus Ltd. as an author.
Added – User interface enhancements for the POS.
Added – Placeholder image displayed for products without an image.
Added – Hebrew language translation.
Added – Improved support for LTR and RTL text directions.
Tweak – Adjusted product and cart design.
Tweak – Tax line hidden when prices are inclusive of tax.

1.1.3 – 29-05-2025

Fix – Main plugin image link.

1.1.2 – 22-05-2025

Fix – Updated requires at least and Requires PHP version to fit.

1.1.1 – 21-05-2025

Fix – Implemented changes based on WordPress review feedback.
Fix – Fixed “Requires as least:…” in readme.txt
Fix – implemented wp_register_style() and wp_enqueue_style() to add CSS from a file.
Fix – text domain corrected to fit slug : duckpos.
Fix – implemented correct usage of wp_register_script() and wp_enqueue_script() and wp_add_inline_script() for js scripts.
Fix – Added prefix to all needed script names functions and shortcode.
Fix – Added missing : if ( ! defined( ‘ABSPATH’ ) ) exit; in rest-api.php.

1.1.0 – 04-05-2025

Added – Order printing functionality.
Added – List view for printed/unprinted orders.
Added – Automatic order printing upon successful payment via any gateway.
Added – Automatic redirection back to duckPOS from thank you pages.
Added – Display “Return to duckPOS” button on thank you page after payment.
Added – duckPOS settings link in the WordPress admin menu.
Added – Option to display native PayPlus buttons.
Added – Print view with a dedicated “Print” button.
Tweak – Hide uncategorized and show on “All Categories”.
Added – Product search filtered by the current category.
Added – Display customer details.
Added – Top bar button linking to the duckPOS page.
Tweak – Moved Vue template HTML to pos-app-template.html for improved readability.
Fix – Spinners/Loaders fixed to appear in all operation systems.