Circle USYC 백서

Circle USYC

원문

bitpro가 원문에서 글자만 모은 내용이에요. 표·그림·수식은 빠지거나 깨질 수 있어요. 전체 75쪽 중 24쪽

ttributes such as `clientId`. | | `<resourceKey>` | object | The topic-specific resource (for example, `deposit`, `transfer`, `payout`) carrying the current state of the changed object. | When you register a v1 subscription, your endpoint first receives a one-time `SubscriptionConfirmation` message containing a `SubscribeURL`. Visit that URL to complete the handshake before events begin flowing. See [Set up a webhook endpoint](/api-reference/webhook-endpoints#v1-notifications) for the full flow. </Tab> </Tabs> ## Delivery, ordering, and idempotency Circle delivers webhook notifications at least once. If your endpoint does not respond with a success status, or if the request fails, Circle retries delivery. The same notification can be sent more than once. Keep in mind the following: * **Your endpoint must be idempotent:** Your handler must produce the same result each time it runs. Deduplicate on the `Notification ID` (v2) or `MessageId` (v1) before applying side effects. * **Your application must not assume delivery order:** Notifications for successive state changes (for example, `CONFIRMED` then `COMPLETE`) can arrive in a different order than when the state changes occurred. Handle each notification based on the state it carries, not on its arrival sequence. <Tip> To inspect delivery attempts, view payloads, or resend a notification, view Webhook Logs in the [Circle Console](https://console.circle.com) (Wallets, Contracts) or [CPN Console](https://cpn.circle.com) (CPN). </Tip> # x402 facilitators API Source: https://developers.circle.com/api-reference/x402-facilitators Verify and settle USDC payments over the x402 protocol using Circle's Facilitator Service or Gateway Nanopayments. Circle's x402 facilitators let sellers accept USDC payments over the x402 protocol. Facilitator Service settles each payment onchain. Gateway Nanopayments batches settlement for gas-free nanopayments down to \$0.000001. ## Get started <CardGroup> <Card title="API keys" icon="key" href="/api-reference/keys"> Authenticate your requests with an API key. </Card> <Card title="x402 facilitators documentation" icon="handshake" href="/x402-facilitators"> Learn how Circle's x402 facilitators work and compare them. </Card> </CardGroup> ## Endpoint categories <CardGroup> <Card title="Facilitator Service" icon="server" href="/api-reference/facilitator-service/verify-payment"> Verify signatures, settle payments onchain, and check payment status. </Card> <Card title="Gateway Nanopayments" icon="layer-group" href="/api-reference/gateway-nanopayments/settle-x402payment"> Settle and verify batched x402 payments through Circle Gateway. </Card> </CardGroup> ## OpenAPI specifications The x402 facilitators API reference is generated from these OpenAPI specifications: * `https://developers.circle.com/openapi/facilitator-service.yaml` * `https://developers.circle.com/openapi/gateway-nanopayments.yaml` See [OpenAPI Specifications](/api-reference/openapi-specifications) for the full catalog of Circle's API specs. # xReserve API Source: https://developers.circle.com/api-reference/xreserve Deposit USDC into xReserve, retrieve attestations, and manage withdrawals for USDC-backed stablecoins. xReserve is the interoperability layer behind your own USDC-backed stablecoin. Circle holds the underlying reserves on source blockchains such as Ethereum and exposes the state and lifecycle to you through the API. ## Get started <CardGroup> <Card title="API keys" icon="key" href="/api-reference/keys"> Authenticate your requests with an API key. </Card> <Card title="xReserve documentation" icon="book" href="/xreserve"> Learn how xReserve works. </Card> </CardGroup> ## Endpoint categories <CardGroup> <Card title="Attestations" icon="stamp" href="/api-reference/xreserve/all/list-attestations"> List, retrieve, and look up attestations by transaction hash. </Card> <Card title="Balances" icon="vault" href="/api-reference/xreserve/all/get-balances"> Read reserve balances and reserve info. </Card> <Card title="Withdrawals" icon="arrow-up-from-line" href="/api-reference/xreserve/all/prepare-withdrawal"> Prepare, submit, and track withdrawals. </Card> </CardGroup> ## OpenAPI specifications The xReserve API reference is generated from this OpenAPI specification: * `https://developers.circle.com/openapi/xreserve.yaml` See [OpenAPI Specifications](/api-reference/openapi-specifications) for the full catalog of Circle's API specs. # Get an attestation for a crosschain transfer Source: https://developers.circle.com/api-reference/xreserve/all/get-attestation openapi/xreserve.yaml get /v1/attestations/{depositMessageHash} Returns the attestation for a specified crosschain transfer using the deposit message hash. # Get attestations by source transaction hash Source: https://developers.circle.com/api-reference/xreserve/all/get-attestations-by-tx-hash openapi/xreserve.yaml get /v1/attestations Returns all attestations associated with the specified source chain transaction hash. A single transaction may produce multiple attestations across different remote domains. # Get token balances on a remote domain Source: https://developers.circle.com/api-reference/xreserve/all/get-balances openapi/xreserve.yaml get /v1/balances/{remoteDomain} Returns the expected token balances for a specified remote domain based on the deposit amounts made into xReserve. # Get domain information Source: https://developers.circle.com/api-reference/xreserve/all/get-info openapi/xreserve.yaml get /v1/info Returns information on source and remote domains, including its supported tokens and configuration details. # Get withdrawal status Source: https://developers.circle.com/api-reference/xreserve/all/get-withdrawal-status openapi/xreserve.yaml get /v1/withdrawal/{withdrawalId} Returns the status and transfer details of a specified withdrawal group. # List attestations for crosschain transfers Source: https://developers.circle.com/api-reference/xreserve/all/list-attestations openapi/xreserve.yaml get /v1/remote-domains/{remoteDomain}/attestations Returns an array of attestations for the specified crosschain transfers, filtered by remote domain. Use the Link header in the response to navigate between pages. # Prepare a withdrawal request Source: https://developers.circle.com/api-reference/xreserve/all/prepare-withdrawal openapi/xreserve.yaml post /v1/prepare-withdrawal Turns the user's burn transaction data on the remote chain into fully encoded burn intents to send to the `/withdraw` endpoint. This endpoint performs the following: - Resolves contract and token addresses across networks. - Determines the optimal forwarding strategy, such as redepositing to another xReserve remote domain or forwarding to a CCTP domain. - Calculates transfer amounts and fees. - Encodes forwarding call data with the calculated transfer amounts. - Generates `maxBlockHeight` and `maxFee` values with safety buffers. - Returns data in the structure expected by the withdraw endpoint. Note: The `/withdraw` endpoint requires signatures and the remote chain `burnTxId` in addition to the burn intent prepared by this endpoint. # Submit signed burn intents for withdrawal Source: https://developers.circle.com/api-reference/xreserve/all/submit-withdrawal openapi/xreserve.yaml post /v1/withdraw Submits up to five signed burn intent batches per request call. Each batch may contain one burn intent or a set of up to 10. # Assets Source: https://developers.circle.com/assets Issue, transfer, and integrate digital assets into your applications. ## Stablecoins Stablecoins for payments and stablecoin infrastructure. <div> <a href="/stablecoins/what-is-usdc"> <div> <img alt="USDC token" /> </div> <div> <h3>USDC</h3> <p>Make USD-denominated transfers on any supported blockchain.</p> </div> </a> <a href="/stablecoins/what-is-eurc"> <div> <img alt="EURC token" /> </div> <div> <h3>EURC</h3> <p>Make euro-denominated transfers on any supported blockchain.</p> </div> </a> <a href="/xreserve/"> <div> <Icon icon="coins" /> </div> <div> <h3>xReserve</h3> <p>Issue branded stablecoins backed 100% by USDC reserves.</p> </div> </a> </div> ## Wrapped assets Crypto assets backed 1:1 by their underlying asset. <div> <a href="/assets/what-is-cirbtc"> <div> <img alt="cirBTC token" /> </div> <div> <h3>cirBTC</h3> <p>BTC-backed token for use in onchain applications.</p> </div> </a> </div> ## Onchain money market A yield-bearing money market fund settled onchain, with real-time subscriptions and redemptions. <div> <a href="/tokenized/usyc/overview"> <div> <img alt="USYC token" /> </div> <div> <h3>USYC</h3> <p>Offer yield exposure through tokenized short-term US Treasuries.</p> </div> </a> </div> ## Dive deeper * Transfer USDC on EVM blockchains using the [Transfer USDC on EVM quickstart](/stablecoins/quickstarts/transfer-usdc-evm). * Transfer EURC on EVM blockchains using the [Transfer EURC on EVM quickstart](/stablecoins/quickstarts/transfer-eurc-evm). * Understand the xReserve reserve and attestation model in [How xReserve works](/xreserve/concepts/how-xreserve-works). * Read the [cirBTC overview](/assets/what-is-cirbtc) for an overview of Circle's BTC-backed token. * Integrate onchain money market access using the [Subscribe and redeem USYC quickstart](/tokenized/usyc/subscribe-and-redeem). # cirBTC contract addresses Source: https://developers.circle.com/assets/cirbtc-contract-addresses Smart contract addresses for cirBTC (Circle Wrapped Bitcoin) on supported mainnet and testnet blockchains. cirBTC tokens are controlled by a smart contract on the blockchain. The following sections list the cirBTC smart contract addresses on every supported mainnet and testnet blockchain. ## Mainnet <Warning> **Mainnet tokens have financial value** The blockchains listed below store and transfer tokens that have real financial value. When interacting with mainnet blockchains, you should thoroughly test your code, verify all addresses, and ensure the privacy of seed phrases and private keys. </Warning> | Blockchain | cirBTC Mainnet Address | | :- | :- | | Arc | [`0x171A4217b86A807A64eB94757Db6849fb4bDbAA0`](https://explorer.arc.io/address/0x171A4217b86A807A64eB94757Db6849fb4bDbAA0) | | Ethereum | [`0x72DFB2E44f59C5AD2bAFE84314E5b99a7cd5075E`](https://etherscan.io/token/0x72dfb2e44f59c5ad2bafe84314e5b99a7cd5075e) | ## Testnet <Warning> **Testnet tokens have no financial value** Because the testnets listed below are used only for testing, the cirBTC tokens in circulation on these networks have no financial value, and **are not backed by real Bitcoin**. Similarly, native testnet tokens have no financial value. </Warning> | Blockchain | Token Address | | - | - | | Arc Testnet | [`0xf0C4a4CE82A5746AbAAd9425360Ab04fbBA432BF`](https://explorer.testnet.arc.io/address/0xf0C4a4CE82A5746AbAAd9425360Ab04fbBA432BF) | | Ethereum Sepolia | [`0x3a3fe695F684Bf9b9e43CF43C2b895Ea5e392bB3`](https://sepolia.etherscan.io/address/0x3a3fe695F684Bf9b9e43CF43C2b895Ea5e392bB3) | # cirBTC overview Source: https://developers.circle.com/assets/what-is-cirbtc Circle Wrapped Bitcoin (cirBTC) is a 1:1 BTC-backed token issued by Circle on Arc and Ethereum with real-time onchain reserve verification through Chainlink Proof of Reserves. cirBTC is Circle Wrapped Bitcoin, a tokenized representation of Bitcoin (BTC) issued by Circle on Arc and Ethereum. Every cirBTC is backed 1:1 by native BTC held at a regulated entity in the Circle group of companies. The BTC is held for the exclusive benefit of cirBTC holders and segregated from Circle's corporate assets. ## Key benefits Bitcoin is the most widely held digital asset, yet it cannot natively interact with smart contracts, limiting its use in lending, borrowing, or complex trading strategies. cirBTC solves this by creating a tokenized version of BTC that operates on smart contract blockchains. * **1:1 backed by native BTC**: every cirBTC is redeemable for the underlying Bitcoin. * **Real-time proof of reserves**: onchain verification through Chainlink rather than periodic attestations. * **Neutral issuer**: Circle does not operate a competing exchange or lending protocol. Paired with USDC, cirBTC enables institutional workflows such as posting cirBTC as collateral to borrow USDC and access capital without selling the underlying Bitcoin position. ## Access and availability <Note> cirBTC is available to qualified businesses through [Circle Mint](/circle-mint). [Contact Circle](https://www.circle.com/mint-contact) to learn more. </Note> Mint and redeem cirBTC using the same API endpoints as USDC and EURC, with `CIRBTC` as the currency code. For step-by-step instructions, see the [Mint and redeem cirBTC quickstart](/circle-mint/quickstarts/mint-and-redeem-cirbtc). cirBTC is available on the following blockchains: * **Arc**: mainnet and testnet * **Ethereum**: mainnet and Sepolia testnet Developers can test cirBTC integrations using the [Circle faucet](https://faucet.circle.com/) to obtain testnet cirBTC, and the [sandbox environment](https://app-smokebox.circle.com) to test API interactions. ## cirBTC in the API cirBTC uses the currency code `CIRBTC` in all Circle Mint API calls. You interact with it the same way you use `USD` (for USDC) or `EUR` (for EURC) when creating transfers, deposit addresses, and other operations. For example, to create a deposit address for cirBTC on Ethereum Sepolia: ```bash theme={null} curl -X POST https://api-sandbox.circle.com/v1/businessAccount/wallets/addresses/deposit \ -H "Authorization: Bearer ${YOUR_API_KEY}" \ -H "Content-Type: application/json" \ -d '{"idempotencyKey":"unique-uuid","currency":"CIRBTC","chain":"ETH"}' ``` For supported blockchains and blockchain codes, see [Supported chains and currencies](/circle-mint/references/supported-chains-and-currencies). To get started with your first mint or redemption, see the [Mint and redeem cirBTC quickstart](/circle-mint/quickstarts/mint-and-redeem-cirbtc). # Build onchain experiences Source: https://developers.circle.com/build-onchain Compose wallets, contracts, gas sponsorship, and compliance to ship onchain apps faster. ## What you can build * [**Embedded wallets**](/wallets): build flexible, secure, and scalable wallets into your application. * [**Gasless UX**](/wallets/gas-station): give end users a gasless experience with Gas Station and Paymaster. * [**Smart contracts**](/contracts): create, deploy, and execute smart contracts through intuitive APIs. * [**Compliance operations**](/wallets/compliance-engine): screen transactions and automate alerts. ## Compose your stack Mix and match these building blocks based on who controls the keys, how you cover fees, and the level of automation you need. <CardGroup> <Card title="Wallets: Dev-Controlled" icon="wallet" href="/wallets/dev-controlled"> Use APIs to create wallets, move funds, and manage policies on behalf of your users with instant scale. </Card> <Card title="Wallets: User-Controlled" icon="user" href="/wallets/user-controlled"> Ship social logins, email OTP, and PIN-secured signing so your users control their keys with familiar sign-ins. </Card> <Card title="Wallets: Modular" icon="layer-group" href="/wallets/modular"> Plug in modules like permissions, recovery, or automation to ship custom smart-accounts. </Card> <Card title="Gas Station" icon="gas-pump" href="/wallets/gas-station"> Sponsor gas to create a gasless UX for end-users. </Card> <Card title="Paymaster" icon="coin-vertical" href="/paymaster"> Let anyone pay gas directly in USDC through permissionless ERC-4337 paymasters. </Card> <Card title="Contracts" icon="code" href="/contracts"> Deploy and operate smart contracts via audited templates, APIs, and monitoring. </Card> <Card title="Compliance Engine" icon="shield-check" href="/wallets/compliance-engine"> Screen transactions, manage rules, and investigate alerts. </Card> </CardGroup> ## Building something crosschain? Wallets and contracts become more powerful when they connect across ecosystems. Use these primitives to move liquidity crosschain and expose a unified balance. <Tip> **Use dedicated SDKs for crosschain transfers** [Bridge Kit](https://www.npmjs.com/package/@circle-fin/bridge-kit) and [Unified Balance Kit](https://www.npmjs.com/package/@circle-fin/unified-balance-kit) let you move USDC across blockchains without low-level protocol work. Both support multiple blockchains and wallet providers. </Tip> <CardGroup> <Card title="CCTP" icon="arrow-up-arrow-down" href="/cctp"> Burn-and-mint native USDC between supported chains with guarantees. <PermissionlessBadge /> </Card> <Card title="Gateway" icon="dungeon" href="/gateway"> Give users a single USDC balance they can spend anywhere while Circle handles settlement. <PermissionlessBadge /> </Card> </CardGroup> ## Dive deeper * Follow the [dev-controlled wallet quickstart](/wallets/dev-controlled/create-your-first-wallet) to stand up API-driven wallets in minutes. * Use the [user-controlled wallet tutorials](/wallets/user-controlled) to embed social login, email OTP, and PIN-based signing flows. * Head to the [Contracts quickstart](/contracts/scp-deploy-smart-contract) to deploy an audited template and connect to wallets. * Explore [Gas Station quickstarts](/wallets/gas-station/send-a-gasless-transaction) and [Paymaster guides](/paymaster/pay-gas-fees-usdc) to abstract gas across networks. # Cross-Chain Transfer Protocol Source: https://developers.circle.com/cctp Permissionless crosschain transfers of USDC, EURC, and registered third-party tokens. Cross-Chain Transfer Protocol (CCTP) is a permissionless onchain utility for crosschain digital asset transfers. CCTP natively transfers USDC across blockchains using burn-and-mint, and extends to EURC and registered third-party assets through [CCTP for non-USDC](/cctp/expanded-assets), all without traditional bridge liquidity pools. <Tip> **Use [Bridge Kit](https://www.npmjs.com/package/@circle-fin/bridge-kit) to simplify crosschain transfers with CCTP.** Bridge Kit is a lightweight SDK that uses CCTP as its protocol provider, letting you transfer USDC between blockchains in just a few lines of code. </Tip> ## Key features <CardGroup> <Card title="Multichain asset transfers" icon="coins"> Transfer USDC, EURC, and registered third-party assets across blockchains without traditional bridge liquidity pools </Card> <Card title="Configurable transfer speeds" icon="gauge-high"> Choose between [Fast Transfer](/cctp/concepts/finality-and-block-confirmations#fast-transfer-attestation-times) for speed or [Standard Transfer](/cctp/concepts/finality-and-block-confirmations#standard-transfer-attestation-times) for cost efficiency </Card> <Card title="Programmable hooks" icon="code"> Trigger automated actions on the destination blockchain after assets arrive </Card> </CardGroup> ## What you can build CCTP enables you to build applications that move digital assets across blockchains. Here are some common use cases: <AccordionGroup> <Accordion title="Crosschain liquidity management" icon="arrow-right-arrow-left"> Rebalance digital asset holdings across blockchains to meet liquidity demands, manage treasury positions, or take advantage of market opportunities with minimal latency. </Accordion> <Accordion title="Crosschain swaps" icon="shuffle"> Enable users to swap tokens on one blockchain for tokens on another blockchain by routing through USDC. Build seamless crosschain trading experiences that feel like a single transaction. </Accordion> <Accordion title="Crosschain payments" icon="credit-card"> Accept USDC payments on one blockchain and automatically transfer funds to another blockchain where your business operations are based or wh
프로젝트로 돌아가기