Here are the steps for debugging Lambda not invoke from Smart Home Skill:
1.Check if skill locale is in the same region with Lambda endpoint.
Follow this mapping:
For instance, if the developer adds German as the only locale, and if he puts US Lambda endpoint as default. When he builds the skill, the developer can make it without any problems. But when the user invokes the Skill, Lambda function won't be invoked. For example, this won't work:
Another example, if a developer adds multiple locales to the Smart Home skill and if he only fills the default Lambda to match one locale, when the user enables the Skill in another region, the Lambda in those regions won't be invoked. In this screenshot's example, when user enables this Smart home Skill using US account, Lambda function with endpoint eu-west-1 won't be invoked (since it's an EU endpoint); but if the user enables it using German account, Lambda function will be invoked (German can use the EU Ireland endpoint)
2. Make sure the customer account that you used to test your skill align with your Lambda endpoint. A lot of developers use their development account as their test account, but that always makes them ignore the issues that might reproduce during the Skill certification process.
For example, if the Smart Home Skill is in US locale and has a correct US Lambda endpoint, but the developer uses a UK developer account. Meanwhile, he tests the skill using the same account. The Lambda couldn't be invoked in this case because the test account is in a different region. The suggestion here will be creating a new US account and enable your skill in this new one through Skills Beta Testing:
Also, it's always a good practice to decouple your development account and test account so that you can reproduce the customer experience for your skill.