Не знаю насчет велосипеда, но я бы пошел по такому пути:
создал 2 дополнительных свойства в заказе ключ и срок действия, а так же промежуточный статус заказа "присвоен ключ"
в личном кабинете выборку по заказам и свойствам. соответсвенно в этом случае можно будет указать когда куплен ключ, номер заказа покупки, сам ключ, срок его действия
если пойти дальше и будет интеграция с 1С, то можно сказать программисту 1С чтобы ключ и срок передавались из 1с с обменом заказами и к примеру соответсвующим статусом (присвоен ключ), на это событие считывать пришедший файл и обновлять содержимое заказа (т.к. по умолчанию свойства при штатном обмене не проставляются в заказе сами)
создал 2 дополнительных свойства в заказе ключ и срок действия, а так же промежуточный статус заказа "присвоен ключ"
в личном кабинете выборку по заказам и свойствам. соответсвенно в этом случае можно будет указать когда куплен ключ, номер заказа покупки, сам ключ, срок его действия
если пойти дальше и будет интеграция с 1С, то можно сказать программисту 1С чтобы ключ и срок передавались из 1с с обменом заказами и к примеру соответсвующим статусом (присвоен ключ), на это событие считывать пришедший файл и обновлять содержимое заказа (т.к. по умолчанию свойства при штатном обмене не проставляются в заказе сами)