Исходя из ТЗ заказчика нужно сделать компонент изложенного функционала:
Делаем через биллинг.
В админке пользователя объекта или услуги можно настроить: название услуги, срок действия и %скидки.
При покупке купону присваивается уникальный номер(буквы цифры).
В итоге на купоне видим: номер, название объект, название услуги, срок действия, % скидки, количество, сумма.
В "истории операций" биллинга видим: номер, объект, название услуги, срок действия, % скидки, количество, сумма.
Тоже в главной админке биллинга.
Можно даже что бы в админке владельца объекта отображалиь данные о продаже, помоему это в биллинге есть, хотя это не обязательно.
Нужно что бы было универсальным и для каталога и особенно для мапса интересно.
и ещё можно что бы на одной странице выводились все купоны с сайта
Вот внешне хорошая реализация mirkuponov.kz/zakaz-bez-logina/vse-vidy-massazha-19171%3A1