Skip to main content
A USD transfer moves funds between accounts you own (internal) or to a bank trusted destination (external), without quorum approval on each request. For shared concepts, external setup, limits, and status monitoring, see Transfer. This page covers the USD-specific payloads. POST /v2/transfers requires the Transfer funds permission and an Ed25519 request signature.
Staging uses the USD_R asset type and https://api.anchorage-staging.com/v2. Production uses USD and https://api.anchorage.com/v2. The examples below show the staging value.

Internal transfer

Move USD between wallets you own. Set both source.type and destination.type to WALLET. No trusted destination or AML information is required.

External transfer

Move USD to a bank trusted destination. Set destination.type to TRUSTED_DESTINATION and destination.id to a fiat trusted destination ID, and include assetParametersFiatTrustedDestination.
Your API key’s permission group must have Any trusted destination selected under Transfers outside Anchorage. Fiat trusted destinations can’t be added individually to a permission group’s specific-destinations list. See Connect a trusted destination to an API key for details.
To find the destination ID, call GET /v2/trusted_destinations and filter on type == "fiat".

Fields

purpose values

TRADING_SETTLEMENT | LENDING | INVESTMENT | EXPENSES | FEE_PAYMENT | GRANT_PAYMENT | PRIZE_AWARD | GIFT | REIMBURSEMENT | REBALANCE | INTRA_COMPANY

Response

A successful request returns 201 with a transferId and status:

Managing bank trusted destinations

Listing fiat trusted destinations via API is supported. Creating, editing, and deleting them via API is in development. Add bank recipients in the web dashboard today by selecting Fiat as the destination type—see Adding a USD trusted destination. For API details, see Trusted destinations.