In design round i was asked to Design a coupon and voucher managment system's Low level design.
Requirements were:
Admin will create coupons with rules(like match age>18 and cart_value>1000);
Coupons will have (averall uses limit / per ser limit ), expiry date , active/inactive etc.
Vouchers will be of type
Unassigned : anyone can use but only one uses
"PreAssigned": Voucher attached to user id
Was asked to design api too:
User will see list of coupons available and Vouchers;
Admin can delete/ create , activate or disable coupons etc.
Comment your Approach