Stripe Apps または Stripe Connect にプラグインを移行する
移行オプションを確認し、プラグインの移行方法を決定します。
このガイドを使用して、Stripe ユーザーにシークレット API キー (プラグインとも呼ばれる) を使用した認証を求めるサードパーティーの実装を、Stripe Apps または Stripe Connect に移行します。
以前は、Stripe ではプラグインによってユーザーの標準の API キーをリクエストして、商品に連携させることができました。2024 年 9 月 30 日から、ユーザーを不正利用から保護するために、すべてのプラグイン開発者に対して安全な認証方法 (OAuth 2.0、制限付きの API キー、または Stripe Connect) の使用を義務付けています。新規および既存のプラグイン開発者はすべて、Stripe によってサポートされているこれらの安全な認証方法のいずれかに切り替える必要があります。
実装ですでに Stripe Apps または Stripe Connect を使用している場合、これはお客様またはお客様のユーザーには適用されません。
移行パスを選択する
Stripeは、開発者がプラグインを移行するためのソリューションを複数提供しています。以下の各ソリューションを確認してください。
実装タイプ | 次に適しています | 以下のために設計されています |
---|---|---|
Stripe Connect | 一元化されたプラットフォームまたはマーケットプレイスでの実装に最適です | 新しい加盟店のアカウント登録、支払いの埋め込み、資金移動の管理を行うための実装として設計されています |
Stripe Apps | サードパーティーのツールやサービスに Stripe を統合する実装に最適です | 既存の Stripe 加盟店の拡張機能を追加するために設計されています |
制限付き API キーと Webhook の手動設定 | Stripe Connect または Stripe Apps でサポート_されていない_カスタム機能が実装に必要な場合にのみ利用可能 | 制限付きの API キーと Webhook をそれぞれ手動で作成する必要があるユーザー向けに設計されています |
移行前の決定チェックリスト
以下のチェックリストを確認して、実装とユーザーに最適な移行パスを決定してください。
多くの場合、既存の Stripe アカウントを持っていない可能性のある新しいユーザーをアカウント登録するには、サービスを利用するために、初めて Stripe アカウントを作成する必要が生じます。そのような場合、アカウント登録フローでユーザーはアカウント登録中に Stripe アカウントを直接作成できる Stripe Connect をご検討ください。
実装を他のプラットフォームで利用できるようにする場合は、 Stripe Apps を検討してください。他のプラットフォームへの接続に関係なく、ほとんどの Stripe アカウントに Stripe Apps をインストールできます。これにより、実装を大規模なベースに利用できるようになります。
ユーザーが独自のアカウントを持つ一元化されたサービスを利用している場合、 Stripe Connect または Stripe Apps を検討し、プラットフォームまたは OAuth 2.0 認証を使用してください。Stripe Connect または Stripe Apps を使用すると、ユーザーは API キーをコピーおよびペーストする必要がなく、これにより、全体的なセキュリティーが大幅に強化され、ユーザーのアカウント登録が簡略化されます。
顧客が実装をセルフホストする場合は、制限付きの API キー認証方法を使用した Stripe Apps が最も適合する可能性が高くなります。その場合、プラットフォーム認証を使用した Stripe Connect または Stripe Apps に必要な、信頼されていないサーバーにシークレットキーを保存する必要はありません。
OAuth 2.0 はオプションですが、多くの追加作業が必要になります。これには、ユーザーがアカウントを作成し、セルフホスト型のバックエンドの URL を保存し、OAuth トークンをそれらのバックエンドにプロキシー送信する、中央バックエンドサーバーのホストが含まれます。
自分のエンドポイントで Webhook イベントを受信する場合は、プラットフォームまたは OAuth 2.0 認証方法を使用して一元化された Webhook 構成を設定する、Stripe Connect または Stripe Apps を検討してください。これにより、すべての連結アカウントユーザーの Webhook イベントを受信できるようになります。
ユーザーが独自のエンドポイントで Webhook エンドポイントを受信する場合、セルフホスト型のバックエンドで一般的に使用される、これらのエンドポイントを手動で設定する方法を指示します。
webhook_
API 権限を使用してユーザーのカスタム Webhook エンドポイントを管理する必要がある特別なユースケースがある場合は、Stripe サポート にお問い合わせください。write 他のプラットフォームの連結アカウントを使用することは一般的ではありませんが、場合によっては、プラグインは、プラットフォームのシークレット API キーの経時的なアクセスを使用して、プラットフォームの連結アカウントに代わって API コールを行うように設計されています。現在サポートされている唯一のオプションは、制限付きの API キーをユーザーに手動で作成してもらうことです。キーを作成する際、ユーザーは該当するボックスにチェックマークを入れ、連結アカウントに権限を付与する必要があります。
Stripe Connect に移行する
Stripe Connect は、一元化されたプラットフォームのためのソリューションです。Connect を使用するには、API キーを安全に保管して連結アカウントを管理する Web サービスをホストする必要があります。
プラットフォームの API キーを使用するには、Stripe へのすべての API リクエストがお客様のサーバーから発生し、認証に API キーを使用し、Stripe-Account
ヘッダーを使用して代理で実行している連結アカウントを示す必要があります。OAuth 2.0 の代わりに、/v1/accounts
API](/connect/oauth-standard-accounts) を使用して、各連結アカウントのアクセストークンを安全に取得します。お客様のサーバーまたはお客様の顧客のサーバーは、それらのトークンを使用して Stripe に API リクエストを行うことができます。
Stripe のビジネスは一度に 1 つの Connect プラットフォームにのみ接続できます。Connect を使用すると、新しいビジネスをプラットフォームに直接アカウント登録できますが、プラットフォームを使用することを希望する既存の Stripe アカウントを持つビジネスは新しいアカウントを作成する必要があり、これによりユーザーの作業が増える可能性があります。
プラグインから Connect への移行の詳細については、Connect を使用して複数の売り手がかかわるシステムを構築するをご覧ください。
Stripe Apps に移行する
Stripe Apps は、ビジネスやそのユーザーが利用する Stripe の機能を拡張または向上する実装を開発者が作成するためのプラットフォームです。これらの実装では、Stripe の動作を直接カスタマイズしたり、サードパーティーのツールやサービスを Stripe に接続したりすることができます。
Stripe Apps は、ビジネスの代理として Stripe に安全にアクセスするための認証フレームワークも提供しています。また、Stripe Apps には、プラグインの機能と価値を向上させることができる UI 機能拡張などの機能も含まれています。
Stripe Apps では、さまざまなユースケースに対応する 3 種類の認証方法を使用できます。
- プラットフォーム: SaaS プラットフォームなど、一元化されたサービスとして動作する Stripe ネイティブの実装向けに設計されています。API リクエストには、開発者の API キーと Stripe Account ヘッダーが必要です。
- OAuth 2.0: サービス間のユーザー認証に業界標準の OAuth 2.0 プロトコルを使用します。この方式は、すでに OAuth (以前は Connect Extensions と呼ばれていた) を使用している実装に最適であり、Stripe Apps プラットフォームを使用して、管理の強化、可視化の向上、分析などのメリットをさらに提供します。
- 制限付き API キー (RAK): ユーザーがインストールするアプリごとに制限付きの API キーを自動的に生成します。各アプリには、必要な権限のみが付与された一意の API キーが付与されます。ユーザーは依然として、このキーを手動でコピーして実装に貼り付ける必要があります。この方法はセキュリティが強化されますが、ユーザーのアカウント登録の手順が増えます。
Stripe Apps の認証タイプの比較
プラグインを Stripe Apps に移行する前に、次の 3 つの認証方法を比較します。
認証 | メリット | トレードオフ |
---|---|---|
プラットフォーム default |
|
|
OAuth 2.0 recommended |
|
|
RAK |
|
|
セキュリティが強化され、ユーザーのアカウント登録プロセスが簡素化されるため、プラットフォームまたは OAuth 2.0 認証をお勧めします。
プラグインを Stripe Apps に移行するための手順については、以下をご覧ください。
制限付きの API キーと Webhook の手動設定への移行
Stripe Connect と Stripe Apps のいずれもニーズを満たさない場合には、ユーザーはサービスの実装を手動で設定できます。
移行して Stripe のセキュリティ要件に準拠するには、次のことを行う必要があります。
- 設定の文書化: 必要な権限のみを持つ制限付き API キーをビジネスが構成するための説明を提供します。
- API キーの検証: ビジネスによって、
sk_
ではなく、rk_
で始まる制限付き API キーが提供されていることを確認します。 - (オプション) Webhook の設定の文書化: Webhook エンドポイントを設定し、正しいアドレスにデータを送信できるようビジネスをガイドします。
注
この認証方法では、ビジネスに手動のアカウント登録手順が導入され、Stripe Connect や Stripe Apps のメリットを利用できません。