# 公開アプリのサンドボックスサポートを有効にする 公開アプリでサンドボックスのインストールを有効にします。 > #### サンドボックスはデフォルトのテスト環境です。 > > テスト環境は、デフォルトのテスト手段ではなくなりました。Stripe アカウントには、デフォルトのテスト手段として[サンドボックス](https://docs.stripe.com/sandboxes.md)が付属しています。サンドボックスには、アカウントピッカーまたは[ダッシュボードのサンドボックスページ](https://dashboard.stripe.com/sandboxes)からアクセスすることが可能です。 [サンドボックス](https://docs.stripe.com/sandboxes.md)は分離されたテスト環境です。サンドボックスを使用して、アカウントで利用可能な Stripe の機能をテストすることが可能で、テストは本番環境のシステムに影響を与えません。ユーザーはサンドボックスにアプリをインストールして、その機能を評価できます。 ## テスト環境とサンドボックスのサポート Stripe は、以下の 3 つの環境をサポートしています。サンドボックス、本番環境、テスト環境。ただし、新規の Stripe ビジネスのデフォルトのテスト方法は、サンドボックスになります。 貴社アプリが本番環境への移行前にできるだけ多くのビジネスがアプリを評価できるように、サンドボックスサポートを実装することを推奨します。 ### アプリのサンドボックスのサポートを有効にする デフォルトでは、公開アプリをサンドボックスにインストールするにはユーザーによる追加作業が必要です。 [テスト環境](https://docs.stripe.com/stripe-apps/handling-modes.md)と同様に、[アプリマニフェスト](https://docs.stripe.com/stripe-apps/reference/app-manifest.md)を更新することでサンドボックスへのインストールを有効にできます。サンドボックスのサポートを有効にしたら、[アプリを審査に提出](https://docs.stripe.com/stripe-apps/publish-app.md)します。アプリのサンドボックスのサポートは、[アプリの審査プロセス](https://docs.stripe.com/stripe-apps/review-requirements.md)の一環として検証されます。 ### マネージドサンドボックス _マネージドサンドボックス_は、Stripe がアカウントに自動で作成する独自のサンドボックスで、公開 Stripe アプリをサポートします。 - 初めて公開アプリをアップロードするときに、Stripe がマネージドサンドボックスを自動で作成します。 - ユーザーがアプリをサンドボックスにインストールすると、マネージドサンドボックスへの接続が確立されます。 - マネージドサンドボックス内のユーザーのインストール環境のイベントを[デバッグおよび監視](https://docs.stripe.com/workbench/guides.md)できます。 - マネージドサンドボックスに加えられた変更は、本番環境またはテスト環境でアプリをインストールするユーザーには影響しません。 - マネージドサンドボックスは削除できません。 ### マネージドサンドボックスを作成する アカウントに初めて[公開 Stripe アプリをアップロード](https://docs.stripe.com/stripe-apps/upload-install-app.md)するときに、Stripe がマネージドサンドボックスを自動で作成します。 2025 年 2 月 3 日より前にアップロードされた公開アプリの場合、Stripe はアカウントにマネージドサンドボックスを自動で作成します。 ## 公開アプリのサンドボックスへのインストールを有効にする 1. `stripe apps -v` を実行して、最新バージョンの [Stripe CLI](https://docs.stripe.com/stripe-cli/upgrade.md) と [Stripe Apps プラグイン](https://docs.stripe.com/stripe-apps/create-app.md#install-stripe-apps-cli) を使用していることを確認します。アプリをアップロードする前に、バージョン 1.5.23 以降を使用する必要があります。 ```bash $ stripe plugin upgrade apps ✔ upgrade to v1.7.0 complete. $ stripe -v stripe version 1.25.1 $ stripe apps -v apps version 1.7.0 ``` 1. アプリマニフェストを更新して、サンドボックスへのインストールをサポートできるようにします。 1. *(オプション)* マネージドサンドボックス内にサンドボックス固有のイベントフックを作成します。サーバー側のロジックを更新して、これらの新しいエンドポイントをリッスンします。 1. *(オプション)* サーバー側のロジックを更新して、サンドボックスへのインストールで Stripe API コールを行うときに[マネージドサンドボックス API キー](https://docs.stripe.com/sandboxes/dashboard/manage-access.md)を使用します。 1. アプリの新しいバージョンをメインアカウント (マネージドサンドボックス**ではありません**) にアップロードします。 1. メインアカウントで、アップロードしたサンドボックスに対応する[外部テストリンクを作成](https://docs.stripe.com/stripe-apps/test-app.md)します。 for the sandbox-enabled version you just uploaded. 1. 新しいサンドボックスを作成して開き、更新したアプリをテストします。 1. ブラウザーウィンドウで、以前作成した外部テストリンクにアクセスし、アプリをインストールします。 1. サンドボックスにインストールしたアプリが想定どおりに動作するかどうかをテストします。 1. 新しいバージョンを送信してマーケットプレイスの審査を受けます。 ### アプリマニフェストを更新する > 2025 年 2 月 3 日以降、マーケットプレイスに公開するアプリのアプリマニフェストでサンドボックスのサポートを true または false として宣言する必要があります。 サンドボックスへのアプリインストールをサポートするには、`sandbox_install_compatible` を使用して[アプリマニフェスト](https://docs.stripe.com/stripe-apps/reference/app-manifest.md#schema)でサンドボックスのサポートを宣言する必要があります。 次のサンプルコードは、サンドボックスのサポートを宣言しています。 ```json { "id": "com.invoicing.[YOUR_APP]", "version": "1.2.3", "name": "[YOUR APP] Shipment Invoicing", "icon": "./[YOUR_APP]_icon_32.png", "distribution_type": "public", "sandbox_install_compatible": true } ``` ### サンドボックスへの接続について ユーザーが公開アプリをサンドボックスにインストールすると、マネージドサンドボックスへの接続が確立されます。これは、本番環境またはテスト環境でインストールされているアプリの動作とは異なります。 - ユーザーがサンドボックスにアプリをインストールすると、マネージドサンドボックスへの接続が確立されます。 - ユーザーが本番環境でアプリをインストールすると、本番環境とテスト環境への接続が確立されます。 - ユーザーがテスト環境でアプリをインストールすると、テスト環境への接続が確立されます。 ### Webhook イベント アプリがユーザーのインストールのイベントをリッスンする場合は、サンドボックスにインストールされたアプリを処理するための追加設定が必要です。 - マネージドサンドボックス内で、サンドボックスイベント用の新しい Webhook を作成します。 - ユーザーがアプリをサンドボックスにインストールした場合、Stripe は該当するイベントをマネージドサンドボックスのエンドポイントにのみ送信します。 - サーバー側のロジックを更新して、サンドボックス固有のイベントを処理します。 > インストール環境がイベントの動作に与える影響については、[イベントの動作](https://docs.stripe.com/stripe-apps/build-backend.md#event-behavior-depends-on-install-mode)で詳細をご確認ください。 ### 署名シークレット Webhook の場合、マネージドサンドボックス内から[署名シークレットを取得](https://docs.stripe.com/webhooks/signature.md#check-the-endpoint-secret)しなければならない場合もあります。 ### API キー マネージドサンドボックスには、サンドボックスへのインストールを呼び出すための独自の [API キー](https://docs.stripe.com/keys.md)があります。サンドボックス固有の Webhook またはイベントに応答する場合は、これらの[マネージドサンドボックスキー](https://docs.stripe.com/sandboxes/dashboard/manage-access.md)を使用する必要があります。 マネージドサンドボックス内に、サンドボックスへのインストールに使用する正規の API キーがあります。 ### OAuth のサンドボックスリンク 本番環境、テスト環境、サンドボックス環境の OAuth URL は、アプリの設定内の[外部テスト](https://docs.stripe.com/stripe-apps/test-app.md)タブで確認できます。 アプリで RAK 認証またはプラットフォーム認証を使用する場合、変更は必要ありません。 ## サンドボックスでのアプリのテスト サンドボックスへのインストールを処理するようにアプリを更新したら、独自のサンドボックスでアプリをテストできます。 1. メインアカウントで、アップロードしたサンドボックスに対応する[外部テストリンクを作成](https://docs.stripe.com/stripe-apps/test-app.md)します。 1. 新しいサンドボックスを作成して、更新したアプリをテストします。その後、新しいサンドボックスを開きます。 1. 新しいブラウザーウィンドウで、以前作成した外部テストリンクにアクセスし、アプリをインストールします。 1. サンドボックスにインストールしたアプリが想定どおりに動作するかどうかをテストします。 ### サンドボックス API キーと Webhook の動作の検証 [Workbench](https://docs.stripe.com/workbench.md) を使用して、サンドボックスへのインストールが正しく機能しているかどうかを検証できます。 - _テストサンドボックス_内でいくつかのサンプルアクションを実行します。 - 次に、_マネージドサンドボックス_内で Workbench を開きます。 ワークベンチを使用して、[API ログの確認](https://docs.stripe.com/workbench/guides.md#view-logs-by-source)や[イベントのフィルタリング](https://docs.stripe.com/workbench/guides.md#filter-events)など、アプリの動作を検査します。アプリが正しく更新されていれば、サンプルアクションのすべての API コールと Webhook イベントを確認できます。 想定されているイベントやレスポンスが表示されない場合は、管理対象のサンドボックス内にいるかどうかを再確認してください。また、サンドボックス固有の Webhook エンドポイントを設定していること、およびアプリが適切なサンドボックス API キーを使用しているかどうかも確認してください。 ### アプリを提出して審査を受ける サンドボックスのサポートを有効にし、サンドボックス内でアプリが想定どおりに動作することを確認したら、[アプリを審査に提出する](https://docs.stripe.com/stripe-apps/publish-app.md)ことができます。アプリのサンドボックスのサポートは、[アプリの審査プロセス](https://docs.stripe.com/stripe-apps/review-requirements.md)の一環として確認され、アプリ一覧の詳細ページに表示されます。