Shopify POSにおけるDiscount Functionsのサポート

Shopify POSアプリのバージョン9.10から、Discount Functionsによって作成された割引が公式にサポートされるようになりました。この記事では、その具体的な実装方法や効果、注意点などを詳しく解説します。

Discount Functionsとは何か?

Shopify Functionsは、Shopifyのサーバーサイドビジネスロジックを拡張または置き換える柔軟性を提供します。Discount Functionsを使用すると、Shopify管理機能で提供されるよりも高度なケースに対応する割引を作成できます。

Discount Functionsを活用することにより以下のような割引設定が可能となります。

  • カスタムメタフィールドや顧客の生涯価値など、ネイティブでは使用できない属性に基づいて割引をトリガーする
  • 「A、B、(CまたはD)を購入すると、Eを無料で得られる」といったより高度な割引の適用条件を作成する
  • ロイヤルティ、ギフトレジストリ、会員資格などの他の機能に割引をリンクする

Shopify Functionのライフサイクルとは?

Shopify Functionのライフサイクルは次のようになります。

  1. アプリ開発者が関数を含むアプリを作成しデプロイします。
  2. 加盟店がそのアプリを自身のShopifyストアにインストールし、関数を設定します。関数の設定に関するAPI呼び出しが行われます。
  3. 顧客がShopifyストアと対話します。例えば、リテール店舗を訪れて製品を購入すると、カートが更新され、店員がチェックアウトを行う際にShopifyが関数を実行します。

今回の変更点は何か?

近月には、割引の組み合わせ機能やBXGY割引コードのサポートなど、Shopify POSの新機能をいくつかリリースしました。これらのリリースにより、より高度なDiscount Functionのシナリオをサポートすることが可能になりました。

今回のv9.10では、Discount Functionsの使用をPOSエコシステムにさらに広げるいくつかの改善をリリースしています。これには、自動割引、Discount Functionをトリガーする割引コードのスマートグリッドタイルの作成、割引コードのエラーハンドリングの改善などが含まれます。

制限事項:

現在、以下のようないくつかの制限事項があります。

  • Discount Functionsは自動的に全ての販売チャネルで利用可能で、特定の入力に基づいて自動的に適用するように設定されたDiscount Functionは、オンラインストアやPOSで資格を持つ注文に適用されます。割引コードを通じて適用されるDiscount Functionsも同様です。
  • 全てのプランのストアは、Shopifyアプリストアを通じて配布される公開アプリを使用できます。ただし、Shopify Plusプランを使用しているストアのみが、Shopify Function APIを含むカスタムアプリを使用できます。

アプリ開発者向けの情報:

  • Shopify Functionsに関する詳細なドキュメントが一般的な内容APIの両方で利用可能です。チュートリアルはこちらにあります。

Shopify管理画面での操作:

  • すでに作成したDiscount Functionsは自動的にPOSで利用可能になります。
  • スタッフがDiscount Functionを活用するためには、その関数をデプロイするアプリで割引を作成する必要があります。
  • Discount Functionsで作成した割引をスマートグリッドタイルリンク可能にするためには、その割引をPOSに「公開」する必要があります。これは、管理画面の「割引一覧」から一括編集で行えます。

店舗での操作フロー:

  • 店舗スタッフにとっては何も変わりません。ネイティブ機能またはDiscount Functionsを通じて作成された割引は、POS上で同じように動作します。
  • Discount Functionsは自動的に適用されるように設定するか、割引コードを入力することでトリガーすることができます。

技術的な情報:

レポート作成:

  • Discount Functionsを通じて作成された割引は、ネイティブ割引と同じタイプ(自動/コード、製品/注文/配送)となります。これらの割引は、ネイティブによるものであるか、Discount Functionsを通じて作成されたものであるかに関わらず、報告対象となります。

参考記事: Discount Functions support on Shopify Point of Sale