2025年7月30日、新しいBOX機能がリリースされました。
2026年9月末、従来のBOX機能は廃止予定です。
→延期となりました。2027年年明けごろの廃止を予定しております。
従来のBOXを契約しているお客様のご契約を、新しいBOX契約に移行するための方法を記載します。
Shopify の仕様上、移行した注文の配送方法はすべて
Subscription shipping (0.0 kg)となります。ご利用の OMS で正常に処理できるか、必ずテスト注文で確認してください。
※親商品・子商品は新BOX用に新たに作成し直してください
(親商品は必ず作成し直す必要があります。子商品を使いまわすと商品ページ上に旧・新両方のプランが表示されることになるため、新たに作成し直すことを推奨しております。)
Shopify商品管理画面にて、販売チャネルから「オンラインストア」を外さないでください。プラン作成などができなくなります。
新BOX機能:親商品の固定金額で販売する(バリエーション商品をまとめて表示する)
テストストアにて挙動をご確認いただけます! 本ページの設定でできるようになること --- こちらのページの設定を行うことで、商品は下記の状態となります。 - お客様自身が好きな商品を組み合わせることが可能 - 子商品の組み合わせに関わらず、常に親商品の価格(=固定の金額)で販売できる - バリエーション商品をまとめて表示(セレクトボックスから選択可能) ※バリエーションを個々に表示させたい場合はこちら - 2個セットと、4個セットなど、セット個数を選択できる ⚠️注意事項 --- ◼︎決済方法について - Shopify公式のSubscriptionAPIに則り、サブスク商品購入時に利用できる決済方法は 気基本的にShopifyペイメントとPaypalのみとなります。 ◼︎アプリ・機能との干渉について - 「Checkout Blocks」利用の場合、「カート画面における数量編集を許可する」を無効にしてください →有効になっている場合、チェックアウト画面上で商品の数量変更が可能となります。その結果、BOXで設定された規定数と異なる数量で購入されてしまい、 BOXの構成と注文内容に不整合が発生
定期購買アプリDEMOストア
新BOX機能:親商品の固定金額で販売する(バリエーション商品を個々に表示する)
テストストアにて挙動をご確認いただけます! 本ページの設定でできるようになること --- こちらのページの設定を行うことで、商品は下記の状態となります。 - お客様自身が好きな商品を組み合わせることが可能 - 子商品の組み合わせに関わらず、常に親商品の価格(=固定の金額)で販売できる - バリエーション商品を個々に並べて表示 ※バリエーションをまとめて表示させたい場合はこちら - 2個セットと、4個セットなど、セット個数を選択できる ⚠️注意事項 --- ◼︎決済方法について - Shopify公式のSubscriptionAPIに則り、サブスク商品購入時に利用できる決済方法は っ基本的にShopifyペイメントとPaypalとなります。 ◼︎アプリ・機能との干渉について - 「Checkout Blocks」利用の場合、「カート画面における数量編集を許可する」を無効にしてください →有効になっている場合、チェックアウト画面上で商品の数量変更が可能となります。その結果、BOXで設定された規定数と異なる数量で購入されてしまい、 BOXの構成と注文内容に不整合が発生する可能性があります。 - バ
定期購買アプリDEMOストア
新BOX機能:子商品の合計金額で販売する(バリエーション商品をまとめて表示する)
テストストアにて挙動をご確認いただけます! 本ページの設定でできるようになること --- こちらのページの設定を行うことで、商品は下記の状態となります。 - お客様自身が好きな商品を組み合わせることが可能 - 子商品の合計金額で販売 - バリエーション商品をまとめて表示(セレクトボックスから選択可能) ※バリエーションを個々に表示させたい場合はこちら - 2個セットや4個セットから選べる ⚠️注意事項 --- ◼︎決済方法について - Shopify公式のSubscriptionAPIに則り、サブスク商品購入時に利用できる決済方法は 気基本的にShopifyペイメントとPaypalのみとなります。 ◼︎アプリ・機能との干渉について - 「Checkout Blocks」利用の場合、「カート画面における数量編集を許可する」を無効にしてください →有効になっている場合、チェックアウト画面上で商品の数量変更が可能となります。その結果、BOXで設定された規定数と異なる数量で購入されてしまい、 BOXの構成と注文内容に不整合が発生する可能性があります。 - バンドルアプリはサブスク注文に対応しておりま
定期購買アプリDEMOストア
新BOX機能:子商品の合計金額で販売する(バリエーション商品を個々に表示する)
テストストアにて挙動をご確認いただけます! 本ページの設定でできるようになること --- こちらのページの設定を行うことで、商品は下記の状態となります。 - お客様自身が好きな商品を組み合わせることが可能 - 子商品の合計金額で販売 - バリエーション商品を個々に並べて表示 ※バリエーションをまとめて表示させたい場合はこちら - 2個セットや4個セットから選べる ⚠️注意事項 --- ◼︎決済方法について - Shopify公式のSubscriptionAPIに則り、サブスク商品購入時に利用できる決済方法は 気基本的にShopifyペイメントとPaypalのみとなります。 ◼︎アプリ・機能との干渉について - 「Checkout Blocks」利用の場合、「カート画面における数量編集を許可する」を無効にしてください →有効になっている場合、チェックアウト画面上で商品の数量変更が可能となります。その結果、BOXで設定された規定数と異なる数量で購入されてしまい、 BOXの構成と注文内容に不整合が発生する可能性があります。 - バンドルアプリはサブスク注文に対応しておりません。 - 本機能と2回目
定期購買アプリDEMOストア
今までと同じ構成で新BOX設定を行う場合は下記を参照ください。
旧BOXと同じ構成で新BOX設定するための手順
概要 こちらは、旧BOXから新BOXに移行されるストア様が、旧BOXと同じ構成の新BOX設定を迷わず行うための記事です。 手順 1. 旧BOX設定内容を確認する 1. 定期購買アプリ>旧BOX設定 より、運用中のBOX設定を開く。 2. BOXの金額設定が、親の固定金額・子の合計金額どちらになっているかを確認しメモする。 3. 現在開いているBOXに紐づいているプラングループを確認しメモする 4. BOXのタイトル・説明をメモする 5. 親の商品設定にて、親商品とバリエーション・選択個数の組み合わせを確認しメモする 6. 親の商品設定>商品の設定 をクリックし、検索窓に表示されているID群を全選択しコピーする。テキストエディターなどに貼り付けて保存しておく 例:id:9003943526631 OR id:9301723087079 OR id:9301723185383 OR id:9301723218151 OR id:9301723250919 OR id:9401816187111 OR id:9401829753063 OR id:9401829785831 OR id:94
これにより、既存契約は存続しつつ、新規契約が旧ボックスで作成されることを防ぐことができます。
定期購買アプリURLの末尾の
subscription-test5/より後を削除し、/transferを追記してアクセスします。
例:https://admin.shopify.com/store/xxxxxxxx/apps/subscription-test-5/transfer
表示されたフォームに必要事項を入力・送信すると即時で移行機能が有効化されます。 ページを再読み込みすると、移行専用画面が表示されます。
2-1. 定期購買一覧>エクスポートを開く
2-2. 下記の内容でエクスポートを行う
・エクスポート単位:契約単位
・エクスポート期間:契約期間で指定
・期間:カスタム アプリを導入してから今日までの全期間
・送信先メールアドレス:任意
(※未登録の場合は画面右側よりメールアドレス登録を行う)
・フィルタ:プラングループ BOXに紐付けているプラングループを選択
3-1. 『サンプルフォーマット』をダウンロード
下記箇所から、移行用のCSVテンプレートをダウンロードしてください。
3-2. 顧客ID、商品バリアントID、プランIDデータの取得
下記画像にて示している箇所にて、Shopifyが保持する以下の情報をエクスポートし、CSV作成に使います。
顧客ID(Customer ID)
商品バリアントID(Variant ID)
プランID(Selling Plan ID)
3-3. インポート用CSVを整形
次の2つのデータを使って、手順3-1でダウンロードした「サンプルフォーマット」に必要な情報を入力・整形してください:
「旧BOX契約データ」 (
2. 旧BOX契約のエクスポートでエクスポートしたもの)顧客ID、商品バリアントID、プランIDデータ (
3-2. 顧客ID、商品バリアントID、プランIDデータの取得でエクスポートしたもの)
移行フォーマットの項目一覧はこちらをご確認ください。
定期購買アプリ移行フォーマットの項目詳細 | Notion
顧客ID
tough-saturn-45a on Notion
項目 | データ移管フォーマット項目 | 参照すべきもの | 備考 |
|---|---|---|---|
A | 顧客ID | 契約単位エクスポートデータB列 / 顧客一覧エクスポートA列の形式 |
|
B | 手動決済フラグ | - | 通常決済契約: 空欄通 ※特殊な決済をご利用される店舗様はお問い合わせください。 |
C | カード下4桁 | - | 顧客の決済方法のうち、特定のクレジットカードを日もづけたい場合にのみ選択。BとCを両方入力するとエラーとなります |
D〜G | 購入間隔 / 購入間隔数 / 最低購入回数 / 最高購入回数 | プラン一覧エクスポートD〜G列 | 移行先BOXのプラン設定に合わせる |
H | 次回決済日時 | 契約単位エクスポートデータR列 | 必ずフォーマットの形式に変更。 フォーマット通りの時間だと日本時間0時付近に注文発生。必要に応じ変更 例)2026-01-01T00:00:00+09:00 →2026年1月1日日本時間0時に注文発生 2025/08/23 03:00:00に注文作成したい場合は、 |
I | 決済回数 | 契約単位エクスポートデータP列 | 「現在何回決済完了しているか」を入力 |
J | 通貨コード | - | 日本円: "JPY"、米ドル: "USD"。 ※必ずデフォルト通貨を入力。 |
K | ステータス | 契約単位エクスポートデータC列 | - |
L | 配送先名 | 契約単位エクスポートデータAI列 | - |
M | 配送先姓 | 契約単位エクスポートデータAH列 | - |
N | 発送先住所 | 契約単位エクスポートデータAF列 | O列の内容と重複する場合は、要調整 |
O | 配送先建物名 / 部屋番号など | 契約単位エクスポートデータAG列 | - |
P | 配送先市区町村 | 契約単位エクスポートデータAF列参照 | 都道府県、市区町村部分のみを記載 |
Q | 配送先都道府県コード | - | ISO 3166-2を参照。 |
R | 配送先国/地域コード | - | ISO 3166-1を参照。日本はJP |
S | 配送先郵便番号 | 契約単位エクスポートデータAE列 | - |
T | 配送先電話番号 | 契約単位エクスポートデータAD列 | - |
U | 配送価格 | プラン設定>移行先のプラングループ設定を参照 | ・移行先のプラングループにて「定期購買の送料を無料にする」にしている場合は0を入力 |
V | 割引タイトル | - | ※プラン割引の場合には利用しない 注文全体へ割引を適用したい場合に利用。 例) ・「すべての定期的な支払いにディスカウントを適用する」の代替 ・ |
W | 割引価格 | - | Uの割引が、定額割引の場合(固定金額の割引)に入力 |
X | 割引パーセント | - | Uの割引が、割合での割引(%割引)の場合に入力 |
Y | 商品1ID | 商品一覧エクスポートA列 | 移行先のプラングループに紐づけた商品にしてください |
Z | 商品1プランID | プラン一覧エクスポートA列 | 親の固定金額で販売する場合: 親商品は[BOX]のついていないプラン、子商品は[BOX]のついているプランを選択してください |
AA | 商品1価格 | プランに割引を設定している場合は、プラン割引後の金額(契約詳細画面上に表示されている金額)を入力してください 親の固定金額で販売する場合:子商品は0円と入力してください | |
AB | 商品1個数 | - | BOX内の合計個数がずれないようにだけ要注意 |
AC | 商品1割引タイトル | - | ※プラン割引の場合には利用しない 商品へ割引を適用したい場合に利用。 例) ・「すべての定期的な支払いにディスカウントを適用する」の代替 |
AD | 商品1割引価格 | - | AB列の割引が、定額割引の場合(固定金額の割引)に入力 |
AE | 商品1割引パーセント | - | AB列の割引が、割合での割引(%割引)の場合に入力 |
AF | 商品1LineItemPropertyのkey | - | 商品にLineItemPropertyを紐づける必要がある場合にのみ使用してください ※親商品のLineItemPropertyのkeyとしてこちらを入力
|
AG | 商品1LineItemPropertiesのvalue | - | 商品にLineItemPropertyを紐づける必要がある場合にのみ使用してください ※親商品のLineItemPropertyのvalueとしてBOX販売設定名(例: 15個セット)を入力してください |
※親商品+子商品の種類分、入力を行ってください。
ポイント
一般設定>決済設定にて 指定金額を超えた場合の割引 を設定している場合
→CSVファイル上には記載不要です。次回決済直前に「指定金額を超えた場合の割引」対象かどうかのチェックが走り、対象であれば割引が適用されます。
移行に使用するCSVは、すべての列が必要です。列の欠落はエラーとなります。
空白列を自動的に詰める仕様になっているツールもありますので、テキストエディターでダウンロードいただくのが無難です。
4-1. フォーマットの先頭行を含んだ状態で、作成したデータをダウンロードする。
※ 文字化けが発生した場合は、「CSV UTF-8(コンマ区切り)」にて保存してください。
4-2. ダウンロードしたCSVファイルをテキストエディタで開く。
4-3. 不要な先頭行の内容を削除する
4-4. 下記状態になれば、閉じていただいてOKです
留意点
データ移行は、複数回に分けて実行しても構いません。(回数制限はありません)
ShopifyのAPI仕様により、一度に可能なアップロード件数に制限があります。 下記制限数を超える場合は、複数回に分けてアップロード・インポートしてください。 通常ストア:1000件 Shopify Plus:2000件
5-1. 契約データのアップロード
「移行」画面でCSVを選択し、アップロードしてください
フォーマットに不備がある場合は、エラーが表示されます
→ 指摘された内容をもとにCSVを修正し、再アップロードしてください
5-2. 契約データの確認とインポート
アップロード後、CSVの内容が表示されます
内容を確認し、問題がなければ「インポート」を実行してください
インポート時の注意ポイント
インポート後は、作成された契約が『定期購買』アプリ側で管理されるようになります
一度インポートした内容は取り消しできません
同じ契約データを複数回インポートすると、重複して契約が作成されます(上書きはされません)
所要時間の目安
インポートには、契約件数とShopify/Stripe APIの仕様により、時間がかかることがあります
目安時間:
通常ストア(1000件):約1時間
Shopify Plus(2000件):約5分
5-3. 移行データの確認
『定期購買』アプリ > 「移行」 > 「履歴」画面から、インポート結果(成功/失敗)を確認してください。
□先頭行(不要な見出し行)は削除できていますか?
□列の順序がサンプルフォーマットと一致していますか?
□列数は不足していませんか?(サンプルフォーマットの列数と一致していますか)
▶︎ エラー内容「決済方法がありませんでした Payment method is not found」
️原因
Shopifyが「有効な決済方法がない」と判断しています。
有効な決済方法とは
・有効期限が切れていない
・Shopify上で無効(
disabled)になっていないこの両方を満たす決済方法を指します。
️対応方法
※2通りの方法がございます。貴社運用において最適な方法を選択し対応してください。
①顧客に「新たに定期購入」をしてもらう方法
・顧客に、新たに定期購入のお手続きをしていただくようご案内ください。
・注文回数に応じた割引などを提供している場合は、
必要に応じて**注文回数の変更機能* を使って調整してください。
② クレジットカードを変更 → 再アップロード・インポート する方法
1. 顧客に、クレジットカードの変更 を依頼してください。
2. クレジットカードの変更後、対象顧客の契約のみを再アップロード・インポートしてください。
3. それでも失敗する場合は、①の「新しく定期購入をしていただく」対応をご案内ください。
▶︎ エラー内容「定期購買ドラフトの作成に失敗しました {Error Message}」
️原因
{Error Message} 部分に記載の内容が理由で契約作成に失敗しています。
️対応方法
データに間違いがないか確認してください。
下記ページを参照の上ご確認ください。
▶︎ エラー内容「想定外のエラー Throttled: ~~~~」
️原因
Shopify GraphQL APIのコスト上限超過です。
️対応方法
時間を置いて再度インポート処理を実施してください。(API制限は時間とともに回復します)
・エラー内容「想定外のエラー The user aborted a request.」
️原因
Shopify GraphQL APIの一時的なエラーです。
️対応方法
定期購買>定期購買一覧を確認し、「エラーが発生した行の契約が作成されていない」ことを確認した上で、再度インポート処理を実施してください。
テストストアを用いて本番と同様の移行テストを行う場合:
テストストアのストア種別が異なると、正確なテストができないことがあります
(例:本番はShopify Plus/テストは通常ストア)
実際に、GraphQL APIの使用制限により、通常ストアでのテストが正しく行えなかった事例があります。テスト環境でも、可能な限り本番と同等のストア構成で確認するようにしてください。
旧BOXで行われている契約を、すべて解約します。
※現時点の予定であり、実際にどうなるかは未確定です。
旧BOX機能は、廃止後一定の期間以降はサポートされなくなる予定です。
注文予定日を迎えるたびに決済は実行される想定ですが、マイページ・管理画面上では「BOX」としてではなく通常の定期契約のような挙動(個数の制限ができない)状態になる可能性がございます。