The Cross-Chain Transfer Protocol (CCTP) is a permissioned set of on-chain contracts and off-chain services that enables native USDC to move between supported blockchains without wrapped or bridged representations. The protocol operates on a burn-and-mint model: a MessageSent event is emitted on the source chain after USDC is burned, and a corresponding MessageReceived event is emitted on the destination chain once a new amount of native USDC is minted. The critical link between these two on-chain events is an off-chain attestation signature produced by Circle's attestation service, which authorizes the mint on the destination chain.

CCTP Message Attestation and Relayer Operations
Introduction
How Circle's Cross-Chain Transfer Protocol uses on-chain events and off-chain attestations to move native USDC between blockchains.
For integrators, the operational health of CCTP depends on two distinct systems: the Iris API for fetching attestation signatures and the relayer network responsible for submitting those signatures on-chain. The Iris API is a Circle-operated service that returns a signed attestation for a given MessageSent event. Relayers—currently a permissioned set operated by Circle and third-party partners—query this API and call the destination chain's MessageTransmitter contract to complete the transfer. A transfer is not complete until the receiveMessage() transaction is confirmed on the destination chain, making relayer liveness and API availability critical dependencies for cross-chain settlement.
Operators monitoring CCTP integrations must verify the full lifecycle of a transfer: burn confirmation on the source chain, attestation availability via the Iris API, and mint finality on the destination chain. Stuck or delayed transfers typically result from relayer downtime, API unavailability, or destination-chain congestion. Chainscore can help integration teams build automated monitoring systems that track each stage of the CCTP lifecycle, alert on attestation delays, and verify MessageReceived events against expected transfer parameters to ensure settlement integrity.
Quick Facts
Operational facts about the CCTP attestation flow, relayer roles, and off-chain verification requirements for cross-chain USDC transfers.
| Field | Value | Why it matters |
|---|---|---|
Attestation API | Circle's Iris API provides signatures for MessageSent events | Integrators must fetch attestations off-chain to complete the burn-and-mint cycle; API availability directly affects transfer finality |
Relayer Role | Permissionless entity that fetches attestations and submits them to the destination chain | Relayer liveness and honesty determine whether user transfers complete or remain stuck in-flight |
Relayer Decentralization | Circle operates the primary relayer; third-party relayers are permitted | A single relayer creates a liveness bottleneck; teams should assess the risk of relayer downtime for their settlement guarantees |
Message Verification | Off-chain verification of the MessageSent event against the source chain's state | Incorrect verification logic can lead to accepting fraudulent attestations; integration teams must validate the full event payload |
Stuck Transfer Recovery | Transfers can stall if the relayer fails to submit or the attestation is unavailable | Wallets and protocols need monitoring and manual recovery paths for transfers that exceed expected settlement windows |
Monitoring Signals | Iris API latency, relayer transaction submission rate, and attestation fetch failures | Operational teams should alert on these signals to detect CCTP degradation before user-facing delays accumulate |
Integration Surface | Smart contracts, off-chain attestation fetchers, and relayer transaction submitters | A failure in any component breaks the cross-chain flow; Chainscore can review the full integration for single points of failure |
How Attestation and Relaying Work
The operational flow from a Circle-initiated burn to a verified mint on the destination chain, and the critical role of attestation signatures and relayers.
A Cross-Chain Transfer Protocol (CCTP) transfer for Circle USDC is a burn-and-mint process that depends on an off-chain attestation step to authorize the minting of native USDC on a destination chain. When a user initiates a transfer, the source chain's TokenMessenger contract burns the specified amount of USDC and emits a MessageSent event containing a unique nonce, the destination domain, and the recipient's address. The transfer is not complete until Circle's off-chain attestation service, Iris, observes finality on the source chain, generates a signed attestation for the burn event, and makes that signature available for a relayer to submit to the destination chain's MessageTransmitter contract.
The Iris API is the single source of truth for attestation signatures. An operator or relayer queries the API with the MessageSent event's nonce and source domain to retrieve the ECDSA signature from Circle's attestation signer. This signature is then passed to the receiveMessage() function on the destination MessageTransmitter, which verifies the signature against the known attestation signer's public key and mints the corresponding USDC to the recipient. The relayer's role is purely operational: it pays for the destination chain gas and submits the transaction. This means a transfer can be stuck not because of a protocol failure, but because no relayer has submitted the available attestation, a critical operational risk for integrators to monitor.
The current relayer landscape is permissionless in theory but operationally centralized in practice, with Circle operating the primary relayer. The decentralization roadmap involves enabling third-party relayers to compete on speed and cost, but this introduces new monitoring requirements. Teams integrating CCTP must build or adopt systems to independently verify MessageSent events, poll the Iris API for attestation availability, and detect when a transfer has not been relayed within expected time windows. Chainscore Labs can help integration teams design and implement these attestation verification and relayer monitoring systems, ensuring that cross-chain USDC operations remain resilient even if a primary relayer experiences downtime.
Affected Actors and Systems
Builders and Integration Teams
Integration engineers building cross-chain applications on CCTP must directly interact with the Iris API to fetch attestation signatures after a MessageSent event is emitted on the source chain. The operational health of this API is critical for settlement finality.
Key Actions:
- Implement robust polling logic with exponential backoff when querying the Iris API for attestations, as signatures are not available instantly.
- Do not hardcode relayer addresses. The permissionless relayer model means the entity submitting
receiveMessageon the destination chain may vary. - Build fallback mechanisms to submit the attestation transaction directly if a third-party relayer is slow or fails.
- Monitor the
MessageReceivedevent on the destination chain to confirm settlement, rather than relying solely on relayer status pages.
Operational Impact Areas
Key operational domains affected by the health, decentralization, and verification requirements of CCTP's message attestation and relayer infrastructure.
Attestation API Dependency and Monitoring
Integration teams rely on Circle's Iris API to fetch attestation signatures for completing cross-chain transfers. An API outage or rate-limiting event directly stalls settlement. Teams must build robust monitoring that alerts on API error rates, latency spikes, and attestation fetch failures. Chainscore can help design an attestation verification system with automated health checks and fallback logic to ensure operational resilience during API degradation.
Relayer Centralization and Failure Modes
Currently, CCTP relayers are operated by Circle, introducing a centralized trust assumption for message delivery. A relayer outage or bug can halt all cross-chain USDC flows. Operations teams must monitor relayer liveness and plan for scenarios where manual intervention is required to push a MessageSent event. Understanding the decentralization roadmap is critical for long-term risk assessment.
Off-Chain Attestation Verification
To independently complete a transfer, a system must fetch the MessageSent event from the source chain, then call the Iris API to get the attestation signature, and finally submit it to the destination MessageTransmitter. A failure in any step can result in stuck funds. Chainscore can audit your verification pipeline to ensure correct event parsing, API error handling, and transaction submission logic.
Stuck Transfer Detection and Recovery
Transfers can become stuck due to relayer downtime, attestation fetch failures, or destination chain congestion. Operational playbooks must define how to detect a stuck transfer by monitoring the time between a DepositForBurn event and the corresponding MessageReceived event, and how to manually recover using the attestation signature. Without this, user funds remain in limbo.
Multi-Chain Event Monitoring
A complete CCTP transfer spans two chains, requiring event listeners on both the source TokenMessenger and the destination MessageTransmitter. Missing an event on either chain breaks reconciliation. Operations teams must run reliable, redundant indexers for all supported CCTP chains to track in-flight transfers and ensure timely settlement.
Key Rotation and Attestation Signer Changes
The attestation signature is generated by a Circle-controlled private key. A rotation of this key, if not communicated or handled properly by integrators, will cause all new attestations to fail verification against the old on-chain signer. Teams must monitor for SignatureThreshold or signer address changes on the MessageTransmitter contract to avoid a catastrophic integration break.
Operational Risk Matrix
Evaluates the operational failure modes, trust assumptions, and monitoring requirements for CCTP's off-chain attestation and relayer infrastructure.
| Risk Area | Failure Mode | Affected Actors | Severity | Mitigation and Monitoring |
|---|---|---|---|---|
Iris API Unavailability | Circle's Iris API is unreachable, preventing users from fetching the attestation signature required to finalize a mint on the destination chain. | Cross-chain users, wallets, bridges, CCTP integrators | High | Integrators should implement a retry loop with exponential backoff and monitor the Iris API health endpoint. Maintain a fallback RPC call path if a private relayer provides the same signature. |
Relayer Censorship or Liveness Failure | A permissioned relayer stops submitting | Users relying on a specific relayer, dApps with hardcoded relayer addresses | High | Application frontends should allow users to manually complete the mint step by calling |
Attestation Signature Mismatch | The signature fetched from the Iris API does not pass the | Automated relayer bots, programmatic integrators | Medium | Verify the |
Stuck Transfer Due to Low Destination Gas | The initiating user or relayer submits the | Users initiating transfers, automated relayer operators | Medium | Relayer operators should simulate the |
Circle Attestation Signer Key Compromise | An attacker gains control of Circle's attestation signer key and generates fraudulent attestations to mint unbacked USDC on a destination chain. | All USDC holders on the affected chain, DeFi protocols accepting native USDC | Critical | This is an issuer-level risk. Integrators should monitor for anomalous spikes in USDC supply on a single chain. Circle's operational security and key management practices are the primary mitigation. |
Permissioned Relayer Set Centralization | The set of active relayers is small and controlled by a single entity, introducing a liveness bottleneck and a single point of censorship. | All CCTP users, DeFi protocols dependent on fast finality | Medium | Track the number of unique |
API Schema Breaking Change | A new version of the Iris API introduces a breaking change to the response format, crashing automated attestation-fetching services. | Exchange operations teams, automated relayer infrastructure | Medium | Pin integration to a specific API version if available. Implement schema validation on API responses and set up a staging environment to test against Circle's testnet API before production releases. |
Integration and Monitoring Checklist
A practical checklist for engineering and operations teams integrating or monitoring the Cross-Chain Transfer Protocol (CCTP). Use these items to verify the health of your attestation retrieval, relayer dependency, and cross-chain settlement pipeline.
What to check: Confirm that your backend can successfully call the Circle Iris API with a MessageSent event's messageHash and receive a valid, non-expired attestation signature.
Why it matters: The Iris API is the off-chain service that provides the signed attestation required to call receiveMessage() on the destination chain. A failure here blocks the entire burn-and-mint flow.
Readiness signal: A successful end-to-end test on mainnet that retrieves an attestation for a known messageHash and verifies the signature against the expected CCTP attestation public key. Monitor API latency and error rates (HTTP 5xx, timeouts) and implement retries with exponential backoff for transient failures.
Source Resources
Use these sources to verify CCTP message formats, Iris attestation behavior, contract interfaces, chain support, and operational status before changing production relayer or monitoring logic.
Iris Attestation API Checks
The Iris API is the critical off-chain dependency for fetching Circle’s attestation signature after a CCTP MessageSent event is emitted. Builders should maintain explicit monitors for pending, complete, failed, malformed, and timeout states rather than treating attestation polling as a simple background task. Production systems should log the message hash, source domain, transaction hash, finality state, Iris response, destination transaction hash, and retry count. If an attestation is delayed, avoid duplicate user crediting and expose a clear transfer status that separates burn confirmation from destination mint completion.
On-Chain Explorer Verification
Block explorers are practical secondary sources for confirming MessageSent events, destination-chain receive transactions, gas failures, and contract interactions during stuck-transfer investigations. Operations teams should build runbooks that map each supported CCTP domain to the relevant explorer, token contract, MessageTransmitter contract, and TokenMessenger contract. Use explorers to verify whether the source burn occurred, whether the emitted message matches the relayer payload, whether receiveMessage reverted, and whether the destination mint reached the intended recipient. Treat explorer data as evidence for triage, not as a substitute for canonical Circle contract and documentation checks.
Looking to build on a specific blockchain?
We build smart contracts, DeFi applications, wallets, tokenization platforms, and blockchain infrastructure across the major ecosystems teams choose today. That includes Ethereum, Arbitrum, Optimism, Polygon, Avalanche, Solana, Sui, Aptos, Hedera, Stellar, and NEAR, with support for additional EVM and non-EVM networks based on your product requirements.
EVM ecosystems
- Ethereum
- Arbitrum
- Optimism
- Polygon
- Avalanche
- Cronos

Non-EVM ecosystems
- Solana
- Sui
- Aptos
- Hedera
- Stellar
- NEAR
Additional ecosystems
- Polkadot
- Cosmos
- TON
- Cardano
- Algorand
- Tempo
Also available for Base, appchains, custom EVM networks, and cross-chain product architecture.
Frequently Asked Questions
Common operational questions from teams integrating, monitoring, or troubleshooting the Cross-Chain Transfer Protocol's attestation service and relayer network.
To independently verify a cross-chain burn, you must fetch the attestation signature from Circle's Iris API and confirm it matches the on-chain event.
Verification Steps:
- Capture the Event: Extract the
messageHashandnoncefrom theMessageSentevent emitted by the source chain'sTokenMessengercontract. - Fetch the Attestation: Query the Iris API endpoint
GET /v1/attestations/{messageHash}. A successful response includes theattestationsignature and thestatus(complete). - Validate the Signature: Reconstruct the message digest locally using the ABI-encoded
messageHash. Verify that theattestationsignature was produced by the known CCTP attestation signer's public key. - Confirm Finality: Ensure the source chain transaction has reached finality before trusting the attestation. A
pendingstatus in Iris indicates the attestation is not yet available.
Why it matters: Relying solely on the Iris API without local signature verification introduces a trust assumption. Direct verification allows any relayer or receiving contract to operate trustlessly.
Delivering blockchain solutions for 5+ years.
We have partnered with 50+ leading DeFi protocols, NFT ecosystems, and fintech innovators to build secure, scalable, and capital-efficient blockchain products.
Selected Partners & Clients
“I've been working with Chainscore Labs for last 3+ years, they've consistently delivered with strong ownership across multiple projects. The team is reliable and detail-oriented.”
How to get started?
If you're looking for blockchain integration, ChainScore Labs has 5+ years of experience helping teams build and integrate exchanges, wallets, smart contracts, tokenization solutions, and protocol-connected products, we can help you choose the right path, integrate securely, and get to production faster. Our team consists of experienced blockchain developers and architects who can help you with your blockchain integration needs.
Exploration & Strategy
Define your product goals and choose the right blockchain architecture for your use case.
Architecture & Design
Design the smart contracts, tokenomics, and security parameters of your system.
Development & Integration
Build and integrate with wallets, oracles, and front-end dApps for a seamless experience.
Security & Launch
Comprehensive audits followed by a risk-managed mainnet deployment to protect your users.
Discover our
blockchain development services.
We build production-grade blockchain solutions for top-tier projects across DeFi and Web3.
Need a blockchain engineering team?
Send the project context and we will respond with next steps, scope questions, and a practical path to delivery.


