Skip to main content

What happened

An inbound transfer was returned by the originating financial institution before Conduit could credit it to the customer. The transaction is in a terminal failed state with failureCode: RETURNED_BY_SENDER.
{
  "type": "RETURNED_BY_SENDER",
  "title": "Transfer returned by originating institution",
  "status": 422,
  "detail": "The inbound transfer was returned by the sender's institution before it could be credited.",
  "resolution": "Contact the sender to investigate the return. The sender's institution should have a return code that explains the reason.",
  "docs": "/errors#returned-by-sender",
  "instance": "/v2/transactions/txn_abc123",
  "correlationId": "corr_xyz789",
  "timestamp": "2026-01-15T09:30:00.000Z"
}

Common causes

  • Insufficient funds at the originating institution — the sender’s account did not have sufficient funds when the transfer was processed
  • Account closed or invalid — the originating account was closed or the transfer details were invalid
  • Sender-initiated reversal — the sender requested a recall or reversal of the transfer before it cleared

Recovery

This is a terminal state. No funds were credited to the customer. The customer should contact the sender or their own financial institution for details on the return.
1. Confirm the terminal state
curl -X GET https://api.conduit.financial/v2/transactions/txn_abc123 \
  -H "x-api-key: YOUR_API_KEY"
The response will show status: "failed" and failureCode: "RETURNED_BY_SENDER". 2. Notify the customer The inbound transfer was not credited. The customer should be informed that the transfer was returned and that they should contact the sender for the return reason and next steps. 3. Do not resubmit on behalf of the sender This failure originates at the sending institution. There is no action Conduit or the customer can take to recover the original transfer; a new transfer from the sender is required.

Prevention

  • Handle transaction.failed with this code — branch on failureCode === 'RETURNED_BY_SENDER' to surface a “your incoming transfer was returned by the sender’s bank” message without disclosing internal details
  • Do not retry automatically — this failure requires the sender to initiate a new transfer; automated retries are not applicable
The transaction.failed event fires when the return is recorded:
{
  "type": "transaction.failed",
  "data": {
    "transactionId": "txn_abc123",
    "failureCode": "RETURNED_BY_SENDER"
  }
}