Certify In-Skill Purchasing Skills
After you submit your skill for certification, Amazon evaluates your in-skill products. Make sure that your skill passes all the certification requirements for a custom skill, as well as the test cases in the following sections.
- Functional tests
- User experience tests
- Provide test instructions
- Check the release dates for products
- Submit the skill
Make sure your skill passes all the tests described in Functional Testing for a Custom Skill.
Review the descriptions and prompts for your products and make sure:
- List prices for your products are only in the pricing fields.
- All product names and descriptions are free of typos, emoticons, and special characters.
- Each product description clearly explains what the product provides.
- All placeholder values in the product templates are customized to your products. For example, include valid icon URLs specific to your products.
- All products must have an associated icon, and that icon URLs resolve correctly.
Open the Alexa app, click Skills and then scroll to your skill.
- Make sure that your product description states that the skill offers in-skill purchases, but doesn't include pricing details.
- Make sure that the description identifies the different types of products you offer (one-time purchases, consumables, and/or subscriptions) and how they're used. For example, if you offer a consumable product that expires a certain amount of time after the first usage, make that clear in your description.
User experience tests
Before completing this section of tests, make sure that your skill passes all the tests described in User Experience Testing for a Custom Skill.
Tests for all types of in-skill purchases
|Test||Expected result||What to do|
|Start the skill, and then ask Alexa for information about your available products.
To be eligible for promotion, you must include the utterance “What can I buy” in this intent.
|A user can get information about all the products (entitlements, consumables, and subscriptions) available for purchase. Discontinued products aren't included.||Provide support for purchase requests. In the testing instructions for the skill, provide guidance on how to determine the products available.|
|Invoke the purchase suggestion (upsell) scenarios for your skill.||Your product offers occur in a context that makes sense to the user. A user knows what the skill has asked them to purchase and why. The purchase prompt doesn't include the list price and that the product suggestion and purchase prompt are different. No upsells occur for discontinued products.||Confirm that the purchase prompt description doesn't include the list price.|
|Start your skill and ask to buy each product that your skill offers. Try to use the product immediately.||A user can buy every purchasable product associated with your skill successfully and use it immediately.||In the testing instructions for the skill, provide guidance for how to use the products.|
|Start your skill and ask to buy each product your skill offers, and then end the skill session. Resume the skill, and then try to use each product.||A user can buy every product associated with your skill and use it in another skill session.||Make sure you have handled the case when a user is ENTITLED to a product. See, Get the in-skill products list.|
|Buy each product your skill offers.||Review the purchase receipt for each item. The description and image for the product accurately reflect the product purchased.||Fill in all the fields for the product with your product information.|
|Buy a product and start a flow that would prompt a purchase suggestion if the user hasn't purchased the product.||The user doesn't receive a purchase suggestion to buy a product they already own.||Make sure you handle an ALREADY_PURCHASED result correctly.|
|Complete a scenario that results in a purchase suggestion, and then decline the suggestion.||The user doesn't enter the purchase flow, and the skill continues to provide the free content.||Make sure that you handle a DECLINED result result correctly.|
|Complete a scenario that results in a purchase suggestion. Accept the suggestion, but decline the purchase prompt.||The skill resumes seamlessly and continues to provide free content.||Make sure that you handle a DECLINED result correctly.|
|Complete a skill flow that results in a purchase suggestion. Decline the offer, and then complete the same flow again.||The user doesn't receive purchase suggestions for the same products that they declined.||After receiving a DECLINED result, don't offer a purchase suggestion.|
|If you discontinued any products, invoke the skill as a user who purchased the product previously, and then attempt to access the premium content.||The user who purchased the product previously has access to the premium content. The discontinued product causes no negative user experience impacts.||Make sure that users who purchased the product previously continue to have access. For details, see Discontinue a product.|
|If you have discontinued any products, invoke the skill and verify that no upsells for the discontinued product occur.||Discontinued products aren't offered in upsells.||Make sure that there are no upsells or other references to products that users can no longer buy. For details, see Discontinue a product.|
|For skills that offer a subscription, cancel the subscription with a voice request.||The user can cancel the subscription successfully.||Make sure that you handle a voice request to cancel correctly.|
|For skills that offer one-time purchases and consumables, ask for a refund.||The user can ask for a refund, and then Alexa directs the user to Amazon customer support.||Make sure that you handle a voice request for a refund correctly.|
|Set up invalid payment information for your account, and then try to buy a product.||The purchase flow provides a failure message to the user. Your skill doesn't repeat this information, but resumes the skill, and then suggests free content or content that has been already purchased.||Make sure that you handle an ERROR result correctly.|
Tests for consumable products
|Test||Expected results||What to do|
Purchase multiple consumable products, and then use at least one. Disable the skill, and then re-enable the skill. Check your inventory of consumables, and then use one of the consumables again.
Your skill maintains the consumable inventory when the skill is disabled and re-enabled. The user can use the previously purchased consumable product after re-enabling the skill.
Make sure that you store the user's inventory with their
Purchase and use some consumable products, and then ask the skill for your current inventory of consumable items and verify that the count is as expected.
The user can ask for their inventory of consumable products available for use and gets an accurate count.
Provide an intent that lets the user ask for their consumable product inventory. Manage the inventory as users buy and use products.
Provide test instructions
Prior to submitting your skill for certification, make sure that you specify each in-skill product name that you offer in the Testing Instructions for the skill. Include the steps a user would follow to be prompted to purchase each item. Include any customer credentials that can help get to these prompts quickly.
If your skill contains purchase suggestions, include instructions for how to invoke them for these products.
If your skill contains consumables, include instructions for how to use the consumable products after they're purchased and how to check the inventory of units.
In the developer console, Testing Instructions are on the Distribution page in the Privacy and Compliance section.
Check the release dates for products
You cannot change the release date for products once a skill is live, so make sure you have specified the correct dates. For more details, see:
Submit the skill
Finally, consult the Define Alexa Skills Store Details and Availability to complete all of the required skill information and then submit your skill for certification.