定期商品と単品商品を同時にカート投入できるリンクの生成方法

1クリックで「定期商品+単品商品」をまとめてカートに入れるURLを作成できます。

例)

https://hb-subscription-sample.myshopify.com/cart/add/?items[][id]=47531587993805&items[][quantity]=2&items[][selling_plan]=1033306317&items[][id]=47505353507021&items[][quantity]=5&return_to=%2Fcheckout

扱う商材によっては、LP(ランディングページ)から初回購入時に関連の単品を同時購入させたい、といったニーズがあります。

しかし、定期購買アプリのBuyLink機能は「定期購入のみ」の追加を想定しており、定期と単品を同時に追加するリンクは作れません。

ShopifyのAJAX Cart APIを使えば実現が可能です。

https://shopify.dev/docs/api/ajax/reference/cart#add

Shopifyの/cart/addに対して、items[] を複数並べたURLを生成します。単品は id(=variant ID)とquantity 、定期にしたいアイテムには selling_plan も付与します。最後に return_to/checkout等へ指定すれば、追加後にそのページへ遷移します。

  1. 定期購買アプリの Buy Link 生成機能で、対象商品とプランを選択してリンクを作成。

  2. 生成されたURL内の selling_plan=xxxxxxxx の数字がプランIDです。→ そのまま本URLに流用します。

  1. 対象商品の商品ページURLを開く例)https://{your-shop}.myshopify.com/products/{商品ハンドル}

  2. クエリパラメータが付与されている場合はクエリパラメータを外し、末尾に .json を付ける例)https://{your-shop}.myshopify.com/products/{商品ハンドル}.json

  3. 返ってくるJSON内の "variants":[{"id":50440022393063, ...}]idvariant ID です。

  • 定期にしたいアイテム:idquantityselling_plan を指定

  • 単品アイテム:idquantity のみ指定

  • 追加後の遷移先:return_to/checkout などをURLエンコードして指定(例:%2Fcheckout

Plaintext
https://{your-shop}.myshopify.com/cart/add
?items[][id]={A_variantId}
&items[][quantity]={A_qty}
&items[][selling_plan]={A_sellingPlanId}
&items[][id]={B_variantId}
&items[][quantity]={B_qty}
&return_to=%2Fcheckout

注意点

こちらは定期購買アプリの機能ではなくShopifyの機能となります。

ご不明点はShopifyへお問い合わせください。