Modern Treasury supports the origination of wire returns. This may be helpful in cases where you receive a wire transfer that you want to reject. Inbound wire transfers contains the relevant pieces of information that you would need to return the wire, such as the sender's account and routing number. Modern Treasury automatically parses this information so that the workflow for returning the wire is straightforward.
Returning a wire is relatively straightforward since wire transactions are irreversible. Once you've received a wire transfer in your bank account, the funds can't be pulled back by the sender. Therefore it is safe to send the funds back to them via a return.
In this guide, we will walk through an example of originating a wire return.
This is currently only supported at Silvergate Bank and Wells Fargo.
## 1. Identify an incoming payment detail to be returned
Before you can initiate a wire return, you need to have received an incoming payment detail. You may have been notified about the incoming payment detail via an `
incoming_payment_detail.created` [webhook](🔗). You will need the ID of the incoming payment detail to create the return object. For the purposes of this guide, we will use the following sample incoming payment detail. The incoming payment detail ID is `
## 2. Create the return
Next, you can [create a return](🔗).
This API call will return a response that includes the return object.
## 3. Monitor the return
Once the return has been created, it will be transmitted to the bank prior to the next cutoff. You may monitor the return's status via the API or by subscribing to the [return webhooks](🔗). If the return succeeds, you will receive a `
completed` webhook event. If it fails, you will receive a `
failed` webhook event. If the return is rejected by the RDFI, you will receive a `
returned` webhook event. The return's state will be reflected in the `
status` attribute on the return object as well.