The developers accepted a contract agreeing to refund money in certain circumstances, the circumstance have occurred, it is time for them to uphold their end of the contract.
The sales have been rolled back, the customers' money is in the developers account (as sympathetic as "pocket" sounds, if they can carry the money in their pocket then this is about very little money at all), the customers get their money back.
I think perhaps everyone that learns this lesson does it the hard way. Understand the contracts you enter into.
(I learned mine at the hands of Digital Equipment Corporation. For "good will" reasons I agreed to supply a specific key person for a specific nearly completed project until it was finished for a specific sum. All good, until it became in Digital's best interests to not complete the project on time and get more money from the customer for another year's work. I'm sure the Digital managers had many a good laugh that year.)