The government grants limited rights of return (thanks Jen), for which you are entitled to a cash or cash-like refund (e.g. reversal of a credit card charge as described below).
The vendor has the option to go above and beyond that statutory minimum as a courtesy to the customer. In that non-compulsory zone, they have the liberty to offer store scrip rather than a cash refund.
Of course, any business can try to cheat you, and then you have to stick up for your rights by insisting or reporting to relevant authorities.
If you buy with a credit card, the rules and contractual obligations of the credit card companies oblige the merchant to accept returns by doing a refund to the card. It's important to understand how this happens: the merchant isn't just picking an arbitrary amount of money and doing a new "sale in reverse"... they are identifying a specific past transaction that already happened, and modifying or reversing it. That is a system safeguard so they don't credit the wrong person or be tricked into a reversal on a transaction that never happened. That's why they want your receipt.
On a cash transaction, it is sellers prerogative whether to issue cash or store credit. Issuing store scrip is a reasonable option to deter theft and fraud. For instance someone who wanted an item could get it for free, by buying the item, taking it home, returning the next day without the item, grab another identical item off the shelf and sneak over to the CS line and "return" it with yesterday's receipt. With cash sales, that would be completely untrackable, and the thief is gone. With credit card, they have your identity; with scrip they can "flag" the scrip in their system to either prevent its use and/or have a security officer detain you if you try to use it.
For instance American home stores will cheerfully take re-saleable condition items back even without a receipt, but will issue a store voucher for the value rather than cash. That policy would be a disaster if they refunded cash. As it is, I find it rather convenient!
So if you want the convenience of cash refunds, you can just use credit cards - gaining the feature at the expense of anonymity.