This is the discussion thread for EOS CC/GV refactoring.
The current CCGV system is, frankly, a mess.
Coupons are inflexible and fail to offer an organized path to code expansion.
The Gift Voucher system is schizophrenic, offering the capabilities of both gift certificates and a refund manager.
These logical flaws derive at least in part from the ability to sort order total modules, combined with the omission of facilities for pre-total handling. This needs to be remedied, which we will do by adding order modules to manage transaction adjustors such as coupons, gift certificates, store credits and other new additions.
Discount facilities will consist of:
Gift Certificates (NOT Vouchers!) - a type of product, and managed as such with an order module to manage application of the amount BEFORE reaching payment modules.
Coupons: expanded system allowing for multiple coupon types implemented via plugins. Include group support, membership attachment and more.
Vouchers: instruments used for store credits which may include refunds or a managers discretionary adjustment, etc.
Specials: Pricing already implemented, backend will be reconstructed.
Sales: will become the focal point of discount generation with the ability to build coupons, designate specials, attach one or more events, and front end provisions for coupon distribution, and more.