Trading (HTTP - Signed)
Transfer (Signed)
Move margin between accounts (internal, external, isolated-account top-up) via the unified transaction endpoint
POST
Transfers use the unified
The
Transfer Action (
Notes:
POST /order endpoint. Send a transaction with a single transfer action. Conceptual background lives on the Protocol Native Asset Transfer page.
A transfer is rejected if it would push the source account into liquidation territory. The protocol bounds withdrawable amount by
min(equity − 1.05 × MM, marginPnl).Transaction Envelope
account and signer must be the authorizing account:
internal: must be the master account that owns bothfromandto.external: must be the account that owns the source.
Transfer Action (transfer)
Transfer Kinds
Internal
Move margin between accounts that share the same master (master to sub-account, sub-account to sub-account, master to a per-instrument isolated account, and back). No minimum amount.Isolated-account top-up
To add margin to a per-instrument isolated account, setto to the isoPubkey returned on iso=true rows in the fullAccount/positions snapshot.
External
Move margin to any account on the network. Subject to a per-symbol minimum amount.externalsupports recipient auto-create only when the destination is on-curve (a real Solana wallet).- Unknown off-curve recipients are rejected; no implicit account creation.
Response
SameOrderResponse envelope. Successful transfers emit a transfer status row; failures emit transferFailed.
Common Error Messages
Failed transfers do not modify any account state.
Margin-only Refresh
transfer (along with createSubAccount with margin move and removeSubAccount) triggers a same-tick margin/risk refresh on the touched accounts. The OrderResponse is returned synchronously, so the response may arrive before the corresponding account stream delta.
Before You Start
See Transaction Signing for how to sign requests.Nonce: use a unique value (e.g. timestamp in nanoseconds):
BigInt(Date.now()) * 1_000_000n.Body
application/json
Transaction with a single transfer action