ツールキットを使用してサブスクリプションを Stripe Billing に移行する
ツールキットを使用して既存のサブスクリプションを Stripe に移行する方法をご紹介します。
Stripe ダッシュボードの Billing 移行ツールキットを使用して、サードパーティーシステム、自社製のシステム、または既存の Stripe アカウントの既存のサブスクリプションを Stripe Billing に移行します。
はじめに
- 移行のステージを確認していない場合は、最初に確認します。
- 移行を開始する前に、Stripe Billing のシステムを設定します。これは 1 回限りの設定であり、今後の移行で繰り返す必要はありません。
- 現在の決済代行業者からのPAN データのインポートをリクエストする。このステップが必要になるのは、別の決済代行業者からStripeに移行する場合のみです。 StripeからStripeに移行している場合には、この前提条件をスキップできます。
- サードパーティーまたは自社内のシステムから移行する場合は、既存のサブスクリプションのキャンセルと Stripe での新しいサブスクリプションの作成を行うタイミングを注意して設定してください。請求期間が短くならないようにするため、まず Stripe で新しいサブスクリプションを作成してから、古いサブスクリプションをキャンセルします。二重請求を避けるため、サブスクリプションの支払いが行われる前に、以前のシステムでサブスクリプションをキャンセルします。次の請求日が移行に近いサブスクリプションは、サイクル後に開始するようにスケジュールを設定して、最後の請求が以前のシステムで行われるようにします。
Billing 移行ツールキットを開く
最初にテスト移行を実行する場合は、ダッシュボードでサンドボックスを作成します。
ダッシュボード > サブスクリプション > 移行に移動します。
または、+ サブスクリプションを作成の横にあるオーバーフローメニュー () をクリックし、サブスクリプションの移行を選択します。
移行を開始するには、始めるをクリックします。
CSV ファイルをダウンロードする
まず、エクスポートされたデータを、移行と互換性のある CSV ファイルと照合して、既存のサブスクリプションをエクスポートします。独自の CSV ファイルを作成するか、Stripe が提供する以下の CSV テンプレート (基本、複数価格項目、単発価格) のいずれかをダウンロードすることができます。また、一般的な移行ユースケース用の CSV ファイルの例もご覧いただけます。
CSV テンプレートをダウンロードをクリックします。
請求のユースケースに基づいて CSV テンプレート (基本、複数価格アイテム、または単発の価格) を選択します。
基本の CSV
この例では、数量、税金、請求の起点、割引、トライアル、遡及適用などの一般的なサブスクリプションユースケースの移行を示します。
基本の CSV ファイルには次のフィールドを指定します。
複数価格アイテムの CSV
この例は、各サブスクリプションに複数の商品が含まれる移行を示しています。
複数価格アイテムの CSV ファイルに次のフィールドを指定します。
単発の価格の CSV
この例では、既存の商品に対する単発価格を使用したサブスクリプションの移行処理を表しています。
単発の価格の CSV ファイルには次のフィールドを指定します。
CSV ファイルで、エクスポートするサブスクリプションの詳細を指定します。
Stripe 内での移行の場合
Stripe アカウント内でサブスクリプションを移行する場合は、CSV ファイルを指定してアップロードする前に、CSV の例をご覧ください。
CSV ファイルをアップロードする
CSV をアップロードをクリックします。CSV ファイルサイズの上限は 120 MB です。
Stripe は、ファイルを検証して、アップロードされたサブスクリプションが必須の CSV 形式に従っていることを確認します。ファイルのサイズによっては、このプロセスに最大で数時間かかる場合があります。ファイルが有効な場合は、移行の次のステップに進むことができます。検証エラーが発生した場合は、エラーを解決して続行する必要があります。
アップロードしたサブスクリプションを確認する
Stripe が CSV ファイルを検証した後、アップロードしたサブスクリプションのサマリーで不一致がないことを確認してください。
サマリーを照合確認して以下が正確であることを確かめます。
- アップロードの日付
- アップロードされたファイルの名前
- サブスクリプションの数
- 顧客の人数
- サブスクリプションの最初の本番環境移行日
すべて正しいことを確認したら、移行を開始するをクリックします。
エラーが表示された場合は、移行をキャンセルするをクリックし、CSV ファイルのダウンロードから移行を再開します。
移行の進捗を追跡する
アップロードしたサブスクリプションを確認したら、移行の進捗を追跡します。
移行の進捗 | 説明 |
---|---|
移行の進行中 | サブスクリプションは、指定された開始日にスケジュールが設定されます。このプロセスは、ファイルのサイズに応じて、数分から数時間かかります。たとえば、100,000 件のサブスクリプションの検証と移行は完了までに約 30 分かかります。 Billing 移行ツールキットでサブスクリプションのスケジュールを使用して、サブスクリプションを移行することもできます。サブスクリプションを 24 時間スケジュールされた状態のままにして、そのまま本番環境に移行させることが可能です。サンドボックスではバッファ時間が 1 時間に短縮されるため、評価とテストをすばやく完了できます。 |
予定が設定されたサブスクリプション | 移行後、サブスクリプションは、本番環境に移行する前に 24 時間、予定が設定された状態に保持されます。10 時間の期間の間は、ツールキットを使用してスケジュールが設定されたサブスクリプションをキャンセルすることができます。 移行ツールキットを使用して、スケジュールが設定されたサブスクリプションを更新することはできません。スケジュール済みのサブスクリプションを更新する場合は、更新エンドポイントを呼び出すか、ダッシュボードのサブスクリプションページで各サブスクリプションを個別に更新します。 顧客は、カスタマーポータルから予定が設定されたサブスクリプションをキャンセルできません。本番環境のサブスクリプションのみをキャンセルできます。 |
サブスクリプションを本番環境に移行する | 24 時間後に、予定が設定されたサブスクリプションは本番環境に移行し、該当する開始日に顧客に請求します。本番環境のすべてのサブスクリプションは、ダッシュボードのサブスクリプションページで確認できます。 移行が本番環境で開始されたら、最初の支払いからサブスクリプションを監視することをお勧めします。移行したサブスクリプションの支払い日と金額が、指定した start_date と一致していることを確認します。 顧客は、カスタマーポータルから本番環境のサブスクリプションをキャンセルできます。 |
サブスクリプションを監視する | 移行が本番環境で開始されたら、決済手段に関連する問題がないかサブスクリプションを監視します。たとえば、取引で 自動回収を適用する場合、未払いまたは期日超過の請求書がないかを確認し、顧客がデフォルトの支払い方法を設定し忘れていないか確認します。これを怠った場合、請求を回収できない可能性があります。 |
すべての移行を表示
すべての移行を表示するには、以下のようにします。
移行で、確認する移行を選択します。
移行を開くには、ドロップダウンメニューで表示するをクリックします。
以下のフィールドを追跡できます。
- アップロード日
- ファイル名
- Stripe Billing 移行 ID
- サブスクリプションの数
- 移行ステータス
オプション移行をキャンセルする
スケジュール済みのサブスクリプションに問題がある場合は、移行をロールバックして、スケジュール済みのサブスクリプションを元に戻すことができます。ダッシュボードには、ツールキットを使用して移行をキャンセルできるかどうかを示すタイムスタンプが表示されます。サブスクリプションのスケジュールを設定してから 10 時間以内にキャンセルする必要があります。10 時間後、ツールキットのキャンセルオプションが無効になります。10 時間後に移行をキャンセルするには、キャンセルエンドポイントを呼び出すか、ダッシュボードのサブスクリプションページで各サブスクリプションを個別にキャンセルします。
- キャンセルする移行を移行で探します。
- ドロップダウンメニューで、移行をキャンセルするをクリックします。
オプション複数の移行を実行する
任意の数のサブスクリプションの移行を一度に実行できます。大規模な移行の場合は、サブスクリプションをバッチに分割して、小規模なバッチから開始します。これにより、検証の問題をすばやく特定し、検証にかかる時間を短縮できます。
新しい移行を開始するには、以下の手順を実行します。
- 新しい移行を開始するをクリックします。
- CSV ファイルのダウンロードから移行処理を再開します。
また、一般的な移行ユースケース用の CSV ファイルの例もご覧いただけます。
移行のユースケース
該当する場合は、このセクションの移行のユースケースをお客様独自の移行に適用できます。これらの例のタイムスタンプは Unix EPOCH 形式です。例には、サンドボックスで使用できるテスト用の顧客 ID と価格 ID も含まれています。
Stripe が提供する任意の CSV テンプレート (基本、複数価格項目、単発価格) を必要に応じてこれらの例と組み合わせることができます。
さまざまな料金体系モデルのサブスクリプションを移行する
さまざまなタイプの決済回収方法でサブスクリプションを移行する
サブスクリプションサイクルのさまざまな段階でサブスクリプションを移行する
税金が発生するサブスクリプションを移行する
割引があるサブスクリプションを移行する
Stripe アカウント内でサブスクリプションを移行する
複数のフェーズがあるサブスクリプションを移行する
CSV リファレンス
移行ツールキットに、正しいフィールドに特定の情報を含む CSV をアップロードする必要があります。
CSV の前提条件
CSV ファイルを作成またはダウンロードする前に、次の情報にアクセスできることを確認してください。
Customer オブジェクト | すべての顧客は、デフォルトの支払い方法を登録しておく必要があります。デフォルトの支払い方法がない場合、今後のサブスクリプションの支払いに失敗します。データの移行後にデフォルトの支払い方法が顧客に設定されていない場合、以下の 2 つのオプションを利用できます。
|
税金の自動計算 | Stripe Tax を使用する場合 (税金の自動計算を true に設定している場合)、国別の住所または郵便番号 (またはその両方) がすべての顧客に関連付けられている必要があります。Stripe では、指定されたサブスクリプションの税金の計算にこの情報が必要となります。 |
collection_method | サブスクリプションに send_ の支払い方法を使用する場合、以下を実行してください。
|
日付 |
|
クーポン |
|
Stripe 内での移行 | ユーザーは、Stripe のアカウント内でサブスクリプションを移行できます。顧客 ID と価格 ID (およびクーポン ID と税金 ID を使用している場合はその両方) を、移行元ではなく、移行先の Stripe アカウントに関連付けられたテンプレートに入力する必要があります。移行元のアカウントに関連付けられた ID を入力すると、移行ツールでエラーが発生します。 |
CSV 仕様 の詳細
属性 | タイプ | 説明 |
---|---|---|
customer (必須) | Stripe 顧客 ID | サブスクリプションを作成する顧客の ID。 |
start_ (必須) | エポックの Unix 形式のタイムスタンプ | サブスクリプションの作成日を指定します。このとき、24 時間 (またはそれ以上) 先の値を指定する必要があります。サンドボックスでは、1 時間後に設定することが可能です。 |
price (必須) | Stripe 価格 ID | 継続価格にする必要があります。複数のアイテムを移行する場合は、代わりに items. 形式を使用します。adhoc_ を使用すると、単発の価格にも対応できます。 |
quantity | 番号 | サブスクリプションの数量を決定します。デフォルトでは、各サブスクリプションは 1 つの商品に対するものですが、Stripe では 1 つのアイテムの複数の数量に対するサブスクリプションに顧客を登録できます。 |
items. (必須) | Stripe 価格 ID | Price オブジェクトの ID。継続価格にする必要があります。 |
items. | 番号 | サブスクリプションの数量を決定します。デフォルトでは、各サブスクリプションは 1 つの商品に対するものですが、Stripe では 1 つのアイテムの複数の数量に対するサブスクリプションに顧客を登録できます。 |
adhoc_ (必須) | 整数 | セント単位の正の整数 (無料の場合は 0)。詳細については、サブスクリプションの作成をご覧ください。 |
adhoc_ (必須) | Stripe 製品 ID | 単発の価格に属する商品の ID。 |
adhoc_ (必須) | day 、week 、month 、または year | 請求の頻度。 |
adhoc_ (必須) | 文字列 | サポートされている通貨の小文字 3 文字の ISO 通貨コード。 |
adhoc_ | 番号 | サブスクリプションの数量を決定します。デフォルトでは、各サブスクリプションは 1 つの商品に対するものですが、Stripe では 1 つのアイテムの複数の数量に対するサブスクリプションに顧客を登録できます。 |
metadata_ | 文字列 | Stripe 内での移行を行う場合は、internal:Stripe と入力します。 |
metadata_ | 文字列 | 以下のキーと値のペアをオブジェクトに関連付けます。これは、オブジェクトに関する追加情報を構造化された形式で格納するのに便利です。 |
automatic_ | ブール値 | Stripe Tax による税金の自動計算設定を使用するには、true を指定します。 |
coupon | Stripe クーポン ID | このサブスクリプションに適用するクーポンの ID。 |
currency | 文字列 | 小文字の 3 文字の ISO 通貨コード。 対応している通貨を指定してください。多通貨の価格で通貨を選択する際に使用されます。 |
trial_ | Timestamp | フェーズを開始日から trial_ 日付までトライアルに設定します。サイクル/フェーズの終了日より前の値を指定する必要があり、トライアルと組み合わせることはできません。 |
proration_ | create_ または none | 移行後にサブスクリプションが比例配分を作成するかどうかを決定します。デフォルト値は create_ です。 |
collection_ | charge_ または send_ | 自動的に請求する場合、 Stripe は各請求サイクルの終了時に、顧客に関連付けられたデフォルトのソースを使用して、基になるサブスクリプションの支払いを試みます。デフォルト値は charge_ です。請求書を送信する場合、 Stripe は顧客に支払い手順を記載した請求書をメールで送信し、サブスクリプションを有効としてマークします。 send_ を使用している場合は、days_ を設定する必要があります。 |
default_ | Stripe Tax の ID | サブスクリプションの default_ を設定します。これにより、このフェーズ中にサブスクリプションによって発行された請求書の default_ も決定されます。この値は、automatic_ と互換性がありません。 |
backdate_ | エポックの Unix 形式のタイムスタンプ | 作成されたサブスクリプションの start_ を決定します。これは過去の日付でなければなりません。設定されている場合、proration_ には none を指定する必要があります。これにより、backdate_ から実際の start_ までの比例配分を適用した請求書が作成されなくなります。詳細については、請求を行わずに遡及適用するをご覧ください。 |
billing_ | Timestamp | 顧客にサブスクリプションを請求する将来の日付を決定します。 |
days_ | 整数 | 請求書の作成日から期日までの日数。これは必須であり、collection_ が send_ に設定された請求書にのみ有効です。 |
cancel_ | ブール値 | 期間の終了時にサブスクリプションをキャンセルするには、true を指定します。 |