I'm currently looking into offers and offer constraints, and I hope someone can shed some light on why it is that the "One coupon per customer" constraint can only be used by authenticated customers?
From what I can see the constraint checks whether there is more than one redeemed offer for the given customer key. Since all customers have a key, is there anything in the logic that would prevent the constraint from doing the same check on an anonymous customer?
The reason is that anytime someone comes to the site (anonymously) a new anonymous customer record is generated so the same customer could checkout on Tuesday and Wednesday and be viewed by Merchello as two completely different anonymous customers.
We are going to make the cookie expiration configurable which will allow you to manage the length of time between anonymous customers are created ... but that is still per browser / machine.
This constraint is meant to lock things down to guarantee the coupon can only be used once.
I see... so I guess the "best" method is to use the merchello cookie with an extended expiration that matches the period for which the offer is valid (despite the machine/browser limitation)? Or are there any other alternatives?
What I meant was what the "best" way of identifying an anonymous customer would be if I were to implement a custom One Per Customer constraint? I.e. is there any other way that Merchello keeps track of anonymous customers other than the cookie that we can use to guarantee one coupon per customer?
One coupon per customer for anonymous customers
Hi guys,
I'm currently looking into offers and offer constraints, and I hope someone can shed some light on why it is that the "One coupon per customer" constraint can only be used by authenticated customers?
From what I can see the constraint checks whether there is more than one redeemed offer for the given customer key. Since all customers have a key, is there anything in the logic that would prevent the constraint from doing the same check on an anonymous customer?
The reason is that anytime someone comes to the site (anonymously) a new anonymous customer record is generated so the same customer could checkout on Tuesday and Wednesday and be viewed by Merchello as two completely different anonymous customers.
We are going to make the cookie expiration configurable which will allow you to manage the length of time between anonymous customers are created ... but that is still per browser / machine.
This constraint is meant to lock things down to guarantee the coupon can only be used once.
I see... so I guess the "best" method is to use the merchello cookie with an extended expiration that matches the period for which the offer is valid (despite the machine/browser limitation)? Or are there any other alternatives?
The constraints are resolvable - so you could create your own constraint, modeled off the One Per Customer constraint and implement your own logic.
Yes, I get that :)
What I meant was what the "best" way of identifying an anonymous customer would be if I were to implement a custom One Per Customer constraint? I.e. is there any other way that Merchello keeps track of anonymous customers other than the cookie that we can use to guarantee one coupon per customer?
is working on a reply...