Discount code module allows you to assign a discount code to a product, category (for each product of this category) and total order. You can specify a fixed discount rate or a percentage of the total order, set expiration date and minimum order amount for a discount code.