Transfer failures
Transfer failures
A transfer’s status changes from pending
to failed
if the funds don’t reach their intended destination. A transfer could fail for a few reasons:
- The source bank account does not have sufficient funds for the amount of the transfer
- The transfer recipient closed their bank account so it no longer exists as a possible destination
pending
to failed
within 2 business days of when it was initiated.
Failure reasons
When a transfer fails, we communicate the reason for the transfer failure through the failureReason
field in API response for a GET transfer. See a list of possible failure reasons below:
Status | Description | |||
---|---|---|---|---|
source-payment-error |
A failure occurred at the source. The failure code is provided in the rail details under the source object. | |||
destination-payment-error |
A failure occurred at the destination. The failure code is provided in the rail details under the destination object. | |||
wallet-insufficient-funds |
Transfer failed due to insufficient funds in the source wallet. | |||
rejected-high-risk |
Transfer was flagged with potential fraud and rejected by Moov. | |||
processing-error |
Moov encountered an unexpected error processing the transfer. |
Transfer reversals
A transfer’s status changes from completed
to reversed
if the funds made it to the destination, but need to be returned. A reversal scenario can occur when:
- A fraudulent, unauthorized, or unrecognized charge was made
- Someone used the wrong bank details to pay for goods or services
In the case of a reversal, Moov routes the funds back to the party that made an unintentional payment or was accidentally/fraudulently charged. To accomplish this, we deduct from the Moov wallet of the account that received the funds. The recipient of a transfer that’s being reversed is responsible for funding the wallet to cover the negative balance.
completed
to reversed
within 60 calendar days of when it was initiated.
Setting up webhooks for transfer status updates
Every transfer status change is an event in Moov, so you can set up webhooks to stay updated on whether or not a transfer has failed. Read our guide on webhooks to learn more.