Deposit through a Conduit
Users deposit base assets (e.g., USDC) and receive Conduit shares representing their proportional ownership.1
Approve the Conduit
2
Create the deposit
owner and receiver are the Conduit itself — the userAddress argument is who receives the resulting shares.output.value is a minimum enforced at the Vehicle output; 0 disables the floor. It ignores Conduit fees and the cShare exchange rate, so size expected output with estimate() instead.For sync underlying strategies, the deposit settles in the same transaction — the user receives shares immediately.For async underlying strategies, the query enters PROCESSING. A keeper will call process() automatically when the operation is ready to settle.Withdraw through a Conduit
Users burn Conduit shares and receive base assets. UsecreateRedeemFromConduitShares — it converts cShares to Vehicle shares at the current rate and builds the redeem query for you.
No
approve is required. The Conduit burns the caller’s shares internally, so withdrawals are a single transaction.createRedeemFromConduitShares is a wrapper over create: it converts the cShare amount to Vehicle shares and calls create for you. Call create with a REDEEM query directly only if you already know the Vehicle-share amount — see the Conduit reference.Automated settlement
For async operations, keepers callprocess() on your Conduit’s active queries when the underlying protocol is ready to settle. This means:
- Your platform doesn’t need to build async monitoring infrastructure
- Users never need to return to manually claim after cooldown periods
- The experience is the same for sync and async strategies from the user’s perspective
Preview operations
Useestimate() to preview deposits and withdrawals including fees before executing:
estimate() includes fees and slippage. For pure share-to-asset conversion without fees, use convert() instead.