開発環境での購入処理には実際の課金は発生しません。Serviceの詳細につきましてはこちらのドキュメントを参照してください。いうメソッドを呼び出すことでスキル内商品の情報を取得することができます。MonetiazationServiceClientにはドキュメントとコード例が用意されていますのでそちらも参照してください。次は購入処理の実装です。ユーザが発話の中で購入したいスキル内商品を具体的に指定しなかった場合には、問い返して確認する必要があります。ディレクティブをスキルのレスポンスに含めることで購入処理を進めます。パラメータに購入対象商品のIDを指定します。注意点として、購入関連処理のディレクティブをレスポンスで返すと、一度スキルのセッションは終了し、その後の処理はスキル外で行われます。スキル外で話される購入メッセージは、スキル内商品の定義に基づいてAlexaが適切な発話を行います。その後またスキルにリクエストが送信されてセッションが再開しますが、一度セッションが終了した際にセッションアトリビュートは失われてしまいますので、必要なデータはDynamoDB等に永続化してください。パラメータに含めることで、セッション再開時に同じ値を受け取ることができます。購入処理の詳細はこちらのドキュメントを参照してください。いう種類のリクエストがスキルに送られるので、これをハンドラで処理します。いうパラメータに含まれていますので、状況に応じたレスポンスを返してください。購入が成功した場合にはプレミアムコンテンツにアクセスさせる、購入が失敗した場合には引き続き無料の体験を楽しんでもらうといった処理です。ERRORという値になります。スキルセッション再開時の詳細は、こちらのドキュメントを参照してください。アップセル処理は、ユーザがスキルを利用している中で自然にスキル内商品を提示して、興味があるか尋ねることで購入につなげる処理です。購入処理と同様、スキルのレスポンスにUpsellディレクティブを含めると、スキルのセッション外でAlexaがUpsellディレクティブに含まれるアップセルメッセージを読み上げ、ユーザに興味があるかを尋ねます。ユーザが「はい」と答えた場合には、購入処理と同じく、スキル外でAlexaが購入メッセージを読み上げます。購入処理後のスキルセッション再開については前述の通りです。リクエストがスキルに送られますので、ユーザを適切に元の体験に戻してください。他にも注意点として、アップセルの中ではスキル内商品の価格等に言及しないてください。それらは購入処理のステップにおいて、スキル内商品の情報に基づいて適切にユーザに提示されます。アップセル処理の詳細は、こちらのドキュメントを参照してください。キャンセル処理ではサブスクリプション型のキャンセルを行うことができます。購入・アップセル処理と同様にスキルのレスポンスにCancelディレクティブを含めると、スキルのセッション外でキャンセル処理が行われます。リクエストを適切にハンドルしてください。詳細はこちらをご確認ください。最後に消費型の場合のみ、スキル内商品の個数管理に気を付けてください。取得することができます。消費型のスキル内商品について、ユーザがスキル内でいくつ消費したかという数字はスキル側で管理する必要があります。具体的には商品の消費数をDynamoDBのような永続ストレージに保持することになります。したがって、ユーザが「<商品名>はいくつ残っている?」のように消費型商品の残り個数を尋ねた場合には、APIから取得できる購入数とスキルが自前で管理する消費数から、残っている数を計算して答えるようにしてください。スキル外で増減する可能性があります。消費数が購入数を超えてしまうような場合にも、エラーが起きないよう考慮してください。テストおよびスキル審査の準備スキル内課金を導入したスキルのテストについて、気を付けるべき点を挙げます。詳しい情報はこちらのドキュメントもご確認ください。開発中のスキルを一度無効にして、再度有効にしてもスキルの購入状況は変化しません。IDは変わりませんので、スキルが無効にされても商品の消費数は永続化したままにしてください。開発中のスキルにおいて、開発者アカウントと紐付いたユーザの購入状況をリセットするには、下記のように開発者コンソールのスキル内商品画面から「テスト購入をリセット」のリンクを押してください。スキルのベータテスト機能を使って招待したテストユーザが、開発中のスキル内でスキル内商品の購入処理を行った場合、実際の課金は発生しません。TESTという値になりますので、公開されたスキルでの購入とは区別できます。スキル審査にパスするためには、こちらのドキュメントも参考にしてスキル内商品の購入に関する基本的な機能がカバーされているか確認してください。こちらのスキル内商品に関する審査時の要件も参考にして、準拠するようにしてください。「スキル内課金の開発手順」はいかがでしたか。概念を理解すれば、サンプルコードを元に実装を進められると思います。スキル内課金の仕組みを利用して、スキルユーザに優れたコンテンツを届けましょう。