WCPOS ATUM 連携
ATUM Multi-Inventory を WCPOS Pro と連携し、販売時点でロケーション別の在庫、価格、SKU を利用できるようにします。
ATUM Multi-Inventory では、商品の在庫を倉庫や小売店舗など複数の在庫ロケーションに分割できます。このプラグインは、それらの ATUM ロケーションを WCPOS Pro の店舗に接続し、各 POS 端末が物理ロケーションに合った在庫数、価格、SKU を表示できるようにします。
機能
ロケーション別在庫
各店舗は WooCommerce の合計在庫ではなく、割り当てられた ATUM 在庫ロケーションから在庫数量を取得します。
柔軟な価格設定
WooCommerce の標準価格、WCPOS Pro の店舗別価格、または ATUM のロケーション別価格から選択できます。
ロケーション SKU
必要に応じて、POS で商品のメイン SKU を ATUM のロケーション別 SKU に置き換えます。
監査可能な在庫移動
注文は正しい ATUM ロケーションで在庫を減算および復元し、atum_inventory_orders に完全な監査履歴を残します。
商品編集の書き戻し
POS で行った在庫、価格、SKU の編集を、そのロケーションに対応する ATUM 在庫行へ同期します。
インストール
ATUM と Multi-Inventory をインストール
ATUM Inventory Management と ATUM Multi-Inventory アドオンをインストールします。ATUM で在庫ロケーションを設定してください。
WCPOS ATUM 連携をインストール
WP Admin > POS > 設定 > 拡張機能 からインストールするか、GitHub リリースページから最新リリースをダウンロードして プラグイン > 新規追加 > プラグインのアップロード からアップロードします。
店舗を ATUM ロケーションにマッピング
POS > 店舗 に移動し、店舗を編集して ATUM 在庫サイドバーセクションを設定します。店舗が使用する在庫ロケーションを選び、価格ソースを選択し、必要なら SKU 上書きを有効にします。
店舗設定
このプラグインは、WCPOS Pro の店舗エディターのサイドバーに ATUM 在庫セクションを追加し、店舗ごとに3つの設定を提供します。
- 在庫ロケーション — この店舗が在庫を取得する ATUM ロケーション。
- 価格ソース — 商品価格の取得元:
- デフォルト — WooCommerce の標準価格
- WCPOS Pro — WCPOS Pro で設定した店舗別価格
- ATUM — ATUM 在庫のロケーション別価格
- SKU 上書き — 商品のメイン SKU の代わりに、ATUM のロケーション別 SKU を使用できます。
POS の動作
店舗に ATUM ロケーションが割り当てられている場合、POS に提供される商品データは自動的に調整されます。
- 在庫数量 は WooCommerce の合計在庫ではなく、特定ロケーションの在庫を反映します。
- 在庫ステータス はそのロケーションの数量に基づいて再計算されます。
- 価格 は設定された価格ソースから取得されます。
- SKU は上書きが有効な場合、ATUM ロケーション SKU に置き換えられます。
すべての調整は WCPOS REST API を通じて透過的に行われます。POS アプリ側の変更は不要です。POS から行った商品編集も、対応する ATUM 在庫行に書き戻されます。詳しくは下の商品編集の書き戻しを参照してください。
在庫管理
ATUM ロケーションがマッピングされた店舗で POS 注文が作成される場合、プラグインは ATUM 本来の在庫減算フローに書き込みを任せつつ、正しいロケーションへ誘導します。
- REST ペイロードへの注入。 POS が注文を作成または更新するとき、プラグインは各明細に
mi_inventoriesエントリを注入し、ATUM がどのロケーションから在庫を引くべきか分かるようにします。これがないと ATUM はメイン在庫にフォールバックします。 - ロケーション単位の在庫フィルター。 プラグインは ATUM の候補在庫リストを、店舗にマッピングされたロケーションタームに紐づくものだけに絞り、減算時と復元時の両方で正しい在庫が選ばれるようにします。
実際の在庫変更は注文と返金時に ATUM 自身が行い、実際の order_id を含む行を atum_inventory_orders に書き込むため、ATUM の監査履歴が保たれます。
商品編集の書き戻し
レジ担当者または管理者が POS から商品やバリエーションを編集すると、その変更は WooCommerce のメイン商品だけでなく、その店舗ロケーションにマッピングされた ATUM 在庫行へ同期されます。これにより、各ロケーションの在庫、価格、SKU が WP Admin で手動更新しなくても ATUM と同期されます。
書き戻しは、store_id を含む WCPOS 商品およびバリエーション REST 更新(POST、PUT、PATCH で /wcpos/v1/products/... へ送信)で発火します。プラグインは店舗にマッピングされた ATUM ロケーションを検索し、そのロケーションの在庫行だけを更新します。他のロケーションは変更されません。
同期される内容
書き戻しは各店舗の設定を尊重し、店舗が実際に所有するデータだけを ATUM 側で変更します。
| フィールド | 同期される条件 |
|---|---|
| 在庫数量 | 常に同期。ATUM ロケーションがマッピングされた各店舗は、自分のロケーション行を同期状態に保ちます。 |
| 通常価格 / セール価格 / 価格 | 店舗の 価格ソース が ATUM に設定されている場合のみ。 |
| SKU | 店舗で SKU 上書き が有効な場合のみ。 |
店舗が デフォルト または WCPOS Pro の価格を使用する場合、ATUM の価格フィールドは変更されません。そのため ATUM は真の価格ソースではなく参照価格として残ります。SKU 上書きが無効な場合も同様です。
書き戻しを発火しないもの
- 商品作成。書き戻しは更新のみで、新規商品は WooCommerce の通常保存パスを通ります。
store_idのないリクエスト。POS がどのロケーションへ書き込むかをプラグインに伝える必要があります。- ATUM ロケーションがマッピングされていない店舗。
- 店舗ロケーションに対応する既存の ATUM 在庫行がない商品。プラグインは新しい在庫行を作成せず、既存行のみ更新します。
要件
関連
- マルチストア — 店舗別価格、住所、レジ担当者の割り当て
- ソース: github.com/wcpos/wcpos-atum