Note: Currently, only two finality thresholds are supported. Any
minFinalityThreshold
value below 1000 is treated as 1000, and any
value above 1000 is treated as 2000.
In CCTP V2, finality thresholds allow integrators to specify the level of confirmation required before an offchain attestation is issued, while fees support processing Fast Transfers at faster-than-finality levels.
CCTP V2 introduces the concept of a finality threshold, which provides a chain-agnostic representation of the confirmation level for a given attestation.
In CCTP V2, each message specifies a minFinalityThreshold
. This threshold
indicates the minimum level of confirmation required for Circle's attestation
service (Iris) to attest to the message. Iris will not attest to a message at a
confirmation level below the specified minimum threshold. This allows
applications to enforce a desired level of finality before acting on an
attestation on the destination chain.
CCTP V2 defines the following finality thresholds:
Finality Threshold | Value |
---|---|
Confirmed | 1000 |
Finalized | 2000 |
minFinalityThreshold
of 1000 or lower are considered
Fast messages. These messages are eligible for fast attestation at the
confirmed level by Iris.minFinalityThreshold
of 2000 are considered Standard
messages. These messages are attested to at the finalized level by Iris.Note: Currently, only two finality thresholds are supported. Any
minFinalityThreshold
value below 1000 is treated as 1000, and any
value above 1000 is treated as 2000.
CCTP V2 introduces fee collection to support Fast Transfer at faster-than-finality levels. The fee for CCTP V2 Fast Transfer should be retrieved via API call prior to transaction execution and will be collected on USDC mint onchain.
maxFee
set by the user is lower than the fee determined by Circle,
the Fast Transfer will revert to a Standard Transfer, and no fee will be
charged.maxFee
is high enough, according to Circle's specified fee rate, a
fee will be charged based on Circle's specified fee rate. The fee will be
reflected in the feeExecuted
field of the destination message, and deducted
from the minted amount.