Transfers

Cancel Wire Transfer

Cancels an outgoing wire that the bank has not yet sent. Returns the wire with its new status. A wire that has already left cannot be cancelled; contact your bank to request a recall instead.

post/accounts/{account_id}/wires/{wire_transfer_id}/cancel

Request

Path parameters

account_idstring required

The ID of the account.

wire_transfer_idstring required

The transaction group ID for the wire transfer (e.g. withdrawal_wire_...), the wire ID returned when you created the transfer (e.g. wire_...), or the ID of an inbound wire (e.g. iw_...).

Headers

x-entity-idstring uuid

Optional entity_id to scope requests to a specific entity.

Response

Successful Response

amountstring required

How much moved, in USD.

status'pending' | 'pending_approval' | 'canceled' | 'processing' | 'error' | 'sent' | 'returned' | 'void' required
direction'inbound' | 'outbound' required
counterparty_idstring uuid nullable

The contact you sent to. Null on inbound transfers, which arrive from someone you never configured.

counterparty_namestring nullable

Who you sent to, or who sent to you on an inbound transfer.

counterparty_account_numberstring nullable

The other side's account number, when the bank reports it. Often absent on inbound transfers.

counterparty_routing_numberstring nullable

The other side's routing number, when the bank reports it. Often absent on inbound transfers.

created_atstring date-time required

ISO 8601 date-time in the format YYYY-MM-DDThh:mm:ss.nnn[Z|[+|-]hh:mm] (per IETF RFC 3339).

updated_atstring date-time required

ISO 8601 date-time in the format YYYY-MM-DDThh:mm:ss.nnn[Z|[+|-]hh:mm] (per IETF RFC 3339).

internal_notestring nullable

Your private note on this transfer. Never leaves Meow.

metadataobject nullable

The metadata attached when this object was created, unchanged. null when none was attached. Rarely, a .created webhook can be published before the create request finishes committing, and that one event reports null; every later event and every read of the object carries the metadata.

idstring required

Pass this back to Get Wire Transfer to check on the transfer.

instructionsstring nullable

The originator to beneficiary information carried on the wire. On an inbound wire this is where a sender puts a reference you can match on.

counterparty_bank_namestring nullable

The other side's bank, when the bank reports it. Often absent on inbound wires.

errorstring nullable

Why the transfer failed, when it did.

imadstring nullable

The wire's IMAD, which uniquely identifies it on the Fedwire network. Use it when tracing a wire with a bank.

purposestring nullable

The purpose you stated when sending. Null on inbound wires, which carry no purpose you set.

counterparty_addressstring nullable

The sender's postal address as their bank reported it. Only set on inbound wires.

counterparty_bank_addressstring nullable

The sending bank's postal address as it arrived on the wire. Only set on inbound wires.

is_internationalboolean nullable

True when an inbound wire came from a bank outside the US. Null when the bank did not say, and on outbound wires.

Example response

{
  "amount": "1000.00",
  "counterparty_account_number": "123456789",
  "counterparty_bank_name": "Example Bank N.A.",
  "counterparty_id": "cp_3b0d5e2a41f2",
  "counterparty_name": "Catnip Coffee Co",
  "counterparty_routing_number": "021000021",
  "created_at": "2026-01-15T14:46:41.375Z",
  "direction": "outbound",
  "id": "wire_9f1c3b6e2a1d",
  "imad": "2026011500000001",
  "instructions": "catnip-payroll-2026",
  "internal_note": "Q1 roasting supplies",
  "purpose": "invoice_payment",
  "status": "sent",
  "updated_at": "2026-01-15T14:46:41.375Z"
}

Changes

No recorded changes to this operation across all 1 revision of this API.