サブスク契約APIが刷新
SubscriptionContractCalculation 早期アクセス開始
12以上のドラフトMutationを「計算→ポーリング→コミット」の3ステップに集約。チェックアウトエンジンとの統一で、価格・税・割引の一貫性を実現。
このAPIはサブスクリプション契約を作成・更新・編集するアプリに影響します。2026-10リリース候補APIバージョンで早期アクセスが始まり、2026-10で安定版になる予定です。SubscriptionDraftオブジェクトは同バージョンのGA到達後に非推奨となるため、移行計画の検討を今から始めることが推奨されます。
1何が変わったのか:Before / After 図解
2業務に活かせる具体ユースケース
- 課題
- サブスク契約の商品ラインを変更するたびに12以上のMutationを順番に呼ぶ必要があり、実装が複雑でエラーハンドリングが困難だった。
- 打ち手
-
subscriptionContractUpdateCalculateに変更後の契約状態を一括送信し、ポーリングでSuccessを確認してからsubscriptionContractCalculationCommitを呼ぶだけで完結させる。 - 効果
- 実装コードが大幅に削減でき、状態管理の複雑さを排除。部分的な更新失敗によるデータ不整合リスクを低減できる。
- 技術メモ
- 更新時に省略したフィールドは自動的に保持されるため、差分のみ送信すればよい。APIバージョン 2026-10 RC 以降で利用可能。
- 課題
- チェックアウトと定期購入の価格・税計算が別エンジンで動いていたため、購読者が見る価格と実際の課金額が一致しないケースが発生していた。
- 打ち手
- 新APIはShopifyのC1チェックアウトエンジンを共有するため、Commitまでの不変プレビューでライン・配送・税・関税・割引の合計を事前確認できる。
- 効果
- チェックアウト・ドラフトオーダー・定期請求の計算ロジックが統一され、購読者へ表示する金額と請求額の乖離を解消できる。
- 技術メモ
- 元記事には計算不一致が起きていた具体的なケースの詳細記載なし。最終確認は公式ドキュメントを参照のこと。
- 課題
- バンドル商品をサブスクリプション契約に組み込めず、カートトランスフォームや配送カスタマイズFunctionsも契約編集に適用できなかった。
- 打ち手
- 新APIはC1エンジン経由のため、バンドル商品・カートトランスフォーム・配送カスタマイズFunctions・価格・税のアライメントが契約編集でも利用可能になる。
- 効果
- サブスク専用の機能追加を待たずに、チェックアウト新機能を契約編集でも即時活用できる体制になる。
- 技術メモ
- SubscriptionDraftオブジェクトは新APIのGA後も残るが、これらの新機能には対応しない。新機能を使うには移行が必須。
3技術者目線のポイント
| 項目 | 内容 |
|---|---|
| 対象APIバージョン | 2026-10 リリース候補(RC)で早期アクセス開始。安定版も 2026-10 の予定。 |
| 影響を受けるアプリ | SubscriptionDraftオブジェクトを使って契約を作成・更新・編集しているアプリ。契約の読み取りや subscriptionContractActivate / subscriptionContractPause などステータス変更のみのアプリは影響なし。 |
| 新Mutation・Query | Calculate: subscriptionContractCreateCalculate / subscriptionContractUpdateCalculate / subscriptionBillingCycleContractEditCalculate。Poll: subscriptionContractCalculation query または webhooks(subscription_contract_calculations/succeed, subscription_contract_calculations/fail)。Commit: subscriptionContractCalculationCommit。 |
| 移行方針 | 両APIは共存するため段階的移行が可能。ただし本番統合は 2026-10 安定版リリース後まで待つことが推奨されている。 |
| SubscriptionDraftの今後 | 2026-10 GAと同時に非推奨(deprecated)予定。利用は継続できるが、バンドル・Functions連携・新チェックアウト機能などの新機能には対応しない。 |
Calculate Mutationは即時ではなく SubscriptionContractCalculationPending を返す非同期設計。PollingまたはWebhookでSuccessを待ってからCommitする。SuccessとFailureの両Webhookが用意されている。
Shopify公式が全項目をカバーした移行ガイドを公開済み(元記事にリンクあり)。「Migrate to the SubscriptionContractCalculation object」および「Build subscription contracts」ドキュメントを参照。
サブスクリプション契約管理アプリは、12以上のドラフトMutationを3ステップのCalculate-Poll-Commitに置き換えることで、チェックアウトと一貫した価格計算・バンドル・Functions連携が利用可能になります。
Source: https://shopify.dev/changelog/subscription-contract-calculation-api-now-available-in-early-access | 公開日: 2026年7月27日






Share:
ShopifyQLでShop Campaignsの成果データを取得
AIエージェント向けファイルをLiquidでカスタマイズ