Understanding refund statuses
When you initiate a refund, the status changes based on the feedback we get from the customer's bank or refund processing partner. The change in the refund status also affects the status of the refunded transaction.
Here are the different states a refund and the refunded transaction can go through:
Pending: When you initiate a refund on a transaction from your Dashboard or API, the refund returns a ‘Pending’ status which signifies that we have initiated the refund on our end. At this point, the refund amount is deducted from your next payout or balance (for Registered Businesses), and the status of the refunded transaction changes from ‘Success’ to ‘Reversal pending’.
Processing: The status of the refund changes from ‘Pending’ to ‘Processing’ as soon as the processor receives the refund, while the status of the refunded transaction still remains ‘Reversal pending’ for this refund state.
Processed: When the refund has been successfully processed to the customer, the status changes from ‘Processing’ to ‘Processed,’ and the refunded transaction status also changes from ‘Reversal pending’ to ‘Reversed.’
Failed: If the refund cannot be successfully processed, the status of the refund changes to ‘Failed,’ and the refunded transaction changes from ‘Reversal pending’ to its initial ‘Success’ status. The deducted refund amount is also added back to your payout.
Here’s a flow chart illustrating how the refund status affects the transaction status:
You can now use webhook notifications to listen for the status of a refund. Here’s a link to the developer documentation that shows how you can implement this on your end.
Please feel free to reach out to us via email at support@paystack.com or via our contact form if you have any questions.