Skip to main content
Deposit Destinations require a business account. If you’re interested in using this product, get in touch and our team will follow up to discuss fit.
Deposit destinations are crypto addresses that your customers or external parties can use to send funds directly. When a deposit arrives, the corresponding account’s balance is credited automatically. A destination can also act as a liquidation address, automatically converting incoming funds into a different asset before crediting the account. This is the primary mechanism for receiving inbound crypto payments into your custodial accounts.

How deposit destinations fit your integration

  1. Create a deposit destination for a specific account and network.
  2. Optional: Set a target to liquidate incoming funds into a different asset.
  3. The API returns a blockchain address for that network and account.
  4. Share that address with the sender (customer, invoice payer, counterparty).
  5. When funds arrive on-chain, the account’s balance is credited automatically.
  6. A payments.transfers.completed webhook fires when the deposit settles.
In the API, the resource is called a “deposit destination.” The CDP Portal UI displays the same concept as a “deposit address.”

Deposit destination types

Supported assets and networks

Your entity configuration and environment determine which assets, networks, and settlement behavior are available. Before moving funds, verify your account’s available deposit address options in the CDP Portal and consult the request body’s crypto.network documentation in the Create deposit destination API reference for available networks.
Only send supported assets to your deposit destinations. Sending unsupported assets or using unsupported networks may result in permanent loss of funds.If you accidentally send unsupported crypto, you may be able to recover it using Coinbase’s asset recovery service.

Core API operations

Metadata

You can attach metadata to any deposit destination to track the purpose or source of deposits. Metadata is returned with the deposit destination object, transfer records, and webhook notifications.
Temporary restriction on deposit destinations: Metadata values must currently be in UUID format or integer string format. Free-form metadata values will be supported in a future release. This restriction is specific to deposit destinations — transfers and webhook subscriptions accept free-form string values.

Quickstart

Create a deposit destination and simulate an inbound deposit

REST API reference

Full API reference for deposit destination operations

Transfers

Move funds from an account to an external address or payment method

Webhooks

Subscribe to deposit events in real time