once per user or once period?
either way, you would need to store the promo code in in the orders table on checkout, then create a recordset to lookup the promo code in the database. Then set the trigger for the PromoCode session variable to occur only if the recordset is empty.