Hello. I'd like to add inskill purchases to my Alexa Skill. So, my skill is hosted on a node.js server and is 100% javascript based.
I have already implemented the initiation of the purchase-sequence by responding to an incoming intent with some similar JSON like you can find below:
directives = [{ type: "Connections.SendRequest", name: "Buy", payload: { InSkillProduct: { productId: "amzn1.adg.product.$productid$" }, }, token: "{}" }]
This purchase logic works great, just as it should but I got some problems implementing a Upsell-logic sending back this JSON:
directives = [{ type: "Connections.SendRequest", name: "Upsell", payload: { InSkillProduct: { productId: "amzn1.adg.product.$productid$" }, upsellMessage: "$upsellmessage$" }, token: "{}" }]
So every single time sending back the payload above I get the error message "not a valid request".
I found out that the Alexa response says "Upsell was blocked due to lack of purchase permission." - so to my question: How can I fix this issue and whats the reason for this at all?
"request": { ... "name": "Upsell", "payload": { "purchaseResult": "ERROR", "productId": "amzn1.adg.product.$productid$", "message": "Upsell was blocked due to lack of purchase permission." } }