Best practice for checkout process where users need to meet certain criteria to make purchase?

In a multi-step checkout process, what's the best practice for basically filtering out people who do not meet 3-4 certain criteria for purchase?

One criteria is country of residence for example. So if a user doesn't live in a certain country, there is basically no point for him to proceed to the next step of the form as he won't be able to actually buy the product. (The criteria are strict and can't be changed for legal reasons as this is to do with insurance products.)

Is it advisable to start by filtering the users first? The obvious way is to have them confirm that they meet the criteria like country of residence before they can get to the rest of the form (e.g. "I confirm that... - I live in x, - I have y...")

In that case, should there be an option for users who do not meet the criteria? A way of doing that would be via radio buttons with a "yes" and "no" option.

For the "no" users, the journey would end right there (with a message explaining why of course). The "yes" users would be able to start the checkout process.

In terms of tracking user behavior, having both options is probably best as it will provide information on who tried but couldn't make the purchase. If only the "yes" option is available, the data on terminated sessions at that stage of the process wouldn't really explain much (could be the criteria, could be something else). However, I worry that having a "negative" option could deter some users.

Of course, starting with the criteria and a "yes" or "no" question might put some people off. Because of the nature of the purchase, users should be aware that some legal stuff is required though.

A third way I can think of, would be to integrate the criteria into the form as the users move along (e.g. country of residence could be checked as part of entering the address in the form later on). That way, everyone can start the form but some users then wouldn't be able to complete the purchase.

I wasn't able to find much information on this. Any thoughts are appreciated!