2020年10月、ShopifyはAPIを利用することでアプリを介すことなく、Shopify内でサブスクリプションを導入できるようになりました。そこで、この記事ではShopifyのサブスクリプションの機能について解説します。また、アプリでサブスクリプションを構築・管理するために使用できるツールやリソースについても紹介します。
ソース:詳細な開発者ドキュメント(Shopify公式:英語)
Contents
Shopify(ショッピファイ)でサブスクリプションを使用するための確認事項
Shopify(ショッピファイ)でサブスクリプションを導入する際に必要な確認事項は、次のとおりです。それぞれについて解説します。
- Shopifyの原則
- サブスクリプションAPI
- Shopifyとアプリの責任分担
- サブスクリプション用のアプリのモデリング
- ユーザーエクスペリエンスガイドライン
- 開発者ツールとリソース
- 禁止行為
確認事項①:Shopifyの原則
これから紹介するShopifyの原則は、サブスクリプションをサポートするShopifyプラットフォームの拡張ためのアプローチ方法です。それに加え、API、ユーザーエクスペリエンス、Shopifyとアプリ間の責任分担に関することも含まれています。
チェックアウトの使用でマーチャントのパフォーマンス・統合・持続可能性を保証
チェックアウトは、Eコマースプラットフォームの主要なビジネスルールが集まっている箇所であり、請求額、条件、方法を決定する重要な要素です。また、マーチャントと顧客の間で合意が達成され、お金が交換される場所でもあります。顧客にとってもマーチャントにとってもチェックアウトは、最高水準の質と信頼性を備えている必要があります。
サブスクリプションを導入するマーチャントがShopifyのチェックアウトを使用することで、パフォーマンス・Shopifyの核となる機能、およびアプリのエコシステムとの統合が、現在および将来に渡って保証されます。Shopifyとそのエコシステムの両方が進化するにつれて、チェックアウトはマーチャントの持続可能な商売を、より確実なものへと導いてくれます。
Shopifyサブスクリプションデータのモデリングと保存
マーチャントの成功を最大化するために、Shopifyはマーチャントのビジネスが実際にどのように運営されているかという情報を、モデル化して保存する必要があります。これにより、Shopifyとアプリの両方が重要な情報にアクセスして、マーチャントがビジネスを発展させる手助けを行えるようになります。
次のデータは、マーチャントが行っているビジネスがどのように機能しているか確認するための基本情報です。
- 提供されるサブスクリプションの内容
- 顧客の詳細
- 顧客が購読している製品
- 顧客に提供するサブスクリプションの支払い方法
- 時間の経過とともにサブスクリプションデータがどのように変化しているか
マーチャントの経験を最大限活かすためには、サブスクリプションデータをShopifyに保存する必要があります。主要なビジネスデータを一元管理することはマーチャントにとってメリットであり、複数のシステム間で行う同期コストとそれに伴うリスクを軽減します。
Shopifyサブスクリプションデータをモデリングし保存するメリット
Shopifyは、サブスクリプションデータをモデル化して保存することで、次のような多くのメリットをマーチャントに提供できるようになります。
- 積極的にサブスクリプションを利用している人、新しくサブスクリプションの利用を始めた人、サブスクリプションを解約した人などに関するレポート
- 新規加入者または解約した加入者を対象としたメールマガジンキャンペーン
- 解約者または新規加入者によって作成されるShopifyワークフロー
複数の方法で製品を販売
以前のShopifyでは、製品の種類、製品がどのように販売されるのかが同一のものとして扱われていました。しかし、現在は「何の製品を」「どのように販売するか」を分けて商品化計画が進められています。
これにより、一つの製品を複数の方法で販売することが可能になりました。例えば、製品を1回限りの購入とサブスクリプションの両方で販売できます。
確認事項②:サブスクリプションAPI
Shopifyによって、アプリを利用したサブスクリプションの構築、および管理するのに役立つ次のAPIが提供されています。
- Selling plan APIs(英語サイト):「今すぐ購入」以外の製品を販売する方法。
- Subscription contract APIs(英語サイト):顧客とマーチャント間のサブスクリプション契約。
- Customer payment method APIs(英語サイト):顧客が手動でチェックアウトをする必要なしに将来の注文を行える支払い方法。
確認事項③:Shopifyとアプリの責任分担
次の表は、Shopifyとアプリの間の責任の分担を表しています。責任を分けることで、Shopify側はサブスクリプションエクスペリエンスを提供し、アプリ側は革新的なユーザー向けワークフローとサブスクリプション管理の自動化を提供することが可能になります。
責任 | Shopify | アプリ |
---|---|---|
サブスクリプションビジネスデータをモデル化して保存 | ○ | |
サブスクリプション支払いの請求と処理(最初の購入と更新の両方) | ○ | |
サブスクリプションの請求をスケジュールして自動化 | ○ | |
サブスクリプションの管理画面の提供 | ○ |
確認事項④:サブスクリプション用のアプリのモデリング
次の図は、「マーチャント」「顧客」「Shopify」および「アプリ」の行動に基づくサブスクリプションの流れを表しています。
画像引用元:Shopify subscriptions overview
マーチャントは、製品の販売方法を作成および管理します。顧客はサブスクリプションを購入し、支払方法の変更などの更新をします。
顧客がサブスクリプションを購入すると、Shopifyは最初にトランザクションを作成し、次に注文を作成します。トランザクションと注文が作成された後、Shopifyはサブスクリプション契約を行い、初めの購入時に請求を行います。
その後の顧客の注文は、アプリによって自動化されます。アプリは、APIを使用して既存のサブスクリプション契約に基づいて請求の試行を行います。アプリが請求の試行を行うと、トランザクションと注文が作成されます。
アプリは、サブスクリプションに関するものごとが生じた際にメッセージを受信し、請求の失敗とスケジュールを処理し、顧客と販売者の両方にサブスクリプションの管理画面を提供します。
アプリでサブスクリプションを構築
アプリでサブスクリプションを構築するためには、次の手順が必要になります。
- Plan setup(英語サイト):販売者が商品や多種多様な販売方法を設定および管理できるようにします。
- Plan purchase and checkout(英語サイト):購入の際に顧客へサブスクリプションを表示します。
- Plan post-purchase and subscription management(英語サイト):マーチャントと顧客の間に生じているサブスクリプション契約の状態を管理します。
計画の設定
selling plan API(英語サイト)を使用して、計画を保存し、その計画を製品などに関連付けることができます。販売プランのAPIを使用してShopifyにプランを保存しなければなりません。
計画管理
アプリは、マーチャントがプランを管理できるようにするユーザーエクスペリエンス(UX)を提供します。マーチャントがサブスクリプションアプリの拡張機能を使用することで、商品ページ自体から直接プランを設定できるようにするUXを実装する必要があります。
特定の製品などに関連付けられているプランは、Shopify管理者の製品ページに読み取り専用の状態で一覧表示されます。
購入とチェックアウトの計画
ShopifyがLiquid drops(英語サイト)とProduct Ajax API(英語サイト)を提供していることによって、開発者は購入フローで特定の製品のプランを表示することができます。作成したプランで製品を購入するには、 Cart API(英語サイト)を介してバリアントIDと販売プランIDを送信する必要があります。
チェックアウトと顧客向けUX
チェックアウトは、プランが関連付けられている製品を含んでいるカートの処理を行います。また、価格設定、メッセージ、およびクレジットカードの保管と顧客の同意の処理も行います。
アプリでは、テーマにコードを挿入しサブスクリプションを購入するためのcustomer-facing UX(英語サイト)を提供する必要があります。
サブスクリプション計画
顧客がサブスクリプションを正常に購入してチェックアウトを完了すると、Shopifyはサブスクリプション契約を行います。サブスクリプション契約では、マーチャントと顧客の間の契約を記述します。
契約には、バリアント、プラン、後続の請求に使用される支払い方法、請求先住所、配送先住所などの重要な情報が含まれています。サブスクリプション契約の詳細については、サブスクリプション契約の Create and manage subscription contracts(英語サイト)を参照してください。
※サブスクリプション契約は、当初の計画から切り離されています。元のプランを更新しても、既存のサブスクリプション契約は変更されません。
購入後及びサブスクリプション管理の計画
Shopifyは、各サブスクリプション契約の状態を管理するためのsubscription contract API(英語サイト)を提供します。これにより、Shopifyはサブスクリプションと連動することができます。
アプリは次の工程を処理する必要があります。
- サブスクリプション契約の現状を反映するために、必要に応じてUpdate contracts(英語サイト)を更新。
- 製品のアップグレード/ダウングレード、一時停止、キャンセル、変更などのサブスクリプションを管理するために、customer-facing(英語サイト)と merchant-facing UX(英語サイト)を提供し。
- billing and renewing subscriptions(英語サイト)の自動化を提供。
確認事項⑤:ユーザーエクスペリエンスガイドライン
アプリは、マーチャントがサブスクリプション製品を作成および管理できるようにするための設計を行う責任があります。マーチャントに優れたサブスクリプションの管理画面を提供するために、次のユーザーエクスペリエンスガイドラインを心がけましょう。
マーチャントの既存のワークフローを操作:Shopifyは、サブスクリプションを構築するためのアプリツールを提供します。サブスクリプションには、Shopify管理画面から直接アクセスできます。これにより、マーチャントは使い慣れた箇所からアプリにアクセスできます。
Shopifyにリソースが存在する場合、アプリで複製禁止:複雑なワークフローと重複を減らすために、顧客、割引、製品などShopifyが管理できるリソースは1か所で管理する必要があります。
要件
アプリは、マーチャントがサブスクリプションプランを作成および管理できるように、Argo(英語サイト)を使用してproduct subscription app extension(英語サイト)を構築する必要があります。
Shopifyは、extension modes(英語サイト)を含む製品ページにサブスクリプションアプリの拡張機能を提供します。アプリはこれら拡張モードと統合する必要があります。これにより、マーチャントはタスクを完了したり、Shopify管理画面から直接アプリの機能にアクセスしたりできるようになります。
アプリでは、Customers(英語サイト)とOrder(英語サイト)の詳細ページにサブスクリプションのコンテクスチュアルリンクを含めることもできます。
確認事項⑥:開発者ツールとリソース
サブスクリプションの構築と管理を支援するために、Shopifyは次のツールとリソースを提供しています。
アプリプロキシ
アプリプロキシは、アプリプロキシサーバーからデータを読み込み、オンラインストアのページに表示します。アプリプロキシを使用することで、顧客はショップからサブスクリプションをシームレスに管理できます。
詳細は、Create a secure customer-facing subscription portal(英語サイト)を参照してください。
ストアフロントのLiquidドロップと性質
Liquidドロップとプロパティを使用すると、販売プランとサブスクリプションをストアのテーマに統合することができます。詳細については、Showing selling plan groups and selling plans on a product page(英語サイト)を参照してください。
アプリの拡張機能
Shopify管理画面にアプリのサブスクリプションを表示するには、アプリの拡張機能を使用する必要があります。アプリの拡張機能を使用するには、Getting started building a product subscription app extension(英語サイト)を参照してください。
また、拡張機能の詳細については、Create and manage a product subscription app extension(英語サイト)を参照してください。
禁止行為
下記のものは、販売プランおよびサブスクリプション契約APIの使用に関する禁止行為です。リストは網羅的ではなく、今後も更新される可能性があります。
- 過剰請求:顧客のカードに対する請求は、契約で指定されている場合にのみ行うことができます。どのカードに対しても過剰請求することは禁止です。
- 契約の不適切な更新:サブスクリプション契約は、顧客が同意した内容のみ更新する必要があります。
- 不明確な契約:顧客が何に同意しているかを明確にする必要があります。サイト上には、契約の条件を明確に記載する必要があります。
- 失効した契約:Shopify内で契約が失効しないようにしてください。顧客が契約の変更に同意するとすぐに、更新をShopifyに反映する必要があります。これは、マーチャントが特定のサブスクリプションプロバイダーにロックされないようにするための仕組みです。
- サブスクリプション契約なしの販売プラン:サブスクリプション契約を処理せずに、追加の価格統制のみを行う手段として販売プランを作成しないでください。
- サポートされていない使用法:APIはサブスクリプションをサポートするように構築されています。APIを使用して、インストール、取り置き、予約注文などの他の事柄を解決しないようにしましょう。
上記の禁止事項に従わなかった場合は、Shopify’s API Terms(英語サイト)に違反したことになります。これらの禁止事項は随時更新される可能性があるため、随時確認するようにしましょう。
まとめ
Shopify(ショッピファイ)にサブスクリプションを導入する際に、確認しておくべき事柄を紹介しました。Shopifyは、サブスクリプションに関するサポートに力を入れています。今後導入を考えている方は、今回お伝えしたことを参考にしてみてはいかがでしょうか?
Shopify Guide編集部は、メディア「Shopify Guide」の運営によってShopifyの最新情報やノウハウを常に蓄積してきています。ShopifyでECサイトの新規制作・リニューアル、Web広告などによるプロモーションをお考えの方は、こちらの問い合わせフォームからお気軽にお問い合わせください。