管理画面の操作権限カスタマイズの可否について

AI-generated summary

管理画面のスタッフアカウントごとに、商品作成・更新時の販売元や商品ステータスの選択肢を制限できるかが論点です。想定要件は、管理者は全販売元・全ステータスを操作可能、各社スタッフは自社販売元のみ選択・更新可能で、ステータスは下書きのみに限定したいというものです。

投稿者は、スタッフアカウント情報の取得がShopify Plus限定であること、標準の管理画面機能自体の細かな制御は難しいことを把握済みです。Webhook(イベント通知)やメタフィールド、外部DBを使った後処理案も検討されていますが、誰が作成・更新したかを判別しづらく、実現性に課題があるとされています。

回答では、調査内容は概ね正しいとされ、Shopify標準機能では要件実現は難しいという見解です。加えて、複数販売元を扱うmulti vendor構成自体がShopifyの規約上適切でない可能性も指摘されました。

現時点で明確な解決策は出ておらず、代替案としてマルチベンダー向けアプリの利用が候補に挙がっています。

実現したいこと

  • 管理画面のスタッフアカウントに権限を振る

以下例をあげます。

  • 商品を追加する際に販売元を制限する

  • 商品ステータスをアクティブに出来ないようにする

例文

商品出品者をAdmin社、B社、C社がいます。

Admin社は全ての出品者の商品を作成・更新出来る。

B社が商品を作成する場合、販売元がB社のみ更新が可能で、商品作成時には販売元がB社しか選択出来ない。

C社が商品を作成する場合、販売元がC社のみ更新が可能で、商品作成時には販売元がC社しか選択出来ない。

B、C社が商品を作成する場合、商品ステータスを下書きしか選択できない。

Admin社が商品の作成・更新を行う場合、商品ステータスを下書き、アクティブ選択できる

検討したこと

  • そもそもスタッフアカウント情報の取得は「Shopify Plus」契約ストアのみのため出来ない

  • そもそも管理画面機能の制御は出来ない

  • 無理やり実装する場合

  • Shopオブジェクトなどのメタフィールドにユーザーと対象の役割をもたせておき、商品作成後、webhockにて商品ステータスやコレクションを変更する(メタフィールドなどを使用しない場合は開発アプリ側DBに持たせる)

webhockの場合、作成されたproducktオブジェクトがどのスタッフアカウントにより作成、更新されたかわからないと商品情報修正出来ないですけど…

Shopifyに触れて間もなく、わからないことだらけで初歩的な質問であったら申し訳ありません。

実現可否や、代替案などご教授お願いします。

お調べされた形がすべて正しく、実装されたい内容自体がShopifyに載せるのに適切でない内容に思います。

以前コミュニティで議論されていましたが、multi vendorの構成自体がShopifyの規約上NGだそうです。

可能性として、下記のアプリが100%ハマればありな気もします。

https://apps.shopify.com/multi-vendor-marketplace?locale=ja