

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# SaaS 契約製品を と統合する AWS Marketplace
<a name="saas-integrate-contract"></a>

**新しい SaaS 製品の 2026 年 6 月 1 日の変更に関する統合要件**  
AWS Marketplace は同時契約のサポートを導入し、同じ契約期間中に 1 つの AWS アカウントで同じ製品を複数回購入できるようになりました。2026 年 6 月 1 日以降、更新された統合要件をサポートするために、すべての新しい SaaS 製品が必要になります。[同時契約用の新しい統合を確認します](https://catalog.workshops.aws/mpseller/en-US/saas/integration-for-concurrent-agreements)。

Software as a Service (SaaS) 契約製品を と統合することは、 の 1 つのステップ AWS Marketplace です[での SaaS 製品の作成 AWS Marketplace](saas-create-product.md)。Software as a Service (SaaS) 契約製品を と統合するには AWS Marketplace、コードを記述し、いくつかの顧客シナリオに正常に対応できることを証明する必要があります。以下のセクションでは、これらのシナリオとその対応方法について説明し、統合テストの概要を説明します。

**注記**  
開始する前に、 AWS Marketplaceで対象の Software as a Service (SaaS) 製品に適した料金モデルを選択していることを確認してください。詳細については、「[SaaS 製品の計画](saas-prepare.md)」を参照してください。

**Topics**
+ [シナリオ: サービスが新規顧客を検証する](#saas-contract-validate-customer)
+ [シナリオ: サービスが顧客のリクエストを処理する](#saas-contract-customer-requests)
+ [シナリオ: ユーザーサブスクリプションの変更を監視する](#saas-contract-monitor-changes)
+ [SaaS 契約製品統合のテスト](#saas-contract-integration-testing)

## シナリオ: サービスが新規顧客を検証する
<a name="saas-contract-validate-customer"></a>

顧客が製品をサブスクライブすると、登録 URL にリダイレクトされます。これは一時的な `x-amzn-marketplace-token` トークンを含む HTTP POST リクエストです。このリクエストには、次の方法で応答します。

1. で `[ ResolveCustomer](https://docs.aws.amazon.com/marketplacemetering/latest/APIReference/API_ResolveCustomer.html)` API オペレーションを呼び出し`ProductCode`て`CustomerAWSAccountId`、トークンを `CustomerIdentifier``LicenseArn`、、、および と交換します AWS Marketplace Metering Service**。

1.  AWS Marketplace Entitlement Serviceで `[ GetEntitlements](https://docs.aws.amazon.com/marketplaceentitlement/latest/APIReference/API_GetEntitlements.html)` API オペレーションを呼び出して、顧客がアクセスできるサブスクリプションと数量 (該当する場合) を確認します。

1. 今後の呼び出しのために`CustomerIdentifier``CustomerAWSAccountId`、、`LicenseArn`、、および をシステム`ProductCode`内に保持します。顧客が有効なサブスクリプションを持っているかどうかと、顧客について必要な情報をすべて保存しておきます。

1. リクエストへの対応として、ユーザーが初めて使用するときの操作を (サービスに応じて) 表示する必要があります。

## シナリオ: サービスが顧客のリクエストを処理する
<a name="saas-contract-customer-requests"></a>

顧客がサービスにリクエストをしたら、次のシナリオに適切なアクションまたはメッセージで対応する必要があります。
+ 顧客のシステムには顧客 ID がありません。つまり、まだサブスクライブしていないということです。サブスクライブ方法をユーザーに伝える必要があります。
+ 顧客 ID があり、`GetEntitlements` API オペレーションによって適切なエンタイトルメントが返されます。このシナリオでは、リクエストに応答する必要があります。
+ 顧客 ID はあるが、`GetEntitlements` API オペレーションから返されるエンタイトルメントがないか、リクエストを満たすのに十分な数量がありません。このシナリオでは、アクセスの処理方法とユーザーエクスペリエンスの管理方法を決定する必要があります。

## シナリオ: ユーザーサブスクリプションの変更を監視する
<a name="saas-contract-monitor-changes"></a>

**重要**  
 AWS Marketplace SaaS 製品の SNS 通知は、Amazon EventBridge 通知に置き換えられています。SNS と統合された既存の SaaS 製品がある場合は、引き続き機能します。新しい出品は、最終的に SNS の代わりに Amazon EventBridge の使用に移行します。詳細については、「[Amazon EventBridge を使用した SaaS サブスクリプションイベントの管理](saas-eventbridge-integration.md)」を参照してください。

Amazon EventBridge ルールのターゲットとして Amazon Simple Queue Service (Amazon SQS) キューを設定し、顧客エンタイトルメントの変更に関するイベントを受信します。Amazon EventBridge イベント設定は、製品の作成時に指定されました。詳細については、「[での SaaS 製品の作成 AWS Marketplace](saas-create-product.md)」を参照してください。Amazon EventBridge ルールを設定することで、特定の顧客に対するアクセスの提供や取り消しなど、顧客エンタイトルメントの変更に関するイベントを受信できます。

返答が必要な通知は、以下のものだけです。
+ ライセンス更新 Amazon EventBridge イベント – 顧客エンタイトルメントが変更されました。新しいステータスを確認するには `GetEntitlements` API オペレーションを呼び出す必要があります。カスタマーストアを更新し、該当する場合は (例えば、顧客の契約が失効している場合)、カスタマーリソース閉鎖のプラクティスに従い、リテンションポリシーを遵守します。

**注記**  
詳細については、「[を使用した使用権限の確認 AWS Marketplace Entitlement Service](checking-entitlements.md)」を参照してください。

## SaaS 契約製品統合のテスト
<a name="saas-contract-integration-testing"></a>

SaaS 契約製品を と統合したら AWS Marketplace、詳細なテストを実施して、統合が成功していることを確認する必要があります。次の手順では、製品統合を確認するステップを示します。

**注記**  
自分のアカウントを使って製品をサブスクライブし、正常に統合できたことを確認します。料金を一時的に下げて、それらのアカウントで高額な料金を発生させずに購入フローをテストすることができます。価格を一時的に引き下げたり、追加のテストアカウントに製品へのアクセスを許可したりする方法について詳しくは、[お問い合わせください](https://aws.amazon.com/marketplace/management/contact-us/)。  
製品が発売された後も、サービスは新規顧客向けに引き続きこれらのシナリオに対応する必要があります。

1. 許可したアカウントを使用して、製品を契約してカスタマーエクスペリエンスをテストします。

1. アカウントで契約した後、アカウントが登録 URL にリダイレクトされることと、そのリダイレクトが一時トークンを含む POST リクエストであることを確認します。アプリケーションが今後の通話に備えて顧客 ID を保持し、顧客が持つエンタイトルメントを正しく処理するようにしてください。これは [シナリオ: サービスが新規顧客を検証する](#saas-contract-validate-customer) の一部をテストします。

1. 上記の手順でテストアカウントを検証したら、そのアカウントをアプリケーションにオンボードします。例えば、テスト用の顧客でフォームに入力して、新しいユーザーを作成することができます。または、SaaS アプリケーションにアクセスするための次の手順を別途用意します。これは [シナリオ: サービスが新規顧客を検証する](#saas-contract-validate-customer) の一部をテストします。

1. `GetEntitlements` API オペレーションからエンタイトルメントが返されない場合は、オンボーディング中または検証の進行中に、エンタイトルメントのないユーザーのアクセスとエクスペリエンスを管理する方法を決定します。これは [シナリオ: サービスが顧客のリクエストを処理する](#saas-contract-customer-requests) をテストします。

1. サブスクリプションの変更をテストします。サブスクリプション解除、サブスクリプション成功、サブスクリプション失敗のシナリオをアプリケーションが正しく処理することを確認します。これは [シナリオ: ユーザーサブスクリプションの変更を監視する](#saas-contract-monitor-changes) をテストします。

1. すべての統合要件を完了し、ソリューションをテストしたら、 AWS Marketplace 運用チームに通知します。次に、`GetEntitlements` API オペレーションが正常に呼び出され、新規顧客が十分にオンボーディングされたことを確認して、ソリューションをテストします。

統合とテストが完了したら、最終レビューを実行し、製品を一般公開できます AWS Marketplace。詳細については、「[での SaaS 製品の作成 AWS Marketplace](saas-create-product.md)」を参照してください。返金リクエストフォームに記入して、テストサブスクリプションをキャンセルすることもできます。サブスクリプションのキャンセルの詳細については、「[請求調整のリクエスト (返金)](refunds.md#refund-process)」を参照してください。