createKrakenExchangeTransfer
Creates a transfer from a Kraken exchange account to an external wallet address. This allows users to withdraw cryptocurrency from their Kraken holdings to a wallet they control.
Before calling this function, use getKrakenAccounts to get the accountId and verify available balance, and getKrakenWhitelistedAddresses to check if the destination address is valid.
Parameters
Returns
Promise<ExchangeTransferResponse> - A promise that resolves to the transfer details:
Transfer Status Values
Examples
Basic transfer
Transfer USDC on a specific network
When transferring tokens that exist on multiple networks, specify the target network:
Transfer with MFA
If the user has MFA enabled on their Kraken account:
Idempotent transfers
Use an idempotency key to safely retry failed requests without creating duplicate transfers:
Complete transfer flow with validation
Handle transfer errors
Prerequisites
- User must have connected their Kraken account through Dynamic
- The destination address must be whitelisted in Kraken if the user has address whitelisting enabled
- The Kraken account must have sufficient balance for the transfer
- Add
account.fast-api-key:funds-query, account.fast-api-key:funds-withdraw, account.fast-api-key:ledger-query, and account.fast-api-key:write to the Kraken OAuth provider’s Additional Scopes field in the Dynamic Console. All Kraken functions require these scopes.
- Transfers are processed by Kraken and may take time to complete depending on network conditions
- The
status field indicates the current state of the transfer
- Use idempotency keys (
id parameter) in production to prevent duplicate transfers from network retries
- For tokens on multiple networks (like USDC), always specify the
networkObject to ensure the transfer goes to the correct chain
Last modified on October 29, 2026