Withdraw requests and the "Travel Rule"

As required by compliance regulation, when making a withdrawal from Bitfinex of $1,000 or more in value, specific information is sent to one or more Third-Party Services that provide Travel Rule compliance solutions, and, who make it available to VASPs, as required by the Travel Rule.

Travel Rule compliance is mandatory for withdraw requests originating from the frontend website or app.
More details can be found here: https://support.bitfinex.com/hc/en-us/articles/25285206917529-Understanding-the-Travel-Rule-on-Bitfinex

Important Notice

From 29th January 2025, Travel Rule will be required for withdraw requests originating from the API, this applies to both the V1 and V2 Withdraw APIs.

If you consume these API endpoints, then please review this document, and your implementation, and make any required changes in order to avoid any disruption in service.

If non-compliant withdraw requests are received from the initiation date, the requests will be rejected.

Withdraw API changes & Travel Rule

The withdraw endpoint has the following additional fields:

travel_rule_tos: true,
vasp_did: "did:ethr:0x36c12a3d41698534463a6dcda1c549b8f178249b",
vasp_name: "Strawb Exchange Ltd",
beneficiary_self: true,
dest_firstname: "John",
dest_lastname: "Doe",
dest_corp_name: "Yotsuba Ltd"

travel_rule_tos
If the request will supply Travel Rule data, then this flag needs to be set to true

vasp_did
This identifies the recipient VASP (Virtual Service Asset Provider)

vasp_name
If a VASP id cannot be found, then this field can be used instead (e.g. use vasp_did OR vasp_name)
data type is a string containing the name of the VASP

dest_firstname
This field contains the beneficiaries first name; this can be a third-party, or yourself.

dest_lastname
This field contains the beneficiaries last name; this can be a third-party, or yourself.
If dest_firstnameis supplied, then also supplying dest_lastnamebecomes mandatory, and vice-versa

dest_corp_name
This field contains the beneficiary corporation, and would be used if you are withdrawing funds to a wallet or VASP account owned by a company. This could be your own company, or a third-party company.

beneficiary_self
This flag indicates that the account requesting the withdraw will also be the beneficiary.
This means that, for example, if you're withdrawing to your own account on a different exchange, you can set this flag to true as an alternative to providing dest_firstname, dest_lastname, dest_corp_name
When this flag is true, the destination name wil be extracted from your KYC data automatically.

Example payloads

Travel Rule data required: Withdrawing to your personal account on another exchange:

Amount being withdrawn does not meet the Travel Rule threshold:

Travel Rule data required: Withdrawing to your personal cold storage.

Travel Rule data required: Withdrawing to your personal account on another exchange (VASP identified by name)

Travel Rule data required: Withdrawing to a third-party persons cold wallet:

Travel Rule required: Withdrawing to a third-party corporations cold wallet:

Travel Rule required: Withdrawing to a third-party persons exchange account: