Withdraw Workflow


Travel Rule

Bakkt adheres to FinCEN’s Travel Rule. For withdrawals equal to or exceeding $3,000, users are required to self-disclose information about the ownership of the destination wallet address. This includes if it is self-hosted, the recipient name, and the recipient VASP name. Transactions to self-hosted wallets are exempt from Travel Rule requirements.

Clients send requests to withdraw cryptocurrency from their investors' accounts to external wallets on the blockchain. See the following process to withdraw cryptocurrency from investor accounts.

  1. Begin by using the Retrieve Fee Estimates endpoint to get a fee estimate for the withdrawal. The fee estimate is valid for five minutes and determines the fee for processing and submitting the withdrawal to the blockchain.

  2. Execute the withdrawal using the Create a Withdrawal Request endpoint. Clients must use the previously retrieved fee estimate to initiate a cryptocurrency withdrawal from an investor's account to a wallet on the blockchain. The request must also contain the address of the wallet in which to deposit the cryptocurrency. If a withdrawal is equal to or exceeding $3,000:

    • Clients are required to inquire with the customer if the wallet is self-hosted; self hosted wallet transfers are exempt from the Travel rule.
    • If the wallet is not self-hosted, clients must collect:
      • The name of the wallet owner.
      • The name of the wallet’s custodian.
  3. After Bakkt processes the withdrawal, clients receive the transfer details via API or AWS SQS.

Cryptocurrency withdrawals are subject to a risk setting that limits the notional amount transferable to an external wallet at any given time. Each client has a default risk setting and can adjust it per account. For more information about risk settings, contact Bakkt Support at [email protected].

The withdrawal fee is fixed and independent of the cryptocurrency amount withdrawn. Clients can request a fee estimate for the entire cryptocurrency balance in an account using the Retrieve Fee Estimates endpoint. By subtracting the fee estimate from the total balance, clients can determine the maximum amount available for withdrawal. Bakkt allows for the estimate to slightly exceed the actual cryptocurrency amount specified in the Create a Withdrawal Request endpoint.