If your platform has received a wire transfer in error, you can use our Wire Reversal API to initiate an outgoing transfer that sends back the funds to the financial institution that sent the original transfer.

When an incoming wire transfer reversal is initiated, the status of the original transfer will not be changed, and the reversal transfer follows its own lifecycle as if it were an ordinary outgoing wire transfer. See Wire Notification And States for more information.

Reversal Reasons

The reversal transfer can be sent at any time after the original incoming transfer was received. We currently only allow incoming wire reversals for the following reasons:

  • The beneficiary account number is invalid
  • The beneficiary information in the wire does not match the corresponding information on the account
  • The beneficiary is refusing the wire
  • The beneficiary is reversing the wire as per the sender's request

Currently, these are the only reasons supported for initiating a wire reversal. If there is a reason you feel should be supported that is outside the scope of the reasons above please email us at to see if it makes sense to add.

Linking the Reversal and Original Transfers to Each Other

In addition, reversal_pair_transfer_id field of wire_transfer object is used to link the original transfer and the reversal transfer as:

original_transfer.reversal_pair_transfer_id =
reversal_transfer.reversal_pair_transfer_id =

The original_transfer.reversal_pair_transfer_id will be final once the reversal_transfer.status is completed and no other reversals on original_transfer will be permitted. Further, another reversal cannot initiated on original_transfer while reversal_transfer is in progress. A new reversal can only be initiated if and when reversal_transfer.status becomes rejected.

Only Incoming Basic Funds Transfers Can Be Reversed

We currently only support reversals on incoming basic funds transfers. At the wire protocol-level, this means that the incoming wire message has a business_function_code of CTR, message_type of 10, and message_subtype of 00. Column cannot reverse an outgoing wire transfer for which Column is the ODFI.

Outgoing Reversal of Funds Message Format

We use business_function_code of BTR (a bank-to-bank transfer) when the original transfer came from a bank external to Column. We do this for several reasons. First, this is what we receive in practice from other financial institutions. Second, we have seen cases where a CTR (customer-to-customer) is sent back to us. A BTR allows the receiving financial institution to determine where to send the reversed funds.

We use business_function_code of CTR for "on us" transfers where the original transfer was from a sender who also banks at Column.

We are able to automatically determine the correct message_subtype code (02 for same day and 08 for a prior day) based on the original incoming transfer being reversed.