Стандартным решением будет использование системы защиты, такой как WinLicense или Armadillo, с генератором кода (PHP, C, Delphi и т. Д.) На вашем сайте.
В настоящее время я использую Armadillo (хотя мне это не очень нравится - я, вероятно, переключусь на WinLicense), и ключи генерируются, когда заказ принимается моими службами регистрации (Regnow, TrialPay и Plimus прямо сейчас).Ключ отправляется пользователю по электронной почте.Пользователь может перейти на мой сайт и запросить повторную отправку по электронной почте.
Вы также можете иметь уникальный URL-адрес для заказа, который генерирует новый ключ.