[WordPress] 外掛分享: Elementary POS for WooCommerce

首頁外掛目錄 › Elementary POS for WooCommerce
WordPress 外掛 Elementary POS for WooCommerce 的封面圖片
10+
安裝啟用
尚無評分
剛更新
最後更新
問題解決
WordPress 5.8+ PHP 7.4+ v0.9.49 上架:2025-12-09

內容簡介

Elementary POS for WooCommerce 是一款現代化的雲端銷售點系統,專為零售業務設計。此外掛可實現 Elementary POS 系統與 WooCommerce 商店之間的產品與庫存自動即時同步,提升管理效率。

【主要功能】
• 完全兼容 WooCommerce 高效能訂單儲存
• 雙向產品匯入與匯出
• 智能稅務對應系統
• 草稿模式匯入新產品
• 安全的產品移除機制
• 實時網路鉤子更新

外掛標籤

開發者團隊

⬇ 下載最新版 (v0.9.49) 或搜尋安裝

① 下載 ZIP → 後台「外掛 › 安裝外掛 › 上傳外掛」
② 後台搜尋「Elementary POS for WooCommerce」→ 直接安裝(推薦)
📦 歷史版本下載

原文外掛簡介

Elementary POS is a modern cloud-based point-of-sale system for retail businesses. This plugin enables automatic, real-time synchronization of products and inventory between your Elementary POS system and WooCommerce store.
Key Features

HPOS Compatible – Fully compatible with WooCommerce High-Performance Order Storage
Bidirectional Product Import – Import products from Elementary POS to WooCommerce, or export from WooCommerce to Elementary POS
Tax Mapping System – Intelligent tax mapping between WooCommerce tax classes and Elementary POS tax types
Draft Mode Import – Option to import new products as Draft instead of Published
Draft Products Synchronization – Optional synchronization of draft products along with published ones
Safe Product Removal – Products are moved to Trash instead of permanent deletion, allowing recovery
Bidirectional Stock Sync – Keep stock levels synchronized in both directions
Real-time Webhooks – Instant updates when sales occur in Elementary POS
Automatic Order Sync – WooCommerce orders automatically update Elementary POS inventory
Queue System – Reliable processing with automatic retry on failures; failed items are automatically retried when new activity occurs
Comprehensive Logging – Track all synchronization activities with detailed logs
Manual Controls – Full manual control over synchronization when needed

How It Works
What Gets Synchronized:
Elementary POS → WooCommerce:
* Product data (name, SKU, price, categories, tax classes)
* Stock quantity changes from all sources (sales, manual adjustments, inventory corrections)
WooCommerce → Elementary POS:
* Product data (name, SKU, price, tax classes)
* Stock quantity changes from orders, at the moment WooCommerce reduces or restores stock for them
* Manual stock adjustments in WooCommerce admin
When Synchronization Happens:
Elementary POS → WooCommerce:
When any stock change occurs in Elementary POS (sale, manual adjustment, etc.), a webhook is sent to WooCommerce.
The plugin processes the update immediately in real-time, updating stock levels in WooCommerce.
WooCommerce → Elementary POS:
When WooCommerce reduces stock for an order – which happens on payment and when the order moves to Processing, On hold or Completed – or when stock is changed by hand in the WooCommerce admin, the change is sent to Elementary POS automatically.
Changes are sent immediately when they occur. If the till cannot be reached, the change is queued and tried again after fifteen minutes and then after an hour. A change that failed within the last twenty-four hours is picked up again whenever new stock activity occurs, so a till that was briefly out of reach costs nothing. Older than that it is left alone – a difference a day old is better repaired by a manual synchronization than applied blind – and after thirty days it is removed. A change Elementary POS refuses outright – it has no item with that SKU, or the unit means nothing to it – is recorded in the log and not retried, because the answer would be the same every time.
Requirements

WordPress 5.8 or higher
WooCommerce 9.1 or higher – the hooks that announce the stock changes an order makes arrived in WooCommerce 7.6 and 9.1. On anything older, stock put back by a cancelled order never reaches the till, and the correction against the till then quietly puts the sold goods back on the shelf
PHP 7.4 or higher
Elementary POS API key
Products must have SKU codes for stock synchronization (product import can work without SKU)

Compatibility

HPOS Compatible – Fully compatible with WooCommerce High-Performance Order Storage
WP Cron – Uses WordPress cron for queue processing (runs every 15 minutes)

Limitations

Decimal Quantities Not Supported – WooCommerce counts stock in whole numbers and cuts a decimal change down rather than rounding it, so a change of half a unit becomes no change at all and 1.5 becomes 1. For items sold by the piece the shop catches up anyway, because the plugin also compares against the quantity the till reports and writes that whole number in; the difference never grows past one item. For an item whose unit in Elementary POS is anything but pieces that correction is deliberately not made – there is no way to turn 2.5 kg into a number of packets, and writing 2 in would wipe the shop’s own count – so there the fraction is lost for good. In the other direction such an item is refused by the till outright and the change is written to the log instead of being retried. A shop selling by weight, length or volume therefore does not synchronize towards Elementary POS at all, and only whole units reach it from the other side.
Stock Synchronization Trigger – WooCommerce → Elementary POS stock synchronization happens when WooCommerce lowers stock for an order, when it puts stock back for a cancelled order or a refund made with “Restock refunded items”, when an item on an existing order is changed or removed, and when stock is changed by hand in the WooCommerce admin. Anything that changes a quantity in the database without going through one of those – some third-party plugins do – is not seen and does not reach the till. If your store has stock management disabled for certain products (e.g., services, digital products), those products will not trigger synchronization to Elementary POS.
Product Visibility and Stock Status – Newly imported products are set as “Visible” in catalog, and catalog visibility is preserved on later imports. For a product that tracks stock, WooCommerce derives the stock status from the quantity, so an item with nothing in stock in Elementary POS – including a newly imported one before stock has been loaded – shows as “Out of Stock”. For a product that does not track stock – a service, a voucher, a made-to-order item – the stock status is yours alone: neither import nor synchronization changes it. Adjust visibility manually after import if you need it different.
Simple Products Only – The plugin imports all products as Simple products (WC_Product_Simple). Products with variants in Elementary POS are imported as single simple products, not as Variable products with variations. If your catalog relies heavily on product variations (size, color, etc.), you will need to manually configure them in WooCommerce after import.
Variable Products Are Not Synchronized – Elementary POS sells single items and has nothing that answers to a variation, so the plugin leaves variable products alone in both directions. A variable product itself is not sent: it is only a heading for its variations, carries no price of its own, and sending it would create an item at zero on the till. Its variations are not sent either, and a quantity sold at the till cannot find its way back to one, because stock is matched by SKU against products alone. Note that WooCommerce shows the parent’s SKU in a variation’s SKU field when the variation has none of its own – that is a placeholder, not a code the variation owns. Grouped and external products are left out of the export for the same reason. To sell variants from the till, keep them as separate items in Elementary POS and as separate simple products in WooCommerce, each with its own SKU.
Category Matching by Name – Categories imported from Elementary POS keep their parent/child structure, but existing WooCommerce categories are matched by name within the same parent. A category renamed in Elementary POS is therefore imported as a new category; the old one stays behind and has to be removed manually.
Categories Cannot Be Created in Elementary POS – When exporting products from WooCommerce, a product is placed in an Elementary POS category only if one with the same name already exists there. The Elementary POS API does not allow creating categories, so products whose category has no counterpart are created without one (this is recorded in the log). Categories of items that already exist in Elementary POS are always left untouched.
Products Restored from the Trash Lose Their Link – A product moved to the Trash keeps its SKU only until something else claims it. When “Move all products to Trash before import” is used, the import creates the products again with the same SKUs, so WooCommerce gives a restored product a new SKU with a suffix (e.g. 704 becomes 704-1). The restored product is therefore no longer matched to its Elementary POS item and is not synchronized; use it to recover descriptions or images, not as a working copy.
Item Names Must Be Unique in Elementary POS – Elementary POS refuses a second item with a name it already has, so two WooCommerce products sharing a name cannot both be exported. The second one is reported as failed, with the explanation from Elementary POS shown in the result.
WP-Cron Limitations – WP-Cron works based on time intervals (e.g., every hour or once a day), but it only runs when someone visits your site. That means if no one opens your website, the task may not run on time but is put to queue and is executed when first visitors load your web.

Support
For support, please visit https://elementarypos.com/en/contact/ or email [email protected]
External Services
This plugin relies on Elementary POS API, a third-party external service, to synchronize product and inventory data between your WooCommerce store and Elementary POS system.
What is Elementary POS API and what is it used for?
Elementary POS API is the cloud-based service provided by Elementary POS that manages your point-of-sale data. This plugin connects to the API to:
* Import products from Elementary POS to WooCommerce
* Synchronize stock levels bidirectionally
* Send WooCommerce order updates to Elementary POS
* Receive real-time stock change notifications via webhooks
What data is sent and when?
The plugin sends data to Elementary POS API in the following situations:
During Product Import (Elementary POS → WooCommerce):
* No data is sent – the plugin only reads product information (SKU, name, price, stock quantity)
During Product Export (WooCommerce → Elementary POS):
* Product name, SKU, price, tax, colour and category
* Whether the product is published
* This occurs when you run an import in the WooCommerce → Elementary POS direction
During Stock Synchronization (WooCommerce → Elementary POS):
* Product SKU codes
* Stock quantity changes
* Timestamp of changes
* This occurs when you run a manual WC→EP synchronization, and whenever WooCommerce changes the stock of a product
During Webhook Registration:
* Your WordPress site URL
* Webhook endpoint URL
* This occurs when you enable automatic synchronization in plugin settings
What the plugin receives from Elementary POS:
* Product information (SKU, name, price, stock)
* Stock change notifications (SKU, quantity delta)
* Webhook status information
API Endpoints Used

Production: https://api.elementarypos.com

The endpoint is fixed when the plugin is built. The version published here always uses the production endpoint above; it is not derived from your API key.
Service Terms and Privacy

Elementary POS Privacy Policy: https://elementarypos.com/en/privacy-policy/

Important: You must have an active Elementary POS account and API key to use this plugin. By using this plugin, you agree to Elementary POS terms of service and acknowledge that data will be transmitted to their API endpoints.
Privacy Policy
This plugin does not collect or store personal user data (names, emails, addresses).
The plugin stores operational data in your database:
* Synchronization logs (timestamps, operation types, product SKUs)
* Queue data for retry operations (product id, SKU, quantity and an identifier for the request – no order or customer data)
All data is stored locally in your WordPress database. No data is sent to third parties except your Elementary POS API endpoint for synchronization purposes. Logs can be cleared manually from the plugin settings.
Deleting the plugin takes all of it with it: the API key, every setting, the logs and anything still waiting in the queue, and it switches the webhook off in Elementary POS on the way out. Deactivating the plugin does not – switch it off and on again and it carries on where it left off. Reinstalling after a delete therefore starts from nothing, with the API key to enter again.

延伸相關外掛

文章
Filter
Mastodon