Storefront APIに新たにcheckoutChargeAmount及びremainingremainingBalanceChargeAmountフィールドが追加

ショッピングプラットフォームであるShopifyでは、常に新たなAPIの変更が行われ、その都度開発者がそれに対応していかなければなりません。今回の記事では、GraphQL Admin APIバージョン2022-04において、checkoutChargeAmountremainingBalanceChargeAmountという新たなフィールドがsellingPlanAllocationに追加されたことについて解説します。

課題の定義と現状分析

これまでのShopifyでは、商品バリアントの価格を一度に支払うことが必須でした。しかし、一部のECサイトでは、商品価格の一部を先払いし、残りを後日支払うという形式が採用されています。これに対応するためには、現状のAPIだけでは不十分であり、新たなフィールドの追加が必要となります。

技術的ソリューションの提案

この問題に対するソリューションとして、Shopifyは新たにcheckoutChargeAmountremainingBalanceChargeAmountという2つのフィールドを提供します。これらのフィールドは、商品バリアントの価格のうち、どの部分を先払いするか、どの部分を後日支払うかを示すものです。

実装手順とコード例

これらの新たなフィールドを使用するには、GraphQLのクエリを以下のように記述します。

{
  product(id: "gid://shopify/Product/1234567890") {
    sellingPlanAllocations(first: 10) {
      edges {
        node {
          checkoutChargeAmount {
            amount
            currencyCode
          }
          remainingBalanceChargeAmount {
            amount
            currencyCode
          }
        }
      }
    }
  }
}

パフォーマンス・コスト分析

新たに追加されたフィールドは、商品の価格情報をより詳細に管理することが可能になります。これにより、従来一度に全額を支払う必要があった商品の価格を、一部を先払い、残りを後日支払うという形式に変更できます。これにより、ユーザーの購買体験を向上させることが期待できます。

実装時の注意点・ベストプラクティス

ただし、現在これらのフィールドはextend_selling_plans_apiというベータフラグの下で制限されています。そのため、本番環境で使用する前には必ずテストを行い、問題がないことを確認してください。

次のステップ・発展案

今回のAPIの変更により、商品の価格をより柔軟に管理することが可能になりました。今後は、この新たなフィールドを活用して、ユーザーにとってより良い購買体験を提供できるような機能の開発を進めていくことが期待されます。

参考記事: new checkoutChargeAmount and remainingBalanceChargeAmount fields on Storefront API