Refunds are only implemented for Stripe payments
Admin refund rejected the payment because the provider is not Stripe.
Why this happens
In-app refund API is Stripe-only. PayPal, crypto, Paddle, etc. must be refunded in that provider’s dashboard (then reconcile locally if needed). Distinct from Only completed payments can be refunded (status gate).
Diagnose and fix
1. Confirm the payment provider in Payment transactions list.
2. For Stripe: ensure Stripe is configured, then retry refund on a completed charge.
3. For other gateways: refund in the provider UI; do not expect this admin action to call them.
4. See Refund reversal and Stripe.