EVM Withdraw

Queue withdrawal of vault shares from DeFi protocols.


Overview

The EVM Withdraw action queues a withdrawal of vault shares from DeFi protocols (currently Veda vaults). Unlike immediate redemptions, withdrawals enter a queue and are processed according to the protocol's withdrawal schedule.

Flow: LBTCv (Vault Shares) → Queued Withdrawal → LBTC

Supported Chains: Ethereum, Base, BSC, Corn (production only)

Note: This action queues a withdrawal request. The protocol processes queued withdrawals on its own schedule—this is not an instant operation.


Queue Behavior

Important: Only one withdrawal request can be active at a time per address. Submitting a new withdrawal request replaces the existing one—amounts are updated, not added.

If you need to withdraw additional shares while a request is pending:

  1. Submit a new withdrawal for the total amount desired

  2. The new request replaces the previous one

  3. The 14-day queue timer resets

To check for existing pending withdrawals before creating a new request, use sdk.api.vaultWithdrawals(address).


Basic Usage


Parameters

Withdraw Options

Parameter
Type
Required
Description

sourceChain

Chain

Yes

EVM chain where vault shares are held

protocol

DeployProtocol

Yes

DeFi protocol (currently 'veda')

recipient

string

Yes

Address to receive withdrawn assets

Prepare Parameters

Parameter
Type
Required
Description

amount

string

Yes

Amount of vault shares to withdraw

Important: Minimum withdrawal amount is 0.00010001 vault shares.


Status Flow

The action may skip NEEDS_APPROVAL if the withdraw queue contract already has sufficient allowance.

Status
Description

IDLE

Initial state, ready for prepare

NEEDS_APPROVAL

Vault shares require approval for withdraw queue contract

READY

Approved and ready to queue withdrawal

COMPLETED

Withdrawal successfully queued


Checking Approval Status

After calling prepare(), check the needsApproval property to determine the next step:


Events


Error Handling

Common errors when withdrawing:

Error Code
Description

INSUFFICIENT_SHARES

Requested amount exceeds available vault shares

PROTOCOL_NOT_SUPPORTED

Protocol not available on the specified chain

PROVIDER_MISSING

EVM wallet provider not connected


Viewing Pending Withdrawals

To view queued withdrawals, use the vault withdrawals data API:

Last updated