Note
- The AML integration is a premium feature that requires an additional purchase. Reach out to your Customer Success Manager if you do not have an agreement with an AML provider or you need help enabling the feature.
- Customer integrating Chainalysis for the first time will use the Chainalsyis V2 integration. If you already have the Chainalysis V1 integration in your workspace, your V1 integration settings will remain in your workspace while you migrate to Chainalysis V2.
About the Chainalysis integration
You can configure Fireblocks to provide transaction information, such as output address, transaction hash, and a Customer Reference ID, to Chainalysis for Know Your Transaction (KYT) screening. Using the AML Transaction Screening Policy, you decide which transactions are screened and sent to Chainalysis for further analysis.
Fireblocks works with Chainalysis API v1. For a list of supported assets on Fireblocks and Chainalysis, see here.
Viewing risk information
Auditable risk information about all your screened transactions is available from Chainalysis and Fireblocks. You can view your screened transactions on the Fireblocks Console’s Transaction History page and Audit Log, or use the Fireblocks API. Transaction rejection information is only available from Fireblocks.
You can also receive notifications of indirect risk exposure and ongoing risk attributions via severity alerts in the Chainalysis UI.
Before you begin
Before you can connect your Chainalysis account, complete the process of enabling the Compliance tab.
Initial setup
Generate your Chainalysis API key
- Log in to the Chainalysis KYT website.
- Go to Account > Developers > API Keys.
- Select Generate API Key.
- Copy the API key.
Make sure the user generating the API key has KTY API access permissions enabled in Chainalysis. Additionally, if the user generating the API key is removed from your Chainalysis account, you will need to generate a new API key.
Activate the Chainalysis integration on Fireblocks
- In the Fireblocks Console, go to Settings > Compliance > AML > Connect provider.
- Select Chainalysis V2.
- Enter your Chainalysis API key.
AML Transaction Screening Policy
The Chainalysis integration uses your workspace's AML Transaction Screening Policy to determine which incoming and outgoing transactions to screen. Upon activating the Chainalysis integration, the default AML Transaction Screening Policy is used until you create an optional custom policy.
AML Post-Screening Policy
The Chainalysis integration uses your workspace's AML Post-Screening Policy to pre-determine what action to take on a screened transaction based on the screening result returned by Chainalysis. Upon activating the Chainalysis integration, the default AML Post-Screening Policy is used until you create an optional custom policy.
Additional configurations
You can set up Customer Reference IDs to automatically associate users with incoming and outgoing transactions. This allows you to view the potential risk of transacting with each user.
Testing transaction rejection
Incoming transactions
- Add two rules to the end of your AML Post-Screening Policy that reject small dust transactions (e.g., $0.0568) from an identified source, such as from a well-known exchange.
- The first rule should accept all transactions greater than $0.0568.
- The second rule (the last rule on the policy) rejects all transactions.
- Initiate transactions above and below the amount threshold to trigger the respective rules.
These rules can be disabled at your request. Also, remember that only transactions with an attribution made within the Inbound Blocking Timeout period will be rejected. This does not include transactions that receive an “Unknown” screening result from Chainalysis.
Outgoing transactions
- Create a reject rule on your AML Post-Screening Policy to match transactions identified as high-risk by Chainalysis.
- Set one of your destination wallet addresses as a custom address in Chainalysis. You can delete the custom address after you complete testing.
- Set the rule’s Category parameter to match one of the high-risk categories.
These rules can be disabled at your request. Also, remember that only transactions with an attribution made within the Outbound Blocking Timeout period will be rejected. This does not include transactions that receive an “Unknown” screening result from Chainalysis.
Supported assets (V1)
Chainalysis has a list of assets and networks defined as mature and emerging assets and networks. Fireblocks supports the subset of these assets and networks as listed below.
You can request support for screening additional assets that are a part of Chainalysis' list by submitting a request to Fireblocks Support. On your request, make sure to list the specific assets you want to be supported in your workspace.
Note
By default, incoming transfers from Fireblocks Network connections have their screening status set to Unsupported Asset.
Asset Name | Description | Blockchain | Contract Address |
1INCH | 1INCH Token | ETH | 0x111111111117dC0aa78b770fA6A738034120C302 |
AAVE | Aave Token | ETH | 0x7Fc66500c84A76Ad7e9c93437bFc5Ac33E2DDaE9 |
ALGO | Algorand | ALGO | |
AMP | Amp | ETH | 0xfF20817765cB7f73d4bde2e66e067E58D11095C2 |
AMPL | Ampleforth | ETH | 0xD46bA6D942050d489DBd938a2C909A5d5039A161 |
ANKR | Ankr Network | ETH | 0x8290333ceF9e6D528dD5618Fb97a76f268f3EDD4 |
APE_ETH | ApeCoin | ETH | 0x4d224452801ACEd8B2F0aebE155379bb5D594381 |
AVAX | Avalanche (C-Chain) | AVAX | |
AVAX_BSC | Avalanche (BSC) | BNB_BSC | 0x1CE0c2827e2eF14D5C4f29a091d735A204794041 |
AXS | Axie Infinity Shard | ETH | 0xBB0E17EF65F82Ab018d8EDd776e8DD940327B28b |
AXS_BSC | Axie Infinity Shard (BSC) | BNB_BSC | 0x715D400F88C167884bbCc41C5FeA407ed4D2f8A0 |
BAL | Balancer | ETH | 0xba100000625a3754423978a60c9317c58a424e3D |
BAND | BandToken | ETH | 0xBA11D00c5f74255f56a5E366F4F77f5A186d7f55 |
BAT | Basic Attn. | ETH | 0x0D8775F648430679A709E98d2b0Cb6250d2887EF |
BCH | Bitcoin Cash | BCH | |
BNB_BSC | Binance Coin (BSC) | BNB_BSC | |
BSV | Bitcoin SV | BSV | |
BTC | Bitcoin | BTC | |
BUSD | Binance USD | ETH | 0x4Fabb145d64652a948d72533023f6E7A623C7C53 |
BUSD_BSC | Binance-Peg BUSD (BSC) | BNB_BSC | 0xe9e7CEA3DedcA5984780Bafc599bD69ADd087D56 |
CBAT | cBAT | ETH | 0x6C8c6b02E7b2BE14d4fA6022Dfd6d75921D90E4E |
CDAI | cDAI | ETH | 0x5d3a536E4D6DbD6114cc1Ead35777bAB948E3643 |
CEL | Celsius | ETH | 0xaaAEBE6Fe48E54f431b0C390CfaF0b017d09D42d |
CELO | Celo | CELO | |
CELR | CelerToken | ETH | 0x4F9254C83EB525f9FCf346490bbb3ed28a81C667 |
CETH | cEther | ETH | 0x4Ddc2D193948926D02f9B1fE9e1daa0718270ED5 |
CHR | Chroma | ETH | 0x8A2279d4A90B6fe1C4B30fa660cC9f926797bAA2 |
CHZ | Chiliz (ETH) | ETH | 0x3506424F91fD33084466F402d5D97f05F8e3b4AF |
COMP | Compound Token | ETH | 0xc00e94Cb662C3520282E6f5717214004A7f26888 |
COTI | COTI Token | ETH | 0xDDB3422497E61e13543BeA06989C0789117555c5 |
CREP | cAugur | ETH | 0x158079Ee67Fce2f58472A96584A73C7Ab9AC95c1 |
CRO | Crypto.com | ETH | 0xA0b73E1Ff0B80914AB6fe0444E65848C4C34450b |
CRPT | Crypterium | ETH | 0x08389495D7456E1951ddF7c3a1314A4bfb646d8B |
CRV | Curve DAO Token | ETH | 0xD533a949740bb3306d119CC777fa900bA034cd52 |
CSAI | cSAI | ETH | 0xF5DCe57282A584D2746FaF1593d3121Fcac444dC |
CTSI | Cartesi Token | ETH | 0x491604c0FDF08347Dd1fa4Ee062a822A5DD06B5D |
CUSDC | Compound USD Coin | ETH | 0x39AA39c021dfbaE8faC545936693aC917d5E7563 |
CVC | Civic | ETH | 0x41e5560054824eA6B0732E656E3Ad64E20e94E45 |
CWBTC | cWBTC | ETH | 0xC11b1268C1A384e55C48c2391d8d480264A3A7F4 |
CZRX | Compound 0x | ETH | 0xB3319f5D18Bc0D84dD1b4825Dcde5d5f7266d407 |
DAI | Dai | ETH | 0x6B175474E89094C44Da98b954EedeAC495271d0F |
DASH | Dash | DASH | |
DOGE | Doge Coin | DOGE | |
DYDX | dYdX | ETH | 0x92D6C1e31e14520e676a687F0a93788B716BEff5 |
ELF | aelf | ETH | 0xbf2179859fc6D5BEE9Bf9158632Dc51678a4100e |
ENG | Enigma | ETH | 0xf0Ee6b27b759C9893Ce4f094b49ad28fd15A23e4 |
ENJ | Enjin Coin | ETH | 0xF629cBd94d3791C9250152BD8dfBDF380E2a3B9c |
EOS | EOS | EOS | |
ETC | Ethereum Classic | ETC | |
ETH | Ethereum | ETH | |
EURS | STASIS EURS Token | ETH | 0xdB25f211AB05b1c97D595516F45794528a807ad8 |
FET | Fetch | ETH | 0xaea46A60368A7bD060eec7DF8CBa43b7EF41Ad85 |
FTM | Fantom Token (ERC20) | ETH | 0x4E15361FD6b4BB609Fa63C81A2be19d873717870 |
FTM_FANTOM | Fantom | FTM_FANTOM | |
FTT | FTX Token | ETH | 0x50D1c9771902476076eCFc8B2A83Ad6b9355a4c9 |
GALA | Gala | ETH | 0x15D4c048F83bd7e37d49eA4C83a07267Ec4203dA |
GNO | Gnosis | ETH | 0x6810e776880C02933D47DB1b9fc05908e5386b96 |
GNT | Golem | ETH | 0xa74476443119A942dE498590Fe1f2454d7D4aC0d |
GRT | Graph Token | ETH | 0xc944E90C64B2c07662A292be6244BDf05Cda44a7 |
GUSD | Gemini USD | ETH | 0x056Fd409E1d7A124BD7017459dFEa2F387b6d5Cd |
GYEN | GMO JPY | ETH | 0xC08512927D12348F6620a698105e1BAac6EcD911 |
HT | HTX Token | ETH | 0x6f259637dcD74C767781E37Bc6133cd6A68aa161 |
HUSD | HTX USD | ETH | 0xdF574c24545E5FfEcb9a659c229253D4111d87e1 |
IDRT | Rupiah | ETH | 0x998FFE1E43fAcffb941dc337dD0468d52bA5b48A |
KCS | KuCoin Token | ETH | 0xf34960d9d60be18cC1D5Afc1A6F012A723a28811 |
KNC | Kyber Network Crystal v2 | ETH | 0xdeFA4e8a7bcBA345F687a2f1456F5Edd9CE97202 |
LEND | ETHLend | ETH | 0x80fB784B7eD66730e8b1DBd9820aFD29931aab03 |
LEO | Bitfinex LEO Token | ETH | 0x2AF5D2aD76741191D15Dfe7bF6aC92d4Bd912Ca3 |
LINK | Chainlink | ETH | 0x514910771AF9Ca656af840dff83E8264EcF986CA |
LOOM | Loom Token | ETH | 0x42476F744292107e34519F9c357927074Ea3F75D |
LRC | Loopring | ETH | 0xBBbbCA6A901c926F240b89EacB641d8Aec7AEafD |
LTC | Litecoin | LTC | |
MANA | Decentraland | ETH | 0x0F5D2fB29fb7d3CFeE444a200298f468908cC942 |
MATIC | Matic Token (Ethereum) | ETH | 0x7D1AfA7B718fb893dB30A3aBc0Cfc608AaCfeBB0 |
MATIC_BSC | Matic Token (BSC) | BNB_BSC | 0xCC42724C6683B7E57334c4E856f4c9965ED682bD |
MATIC_POLYGON | Matic Gas Token (Polygon) | MATIC_POLYGON | |
MCO | Crypto.com | ETH | 0xB63B606Ac810a52cCa15e44bB630fd42D8d1d83d |
MKR | Maker | ETH | 0x9f8F72aA9304c8B593d555F12eF6589cC3A579A2 |
MLN | Melon | ETH | 0xec67005c4E498Ec7f55E092bd1d35cbC47C91892 |
MTL | Metal | ETH | 0xF433089366899D83a9f26A773D59ec7eCF30355e |
NEXO | Nexo | ETH | 0xB62132e35a6c13ee1EE0f84dC5d40bad8d815206 |
NMR | Numeraire | ETH | 0x1776e1F26f98b1A5dF9cD347953a26dd3Cb46671 |
NPXS | Pundi X | ETH | 0xA15C7Ebe1f07CaF6bFF097D8a589fb8AC49Ae5B3 |
OKB | OKB | ETH | 0x75231F58b43240C9718Dd58B4967c5114342a86c |
OMG | OmiseGO | ETH | 0xd26114cd6EE289AccF82350c8d8487fedB8A0C07 |
OXT | Orchid | ETH | 0x4575f41308EC1483f3d399aa9a2826d74Da13Deb |
PAX | PAX Dollar | ETH | 0x8E870D67F660D95d5be530380D0eC0bd388289E1 |
PAXG | Paxos Gold | ETH | 0x45804880De22913dAFE09f4980848ECE6EcbAf78 |
PAY | TenXPay | ETH | 0xB97048628DB6B661D4C2aA833e95Dbe1A905B280 |
POWR | Power Ledger | ETH | 0x595832F8FC6BF59c85C527fEC3740A1b7a361269 |
QNT | Quant | ETH | 0x4a220E6096B25EADb88358cb44068A3248254675 |
RCN | Ripio Credit Network | ETH | 0xF970b8E36e23F7fC3FD752EeA86f8Be8D83375A6 |
REN | Republic | ETH | 0x408e41876cCCDC0F92210600ef50372656052a38 |
RENBTC | renBTC | ETH | 0xEB4C2781e4ebA804CE9a9803C67d0893436bB27D |
REP | Augur | ETH | 0x1985365e9f78359a9B6AD760e32412f4a445E862 |
RLC | iExec RLC | ETH | 0x607F4C5BB672230e8672085532f7e901544a7375 |
SAI | Sai | ETH | 0x89d24A6b4CcB1B6fAA2625fE562bDD9a23260359 |
SALT | SALT | ETH | 0x4156D3342D5c385a87D264F90653733592000581 |
SAND | SAND | ETH | 0x3845badAde8e6dFF049820680d1F14bD3903a5d0 |
SHIB | SHIBA INU | ETH | 0x95aD61b0a150d79219dCF64E1E6Cc01f0B64C4cE |
SHIB_BSC | SHIBA INU (BSC) | BNB_BSC | 0x2859e4544C4bB03966803b044A93563Bd2D0DD4D |
SKL | SKALE | ETH | 0x00c83aeCC790e8a4453e5dD3B0B4b3680501a7A7 |
SNT | Status | ETH | 0x744d70FDBE2Ba4CF95131626614a1763DF805B9E |
SNX | Synthetix Network Token | ETH | 0xC011a73ee8576Fb46F5E1c5751cA3B9Fe0af2a6F |
SOL | Solana | SOL | |
STORJ | Storj | ETH | 0xB64ef51C888972c908CFacf59B47C1AfBC0Ab8aC |
SUSD | Synth sUSD | ETH | 0x57Ab1ec28D129707052df4dF418D58a2D46d5f51 |
SUSHI | Sushi Token | ETH | 0x6B3595068778DD592e39A122f4f5a5cF09C90fE2 |
TGBP | TrueGBP | ETH | 0x00000000441378008EA67F4284A57932B1c000a5 |
TRX | Tron | TRX | |
TRX_USDT_S2UZ | USD Tether (Tron) | TRX | |
TUSD | TrueUSD | ETH | 0x0000000000085d4780B73119b644AE5ecd22b376 |
UMA | UMA Voting Token v1 | ETH | 0x04Fa0d235C4abf4BcF4787aF4CF447DE572eF828 |
UNI | Uniswap | ETH | 0x1f9840a85d5aF5bf1D1762F925BDADdC4201F984 |
USDC | USD Coin | ETH | 0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48 |
USDC_BSC | Binance-Peg USD Coin (BSC) | BNB_BSC | 0x8AC76a51cc950d9822D68b83fE1Ad97B32Cd580d |
USDC_POLYGON | USDC (Polygon) | MATIC_POLYGON | 0x2791Bca1f2de4661ED88A30C99A7a9449Aa84174 |
USDT2_AVAX | TetherToken (Avalance) - USDT2 | AVAX | 0x9702230A8Ea53601f5cD2dc00fDBc13d4dF4A8c7 |
USDT_BSC | Binance-Peg Tether (BSC) | BNB_BSC | 0x55d398326f99059fF775485246999027B3197955 |
USDT_ERC20 | Tether USD (Ethereum) | ETH | 0xdAC17F958D2ee523a2206206994597C13D831ec7 |
USDT_OMNI | Tether (Omni) | BTC | |
WBTC | Wrapped BTC | ETH | 0x2260FAC5E5542a773Aa44fBCfeDf7C193bc2C599 |
WETH | Wrapped Ether | ETH | 0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2 |
WETH_POLYGON | Wrapped Ether (Polygon) | MATIC_POLYGON | 0x7ceB23fD6bC0adD59E62ac25578270cFf1b9f619 |
WTC | Waltonchain | ETH | 0xb7cB1C96dB6B22b0D3d9536E0108d062BD488F74 |
WXT | Wirex Token | ETH | 0xa02120696c7B8fE16C09C749E4598819b2B0E915 |
XAUT | Gold Tether | ETH | 0x4922a015c4407F87432B179bb209e125432E4a2A |
XCHF | CryptoFranc | ETH | 0xB4272071eCAdd69d933AdcD19cA99fe80664fc08 |
XRP | XRP (Ripple) | XRP | |
YFI | Yearn Finance | ETH | 0x0bc529c00C6401aEF6D220BE8C6Ea1667F6Ad93e |
ZEC | ZCash | ZEC | |
ZRX | 0x | ETH | 0xE41d2489571d322189246DaFA5ebDe1F4699F498 |
ZUSD | Z.com USD | ETH | 0xc56c2b7e71B54d38Aab6d52E94a04Cbfa8F604fA |
Supported assets (V2)
Chainalysis V2 uses Dynamic token support to support blockchains holistically. This means that newly deployed tokens are supported automatically. Fireblocks supports a subset of these assets and networks as listed below.
ERC-20 tokens
Fireblocks supports all ERC-20 tokens on the following blockchains for screening with Chainalysis V2.
- Arbitrum One
- Avalanche C-Chain
- Base
- BNB Smart Chain (BSC)
- Ethereum
- Linea
- OP Mainnet (Optimism)
- Polygon PoS
- ZKsync
Important
If an ERC-20 token has no USD price in Fireblocks, transactions with those tokens may not be properly screened.
- Outgoing transactions with unpriced tokens will not be registered with Chainalysis.
- Incoming transactions with unpriced tokens will not trigger alerts during Chainalysis screening. Therefore, risk scores cannot be determined and Post-Screening Policy rules that specify a risk score cannot be applied. USD prices are required for tokens included in both incoming and outgoing transactions in order for those transactions to be properly screened.
Because Fireblocks and Chainalysis use CoinMarketCap and CoinGecko to retrieve USD prices for tokens, Fireblocks highly recommends making sure tokens in your transactions are listed on one or both of those platforms.
Other tokens
View the list of all other supported tokens on Chainalysis V2.
Testnet assets
The following testnet assets are supported on Chainalysis V2:
- BTC_TEST (Bitcoin Test)
- ETH_TEST (Ethereum Test Ropsten)
- ETH_TEST2 (Ethereum Test Kovan)
- ETH_TEST3 (Ethereum Test Goerli)
- ETH_TEST4 (Ethereum Test Rinkeby)
- ETH_TEST5 (Ethereum Test Sepolia)
- ETH_TEST6 (Ethereum Test Holesky)