Use an ecommerce package which can handle this for you. They tend to create a link that is stored in their database and triggers the formation of the page, but the code is timestamped to expire after a day or three. I also think they tend to mark it as having been used, to prevent sharing.
Cubecart can do this. The older version 3, which is free to download, can do this for you. You'd simply have a shop with only one product in it (or perhaps a couple of products)