We use an app called GetSale which allows us to schedule strike-through pricing on products for sales and promos. We've used this for sales in the past, but there are two issues that come up with this because of how Shopify categories this price change:
This app (GetSale) merely makes a temporary price change, so Shopify doesn't recognize it as a discount. This means customers can stack other coupon codes that normally wouldn't be able to combine with other discounts, but since this price change technically isn't a discount, coupon stacking has occurred. We want to prevent this.
With returns and exchanges, this again becomes an issue because our returns app (Loop) will ask customers to cover the difference on exchanges once the price change has ended. For example, say we have a product on sale today for $20, and it's normally $30. If I buy that today and then try to exchange for a different size in a week after the sale has ended, the product's price will be $30 again and I will be charged $10 to make up the difference. If the price change was a technical discount, then Loop would honor the discount price, but in our current setup it's only seen as a price change and so they will not honor lower prices.
The Ideal Solution
What we want is the ability to run sales with strikethrough pricing (it's just so much more effective than coupons), but have Shopify recognize the sale as an actual discount, not just a price change.
Can anyone point me in the right direction? Thank you!