Overview
Reevit provides a unified refund interface that works across all connected providers. Whether the original payment went through Paystack, Flutterwave, or Stripe, the refund flow is identical — one API call or one click in the dashboard.
Refund from the dashboard
Find the payment
Navigate to Payments in your sidebar. Use the search bar or filters to locate the transaction you want to refund. You can search by payment ID, customer email, or amount.
Open payment details
Click on the payment row to open the detail sheet. You'll see the full payment timeline, provider information, and available actions.
Click Refund
In the actions area, click Refund. A dialog will appear asking for:
- Amount — Pre-filled with the full amount. Adjust for partial refunds.
- Reason — Optional note for your records.
Click Confirm Refund to process.
Track the refund
The payment status will update to refunded (full) or partially_refunded. The refund appears in the payment timeline with the provider's refund reference.
Refund via API
For programmatic refunds:
/v1/payments/{payment_id}/refundcurl -X POST https://sandbox-api.reevit.io/v1/payments/pay_abc123/refund \
-H "Authorization: Bearer sk_sandbox_your_key_here" \
-H "Content-Type: application/json" \
-d '{
"amount": 2500,
"reason": "Customer requested partial refund"
}'
Omit the amount field to refund the full remaining amount.
Provider limitations
Some providers have refund windows (e.g., Paystack allows refunds within 60 days). Reevit will return a clear error if the provider rejects the refund with the specific reason.
Refund statuses
| Status | Meaning |
|---|---|
pending | Refund submitted to provider, awaiting confirmation |
succeeded | Refund processed, funds returned to customer |
failed | Provider rejected the refund — check the error details |