As has been stated, no shop is ever obliged to offer any form of refund on non-faulty goods (unless they were found to be 'not as described'); any refund they give is entirely discretionary. (Different rules apply to 'distance selling' but they're not relevant here).
If a shop does decide to offer a refund it would be ridiculous to expect them to lose money by doing so. For example, if you buy something for £20 then that's £20 that they've got in their till. If you then return it, and the price has stayed the same, they can again offer it for sale and eventually get someone else's £20 in their till.
However if the price has gone down to £15, and they give you £20 back, then (when they sell it again) they'll only have £15 in their till (instead of £20) meaning that doing you a favour has cost them £5. No business can afford to operate that way!