Overview
Transfers move funds to external addresses, other Coinbase users, or payment methods. In Sandbox, all transfers are simulated—webhooks fire and status transitions occur, but no real transactions happen.Prerequisites
The following instructions usecdpcurl and a Sandbox API key. Install cdpcurl to begin.
1. Simulate transfer by target type
Set your account ID:Get your account ID
Get your account ID
a. To reserved addresses
You can use any valid address format for the network—it doesn’t need to be a real or funded address. Use reserved addresses below to test specific error scenarios.
- Success
- Transfer invalid target
- Invalid address
- Unsupported network
Below is a simulation using Expected response: HTTP
0x1111... to test successful transfer handling:2xx with normal transfer responseThe target address can be any valid format for the network—it doesn’t need to be a real or funded address. Use reserved addresses to test specific scenarios.
b. To reserved email addresses
Send to a Coinbase user by email. In Sandbox, only whitelisted test emails work:
You can also use the following reserved email addresses to simulate deterministic error responses:
- Invalid email target
- Execution failure
400Get your account ID
Get your account ID
c. To reserved payment methods
For testing fiat withdrawals to external banks (Fedwire, SWIFT), see the Payment Methods guide. Payment methods have pre-built test scenarios for different use cases (e.g., active vs inactive methods).2. Validate before executing
UsevalidateOnly: true to verify recipient details (like email addresses or crypto addresses) before executing a transfer.
Get your account ID
Get your account ID
2xx response means the transfer would succeed. A 4xx response includes an errorType explaining why validation failed.
3. List transfers
View all transfers for your account:Example response
Example response
What to read next
Create Transfer
API reference for creating transfers
List Transfers
API reference for listing transfers