Hi,
For the little, few months ago, I was working on some HikaSerial improvements and I implement a new feature which allow HikaSerial to create a new checkout "step" in order to replace the original "coupon" step.
The goal of this new step was to accept an HikaShop coupon code or an HikaSerial serial.
At this moment, I was wondering if overriding the coupon system could be a good idea.
The actual coupon/discount system is quite powerful and have very special features. But the side effect is that it is not possible to have multiple coupons in the same time because there is no concurrency between them.
The idea of using HikaSerial as a coupon system is to use the "packs" as categories of coupon and configure the dependencies between the packs (and the generators to create the coupon codes).
At this moment, if a pack target a specific product and the configuration allow it, the other pack won't apply the discount on the specific product. The system should be think in the way of the multiple coupon so the current features of the coupon might not be present in the first version.
It is not a small development and I didn't have the time to make the full implementation ; Some important development to do for HikaMarket.
The other solution for your case is to use a custom plugin. The plugin could embed the rules for the coupon, override the "coupon step" in the checkout and use the system of the "order additional" to generate the multiple price discounts.
Kind regards,