This is an enterprise-only feature. Please contact us to enable.
Prerequisites
- A Dynamic environment with Fireblocks Flow enabled
- A Dynamic client created and initialized (see Creating a Dynamic Client)
1. Enable chains in the dashboard
Open Chains & Networks in the Dynamic dashboard and enable every chain you want users to pay from. Flow supports these source chains:| Chain | Dashboard toggle | Extension package |
|---|---|---|
| EVM (Ethereum, Base, Polygon, Arbitrum, etc.) | EVM | @dynamic-labs-sdk/evm |
| Solana | Solana | @dynamic-labs-sdk/solana |
| Bitcoin | Bitcoin | @dynamic-labs-sdk/bitcoin |
| Sui | Sui | @dynamic-labs-sdk/sui |
| TRON | Tron | @dynamic-labs-sdk/tron |
2. Install chain extension packages
Install the packages for the chains you enabled:3. Add chain extensions to the client
After creating your Dynamic client, add an extension for each chain. Extensions register wallet providers so the SDK can discover, connect, and sign with wallets on that chain.4. Create an API token
Go to Developer > API Tokens in the dashboard and create a token withflow.write scope. This token authenticates flow creation from your backend — it is the only call that requires it. Everything after flow creation uses a session token minted by the SDK.
5. Create a flow from your backend
Call the flow creation endpoint from your server. This is where you set the mode, amount, currency, settlement, and destination — all fixed at creation time.flow.id. Pass this to your frontend as flowId when calling the SDK functions.
Next steps
With the client configured and aflowId from your backend, you’re ready to run the flow on the client:
- Fireblocks Flow JavaScript guide — Full walkthrough: attach source, quote, submit, and poll
- Fireblocks Flow API guide — Raw HTTP version for backend services and AI agents
attachFlowSource— Attach a wallet or exchange as the funding sourcegetFlowQuote— Get a conversion quotesubmitFlowTransaction— Sign and broadcast