transfer.completed and transfer.failed for outcomes instead of polling. Each participating account can subscribe to these events. transfer.created is also emitted on success, not when processing starts. A failed transfer can be retried under the same ID and later succeed; retrieve the transfer to reconcile its current status.
A successful balance transfer credits the recipient’s available balance unless a release date applies. Transfers funded from pending balance retain a release date and credit pending balance; applicable recipient reserves or fraud holds can keep funds unavailable. succeeded confirms the transfer completed, not that all funds are withdrawable.
Endpoints
Attributes
string
required
Transfer ID.
number
required
Transfer amount.
string
required
When the transfer was created.
object | null
required
string
required
Transfer currency.
object
required
Account or user receiving funds.
string
required
Destination ledger account ID.
string | null
When the transfer failed, as an ISO 8601 timestamp. Null unless the transfer
has failed.
string | null
Machine-readable code for why the transfer failed. Null unless the transfer
has failed.
string | null
Human-readable explanation of why the transfer failed. Null unless the
transfer has failed.
number | null
Fee charged for the transfer.
object | null
Custom metadata attached to the transfer.
string | null
Transfer note.
string
required
The object type. Discriminates the create response from a send or a claim
link.
object
required
Account or user sending funds.
string
required
Source ledger account ID.
string
required
Transfer status.
processing means the on-chain leg is still executing — subscribe to transfer.completed and transfer.failed, or retrieve the transfer to check its current status. A failed transfer may be retried under the same ID and later resolve to succeeded.Available options: processing, succeeded, failedTransfer

