My name is Ciarán, I'm a Shopify Support Guru.
Yes you can certainly partially refund a customer. It's done through the admin and we have a guide here explaining how it's done:
Essentially you'll work out how much the 10% discount should have been, and you'll refund the customer that amount. Does that work for you?
If you have an issues with the process let me know!
All the best,
Ciarán H | Shopify Guru
Just to add that it depends of course whether you have an outsourced payment provider or not. Our payments are managed by a secure payment gateway and we would not be able to do it via shopify only. So make sure you refund the 10% in the relevant system.
Howdy, this explanation does not work in the case of an order with only one item, where a discount code did not work and I want to refund, for example, $20 on a $100 order that is pending. I do not want to reduce the order quantity (one item), and do not want to change the fulfillment (I will make and ship the order in a few days) -- all I want to do is give the customer back $20 of the $100 they sent me.....