Skip to main content

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"
]
}

Was this helpful?