A transaction typically goes through two cycles, i.e; Authorization and Clearing. Reversal, Refund and Void transactions all meant to return the money to the customer. Depending upon what caused the return and at what point of lifecycle decides whether it’s a Refund or Reversal or Void.
Here is the quick explanation:
A refund should be used when a customer initiate return of funds request for an original transaction which is through Authorization and Clearing (transaction has been captured and settled) cycle confirmed by Payment Association, Issuing and Acquiring bank. It basically is another record in transaction ledger.
Void should be used when a customer initiate return of funds request for an original transaction which is through Authorization cycle only, but not through the Clearing cycle and is currently unsettled. Voiding a transaction is basically canceling the original transaction as if it never happened. It is cost effective in comparison to Refund.
Reversal is basically to reverse the impact caused by an error in the system which can break the course of transaction flow. For such cases, either terminal or acquiring system generate reversal, which looks for original transaction and reverses the impact caused by it to the cardholder.