Crypto Transfers

Fortress APIs allow you to internally transfer or withdraw crypto. The transfer endpoint is used.

Supported Crypto Assets

Note: These are the currently supported cryptos for asset custody.

BlockchainTokensMainnet/Testnet
EthereumETH, USDC, UNI, LINK, CRV, AAVE, COMP, SHIB, BAT, GRT, SUSHI, SAND, ENJ, DAI, AXS, MKR, YFI, APE, USDT, QNT, CHZ, GALAmainnet/sepolia
PolygonPOL, USDCpolygonMainnet/polygonAmoy
BitcoinBTCbitcoinMainnet/bitcoinTestnet
SolanaSOL, USDCsolanaMainnet/solanaDevnet
CardanoADAcardanoMainnet/cardanoTestnet
StellarXLM, USDCstellarMainnet/stellarTestnet
PolkadotDOTpolkadotMainnet/polkadotWestend
AvalancheAVAX, USDCavalancheMainnet/avalancheFuji
RippleXRPrippleMainnet/rippleTestnet
LitecoinLTClitecoinMainnet/litecoinTestnet
TezosXTZtezosMainnet/tezosTestnet
DogeDOGEdogeMainnet/dogeTestnet
EOSEOSeosMainnet/eosTestnet
CosmosHubATOMcosmosHub/cosmosHubTestnet
Bitcoin CashBCHbchMainnet/bchTestnet
NearNEARnearMainnet/nearTestnet
ArbitrumUSDC, ETHarbitrumMainnet/arbitrumSepolia
AlgorandUSDCalgorandMainnet/algorandTestnet
TronUSDTtronMainnet/tronTestnet
FantomFTM, USDCfantomMainnet
HederaHBARhederaMainnet/hederaTestnet
FlowFLOW, USDCflowMainnet/flowTestnet

📘

Solana Rent Fee

Just a quick heads up about Custodial Accounts on the Solana Blockchain. If you want to deposit any token other than SOL, you'll need to deposit a small amount of SOL first. This SOL deposit covers the Rent fee required to hold a wallet on the blockchain.

The SOL deposit needs to be done directly on the blockchain and can't be handled as an internal transfer in our system.

For more info on Rent Fees check out Solana's documentation. https://docs.solana.com/developing/intro/rent

Get Crypto Deposit Address (for transfers in)

Address can now be retrieved once per blockchain. Supported tokens on each chain we be dynamically added to the account when the deposit is received.

GET /api/trust/v1/custodial-accounts/{custodialAccountId}/crypto-deposit-instructions/{network}/{assetType}

//Response Schema

{
    "address": "0xC456Db3842CE51cfC7AB17f1d8dA62F47C2673454"
}

Internal Transfers

POST /api/trust/v2/transfers

//Sample Request

{
  "type": "internal",
  "assetType": "crypto",
  "asset": "btc",
  "network": "bitcoinMainnet",
  "amount": .001,
  "from": {
    "type": "account",
    "id": "A3CA08AB-3058-4C3C-81E7-51DA24B171FF"
  },
  "to": {
    "type": "account",
    "id": "T89A08AB-3058-4C3C-81E7-83DA24B17JF9S"
  },
  "comment": "custom comment here",
  "spreadBasisPoints": 0
}

Withdrawal

POST /api/trust/v2/transfers

//Sample Request

{
  "type": "withdrawal",
  "assetType": "crypto",
  "asset": "eth",
  "network": "mainnet",
  "amount": 10,
  "from": {
    "type": "account",
    "id": "A3CA08AB-3058-4C3C-81E7-51DA24B171FF"
  },
  "to": {
    "type": "address",
    "id": "0x71C7656EC7ab88b098defB751B7401B5f6d4173A"
  },
  "comment": "custom comment here",
  "spreadBasisPoints": 0,
  "applyGasFee": false
}