Travel Rule for Withdrawals
The Travel Rule requires financial institutions, including custodial cryptocurrency exchanges, to share basic information about their customers when sending funds over a certain amount.
VASPs (Virtual Asset Service Providers) like Coinbase that are part of the TRUST (Travel Rule Universal Solution Technology) consortium use the TRUST solution when sharing PII (Personally Identifiable Information) in order to satisfy the Travel Rule data requirements.
The Withdraw to crypto address endpoint supports the Travel Rule as follows:
Coinbase as a VASP
Depending on the jurisdiction, you may be required to provide data related to the beneficiary of the withdrawal. This data shall be provided via the travel_rule_data
parameter.
Example of a request with Travel Rule data:
curl -L -X POST 'https://api.exchange.coinbase.com/withdrawals/crypto' \
-H "Content-Type: application/json" \
-d "@data.json"
data.json
content:
{
"amount": "1.0",
"currency": "BTC",
"crypto_address": "1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa",
"travel_rule_data": {
"beneficiary_name": "San Francisco City Hall",
"beneficiary_address": {
"address_1": "1 Dr Carlton B Goodlett Pl",
"city": "San Francisco",
"state": "CA",
"country": "US",
"postal_code": "94102"
}
}
}
Coinbase as an intermediary VASP
When Coinbase is used as an intermediary VASP to send crypto on behalf of your customer, you must provide the is_intermediary
parameter with a value of true
and the intermediary_jurisdiction
parameter with the jurisdiction (ISO 3166-1 alpha-2) for the Travel Rule data validation. It may also be necessary to provide the travel_rule_data
parameter with the data necessary to satisfy the Travel Rule data requirements.
Example of a request with Travel Rule data when Coinbase is an intermediary VASP:
curl -L -X POST 'https://api.exchange.coinbase.com/withdrawals/crypto' \
-H "Content-Type: application/json" \
-d "@data.json"
data.json
content:
{
"amount": "1.1",
"currency": "BTC",
"crypto_address": "1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa",
"is_intermediary": true,
"intermediary_jurisdiction": "SG",
"travel_rule_data": {
"beneficiary_name": "San Francisco City Hall",
"beneficiary_address": {
"address_1": "1 Dr Carlton B Goodlett Pl",
"city": "San Francisco",
"state": "CA",
"country": "US",
"postal_code": "94102"
}
}
}
Error responses for missing Travel Rule data
When the required Travel Rule data has not been provided for a given jurisdiction, an error response will be received, such as the following (HTTP status code 400):
{
"message": "missing fields to satisfy travel rule requirements",
"missing_fields": [
"beneficiary_name",
"beneficiary_address",
"originator_name"
]
}