In-Skill Purchase Certification Guide
In-skill products are evaluated when the skill they are associated with is submitted for certification. Make sure that your skill passes all of 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 of the tests described in Functional Testing for a Custom Skill.
Review your products' JSON description files and make sure:
- Prices for your products are listed only in the pricing object.
- All product names and descriptions are free of typos, emoticons and special characters.
- All placeholder values in the product templates have been 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 your skill's product description states the skill offers in-skill purchases, but does not include pricing details.
User experience tests
Before completing this section of tests, make sure that your skill passes all of the tests described in User Experience Testing for a Custom Skill.
|Test||Expected Result||What to do|
|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 they are being asked to purchase and why. The purchase prompt does not include the price and that the product suggestion and and purchase prompt are different.||Ensure the
|Start your skill and ask to buy each product your skill offers. Try to use the product immediately.||A user can successfully buy every product associated with your skill 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. End the skill session. Resume the skill and try to use each product.||A user can successfully buy every product associated with your skill and use it in another skill session.||Make sure you have correctly handled 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.||Replace all default template values with your product information.|
|Buy a product and start a flow that would prompt a purchase suggestion if the product had not been purchased.||The user does not receive a purchase suggestion to buy a product they already own.||Make sure you handle an ALREADY_PURCHASED result correctly.|
|Setup invalid payment information for your account and try to buy a product.||The purchase flow provides a failure message to the user. Your skill does not repeat this information, but resumes the skill and suggest content that has been already purchased or free content.||Make sure you handle an ERROR result correctly.|
|Complete a scenario that would result in a purchase suggestion. Decline the suggestion.||The user does not enter the purchase flow, and the skill continues to provide the free content.||Make sure you handle a DECLINED result result correctly.|
|Complete a scenario that would result in a purchase suggestion. Accept the suggestion, but decline the purchase prompt.||The skill resumes smoothly and continues to provide free content.||Make sure you handle a DECLINED result correctly.|
|For skills that offer a subscription, cancel the subscription with a voice request.||The user can successfully cancel the subscription.||Make sure you handle a voice request to cancel correctly.|
|Complete a skill flow that results in a purchase suggestion. Decline the offer, and complete the same flow again.||The user does not receive purchase suggestions for the same products they recently declined.||Do not offer a purchase suggestion after receiving a DECLINED result.|
Provide test instructions
Prior to submitting your skill for certification, make sure that you specify at least two in-skill product names in the Testing Instructions for the skill. If your skill contains purchase suggestions, include instructions for how to invoke them for these products. 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 information, see the pricing object section of the product schema.