サブスクリプション:サブスクリプション契約移行ガイド
このガイドは、現在ご利用のプラットフォーム(例:Recharge、Appstle、Loop、Seal)からSHOPLINEの定期購入アプリへ安全にサブスクリプション契約を移行する方法を説明します。これにより、以下が可能になります:
顧客離脱の最小化:移行中も元のプラットフォームで契約を有効に保ち、支払いの問題を防ぎ、顧客を維持します。
移行の簡素化:スムーズで信頼性の高いプロセスを使用してビジネスをSHOPLINEに移行し、強化されたサブスクリプション管理の恩恵を受けます。
このガイドでは、準備、契約のインポートと同期、結果の確認、契約管理、顧客の有効化について説明し、スムーズな開始をサポートします。
移行前の準備
SHOPLINE 定期購入アプリの設定
移行を開始する前に、SHOPLINEの定期購入アプリをインストールし、購入プランを設定してください。現在のプラットフォームからインポートされたサブスクリプションは、対応するプラングループにリンクされます。
また、以下も忘れずに行ってください:
- SHOPLINE Subscriptionアプリでサブスクリプション移行のポップアップメッセージを設定する。
- アプリ設定で、顧客が以下を更新できるように有効にする:
- 配送情報
- サブスク頻度
- 支払い方法
詳細な設定手順については、記事定期購入:継続購入の設定をご参照ください。
基本的なストアデータ移行の完了
契約を移行する前に、SHOPLINEストアで基本データの移行が完了していることを確認してください。これにより、正確な契約のマッピングと表示が保証されます。構造化されたストアデータの転送には、Multi-platform Store Migrationアプリを使用してください。以下を含みます:
- 商品データ:すべての商品データは、元のプラットフォームからSHOPLINEへ移行する必要があります。
- 顧客データ:すべての顧客データは、元のプラットフォームからSHOPLINEへ移行する必要があります。
APIによる契約データのインポート
現在、APIインポートは元のプラットフォームがShopifyで、Recharge、Appstle、Loop、またはSealを定期購入サービスとして使用しているマーチャントのみをサポートしています。APIインポートを開始する前に、元のプラットフォームでAPIキーを設定し、それをSHOPLINE定期購入アプリに提供する必要があります。
| 重要:APIキーは安全に保管し、第三者に開示しないでください。 |
Shopifyハンドルの確認方法
- Shopify管理画面で、設定 > ドメインに移動し、ストアのドメイン(例:handle.myshopify.com)を確認します。
- ドメインの「handle」の部分をメモしてください。
Shopify APIキーの取得(2026年新ワークフロー)
2026年1月より、一部のShopifyストアはDevダッシュボードで管理されます。Devダッシュボードを使用しているストアは、レガシーカスタムアプリを通じてAPIキーを取得できなくなります。この更新は既存のAPIキーには影響しません。既存のAPIキーは引き続きSHOPLINEで通常通り機能します。
ストアがDevダッシュボードを使用している場合、デュアルシステム移行のためにクライアントIDとシークレットを取得するには、以下の手順に従ってください:
-
アプリの作成と開発
-
<strong>設定</strong> > <strong>アプリ</strong>に移動し、<strong>Dev Dashboardでアプリを作成</strong>をクリックします。
-
Dev Dashboardで<strong>アプリを作成</strong>をクリックします。
-
<strong>Dev Dashboardから開始</strong>セクションで名前を入力し、<strong>作成</strong>をクリックします。
-
<strong>権限を選択</strong>をクリックし、権限(<strong>アプリ</strong>、<strong>注文</strong>、<strong>顧客</strong>、<strong>商品</strong>を含む)を選択してから、<strong>リリース</strong>をクリックします。以下のすべての権限がチェックされていることを確認してください:
read_all_orders
read_app_proxy
write_app_proxy
read_customers
read_customer_merge
read_orders
read_product_feeds
read_product_listings
read_products
-
ポップアップウィンドウで、再度<strong>リリース</strong>をクリックして確認します。
-
-
<strong>クライアントID</strong>と<strong>シークレット</strong>を保存する
-
アプリを作成した後、<strong>設定</strong>に移動し、SHOPLINE移行のために<strong>クライアントID</strong>と<strong>シークレット</strong>をコピーして安全に保存してください。
-
-
アプリをインストールする
-
アプリの<strong>ホーム</strong>ページに移動し、<strong>インストール</strong>をクリックします。
-
Shopify管理画面の<strong>アプリのインストール</strong>ページで、もう一度<strong>インストール</strong>をクリックして、Shopifyストアにカスタムアプリのインストールを完了します。
-
Shopify APIキーの取得(2025年以前のレガシーワークフロー)
- アプリの開発と作成
-
設定 > アプリと販売チャネル > アプリを開発する に移動します。
-
カスタムアプリを作成 をクリックし、アプリ名(例:「SHOPLINE移行アプリ」)を入力して、アプリを作成 をクリックします。
-
- 管理APIスコープの設定
-
すべてのAPI権限を選択し、保存 をクリックします。
-
-
アプリをインストールしてAPIキーをコピー
- API認証情報に移動し、アプリをインストール をクリックして、API認証情報 セクションからAPIトークンをコピーします。
重要: トークンは一度だけ表示されます。安全に保存してください。
Recharge APIキーの取得
- 管理者トークンを作成
-
ツール&アプリ > APIトークンに移動し、管理者トークンカードの今すぐ作成をクリックします。
-
- 管理者APIスコープを設定
- トークンを作成した後、APIトークンを作成ページに入り、トークンに名前を付けます。
-
すべてのAPI権限を選択し、保存をクリックします。
- APIキーをコピー
-
APIトークンセクションに移動し、APIキーをコピーします。
-
Appstle APIキーを取得
-
Appstleのサブスクリプション > その他 > APIアクセスに移動します。
-
APIキーセクションを見つけて、キーを生成をクリックします。
-
ポップアップウィンドウでAPIキーの名前を入力し、読み取り&書き込み — すべてのAPIエンドポイントへのフルアクセスを選択してから、キーを作成をクリックします。
-
生成されたAPIキーを後で使用するためにコピーします。
| 注:APIアクセスは支払い済みの追加購入です。有効にするにはAppstleサポートに連絡してください。費用は月額100ドルです。 |
Seal APIキーを取得
Loop APIキーの取得
Loop定期購入APIキーを取得するには、LoopヘルプセンターのLoop APIトークンの生成の記事を参照してください。
SHOPLINE管理画面でのAPIキー設定
SHOPLINE定期購入アプリ管理画面にログインします。
-
定期購入に移動し、定期購入のインポートをクリックして、元のプラットフォーム(例:Recharge)を選択します。
-
ポップアップにShopifyハンドル、クライアントID、シークレット、および対応する定期購入プラットフォームのAPIキーを入力します。自動定期購入マッチングも有効にできます。その後、今すぐインポートをクリックしてAPIキーを検証します。
検証後、SHOPLINEはRecharge、Appstle、Loop、Sealなどの以前の定期購入プラットフォームからすべての定期購入契約データをインポートおよび同期します。
CSVによる契約データのインポート
APIインポートが不可能な場合や、支払い方法付きの契約をインポートしたい場合は、CSVファイルを使用して契約データを手動でインポートできます。
公式テンプレートのダウンロード
SHOPLINE定期購入アプリの管理画面にログインします。
「定期購入契約」に移動し、「移行開始」をクリックしてから、「CSVによる一括インポート」を選択します。
-
「ダウンロード」をクリックして最新のsubscription-contracts-template.csvファイルを取得します。
元のプラットフォームからデータをエクスポートする
元の定期購入プラットフォーム(例:Recharge、Appstle、Loop、Seal)にログインします。
プラットフォームの指示に従って、すべての定期購入契約データをエクスポートします。
データを整形し、テンプレートに入力する
エクスポートした契約データをダウンロードしたテンプレートに、行ごとに入力します。
すべての必須フィールドが入力されていること、日付などのデータ形式がテンプレートの要件に合っていることを確認してください。以下の主要フィールドの説明を参照してください:
| フィールド名 | 説明 | 必須 | 例 |
| storeHandle | SHOPLINE ストアハンドル | 必須 | stgyangcheng2 |
| id_processed | サードパーティ契約番号 | 必須 | 1111111 |
| status | 契約ステータス:有効、キャンセル済み、失敗、期限切れ(一時停止は含まれていません) | 必須 | 有効 |
| interval | 購読時間間隔期間(日、月、週、年) | 必須 | 日 |
| interval_count | 間隔数量。例:「3週間ごとに購入」の場合、ここは3となります。 | 必須 | 2 |
| max_cycles | 最大実行サイクル数。値がない場合は無期限契約がデフォルトです。 | 12 | |
| min_cycles | 最小実行サイクル数 | 必須 | 2 |
| periods | 完了した注文数。値がない場合は0がデフォルトです。 | 4 | |
| processed_at | サードパーティ契約作成日時 | 2024-12-02T12:00:00 | |
| next_billing_date | 次回契約実行日時 【移行後の初回実行日時】 | 必須 | 2025-01-28T12:00:00 |
| currency_code | 通貨情報 | 必須 | MYR |
| line_items_amount | 商品の販売価格(商品割引前) | 必須 | 100 |
| line_items_variant_id | SHOPLINE 商品固有のSKU ID | 必須 | 18066984575317893633362795 |
| line_items_product_source | 商品SKUの出所 | ||
| line_items_quantity | 商品数量、0より大きく、最大99999まで | 必須 | 2 |
| line_items_adjustment_type | 割引タイプ(例:パーセンテージ、固定額) | 固定額 | |
| line_items_adjustment_value | 割引値 | 20 | |
| customer_id | 購読顧客のSHOPLINE顧客ID | 必須 | 4603168091 |
| 購読顧客のメール | xuweihang@shopline.com | ||
| delivery_first_name | 名 | bing | |
| delivery_last_name | 姓 | tang | |
| delivery_name | ニックネーム | ||
| delivery_phone | 連絡先電話番号 | 13123334444 | |
| delivery_country | 国または地域名 | United States | |
| delivery_country_code | 国または地域コード、2桁の略称(ISO-3166-1)、SLによって変換されます | 必須 | US |
| delivery_province | 州または県名 | Ohio | |
| delivery_province_code | 州または県コード、標準コードを入力(ISO-3166-2)、SLによって変換されます | 必須 | WA |
| delivery_city | 市区町村名 | Cleveland | |
| delivery_city_code | 市区町村コード | ||
| delivery_company | 会社名 | FireXuan-USD | |
| delivery_district | 行政区名 | ||
| delivery_district_code | 行政区コード | 94101 | |
| delivery_address1 | 詳細住所情報1、補足情報用 | University Hospital Drive | |
| delivery_address2 | 詳細住所情報2、補足情報用 | RR 2 Box 260 | |
| delivery_zip | 発送元住所の郵便番号 | 44106 | |
| delivery_id | SHOPLINE配送プラン名 | Multi Delivery Test Plan | |
| delivery_amount | 配送販売価格 | 50 | |
| selling_plan_id | SHOPLINE定期購入アプリからの購入プランID | 必須 | 14066622198340539053032795 |
| channel_customer_id | 決済チャネルからの顧客ID。*決済トークンが移行され、StripeやSHOPLINEペイメントなど同じ決済サービスプロバイダをSHOPLINEで使用する場合は必須。 | ||
| payment_method_id | 決済チャネルからの決済方法ID。*決済トークンが移行され、StripeやSHOPLINEペイメントなど同じ決済サービスプロバイダをSHOPLINEで使用する場合は必須。 | ||
| account_name | PayPalからの顧客アカウント名。*請求情報や決済トークンが譲渡された場合、または決済情報の再連携が必要な場合は必須。 | ||
| billing_agreement_id | PayPalからの顧客請求契約ID。*請求情報や決済トークンが譲渡された場合、または決済情報の再連携が必要な場合は必須。 |
支払いチャネル別の契約分割
SHOPLINEは、3つのチャネルを通じた定期購入支払いをサポートしています:
SHOPLINE Payment
Stripe
PayPal
契約がこれらのいずれかのチャネルに紐づいている場合は、別々のCSVファイルに分割してください。インポート時に正しい支払いチャネルを選択すると、契約が紐づけられ、移行が即時に完了します。
CSVファイルのアップロード
SHOPLINE定期購入アプリの管理画面にアクセスします。
インポートウィンドウで、次へをクリックします。
完成したCSVファイルをドラッグするか、アップロードエリアをクリックしてアップロードします。
これらの契約に適した支払いチャネルを選択します。
-
今すぐインポートをクリックし、処理が完了するまでお待ちください。
| 注: 支払いトークンが移行されていない場合は、支払いチャネルとして「その他」を選択してください。 |
インポートタスクのステータスと結果の照会
CSVインポートを使用する場合でもAPI同期を使用する場合でも、インポート/同期結果の表示と管理方法を知る必要があります。
タスクの進行状況とステータスの表示
今すぐインポートをクリックすると、システムのバックエンドでインポートプロセスが開始されます。
インポートのポップアップを閉じてもインポートタスクは停止せず、バックグラウンドで継続されます。
注:バックグラウンドで実行できるインポートタスクは1つだけです。現在のタスクが完了する前に新しいインポートタスクを開始することはできません。
インポートタスクが完了すると、以下の3つのステータスのいずれかになります:
インポート完了:サポートされているサブスクリプションプラットフォームのAPI経由で取得した、またはCSVでアップロードしたすべての契約が正常にインポートされました。
インポート一部完了:一部の契約がデータ不一致やフォーマット非準拠などの理由で正常にインポートされませんでした。結果ファイルをダウンロードしてインポート失敗の原因を確認できます。
インポート失敗:契約が一件も正常にインポートされませんでした。結果ファイルをダウンロードしてインポート失敗の原因を確認できます。
結果ファイルのダウンロード
インポートタスクが完了した後、タスク結果がインポート部分成功またはインポート失敗の場合、ダウンロードボタンをクリックしてインポート結果ファイルをダウンロードできます。
結果ファイル(CSV形式)には契約IDと「失敗理由」が含まれており、各契約データのrowごとにインポート失敗の詳細な理由が明確に示されています。
失敗理由に基づいて元のCSVファイルのデータを修正し、再アップロードすることで残りの契約のインポートを完了できます。
移行契約管理
このセクションでは、移行契約がSHOPLINE管理画面にどのように表示され管理されるかを説明し、異なる移行ステージを明確にします。
移行契約リストとステージ
SHOPLINE定期購入アプリ管理画面にログインし、定期購入ページに移動して、移行済み定期購入を表示をクリックすると、移行契約ページにアクセスできます。
移行済み定期購入レポート
移行契約ページには、主に3つの指標が表示されます:
移行済み定期購入合計:移行リストにある契約の数。
移行成功:「移行ステータス」が「移行成功」の契約。
支払い方法更新待ち:「移行ステータス」が「支払い方法更新待ち」で、「有効」または「一時停止」の契約。
移行契約リスト
このリストは、インポートまたは同期されたすべての移行契約を表示します。契約移行に関連する主要なフィールドが含まれています。
| フィールド名 | フィールド定義 | フィールド値の列挙 | フィールド値の定義 |
| 移行方法 | 現在の契約インポート方法 | CSVインポート | 契約はCSV経由でインポートされました |
| Recharge API | 契約はRecharge APIを通じて自動的に同期されました | ||
| Appstle API | 契約はAppstle APIを通じて自動的に同期されました | ||
| Loop API | 契約はLoop APIを通じて自動的に同期されました | ||
| Seal API | 契約はSeal APIを通じて自動的に同期されました | ||
| 移行完了時間 | 契約のステータスが「移行成功」に更新された時間 | 特定の時間点 | 契約のステータスが「移行成功」に更新された時間 |
| 移行ステータス | 現在の契約がSHOPLINEに引き継がれ、支払い方法の更新が完了しているかどうか | 支払い方法更新待ち | 顧客は現在の契約の更新操作をまだ完了していません。契約はまだ元のプラットフォームで稼働しています。 |
| 移行成功 | 顧客は現在の契約を更新しました。契約はSHOPLINEに引き継がれており、元のプラットフォームでキャンセルする必要があります。 | ||
| 移行不要 | 元のプラットフォームで契約のステータスが「キャンセル済み」、「失敗」または「完了」の場合、その契約は移行不要と見なされます。 |
フィルター機能
ページ上部のフィルターを使用して、契約を素早く検索できます。フィルターオプションには以下が含まれます:
移行ステータス:支払い待ちの支払い方法更新、移行成功。
元のプラットフォーム契約ステータス:有効、一時停止、キャンセル、期限切れ。
移行方法:対応しているサブスクリプションプラットフォームのAPI、CSV。
移行完了時間:日付範囲を選択してください。
顧客リコール操作
顧客にできるだけ早く支払い方法を更新してもらい、「支払い待ちの支払い方法更新」契約を「移行成功」に変換するために、自動メール機能を利用できます:
-
契約リストのフィルター:契約リストのフィルター機能を使って、以下の条件の契約を絞り込みます:
移行ステータスが「支払い待ち」の場合。
-
プラットフォーム契約ステータスが「有効」または「一時停止」の場合。
-
リコール方法の選択:ポップアップで2つのリコール方法が提示されます:
リコールメールを自動送信:システムがフィルターされた契約に対応する顧客に事前設定されたリコールメールを送信します。テンプレートの内容は修正可能です。メールテンプレートを更新した後は、変更が反映されるまで48時間お待ちください。リコールのCTAは顧客の契約管理管理画面に直接リンクします(支払い方法更新リンクには直接リンクしません)。
-
契約およびユーザーリストをメールにエクスポート:現在選択されている契約リストを指定のメールアドレスにエクスポートし、カスタムマーケティングキャンペーンや手動フォローアップを行うことができます。
| 注:顧客に連絡する前に契約移行通知を設定し、顧客が明確な情報を受け取れるようにしてください。設定の詳細は契約移行通知設定をご参照ください。 |
顧客の支払い方法更新プロセス
このセクションでは、顧客が支払い方法を更新して契約を「支払い方法更新待ち」から「移行成功」に変更する方法について説明します。
契約移行通知設定
移行中は、顧客は定期購入契約を修正できません。「更新通知バナーを表示」を有効にして、顧客に支払い方法の更新を促してください。移行後は修正が再開されます。
設定は定期購入アプリ > ストアフロント表示 > 移行通知で行います。
顧客の手順
契約を修正または更新するには、顧客はまず契約のアップグレードを完了する必要があります:
-
ログイン:顧客はログインしてマイサブスクリプションに移動します。
再バインドのプロンプト:「支払い待ちの支払い方法更新」契約を修正しようとすると、支払い方法の更新を促すポップアップが表示されます。
-
契約アップグレードウィザード:今すぐ更新をクリックすると、以下の内容を確認・修正するウィザードが開きます:
次回請求日
発送元住所
-
支払い方法の更新:顧客は新しい支払い方法をバインドし、支払いを更新をクリックします。
確認:バインド後、更新が完了したかどうかを尋ねるメッセージが表示されます。
-
顧客が確認をクリックします。システムは更新をチェックします。
成功した場合、契約のステータスは「移行成功」に更新され、通常の管理が可能になります。
失敗した場合は、再試行を促すプロンプトが表示されます。
マーチャントへの通知
顧客が支払い方法を正常に更新すると、メール通知が届きます。
データのメンテナンスと更新
システムが契約データの正確性を維持するためにどのように更新するかを学びましょう。
API自動更新
API同期が有効になっている場合、対応するサブスクリプションプラットフォーム(契約更新やステータス更新など)からの契約変更は、Webhookを通じてほぼリアルタイムでSHOPLINEの移行契約リストに自動的に同期されます。「支払い方法更新待ち」の契約を更新するための手動操作は不要です。
CSV手動更新
CSVインポートを使用している場合、元のプラットフォームで「支払い方法更新待ち」の契約が変更された際には、SHOPLINE内のスナップショットを手動で更新できます。
手順:
- 元のプラットフォームから最新の契約データをエクスポートします。
- 更新する「未管理」契約のみを含むCSVを準備します。
external_contract_idは変更せず、必要に応じて他の項目を更新してください。 -
CSVインポート準備に記載の通りCSVを再アップロードします。システムは
external_contract_idに基づいて契約スナップショットを更新します。
よくある質問(FAQ)
二重システム移行ソリューションの利用に関するよくある質問への回答をご覧ください。
Q1:インポートした契約が「支払い方法更新待ち」と表示されるのはなぜですか?
これは通常、元の支払い方法(例:Shopify Payment)がSHOPLINEでサポートされていないか、支払い方法の移行が完了していない場合に発生します。
Q2:契約を「移行成功」に変更するにはどうすればよいですか?
「支払い方法更新待ち」ステータスの契約については、顧客があなたのストアで支払い方法を更新する必要があります。
Q3:元のプラットフォームで契約を手動でキャンセルする必要がありますか?
CSVインポートの場合、SHOPLINEで契約が「移行成功」とマークされたら、二重請求を避けるために元のプラットフォームで古い契約を必ず手動でキャンセルしてください。対応するサブスクリプションプラットフォームのAPIインポートでは、SHOPLINEがAPIを通じて自動的に古い契約をキャンセルします。
Q4:ShopifyまたはLegacy E-Commerce Solutionの注文データはAPI同期後にSHOPLINEに同期されますか?
API同期は主に契約データを更新します。注文データはストア移行ツールアプリを使用して手動で同期する必要があります。
この記事はAIを使用して翻訳されており、不正確な箇所が含まれる可能性があります。最も正確な情報については、元の英語版をご参照ください。