Circle USYC 백서

Circle USYC

원문

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

e.com/api-reference/cpn/managed-payments/webhooks/mint-external-entities openapi/managed-payments-webhooks.yaml webhook mintExternalEntities Sent when an external entity reaches a compliance decision. `complianceState` is one of `PENDING`, `ACCEPTED`, or `REJECTED`. Wait for `ACCEPTED` before transacting on behalf of the entity. # Payment intent state change Source: https://developers.circle.com/api-reference/cpn/managed-payments/webhooks/mint-payment-intents openapi/managed-payments-webhooks.yaml webhook mintPaymentIntents Sent when a payment intent is created, receives a deposit address, or receives funds. `status` is one of `created`, `pending`, `active`, `complete`, `expired`, `failed`, or `refunded`. One-time intents use `pending` while awaiting a deposit; continuous intents use `active` once a deposit address is assigned. `timeline` carries each status the intent has passed through. # Payment state change Source: https://developers.circle.com/api-reference/cpn/managed-payments/webhooks/mint-payments openapi/managed-payments-webhooks.yaml webhook mintPayments Sent when a payment changes state. `status` is one of `pending`, `action_required`, `confirmed`, `paid`, `failed`, or `reversed`. `paid` and `failed` are terminal. # Payout terminal state Source: https://developers.circle.com/api-reference/cpn/managed-payments/webhooks/mint-payout openapi/managed-payments-webhooks.yaml webhook mintPayout Sent when a withdrawal to a bank account reaches a terminal state. `status` is `complete` or `failed`. Not sent for the intermediate `pending` state. # Wire state change Source: https://developers.circle.com/api-reference/cpn/managed-payments/webhooks/mint-wire openapi/managed-payments-webhooks.yaml webhook mintWire Sent when a wire transfer changes state. `status` is one of `pending`, `complete`, or `failed`. # Application approved Source: https://developers.circle.com/api-reference/cpn/managed-payments/webhooks/onboarding-application-approved openapi/managed-payments-webhooks.yaml webhook onboardingApplicationApproved Sent when an end customer application is approved. The end customer can now transact. `status` and `previousStatus` are one of `APPROVED`, `CANCELLED`, `DENIED`, `DRAFT`, `IN_REVIEW`, `PENDING_CUSTOMER_INFORMATION`, or `SUBMITTED`. Circle collapses its internal review states into `IN_REVIEW`, so an application under review reports `IN_REVIEW` regardless of which internal stage it sits in. # Application cancelled Source: https://developers.circle.com/api-reference/cpn/managed-payments/webhooks/onboarding-application-cancelled openapi/managed-payments-webhooks.yaml webhook onboardingApplicationCancelled Sent when an end customer application is cancelled before reaching a decision. `previousStatus` reports the stage it was cancelled from, either `DRAFT` or `IN_REVIEW`. # Application denied Source: https://developers.circle.com/api-reference/cpn/managed-payments/webhooks/onboarding-application-denied openapi/managed-payments-webhooks.yaml webhook onboardingApplicationDenied Sent when an end customer application is denied. The end customer cannot transact, and the decision is final. # Information requested Source: https://developers.circle.com/api-reference/cpn/managed-payments/webhooks/onboarding-application-rfi-requested openapi/managed-payments-webhooks.yaml webhook onboardingApplicationRfiRequested Sent when Circle needs more information before it can decide. The application moves to `PENDING_CUSTOMER_INFORMATION` from review, and stays there until the end customer supplies what was requested. # Periodic review requested Source: https://developers.circle.com/api-reference/cpn/managed-payments/webhooks/onboarding-periodic-review-requested openapi/managed-payments-webhooks.yaml webhook onboardingPeriodicReviewRequested Sent when a periodic review opens for an approved end customer. The review starts as a new application in `DRAFT`, so the end customer must complete it to stay in good standing. # Create a wire bank account Source: https://developers.circle.com/api-reference/cpn/managed-payments/wires/create-account-wire-account openapi/accounts.yaml post /v1/banks/wires Create a bank account for wire transfers. # Get a wire bank account Source: https://developers.circle.com/api-reference/cpn/managed-payments/wires/get-account-wire-account openapi/accounts.yaml get /v1/banks/wires/{id} Retrieves a specific wire bank account. # Get wire instructions Source: https://developers.circle.com/api-reference/cpn/managed-payments/wires/get-account-wire-account-instructions openapi/accounts.yaml get /v1/banks/wires/{id}/instructions Retrieves wire transfer instructions for a specific bank account. # List all wire bank accounts Source: https://developers.circle.com/api-reference/cpn/managed-payments/wires/list-account-wire-accounts openapi/accounts.yaml get /v1/banks/wires Retrieves a list of bank accounts for wire transfers. `clientEntityId` is the identifier returned by [Create a partner client](https://developers.circle.com/api-reference/end-user-onboarding/create-partner-client) (`POST /v1/partner/clients`). Passing the `entityId` of your own account from `GET /v1/accounts` returns `400` with error code `3027`. A well-formed `clientEntityId` that doesn't match any client returns `200` with an empty `data` array rather than `404`, so an empty list doesn't confirm that the client entity exists. # Create an account bank withdrawal Source: https://developers.circle.com/api-reference/cpn/managed-payments/withdrawals/create-account-withdrawal openapi/accounts.yaml post /v1/accounts/withdrawals Create a bank withdrawal from an account. This converts a digital asset to fiat currency and sends it to the specified destination bank account. # Get an account bank withdrawal Source: https://developers.circle.com/api-reference/cpn/managed-payments/withdrawals/get-account-withdrawal openapi/accounts.yaml get /v1/accounts/withdrawals/{id} Retrieves a specific bank withdrawal. # List all account bank withdrawals Source: https://developers.circle.com/api-reference/cpn/managed-payments/withdrawals/list-account-withdrawals openapi/accounts.yaml get /v1/accounts/withdrawals Lists all bank withdrawals for accounts. # Postman collection Source: https://developers.circle.com/api-reference/cpn/postman Use Circle's Postman collection to send API requests and explore the Circle Payments Network APIs. Circle's Postman collection provides sample requests for the Circle Payments Network APIs. Run them in [Postman](https://www.postman.com/), an API client. The collection matches the layout of the [API reference](/api-reference/cpn/cpn-platform/get-payment-configurations-overview). ## Run in Postman Select **Run in Postman** below. Choose one of the following options: * **Fork**: Copies the collection and keeps a link to the parent. * **View**: Lets you try the API without importing it. * **Import**: Copies the collection without keeping a link to Circle's copy. | Collection | Link | | :- | :- | | CPN | [![Run in Postman](https://run.pstmn.io/button.svg)](https://app.getpostman.com/run-collection/18225688-f1682adb-ab23-4e2d-b21d-a3562d879e5f?action=collection%2Ffork\&source=rip_markdown\&collection-url=entityId%3D18225688-f1682adb-ab23-4e2d-b21d-a3562d879e5f%26entityType%3Dcollection%26workspaceId%3D5d277774-3b09-4e2b-91f5-4253c25a48d0) | ## Authorization To authorize your session, use Circle's Postman variable `apiKey` and add your API key to the `environment` or `collection` variables. See Postman's [using variables](https://learning.postman.com/docs/sending-requests/variables/) guide for details. For more information about creating an API key, see [API keys](/api-reference/keys). # Digital Asset Accounts API Source: https://developers.circle.com/api-reference/digital-asset-accounts Open and manage stablecoin accounts and transfers for business customers. Use the Digital Asset Accounts API to open accounts for your customers. Fund by wire or crypto, check balances, and track transfers—all through one REST API. <Warning> Digital Asset Accounts is a permissioned product. Contact your [Circle representative](mailto:sales@circle.com) to enable API access and get sandbox access before calling the API. </Warning> ## Get started <CardGroup> <Card title="Digital Asset Accounts documentation" icon="book" href="/digital-asset-accounts"> Learn how Digital Asset Accounts works. </Card> <Card title="Supported currencies and blockchains" icon="coins" href="/digital-asset-accounts/references/supported-currencies-and-blockchains"> See which stablecoins and blockchains are supported. </Card> <Card title="End User Onboarding API" icon="user-plus" href="/api-reference/end-user-onboarding"> Set up customers with Know Your Business (KYB) before opening accounts. </Card> <Card title="Webhooks" icon="bell" href="/api-reference/digital-asset-accounts/all/get-subscriptions"> Set up webhook subscriptions for Digital Asset Accounts events. </Card> </CardGroup> ## Endpoint categories <CardGroup> <Card title="Accounts" icon="wallet" href="/api-reference/digital-asset-accounts/all/list-accounts"> Create and retrieve customer accounts and subaccounts. </Card> <Card title="Account groups" icon="layer-group" href="/api-reference/digital-asset-accounts/all/list-account-groups"> Organize and manage groups of accounts. </Card> <Card title="Limits" icon="gauge-high" href="/api-reference/digital-asset-accounts/all/list-account-limits-usage"> View effective account limits and current usage. </Card> <Card title="Transfers" icon="arrow-right-arrow-left" href="/api-reference/digital-asset-accounts/all/list-account-transfers"> Move funds between accounts in your program. </Card> <Card title="Transactions" icon="clock-rotate-left" href="/api-reference/digital-asset-accounts/all/list-account-transactions"> View all transactions across account types. </Card> <Card title="Wires" icon="building-columns" href="/api-reference/digital-asset-accounts/all/list-wire-accounts"> Link wire bank accounts for fiat funding. </Card> <Card title="Deposits" icon="arrow-down-to-line" href="/api-reference/digital-asset-accounts/all/list-account-deposits"> Track incoming wire and crypto deposits. </Card> <Card title="Withdrawals" icon="arrow-up-from-line" href="/api-reference/digital-asset-accounts/all/list-account-withdrawals"> Process withdrawals to bank accounts. </Card> <Card title="Deposit addresses" icon="address-card" href="/api-reference/digital-asset-accounts/all/list-account-deposit-addresses"> Set up blockchain addresses to receive crypto. </Card> <Card title="Recipient addresses" icon="paper-plane" href="/api-reference/digital-asset-accounts/all/list-recipient-addresses"> Manage external addresses for crypto sends. </Card> <Card title="ACH" icon="money-check" href="/api-reference/digital-asset-accounts/all/create-achaccount"> Link ACH bank accounts for fiat deposits and withdrawals. </Card> </CardGroup> # Archive an account Source: https://developers.circle.com/api-reference/digital-asset-accounts/all/archive-account openapi/accounts.yaml post /v1/accounts/{accountId}/archive Archives a subledger account. Only subledger-type accounts (those created via `POST /v1/accounts`) may be archived, and the account must have a zero balance. While archived, mutating operations on the account are blocked: transfers into or out of the account, new deposit-address generation, fiat withdrawals, payment-intent creation, and fetching wire instructions are all rejected. Read endpoints (e.g. `GET /v1/accounts/{accountId}`, `GET /v1/accounts/deposits`) continue to work. An archived account is excluded from the default `GET /v1/accounts` listing; pass `status=archived` (or include `archived` in a multi-value `status` filter) to retrieve it. Archiving is idempotent: archiving an already-archived account succeeds. An incoming deposit to a pre-existing deposit address or wire instruction on the archived account will auto-unarchive it (status returns to `active`). # Bulk-assign accounts to a custody account group Source: https://developers.circle.com/api-reference/digital-asset-accounts/all/assign-accounts-to-group openapi/accounts.yaml post /v1/accounts/groups/{groupId}/assign Assigns up to 100 accounts to the target custody account group in a single atomic transaction. Accounts already bound to another group are reassigned; rebinding an account that already belongs to this group is a no-op write. Every account must belong to the caller's entity. If any account is not found, the entire request fails with 404 and no assignment row is changed. # Bank account linked Source: https://developers.circle.com/api-reference/digital-asset-accounts/all/bank-accounts-created openapi/accounts.yaml webhook bankAccountsCreated Sent when a bank account is linked. The `notification` object is keyed by rail — read the `wire`, `ach`, or `sepa` key based on the account type. # Bank account denied Source: https://developers.circle.com/api-reference/digital-asset-accounts/all/bank-accounts-denied openapi/accounts.yaml webhook bankAccountsDenied Sent when a bank account is denied and cannot be used for deposits or withdrawals. The `notification` object is keyed by rail — read the `wire`, `ach`, or `sepa` key based on the account type. # Bank account updated Source: https://developers.circle.com/api-reference/digital-asset-accounts/all/bank-accounts-updated openapi/accounts.yaml webhook bankAccountsUpdated Sent when a linked bank account changes, including as it progresses through verification. The `notification` object is keyed by rail — read the `wire`, `ach`, or `sepa` key based on the account type. # Complete passkey registration Source: https://developers.circle.com/api-reference/digital-asset-accounts/all/complete-passkey-registration openapi/accounts.yaml post /v1/accounts/passkeys Completes WebAuthn passkey enrollment by verifying the attestation response produced by the DAA web SDK's `sca.enroll` method. Returns a `passkeyId` that uniquely identifies the registered credential. # Create an account Source: https://developers.circle.com/api-reference/digital-asset-accounts/all/create-account openapi/accounts.yaml post /v1/accounts Creates a new account. This account can be used to create accounts for Mint, or intermediary accounts for a Managed Payments customer. For Managed Payments, the account created represents the end customer that will settle stablecoin payments by the customer. That end customer can be either a business or an individual (retail) end customer. Routing for this endpoint is body based. Requests that include `businessPii`, `individualPii`, or `endCustomerType` are routed to the Managed Payments intermediary account creation flow, while requests that include none of those fields are routed to the standard account creation flow. For Managed Payments, `endCustomerType` selects which PII block is required: - `business`, or omitted, requires `businessPii` and rejects `individualPii`. - `individual` requires `individualPii` and rejects `businessPii`. Both flows require an explicit `type` and `purpose` in the request body: - Standard (digital asset / Mint) accounts use `purpose` `custody` and `type` `first_party` or `third_party`. When `clientEntityId` is omitted the account is owned by the caller and `type` must be `first_party`; when `clientEntityId` is provided the account is owned by a sub-entity and `type` must be `third_party`. - Managed Payments intermediary accounts use `type` `first_party` and `purpose` `payments`. # Create an account deposit address Source: https://developers.circle.com/api-reference/digital-asset-accounts/all/create-account-deposit-address openapi/accounts.yaml post /v1/accounts/addresses/deposit Generates a new blockchain address for an account for a given currency/chain pair. Circle may reuse addresses on blockchains that support reuse. For example, if you're requesting two addresses for depositing USD and ETH, both on Ethereum, you may see the same Ethereum address returned. Depositing cryptocurrency to a generated address will credit the associated account with the value of the deposit. # Create a custody account group Source: https://developers.circle.com/api-reference/digital-asset-accounts/all/create-account-group openapi/accounts.yaml post /v1/accounts/groups Creates a new custody account group for the calling entity. If `accountIds` is provided, those accounts are assigned to the new group in the same transaction. Accounts must belong to the caller's entity; accounts already assigned to a different group are reassigned. # Create an account transfer Source: https://developers.circle.com/api-reference/digital-asset-accounts/all/create-account-transfer openapi/accounts.yaml post /v1/accounts/transfers Create a transfer from an account to a verified blockchain address or another account. # Create an account bank withdrawal Source: https://developers.circle.com/api-reference/digital-asset-accounts/all/create-account-withdrawal openapi/accounts.yaml post /v1/accounts/withdrawals Create a bank withdrawal from an account. This converts a digital asset to fiat currency and sends it to the specified destination bank account. # Create an ACH bank account Source: https://developers.circle.com/api-reference/digital-asset-accounts/all/create-achaccount openapi/accounts.yaml post /v1/banks/ach Create a bank account for ACH transfers. # Create an address book recipient Source: https://developers.circle.com/api-reference/digital-asset-accounts/all/create-address-book-recipient openapi/accounts.yaml post /v1/addressBook/recipients Creates an address book recipient for crypto payouts. Use the returned `id` as `destination.id` when creating a payout. **Digital Asset Accounts:** the address book is available only for custody accounts (`purpose: custody`) and is for third-party payouts only. It is not supported when the distributor or the end user is under the Circle FR (`CIRCLE_FR`) or Circle SG (`CIRCLE_SG`) legal entity. Set `clientEntityId` to the end user who owns the custody account you will pay out from. A payout can only use a recipient created for that end user. # Create an FX quote Source: https://developers.circle.com/api-reference/digital-asset-accounts/all/create-fx-quote openapi/accounts.yaml post /v1/exchange/quotes Create a quote to swap USDC and EURC for an end user's account. Only USDC <> EURC swaps are supported. Tradable quotes that include a fiat currency are rejected. - `tradable` quotes lock a rate for a few seconds (until `expiry`). Execute one with Create an FX trade. Set `source` to the end user's account. - `reference` quotes return an indicative rate only and can't be traded. # Create an FX trade Source: https://developers.circle.com/api-reference/digital-asset-accounts/all/create-fx-trade openapi/accounts.yaml post /v1/exchange/trades Execute a `tradable` quote. The trade debits the quote's `source` account and credits its `destination` account. # Create a payment intent Source: https://developers.circle.com/api-reference/digital-asset-accounts/all/create-payment-intent openapi/accounts.yaml post /v1/paymentIntents Create a continuous or transient payment intent. Always set `type`: when it is omitted, the default type depends on account configuration. **Digital Asset Accounts:** crypto payments are available only for custody accounts (`purpose: custody`) and are for third-party payments only. They are not supported when the distributor or the end user is under the Circle FR (`CIRCLE_FR`) or Circle SG (`CIRCLE_SG`) legal entity. Set `merchantWalletId` to the `accountId` of the end user's custody account. Requests that target the master wallet, either by omitting `merchantWalletId` or by passing the distributor's own master wallet ID, are rejected with `403`. `purposeOfTransfer` is required for Circle Inc (`CIRCLE_INC`) enti
프로젝트로 돌아가기