Question

So we have created a coupon via the admin panel for free shipping.

It's a specific coupon "free" andhas a condition that the shipping country is the "United States".

The problem is that if a non logged in customer with no address history applies the coupon via the discount box on /checkout/cart/ they get an error message saying the coupon is not valid.

The issue is that they have't been identified by Magento as having "United States" in their shipping information.

We also have hidden the shipping and tax estimator block from this page, but for debugging purposes, we re-enabled it, and than the coupon works only AFTER a customer clicks get a quote, then applies the discount code.

Seems like an issue with default magento coupon rules processing. Any ideas?

Was it helpful?

Solution

You're basing the coupon condition, which is evaluated in the cart page, on data that you get later, during checkout; it's like a chicken and the egg problem. There are several things that you could do though:

  1. Move the coupon form somewhere later in the checkout, maybe in the payment step
  2. Set a default US based shipping address for quotes that don't have a shipping address yet
  3. Make the shipping method that's used for US to be free and don't use a coupon

Cheers

Licensed under: CC-BY-SA with attribution
Not affiliated with magento.stackexchange
scroll top