After re-reading your requests, I think a customer loyalty card might a better option than the gift card. Again, you might run into trouble not honoring the full value of a Gift Card (Certificate) for the minimum length of time required for your region.
With a Customer Loyalty system, you can set it up that after they spend Xrs they earn points or rs for future purchases. You will also have their information to send promotions to them to help increase business.
Here is a couple you can look at:
I didn’t go through any of these. It’s just something for you to look at to see if that would work for your situation.