スキルにスキル内課金を追加する手順
カスタムスキルでプレミアムコンテンツを提供したい場合、サブスクリプション型、消費型、買い切り型などのスキル内商品を定義します。商品の購入とキャンセルを行うユーザーリクエストをサポートするカスタムインテントを追加して、対話モデルを更新します。Alexaに制御を引き渡す購入フローをスキルロジックに追加し、ユーザーに購入手順を案内します。
スキルにスキル内課金(ISP)機能を追加するには、次の手順に従います。スキル内課金(ISP)の概要については、スキル内課金とはを参照してください。
前提条件
スキル内課金を使用するには、スキルが以下の前提条件を満たす必要があります。
- スキルがカスタム音声対話モデルを使うカスタムスキルであること。
詳細については、カスタムスキルとはとスキルの対話モデルの作成を参照してください。 - サポート対象のロケールでスキル内課金を提供していること。
ワークフロー: スキルにISPを追加する
スキルにISPを追加するには、以下の手順を実行します。
- 購入フローとキャンセルフローをデザインする
- スキル内商品を作成する
- 対話モデルに購入インテントとキャンセルインテントを追加する
- スキルコードに購入リクエストとキャンセルリクエストを追加する
- スキルをテストする
- 公開情報を追加する
- スキルの認定を申請します。
ステップ1: 購入フローとキャンセルフローをデザインする
スキルにスキル内課金を追加する際は、お勧め、購入を完了するためのAlexaへの引き渡し、スキルに戻すためのシームレスなフローをデザインします。また、直接購入、キャンセル、返金のフローもデザインします。詳細については、スキル内商品の購入フローをデザインするを参照してください。
ステップ2: スキル内商品を作成する
スキル内でプレミアムコンテンツを提供するには、1つ以上のスキル内商品を定義してスキルに関連付けます。スキル内商品では、支払いモデルと、購入できる商品の説明、購入プロンプト、価格などの詳細を定義します。商品を作成し、スキルにリンクできます。または、作成した商品を後でリンクすることもできます。デザインフェーズで定義した商品説明とプロンプトを使用します。
以下のツールのいずれかを使用して商品を作成し、スキルに関連付けます。
ステップ3: 対話モデルに購入インテントとキャンセルインテントを追加する
次に、購入フローとキャンセルフロー用のカスタムインテントを対話モデルに追加します。これらのインテントを追加することで、ユーザーが直接商品の購入、キャンセル、返金をAlexaにリクエストするケースに対応できます。詳細については、インテント、発話、スロットの作成を参照してください。スキルが消費型の商品を提供する場合は、ユーザーが消費型商品のインベントリーをたずねることができるインテントを提供します。
以下の例は、2つのスキル内商品を提供するクイックトリビアスキルの購入インテントとキャンセルインテントを示しています。
{
"interactionModel": {
"languageModel": {
"invocationName": "クイックトリビア",
"intents": [{
"name": "AMAZON.CancelIntent",
"samples": []
},
{
"name": "AMAZON.HelpIntent",
"samples": []
},
{
"name": "AMAZON.StopIntent",
"samples": []
},
{
"name": "AMAZON.NavigateHomeIntent",
"samples": []
},
{
"name": "AMAZON.FallbackIntent",
"samples": []
},
{
"name": "BuyIntent",
"slots": [{
"name": "商品名",
"type": "LIST_OF_PRODUCT_NAMES"
}],
"samples": [
"商品名を買って",
"商品名を購入して",
"商品名がほしい",
"商品名を買いたい"
]
},
{
"name": "ShopIntent",
"slots": [],
"samples": [
"何が買えるの",
"買えるものは何",
"買える商品を教えて",
"買う",
"買い物する",
"購入する"
]
},
{
"name": "CancelProductIntent",
"slots": [{
"name": "商品名",
"type": "LIST_OF_PRODUCT_NAMES"
}],
"samples": [
"商品名をキャンセルして",
"商品名をやめて",
"商品名はほしくない",
"商品名の返金をして"
]
}
],
"types": [{
"name": "LIST_OF_PRODUCT_NAMES",
"values": [{
"id": "reference_name_1",
"name": {
"value": "商品A",
"synonyms": ["Aという商品"]
}
},
{
"id": "reference_name_2",
"name": {
"value": "商品B",
"synonyms": ["Bという商品"]
}
}
]
}]
}
}
}
ステップ4: スキルコードに購入リクエストとキャンセルリクエストを追加する
この手順では、次のようにユーザーの購入ステータス照会、購入およびキャンセルのリクエストをスキルコードに追加します。
- 各スキルセッションの開始時に、ユーザーが購入可能なスキル内商品のリストを取得し、有料商品や提供する商品を判断します。
- 直接購入リクエストに対応するコードを追加する
- ユーザーがスキルのコンテンツと対話している間に、ユーザーにお勧めを提案します。
- キャンセルフローおよび返金フローを処理する
- Amazon購入フローに制御を渡すコードと、購入やキャンセルの後にスキルを再開するコードを追加します。
- 消費型アイテムを提供する場合は、ユーザーが購入したアイテムを使用する際にインベントリーを管理します。
詳細については、スキルコードにISPのサポートを追加するを参照してください。
ステップ5: スキルのテスト
スキルをテストする準備ができたら、Alexa開発者コンソールのAlexaシミュレーターを使ってスキルの機能、購入フロー、キャンセルフローをテストします。スキルが開発中ステージの場合、スキルに関連付けられた開発者アカウントが、スキル内商品に対して課金されることはありません。詳細については、スキル内課金のテストを参照してください。
ステップ6: 公開情報を追加する
スキルをAmazon Alexaスキルストアに公開するには、開発者コンソールの公開タブで、スキルに必要なメタデータを入力する必要があります。プライバシーポリシーと利用規約ページへのリンクを提供していること、およびタップとクリックが可能なすべてのリンクがiOS、Android、デスクトップデバイスで正常に開き、表示されることを確認してください。テスト手順に、各スキル内商品の名前と各商品の購入プロンプトに至る方法を記載します。
スキル情報を入力して保存したら、スキルをベータテスト用に公開するか、認定の申請をすることができます。
ステップ7: スキルの認定を申請します。
スキルの認定を申請する前に、スキルがすべての認定テスト要件を確実に満たすようにします。また、納税者確認インタビューを完了し、支払い情報を入力する必要もあります。次に、スキル内課金の認定をよく読んで、スキルを申請する前に合格しておく必要があるテストケースを確認します。
スキルの認定を申請するには、Alexa開発者コンソールでスキルの認定を申請するを参照してください。
関連トピック
- 有料スキルインターフェースのリファレンス
- 有料スキルのスキーマ
- ASK SDK for Node.jsのMonetizationServiceClient
- ASK SDK for PythonのMonetizationServiceClient
最終更新日: 2024 年 04 月 23 日