Feature · 中央在庫プール

複数ショップの在庫を、1つの中央在庫にまとめる。

メルカリShops で売れた瞬間に、BASE と Shopify の在庫を手で減らす。 そんな運用を続けていると、忙しい日に必ず二重販売が起きます。 UriUri は、全チャネルの在庫を 1つの中央在庫プール にまとめ、受注確定で一発で減算する設計です。

想定している販売チャネル

UriUri は最大 11 チャネルを横断する設計です。連携モードはチャネルによって異なります。

API 連携

メルカリShops(Public API)、BASE、Shopify、楽天 RMS、Yahoo!ショッピング、Amazon SP-API。

手動運用支援

ヤフオク、ラクマ、Creema、minne。公開 API がないため、通知 + 1タップ完了で支援。

CSV / 手入力

対面販売、Instagram DM 経由、自社サイト独自カート、その他のチャネル。

出品の集約

「1つの商品マスター + N 個の出品」設計で、同じ商品を複数チャネルに出してもデータは1つにまとまります。

同期ポリシー4種

在庫が動いたとき、他チャネルに何をするかは商品ごとに選べます。

auto_reduce他チャネルの在庫を自動で減算する。同じ商品を量産する事業者向け。
pause_others_on_sale片方で売れたら他チャネルの出品を停止対象として通知。1点物のデフォルト。
allocate_fixedチャネルごとに固定数を割り当てる。「Shopify 5 個、メルカリ 3 個」など。
manual自動同期せず、UriUri を見ながら手動で操作する。最小構成。

在庫は元帳方式

在庫数を直接 UPDATE することはありません。すべての増減は inventory_movements に記録され、inventory_pools の集計列が atomic に更新されます。これにより「いつ・どのチャネルの・どの受注で・何個減ったか」が永久に追跡できます。経理上も会計上も、ここがブレないことが重要です。

二重販売を防ぐ仕組み

  1. 1
    受注確定の瞬間に在庫予約
    受注を確定するトランザクションで中央在庫が予約され、他チャネルから見える数量が即座に変わります。
  2. 2
    他チャネルへの同期タスクを enqueue
    停止すべきチャネルへの同期タスクが裏で投入されます。
  3. 3
    API 連携チャネルは自動で反映
    BASE / Shopify などは API 経由で在庫を更新、Webhook で結果を確認します。
  4. 4
    手動チャネルは通知で完了
    Creema / minne / ヤフオク等は「停止してください」の通知が出て、1タップで完了マーク。

中央在庫運用を始める

Closed Beta で順次公開中。ローンチ通知で先行案内をお送りします。