6分で読めます Subscriptions
Shopifyチェックアウト UI拡張機能のサブスク価格表示
サブスクリプションのチェックアウトは、商品変更後に誤った継続価格を表示することがあります。原因をチェックアウトエクステンションではなく、セリングプランで特定する方法を説明します。
Shopify の チェックアウト UI エクステンション (checkout UI extension) は、 購読者 が チェックアウト時 に見る 継続価格 を書き換えることはできません。 その金額 は セリングプラン (selling plan) の プライシングポリシー (pricing policy) に由来するため、 商品変更後 に 金額 がおかしく見える場合、 修正すべきは プラン側 であり、 エクステンション側 ではありません。
キャンドル の サブスクリプション を運営する ある販売者 は、 顧客 がより安い 詰め替え用バリエーション に切り替えた後も、 Recurring Subtotal がずっと 初期価格 を表示し続けていたと、 Shopify コミュニティ の スレッド で報告しています。 私たち自身の サポートキュー でも 同様の混乱 が見られます。 90日間 で サブスクリプション のチェックアウト に関する質問 が 13件 あり、 チェックアウト が約束している金額 と 実際に請求される金額 の違い が分からない 販売者 が含まれていました。
継続価格 は実際 どこから来るのか
Shopify はサブスクリプション商品 を セリングプラングループ (selling plan groups) として整理します。 各プラン にはプライシングポリシー があり、 このポリシー には fixed (サブスクリプション全体で 1回だけ 調整する) と recurring (初期期間 が終わった後に 別の調整 を適用する) の 2種類 の形 があります。 チェックアウト は その行 に紐づいた ポリシー をそのまま 読み取ります。
チェックアウト UI エクステンション は その金額 の中ではなく、 隣 に存在します。Shopify のドキュメント では、 これらを チェックアウト のセクション の前後 に配置される ブロック または 静的コンテンツ として説明しています。 価格計算 は UI エクステンション ではなく、 Shopify Functions が別途 処理します。
前回の期限 以降、チェックアウト とアカウント のエクステンション をまだ 監査していないなら、 新しいもの を追加する前に まずそこから 始めるとよいでしょう。
人々 が “商品変更” と呼ぶ 2つのケース
トラブルシューティング を始める前に、 この 2つ を区別してください。 1つは プラン に組み込まれた サイクル の変化 で、 顧客の操作 なしに キャンドル の初期価格 が 詰め替え価格 に変わる ような ケース。 もう1つは 購入者 が サブスクリプション途中 で手動で 商品 を変更する ケース です。上記のフォーラムの事例 は 前者 です。 手動変更 は別の操作 ですが、 その裏側 では 同じ プライシングポリシー のオブジェクト が更新されます。
監査: 何が 壊れているか を見つける
- サブスクリプションアプリ のダッシュボード、 または Admin GraphQL の sellingPlanGroups クエリ から、 商品 の背後 にある セリングプラン を取得し、 その プライシングポリシー を確認します。
- ポリシー が 1つなのか 2つなのか を確認します。 ポリシー が 1つしかない場合、 両方 のサイクル が 同じ金額 を表示・請求する のは 設計通り です。
- 2つの価格 を期待している場合は、 サブスクリプションアプリ を通じて 不足している recurring ポリシー を追加し、 サイクル 1 では 初期価格、 それ以降 のサイクル では 変更後 の価格 を請求する ようにします。
- 変更 を保存し、 実際の テストサブスクリプション注文 を作成し、 問題 が解決したと 誰かに伝える前に、 サブスクリプションアプリ内 で その 次回請求額 を確認します。
- 両方の ポリシー がすでに正しく、 それでも チェックアウト が分かりにくいままであれば、 それは 価格の問題 ではなく 表記の問題 です。 プラン を再度編集する のではなく、 次のセクション に進んでください。
次のマイグレーション の前に 修正しておくべき理由
チェックアウト である価格 を見て、 明細書 では別の価格 を見た購読者 は、 解約したり チャージバック を申請したりすること がよくあります。 これは、 ストア がサブスクリプションアプリ を移行する タイミング でちょうど表面化しがちです。
価格 とは無関係 に 支払い方法 だけが壊れた サポートチケット も見てきました。 例えば、 決済プロバイダー を切り替えた後の “iDEAL/Mollie payments not working” という質問 です。 これは 別の障害 であり、 個別に 確認する 価値 があります。
そもそも マイグレーション に価値 があるかどうか 検討している場合は、 私たちのサブスクリプションコストの内訳 で、 ほとんどのストア が見落としている 手数料 を確認できます。
金額 は正しいが 表記 が正しくない場合
Shopify のネイティブな 価格モデル の上に 構築されたアプリ は、 Shopify と同じ方法 で 変更内容 を保存します。 例えば Progus Subscriptions は、 各プラン のプライシングポリシー を 調整タイプ と 調整値 のペア として 保持しており、 これは チェックアウト が読み取る のと同じ オブジェクト です。 そのため、 どのアプリ がサブスクリプション を管理していても、 上記の 監査手順 は同じように機能します。
請求額 自体 がすでに正しく、 変更前 に 追加の説明 を表示したいだけであれば、 開発者 が 注文概要 の近くに チェックアウト UI エクステンション を追加できます。 これは metafield に保存された 将来の価格 を読み取り、 注釈 として表示できます。 この注釈 は Recurring Subtotal の行自体 を変更する ものではなく、 その隣にある 疑問 に答えるだけです。
Shopify は、 情報、 配送、 支払い の各ステップ におけるチェックアウト UI エクステンション を Shopify Plus プラン のストア に限定 しています。 注文概要 付近のエクステンション は異なるターゲットタイプ (target type) に従うため、 誰かに約束する前に、 正確な配置 を確認してください。
まとめ
チェックアウト UI エクステンション は 表示レイヤー であり、 価格計算エンジン ではありません。 金額 がおかしく見える場合は、 まず セリングプラン のプライシングポリシー を確認し、 請求額自体 が正しい と確認できてから 初めて、 独自のエクステンション を構築してください。
サブスクリプションアプリ は、 買収、 マイグレーション、 プロバイダー による 機能の廃止 などによって、 ほとんどの加盟店 が 想定している 以上に 頻繁に変化します。 これらのイベント の後には、 プライシングポリシー と 支払い方法 の設定 をそれぞれ個別に 再テストしてください。 片方 が壊れても、 もう片方 は影響 を受けないことがあるためです。
FAQ
チェックアウト UI エクステンション で誤った 継続価格 を隠すことはできますか?
いいえ。 チェックアウト UI エクステンション は チェックアウト の中核機能 の隣に コンテンツ を追加するだけで、 その行 を削除したり 上書きしたりすることはできません。 隣に注釈 を置くことはできますが、 ネイティブの価格 は表示されたままです。
2段階の サブスクリプション価格 を修正するのに 開発者 は必要ですか?
ポリシー 自体 については 通常不要 です。 ほとんどの サブスクリプションアプリ は、 自身のダッシュボード から 初期価格 と 更新価格 を設定できます。 カスタムコード が必要になるのは、 チェックアウト内 に追加の注釈 を表示する場合 だけです。
チェックアウト を修正すれば、 Thank you ページ も修正されますか?
いいえ。 Thank you ページ はチェックアウト とは別の エクステンションターゲット を使用しているため、 プライシングポリシー を修正した後、 個別に確認する 必要があります。
これは Shopify Plus 限定の修正 ですか?
一部だけ です。 情報、 配送、 支払い のステップ にあるエクステンション には Plus が必要ですが、 注文概要 付近のエクステンション は別のターゲット に従うため、 まず 正確な配置 を確認してください。
修正 によって 実際に正しく請求されたこと をどう確認しますか?
プライシングポリシー を変更した後、 実際の テストサブスクリプション注文 を作成し、 チケット を閉じる前に、 サブスクリプションアプリ のダッシュボード で その次回請求額 を確認してください。
Shopify で定期購入を販売. Subscriptions について ›