This has been a long standing issue for us.
We accept event registrations and accept payments with credit cards through Authorize.net. Many of our events have multiple options using price sets.
If someone registers for the event, and later needs to change the options lowering the fee, they need a refund. We can issue the refund manually without issue, but when we change their registration in CiviCRM the contribution fee changes to the new value and the status changes to pending refund, and we can't ever change it from that.
All our refunds happen manually out of the system, and we really need the pending refund contributions to be changeable back to complete when the refund is processed.
This really messes up our reporting for the event, and throws things off in a messy way.
Is there a way to resolve this so that we can track things as they should be?
What is the logic in restricting the change in that field? Since CiviCRM can't process the refund, and we need to do it offline, we should be able to change the status once we issue the refund.
Any help, thoughts, or ideas would be wonderful.