Another solution would be to ask customers to "please enter your refund address" in case of a refund. Online wallets can play a role too.
I'm not going to comment on the "automatic" part of the refund process, but as far as the actual refund payment, you are correct that a new address needs to be obtained to process a refund. This is a problem when the original purchase may have been made without an account and perhaps from an E-Wallet where the buyer doesn't have control of the address used to send payment.
This opens it up to where any party can request a refund on someone else's order in this scenario.
Most E-commerce involves use of an authenticated account (e.g., authenticated username and password), so this isn't a problem for most merchants. If selling anonymously, or without account authentication, then either a refund address should be provided by the customer at the time the order is placed (yuck) or the refund handling would need to be something otherwise appropriate. For example, if a physical address was used for the order but a refund is requested then a letter with a refund verification code could be sent to the same address. There are workable solutions that protect both the merchant and the customer for nearly every scenario.
There is a payment protocol being built for the Bitcoin client that will further protect the person sending payment:
-
https://bitcoinfoundation.org/blog/?p=85Case B: split payments
Use case: the European Union has enacted laws that customers may not be forced to pay >50% of an online purchase in advanced.
There are laws affecting specific payment methods (e.g, credit cards) that don't apply to other payment methods (cash). If something like a payment sent upon notice from the delivery service were desired, an escrow partner could facilitate that.