You can override the default Deposit Control and Confirmation Policy (DCCP) by creating a custom confirmation policy. First, download the DCCP template, then modify it according to your organization's business needs and risk models. For example:
- You can enter zero or a small number for faster confirmations for known and trusted sources.
- You can enter a higher number to help mitigate risks for unknown or untrusted sources.
Remember that Fireblocks restricts the number of confirmations allowed for certain blockchain networks. After you're done, submit your policy template to Fireblocks Support for review, approval, and implementation.
Rule parameters
The DCCP operates on a first-match basis rule set using the following parameters:
| Parameter | Description |
|---|---|
| Source | Defines the type of venue from which the transaction originates. This can be specific, such as a vault account; groups of accounts, such as all your Binance accounts; or general, such as all exchanges, all Fireblocks P2P Network connections, and so on. |
| Destination | Defines the type of venue where the transaction transfers its specified amount. This parameter uses the same values as the Source parameter. |
| Amount | Defines the minimum or maximum amount a transaction must be before the rule applies. Can be set to an asset's USD equivalent at the time of the transaction, a specific asset's quantity, or "Any" (includes all transactions that match all other rule parameters). |
| Asset | Defines the type of asset sent in a transaction. Can be set to a specific asset or to include any asset supported by Fireblocks. When you list a specific asset, you must also specify the blockchain for that asset. Asset can be listed as: Asset ID (from the Supported Assets API endpoint), contract address, asset symbol with blockchain, or asset name with blockchain. Many assets have similar symbols and names — the asset ID or contract address is recommended if your confirmation policy includes different rules for many specific assets. |
| Blockchain network | Defines the blockchain network where any specified asset is transferred. You can only enter blockchain networks currently supported by Fireblocks, including testnet blockchain networks. |
| # of Confirmations | Defines the number of confirmations required for a transaction to clear and for funds to be credited to a wallet. Can be set to: a whole number between the minimum and maximum values allowed for a blockchain, or Minimum (which makes the rule require the minimum number of confirmations for the respective blockchain). |
Rule examples
| Rule # | Source | Destination | Amount | Asset | Blockchain network | # of confirmations |
|---|---|---|---|---|---|---|
| 1 | Any | Any | Any | ETC | Ethereum Classic | 500 |
| 2 | Vault | Vault | Any | Any | Any | Minimum |
| 3 | Coinbase Exchange | Vault | Any | Any | Litecoin | Minimum |
| 4 | Any | Vault | > $10,000 | BTC | Bitcoin | 6 |
| 5 | Any | Vault | Any | BTC | Bitcoin | 3 |
| 6 | Any | Vault | Any | USDC | Avalanche | 7 |
| 7 | Any | Vault | Any | USDC | Ethereum | 6 |
| 8 | Any | Any | Any | Any | Any | 1 |
- Rule 1: Incoming and outgoing ETC transactions of any amount on the Ethereum Classic blockchain network require 500 confirmations. Ethereum Classic is subject to a 51% attack risk, so many confirmations are recommended.
- Rule 2: Transferring any amount between vaults within this Fireblocks workspace on any blockchain network requires the minimum number of confirmations for the respective blockchain.
- Rule 3: Litecoin withdrawal transactions from the connected Coinbase Exchange third-party account into the Fireblocks vault require the minimum number of confirmations (which is 6).
- Rule 4: Incoming and outgoing BTC transactions above $10,000 on the Bitcoin blockchain network require 6 confirmations.
- Rule 5: Incoming and outgoing BTC transactions up to $10,000 on the Bitcoin blockchain network require 3 confirmations.
- Rule 6: Incoming and outgoing USDC transactions of any amount on the Avalanche blockchain network require 7 confirmations.
- Rule 7: Incoming and outgoing USDC transactions of any amount on the Ethereum blockchain network require 6 confirmations.
- Rule 8: Incoming and outgoing transactions from any source to any destination in your Vault of any amount on any blockchain network require 1 confirmation.
Override the DCCP for specific transactions
Admins can manually set the confirmation threshold of a specific transaction using one of the following methods:
- The Fireblocks Console
- The Fireblocks API, by either the transaction's Fireblocks ID or its hash
If you attempt to set a transaction's confirmation threshold outside the limitations via the API, you will receive the following error code:
400 1444 TRANSACTION_CONFIRMATIONS_NOT_COORDINATED_WITH_FIREBLOCKS_RESTRICTIONS
Next steps
- Blockchain confirmation limitations — View minimum and maximum values per blockchain