Why can't I refund a Braintree transaction?

When using the PayPal powered by Braintree payment gateway you will only be able to refund a transaction if it has been submitted for settlement, i.e. captured.

Depending on the settings for Braintree within your account you might not instantly be capturing the funds from your customer's credit/debit card and instead pre-authorising the funds for capture at a later time (i.e. just before you dispatch the goods).

If you are doing so, you will not be able to process a refund through the refunds section of your account (when viewing/managing the order) unless the funds have been captured. If the funds haven't been captured, instead of attempting to refund the transaction you should instead void it so that the transaction is cancelled (and the funds never leave the customer's account).