Shop UserメタフィールドをFunctionsで読み取る
チェックアウト中に購買者の属性データへアクセスし、パーソナライズされたロジックを実装
Shopifyのクロスマーチャント購買者ID「Shop User」のメタフィールドを、チェックアウト実行中にShopify Functionsから直接読み取れるようになりました。Shop Userメタフィールドを活用しているパートナーが対象で、2026年6月13日より利用可能です。購買者属性に基づくダイナミックなチェックアウトロジックの構築が可能になります。
OVERVIEW01Shop UserとメタフィールドとFunctions — 3つを繋ぐ仕組み
まず3つの概念を整理します。
Shop User
Shopifyが提供するクロスマーチャント(複数ストア横断)の購買者ID。Shopアプリなどを通じて一意に識別される買い物客のアカウント。
Shopifyが提供するクロスマーチャント(複数ストア横断)の購買者ID。Shopアプリなどを通じて一意に識別される買い物客のアカウント。
メタフィールド
任意のキーバリュー形式で拡張データを保存する仕組み。パートナーはShop Userにカスタム属性(会員ランク・ポイント残高など)を付与できる。
任意のキーバリュー形式で拡張データを保存する仕組み。パートナーはShop Userにカスタム属性(会員ランク・ポイント残高など)を付与できる。
Shopify Functions
チェックアウトの割引・配送・バリデーションなどのビジネスロジックをサーバーレスで実行するShopifyの拡張基盤。
チェックアウトの割引・配送・バリデーションなどのビジネスロジックをサーバーレスで実行するShopifyの拡張基盤。
02業務に活かせる具体的なユースケース
- ユースケース①: 会員ランク連動の自動割引
- 課題: ロイヤルティプログラムのランク(ゴールド・シルバーなど)に応じた割引を、チェックアウト時に自動適用したい。
- 打ち手: Shop UserのメタフィールドにランクデータをパートナーAPIで書き込み、Functionsの割引ロジックでチェックアウト時に読み取って動的に割引率を決定する。
- 効果: 複数ストアに跨る購買者のランクを一元管理しつつ、クーポンコード不要の自動割引体験を提供できる。
- 技術メモ: Discount Function内のGraphQLクエリでShop Userのmetafieldノードを指定して読み取る。詳細は公式ガイド参照。
- ユースケース②: 購買者属性による配送方法のフィルタリング
- 課題: 法人会員や特定セグメントの購買者にのみ、特定の配送オプション(翌日配送・大口専用便など)を表示したい。
- 打ち手: Shop Userのメタフィールドに「is_corporate=true」などのフラグを保持し、Delivery Customization Functionで読み取って配送オプションを動的に絞り込む。
- 効果: 全購買者に対して不要な配送オプションを非表示にでき、チェックアウトのUXを整理しつつ法人対応を自動化できる。
- 技術メモ: Delivery Customization Functionはチェックアウト時に実行されるため、Shop Userメタフィールドの読み取りが本機能の対象となる。
- ユースケース③: 複数ストア横断の購買制限チェック
- 課題: 限定品の購入回数制限を複数ストア横断で管理し、チェックアウト時にリアルタイムでバリデーションしたい。
- 打ち手: Shop Userのメタフィールドに購入済み回数をパートナー側で記録し、Cart/Order Validation Functionで読み取って上限超過をブロックする。
- 効果: 転売対策や数量限定販売のルール適用を、クロスストアで一貫して自動実施できる。
- 技術メモ: メタフィールドへの書き込みはFunctions側からは行えないため、購入完了後の更新は別途Webhook等でパートナーAPI側で処理する必要がある。
03開発者が押さえるべき技術ポイント
| 項目 | 内容 | 備考 |
|---|---|---|
| 対象 | Shop Userにメタフィールドを利用しているパートナー | 全マーチャント向けではなくパートナー限定の言及 |
| 利用可能時期 | 2026年6月13日より | Developer Changelog掲載日 |
| 読み取り対象 | チェックアウト時にShopify FunctionsからShop Userのメタフィールド | 書き込みについての記載なし |
| APIバージョン | 記載なし | 公式ドキュメントで要確認 |
| 公式ガイド | Shop User metafields guide | 実装詳細はこちらを参照 |
🔒 メタフィールドの読み取り専用性に注意
Functionsはステートレスな実行環境です。元記事にはFunctionsからの書き込みについて記載がないため、メタフィールドの更新はFunctionsの外側(Admin API・Webhook等)で行う設計が必要です。
Functionsはステートレスな実行環境です。元記事にはFunctionsからの書き込みについて記載がないため、メタフィールドの更新はFunctionsの外側(Admin API・Webhook等)で行う設計が必要です。
🌐 クロスマーチャントIDとしての活用
Shop Userは複数ストアを横断する購買者IDです。パートナーがメタフィールドを一元管理することで、マルチストア構成でも統一された購買者属性データをFunctionsに渡せます。
Shop Userは複数ストアを横断する購買者IDです。パートナーがメタフィールドを一元管理することで、マルチストア構成でも統一された購買者属性データをFunctionsに渡せます。
Shop Userメタフィールドのチェックアウト内読み取りにより、複数ストアを横断する購買者属性を活用したパーソナライズされた割引・配送・バリデーションロジックを、外部API依存なしにShopify Functionsだけで構築できるようになりました。
Source: https://shopify.dev/changelog/shop-user-metafields-in-shopify-functions | 公開日: 2026年6月13日






Share:
Partner API新機能: アプリ購読キャンセルmutation