Scope & Applicability
When does the Travel Rule apply?
When does the Travel Rule apply?
What are the transaction thresholds?
What are the transaction thresholds?
What location matters for EEA scope: a customer's operating address or legal address?
What location matters for EEA scope: a customer's operating address or legal address?
Does the Travel Rule apply when funds stay entirely within Bridge's ecosystem?
Does the Travel Rule apply when funds stay entirely within Bridge's ecosystem?
- Fiat into a Bridge custodial wallet (onramp only, no outbound disbursement): No Travel Rule data required
- Bridge wallet to Bridge wallet (internal transfer): No Travel Rule data required
- Bridge wallet to fiat bank account (no on-chain leg): No Travel Rule data required
Can I submit Travel Rule data for ALL money movements to avoid building a decision engine on my end?
Can I submit Travel Rule data for ALL money movements to avoid building a decision engine on my end?
travel_rule_data to any money movement even if it is not strictly required for that specific flow. This is a perfectly valid approach.Originator & Beneficiary: Identifying the Parties
How does Bridge define 'originator'?
How does Bridge define 'originator'?
- Self-to-self transfer (your customer sends to themselves): Set
originator.is_self: true. Bridge will automatically pull the originator’s information from the customer’s profile. - Identifiable third-party originator (a third party sends funds and their identity is known or obtainable): The third party is the originator. Where you are able to identify them (for example, on outbound transactions you initiate or inbound transfers where your customer knows the sender), you are expected to collect and submit their
nameandaddress. Bridge will work through its own resolution process internally and will reach out to you directly if additional information is needed. - Unidentifiable originator (funds arrive from an unknown source, e.g., open liquidation addresses): This is a distinct scenario with its own obligations and resolution framework. See the question below on unidentifiable originators.
is_self: true means the person sending the funds is your customer sending to themselves. It is not a substitute for collecting third-party originator data when that data is obtainable.What if a third party (not my customer) sends funds to my customer's Virtual Account or Liquidation Address? Who is the originator?
What if a third party (not my customer) sends funds to my customer's Virtual Account or Liquidation Address? Who is the originator?
- A friend sends fiat to your customer’s Virtual US Account and the customer can identify them: Originator = the friend (no attestation required)
- A business partner deposits funds to your customer’s Liquidation Address and the customer confirms who sent it: Originator = the business partner (no attestation required)
For a third-party onramp (e.g., a friend sends funds to my customer's Virtual Account), who is the originator and who is the beneficiary?
For a third-party onramp (e.g., a friend sends funds to my customer's Virtual Account), who is the originator and who is the beneficiary?
- Originator: The third-party sender (their third-party information, collected from your customer)
- Beneficiary: Your customer (the receiving party); use
is_self: true
What if we genuinely cannot identify the originator? (e.g., open liquidation addresses)
What if we genuinely cannot identify the originator? (e.g., open liquidation addresses)
Who is the beneficiary in an offramp flow where funds go to an external bank account?
Who is the beneficiary in an offramp flow where funds go to an external bank account?
is_self: true. If it is a different person, provide the bank account holder’s details as the beneficiary.For a crypto payout to a third party who is not my customer, who is the originator and beneficiary?
For a crypto payout to a third party who is not my customer, who is the originator and beneficiary?
- Originator: Your customer (who initiated the transfer). Set
is_self: trueon the originator and Bridge will pull their info from the customer profile. - Beneficiary: The third-party recipient (name, address, and
legal_entity_identifierif a business)
Required Fields
What originator fields are required?
What originator fields are required?
originator.is_self: true, where your customer is the sender):- Set
is_self: true. Bridge automatically pulls all originator data (name, address,identifying_information) from the customer’s on-file profile. - You only need to provide the beneficiary if they are different from the customer.
nameaddresswallet_type(if applicable; no attestation required)identifying_information(ID number, DoB, etc.) when available
nameaddresslegal_entity_identifier(e.g., VAT number or other official business identifier)
What beneficiary fields are required?
What beneficiary fields are required?
nameaddresswallet_typeandwallet_attested_ownership_at(if applicable)
nameaddresslegal_entity_identifier
If is_self: true, do I still need to provide all beneficiary fields?
If is_self: true, do I still need to provide all beneficiary fields?
is_self: true for the beneficiary (indicating the beneficiary is the same person as your customer), you do not need to provide the other beneficiary fields (name, address, wallet_type, wallet_attested_ownership_at).Does Bridge auto-pull the customer's KYC data (including identifying_information) for Travel Rule purposes?
Does Bridge auto-pull the customer's KYC data (including identifying_information) for Travel Rule purposes?
originator.is_self: true, Bridge will automatically pull the originator’s full profile (including name, address, and identifying_information) from the customer’s profile, as long as you provide the beneficiary information (if the beneficiary is different from the customer). You do not need to re-submit data that was already collected at KYC/KYB onboarding.For third-party originators, Bridge has no profile on file for the third party. You are expected to take reasonable measures to obtain and submit their name and address. identifying_information (ID number, DoB, etc.) should be submitted if available.For businesses, what counts as a 'legal entity identifier'?
For businesses, what counts as a 'legal entity identifier'?
- VAT registration number
- EIN (US Employer Identification Number)
- Company registration number
- LEI (Legal Entity Identifier)
wallet_type, Attestation & Bridge Wallets
What are the valid values for wallet_type and what do they mean?
What are the valid values for wallet_type and what do they mean?
wallet_type represents the custody arrangement, not the technology. It applies to the depositing wallet for inbound flows and the receiving wallet for outbound flows.Do Bridge-hosted wallets require wallet ownership attestation?
Do Bridge-hosted wallets require wallet ownership attestation?
hosted (if you custody it) or you can omit attestation fields entirely for Bridge wallets.When is wallet ownership attestation (wallet_attested_ownership_at) required?
When is wallet ownership attestation (wallet_attested_ownership_at) required?
- The sending wallet is self-hosted (
self_custodied) AND - The transaction is through Bridge’s EU entity (EUR transaction) AND
- The transaction exceeds €1,000 in a single transaction or in several transactions which appear to be linked.
- Bridge-custodied wallets
- Third-party originators or beneficiaries (non-customers); collect their name and address, but no wallet attestation
- Fiat-only flows
When a third party (non-customer) sends crypto to my customer's Bridge wallet, is attestation required from that third party?
When a third party (non-customer) sends crypto to my customer's Bridge wallet, is attestation required from that third party?
name and address from your customer, but no wallet attestation is needed. Attestation only applies to wallets owned by your own customers.If the originator is a third party (not my customer), how do I determine their wallet_type? Can I ask them via a dropdown?
If the originator is a third party (not my customer), how do I determine their wallet_type? Can I ask them via a dropdown?
What methods are acceptable for wallet ownership attestation? Is a signature challenge required?
What methods are acceptable for wallet ownership attestation? Is a signature challenge required?
- Cryptographic signature challenge (e.g., via WalletConnect, MetaMask personal signature)
- Micro-deposit / satoshi test (send a small amount and verify the customer received it)
- Third-party vendor tools that manage wallet verification
What do wallet_type and wallet_attested_ownership_at mean in a fiat context (e.g., an offramp to a bank account)?
What do wallet_type and wallet_attested_ownership_at mean in a fiat context (e.g., an offramp to a bank account)?
wallet_type and wallet_attested_ownership_at should be omitted.How do I know if the other VASP (e.g., Coinbase) will submit Travel Rule data to Bridge?
How do I know if the other VASP (e.g., Coinbase) will submit Travel Rule data to Bridge?
external (custodied by another CASP like Coinbase), you can declare wallet_type: external and that CASP is expected to transmit Travel Rule data directly to Bridge through standard VASP-to-VASP protocols. In practice, it is still best to submit the beneficiary information on your end regardless, to ensure Bridge has what it needs.Flow-Specific Scenarios
What Travel Rule data is required for each common flow?
What Travel Rule data is required for each common flow?
For incoming payments I did not initiate (VA deposits, Liquidation Address pushes), when do I submit Travel Rule data?
For incoming payments I did not initiate (VA deposits, Liquidation Address pushes), when do I submit Travel Rule data?
- Funds will not be held or frozen while Travel Rule data is pending
- You can submit the Travel Rule data after the deposit, referencing the event ID from the webhook
- Bridge will reach out if data is missing and is not provided in a timely manner
For fiat offramp flows, are all five beneficiary fields (is_self, name, address, wallet_type, wallet_attested_ownership_at) required?
For fiat offramp flows, are all five beneficiary fields (is_self, name, address, wallet_type, wallet_attested_ownership_at) required?
- If
is_self: true, no other fields are required - If the beneficiary is a third party, provide
nameandaddress;wallet_typeandwallet_attested_ownership_atare not applicable to fiat destinations
Timing & API Integration
Does Travel Rule data need to accompany the transfer in real time?
Does Travel Rule data need to accompany the transfer in real time?
- Inline at creation: Include
travel_rule_datawhen creating a transfer, Virtual Account, or Liquidation Address - One-off afterward: Submit Travel Rule data separately via a POST to
/v0/travel_rule_data/{id}, referencing the relevant resource ID (transfer ID, virtual account event ID, drain ID, etc.)
How do I attach Travel Rule data to a specific transaction after the fact?
How do I attach Travel Rule data to a specific transaction after the fact?
POST /v0/travel_rule_data/{id} where {id} is the resource ID of the relevant money movement (e.g., the transfer ID, virtual account event ID). See the API reference.Can I submit a single reusable Travel Rule resource for repeated self-to-self transfers?
Can I submit a single reusable Travel Rule resource for repeated self-to-self transfers?
Travel Rule Compliance Expectations and Enforcement
What happens if Travel Rule data is not submitted?
What happens if Travel Rule data is not submitted?
- Bridge will reach out to you (the developer/partner) directly to collect the missing data
- If data is not provided after outreach, Bridge will apply enhanced controls and may reject the transfer in case of increased risk.
Does Bridge reach out to my end customers directly, or to us?
Does Bridge reach out to my end customers directly, or to us?
Will Bridge block transactions if Travel Rule data is missing?
Will Bridge block transactions if Travel Rule data is missing?
