Skip to main content
Register external blockchain addresses and send stablecoins from a Digital Asset Account to those addresses. After sending, track the outbound transfer as it moves through processing states and confirms onchain, and manage your recipient address book by listing or deleting registered addresses.

Prerequisites

Before you begin:
  • Obtain an API key for Digital Asset Accounts from Circle.
  • Have an onboarded and active account with a funded balance.
  • Have an external blockchain address to receive the transfer.
  • Review whether Strong Customer Authentication (SCA) applies. Circle requires SCA headers on transfers for end users in the European Economic Area (EEA). See Implement SCA.
  • Run a device check for the end user and keep the deviceId it returns. Every money movement and address book request carries it in riskSignals. See Collect device risk signals.
  • Install cURL on your development machine.
The Digital Asset Accounts API base URL is https://api-sandbox.circle.com for sandbox and https://api.circle.com for production. Set your API key in the Authorization header using the format Bearer YOUR_API_KEY. See Sandbox environment and Going to production for environment details.

Steps

Step 1. Register a recipient address

Register the external blockchain address where you want to send stablecoins.
Response
You can send to an address only after its status is active. For end users booked to Circle’s EEA entity, the request must also declare wallet ownership; see Use self-hosted wallets and EEA API behavior.

Step 2. Create a transfer

Initiate a transfer to the registered recipient address. Specify the source account as an account type and the destination as a verified_blockchain type. The verified_blockchain type indicates a pre-registered external blockchain address. Include the recipient address ID from the previous step.
Response
If the source account has insufficient funds, the API returns an error. Check the account balance before creating a transfer.

Step 3. Check the transfer status

Monitor the transfer until it reaches a terminal state. Transfers move through pending, complete, and failed states. See Transaction states for details.
Response

Step 4. Verify the balance

Confirm that the transfer amount has been deducted from the account.
Response

Manage recipient addresses

List recipient addresses

Retrieve all registered recipient addresses for an account. This endpoint supports pagination.
Response

Delete a recipient address

Remove a recipient address that is no longer needed. Deleted addresses cannot be used for new transfers.
If the deletion is successful, the API returns a 200 response.
Deleting a recipient address does not affect previously completed transfers to that address. The transaction history is preserved.

See also