Как правильно реализовать систему скидок Woocommerce по типу купонов?
На страницах "Корзина" и "Оплата" добавил блок в котором выводится сумма скидки и кнопка "Воспользоваться скидкой". Фактически это даже не скидка, а заработанные бонусы, предоставляемые сервисом. Блок должен появляться если сумма бонусов меньше общей суммы заказа. Сам блок реализован в отдельном файле block-applydiscount.php и подгружается аяксом (правильно ли это или блок нужно перенести в шаблон страниц cart и checkout и выводить все поля вручную, а не использовать шоткоды ? Сейчас траницы cart и checkout используют стандартный шаблон и шоткоды [woocommerce_cart] и [woocommerce_checkout] соответственно).
Предполагаю создать купон и динамически присваивать ему сумму скидки (количество бонусов у каждого пользователя может быть разное). И по нажатии на кнопку "Воспользоваться скидкой" инициировать добавление купона.
После успешной оплаты сумму скидки (или использованного бонуса) необходимо добавить в отдельную таблицу.
Удачный ли выбран способ решения задачи? Интересует дальнейший алгоритм решения? Какие хуки нужно использовать?