# Table of Contents - [Introduction | VII Finance](#introduction-vii-finance) - [The Uniswap V4 Hook (Yield Harvesting Hook) | VII Finance](#the-uniswap-v4-hook-yield-harvesting-hook-vii-finance) - [Security | VII Finance](#security-vii-finance) - [Smart Contract Addresses | VII Finance](#smart-contract-addresses-vii-finance) - [VII Finance (Lending Protocol) | VII Finance](#vii-finance-lending-protocol-vii-finance) - [Introducing VII Finance | VII Finance](#introducing-vii-finance-vii-finance) - [VII Finance - One post | VII Finance](#vii-finance-one-post-vii-finance) - [Authors | VII Finance](#authors-vii-finance) --- # Introduction | VII Finance [Skip to main content](https://docs.vii.finance/#__docusaurus_skipToContent_fallback) 🚀 VII Finance is in Beta! Join our [Discord](https://discord.gg/WAYTNJVNRb) for early access updates. On this page What is VII Finance?[​](https://docs.vii.finance/#what-is-vii-finance "Direct link to What is VII Finance?") ------------------------------------------------------------------------------------------------------------- VII Finance is a credit-based market-making protocol. It allows users to borrow against their Uniswap V4 Liquidity Positions while earning lending interest on top of swap fees. 📺 Protocol Explainer[​](https://docs.vii.finance/#-protocol-explainer "Direct link to 📺 Protocol Explainer") --------------------------------------------------------------------------------------------------------------- Watch this video to understand how VII Finance works: We have two main systems: 1. **Uniswap V4 Hook:** We have developed a Uniswap V4 hook that allows LPs to earn lending interest on top of swap fees. * **What does this mean?** Let's compare a vanilla USDC-USDT Uniswap V4 pool with a USDC-USDT pool that has the VII Finance hook enabled. When you provide liquidity to a USDC-USDT pool with the VII Finance hook enabled, your tokens are lent to a lending protocol of your choosing. For example, if the lending protocol provides ~5% APY on your stablecoins, then on top of the swap fees you would have earned in a vanilla pool, you can earn an additional 5%. 2. **Lending Protocol that Accepts Uniswap V4 Liquidity Positions as Collateral:** * We have built on top of Euler v2, inheriting all the features that Euler vaults offer for ERC20s. You can supply and borrow as usual. In addition, you can also use Uniswap V4 Liquidity Positions as collateral to borrow funds. Let's go through an example to illustrate why this is helpful: Suppose you have 100k USDC. On VII Finance, you can borrow 2M USDC, convert 1M into USDT, and then provide liquidity to the USDC-USDT pool with the VII Finance hook enabled at a tight range. Since this Liquidity Position is accepted as collateral, your effective LTV would be 95% (safe for stable pairs). * **What does this mean?** You are now earning swap fees (estimated 5%) on your 2M USDC-USDT tight range liquidity position and lending interest (estimated 5%), while paying borrowing interest (estimated -5.5%) on the 2M USDC you have borrowed. Your effective APY on your initial 100K USDC? Approximately 90%. Who is it for?[​](https://docs.vii.finance/#who-is-it-for "Direct link to Who is it for?") ------------------------------------------------------------------------------------------- ### For Lenders[​](https://docs.vii.finance/#for-lenders "Direct link to For Lenders") #### Vanilla Lenders[​](https://docs.vii.finance/#vanilla-lenders "Direct link to Vanilla Lenders") Lenders can provide any single asset that gets borrowed against ERC20 collateral (like WETH) or Uniswap V4 Liquidity Positions (such as a position in the USDC-USDT pool). Lenders can earn the equivalent of LP yield without worrying about impermanent loss. #### Liquidity Providers[​](https://docs.vii.finance/#liquidity-providers "Direct link to Liquidity Providers") Liquidity providers can provide liquidity into pools with the VII Finance hook enabled to earn lending interest on top of swap fees. ### For Borrowers[​](https://docs.vii.finance/#for-borrowers "Direct link to For Borrowers") #### Vanilla Borrowers[​](https://docs.vii.finance/#vanilla-borrowers "Direct link to Vanilla Borrowers") Borrowers can borrow tokens (like USDC) against their collateral (like WETH) to access liquidity. They can also take out leverage to go long or short on a token, just like with any other lending protocol. #### Active LPs[​](https://docs.vii.finance/#active-lps "Direct link to Active LPs") Liquidity providers with conviction in their strategies can borrow tokens against their Liquidity Positions to double down on their strategies (all while earning lending interest on top of swap fees, of course). See here for why you would want to do this for stable pairs. For volatile pairs, you can borrow one of the tokens and keep rebalancing to hedge against impermanent loss. For example: **ETH-USDC pool:** * A user with only ETH can borrow the required USDC and provide liquidity to the ETH-USDC pool. Since Liquidity Positions are accepted as collateral, users can achieve almost 50% LTV (2x leverage). The user can keep rebalancing to ensure leverage stays at 2x and the position remains delta-neutral (we have vaults coming soon that will automate this for you). * [What is VII Finance?](https://docs.vii.finance/#what-is-vii-finance) * [📺 Protocol Explainer](https://docs.vii.finance/#-protocol-explainer) * [Who is it for?](https://docs.vii.finance/#who-is-it-for) * [For Lenders](https://docs.vii.finance/#for-lenders) * [For Borrowers](https://docs.vii.finance/#for-borrowers) --- # The Uniswap V4 Hook (Yield Harvesting Hook) | VII Finance [Skip to main content](https://docs.vii.finance/Architecture/yield-harvesting-hook#__docusaurus_skipToContent_fallback) 🚀 VII Finance is in Beta! Join our [Discord](https://discord.gg/WAYTNJVNRb) for early access updates. On this page Vault Wrappers[​](https://docs.vii.finance/Architecture/yield-harvesting-hook#vault-wrappers "Direct link to Vault Wrappers") ------------------------------------------------------------------------------------------------------------------------------ Vault wrappers are ERC4626 vaults that have a lending protocol token as the underlying asset. Vault wrapper tokens are always 1:1 with the underlying asset. When you lend to a lending protocol (x), it usually gives you xTokens as a receipt token whose value keeps increasing as interest accrues. Providing liquidity with these xTokens is not attractive because the price of xTokens keeps changing (increasing due to interest accrual) even without any swaps. Unless you rebalance every second, all of the interest gets captured by MEV bots. That is why we have developed vault wrappers. The vault wrappers take xTokens and issue VII-xTokens in return. These VII-xTokens are always issued 1:1 to the underlying asset. The interest accrual that happens in xTokens held by VII vault wrappers is distributed to Liquidity Providers by increasing the total supply and donating it to the active Liquidity Providers of the pool. This means that all existing strategies for vanilla pools work seamlessly with these pools as well. Also, Liquidity Providers don't lose their interest to MEV bots. We have developed vault wrappers for ERC4626 vaults where interest is distributed by increasing the token value, and also for aToken-like tokens where interest is distributed by increasing the user balance. Vault Wrappers Factory[​](https://docs.vii.finance/Architecture/yield-harvesting-hook#vault-wrappers-factory "Direct link to Vault Wrappers Factory") ------------------------------------------------------------------------------------------------------------------------------------------------------ Pool initialization always happens through the vault wrappers factory. For each type of vault, the vault wrappers factory deploys the vault wrappers and initializes the Uniswap V4 pool with the yield harvesting hook. Yield Harvesting Hook[​](https://docs.vii.finance/Architecture/yield-harvesting-hook#yield-harvesting-hook "Direct link to Yield Harvesting Hook") --------------------------------------------------------------------------------------------------------------------------------------------------- The yield harvesting hook keeps all of the liquidity provision accounting and swap logic the same. Only before swap, add liquidity, and remove liquidity operations, it ensures that the interest accrued so far in the vault wrappers is donated to active liquidity providers of the pool. Additionally, before initialization of the pool, it ensures that only the vault wrappers factory can initialize a pool with this hook. The advantage of harvesting before each operation is that Liquidity Providers receive the interest accrual in the form of fees, without JIT liquidity providers benefiting from it. ### The flow of what it looks like to provide liquidity[​](https://docs.vii.finance/Architecture/yield-harvesting-hook#the-flow-of-what-it-looks-like-to-provide-liquidity "Direct link to The flow of what it looks like to provide liquidity") PoolExisting LPsYield Harvesting HookPool ManagerPosition ManagerVII Wrapped xUSDCVII Wrapped xWETHVII FactoryLending Protocol XUserPoolExisting LPsYield Harvesting HookPool ManagerPosition ManagerVII Wrapped xUSDCVII Wrapped xWETHVII FactoryLending Protocol XUserUser wants to add liquidity ETH/USDC poolwhile earning interest from lending protocol xStep 1: Prepare Token A - WETH → xWETH → VII Wrapped xWETHxWETH share price = 1.1 ETH1000 WETH = 909.09 xWETH sharesWraps xWETH shares,separates principal from interestYield from xWETH shareswill be donated to poolStep 2: Prepare Token B - USDC → xUSDC → VII Wrapped xUSDCxUSDC share price = 1.5 USDC2,000,000 USDC = 1,333,333.33 xUSDC sharesWraps xUSDC shares,separates principal from interestYield from xUSDC shareswill be donated to poolStep 3: Add Liquidity to PoolStep 4: BEFORE ADD LIQUIDITY -Harvest & Distribute YieldExisting Active LPs benefit fromharvested interest yieldNew LP does NOT benefit from accrued interest(prevents JIT Liquidity attacks)alt\[If non-zero interest has accrued\]Has 1000 WETHDeposit 1000 WETHReceive 909.09 xWETH shares(worth 1000 WETH + growing interest)Deposit 909.09 xWETH sharesReceive 1000 VII-xWETH(1:1 to underlying WETH value)Has 2,000,000 USDCDeposit 2,000,000 USDCReceive 1,333,333.33 xUSDC shares(worth 2M USDC + growing interest)Deposit 1,333,333.33 xUSDC sharesReceive 2,000,000 VII-xUSDC(1:1 to underlying USDC value)addLiquidity(VII-xWETH, VII-xUSDC,amount, tickRange)modifyLiquidity(poolKey, params)beforeAddLiquidity(poolKey)pendingYield()0.1 WETH worth of interest accruedpendingYield()100 USDC worth of interest accrueddonate(VII-xWETH/VII-XUSDC 0.05% poolKey,0.01 WETH, 100 USDC)harvest(poolManager)mint 0.01 VII-xWETHequal to pendingYieldharvest(poolManager)mint 100 VII-xUSDC equal to the pendingYield and send to the PoolManager and settle the donationbeforeAddLiquidity completeAdd user's liquidity (1000 VII-xWETH, 2M VII-xUSDC)Liquidity added successfullyPosition created, Liquidity Positiion NFT received * [Vault Wrappers](https://docs.vii.finance/Architecture/yield-harvesting-hook#vault-wrappers) * [Vault Wrappers Factory](https://docs.vii.finance/Architecture/yield-harvesting-hook#vault-wrappers-factory) * [Yield Harvesting Hook](https://docs.vii.finance/Architecture/yield-harvesting-hook#yield-harvesting-hook) * [The flow of what it looks like to provide liquidity](https://docs.vii.finance/Architecture/yield-harvesting-hook#the-flow-of-what-it-looks-like-to-provide-liquidity) --- # Security | VII Finance [Skip to main content](https://docs.vii.finance/security#__docusaurus_skipToContent_fallback) 🚀 VII Finance is in Beta! Join our [Discord](https://discord.gg/WAYTNJVNRb) for early access updates. On this page VII Finance is developed with security in mind, and simplicity is the key. As a credit-based market-making protocol, VII Finance leverages Euler v2 for credit functionality and Uniswap V4 for market making. We benefit from Euler v2's superior liquidation mechanism and flexibility for lending operations. We've kept our smart contracts minimal, implementing only what is absolutely necessary. However, in DeFi, funds are only as secure as the least secure component, so we have taken extensive measures to secure our codebase. Audits[​](https://docs.vii.finance/security#audits "Direct link to Audits") ---------------------------------------------------------------------------- VII Finance contracts have undergone two extensive audits with audit providers who have experience with both Euler v2 and Uniswap V4: #### Cyfrin Audit Report Comprehensive security audit conducted by Cyfrin, covering all VII Finance smart contracts with focus on Euler v2 and Uniswap V4 integrations. 📄 View Report⬇️ Download #### 33 Audits Report Independent security assessment by 33 Audits team, providing additional security validation and recommendations. 📄 View Report⬇️ Download * [Audits](https://docs.vii.finance/security#audits) --- # Smart Contract Addresses | VII Finance [Skip to main content](https://docs.vii.finance/addresses#__docusaurus_skipToContent_fallback) 🚀 VII Finance is in Beta! Join our [Discord](https://discord.gg/WAYTNJVNRb) for early access updates. On this page Below are the deployed smart contract addresses for VII Finance protocol components. Yield Harvesting Hook[​](https://docs.vii.finance/addresses#yield-harvesting-hook "Direct link to Yield Harvesting Hook") -------------------------------------------------------------------------------------------------------------------------- | Contract | Address | | --- | --- | | YieldHarvestingHook | [`0x777ef319C338C6ffE32A2283F603db603E8F2A80`](https://uniscan.xyz/address/0x777ef319C338C6ffE32A2283F603db603E8F2A80) | Lending Protocol[​](https://docs.vii.finance/addresses#lending-protocol "Direct link to Lending Protocol") ----------------------------------------------------------------------------------------------------------- | Contract | Address | | --- | --- | | UniswapV4WrapperFactory | [`0x77779400171A3B7d4423554378D600693996a777`](https://uniscan.xyz/address/0x77779400171A3B7d4423554378D600693996a777) | * [Yield Harvesting Hook](https://docs.vii.finance/addresses#yield-harvesting-hook) * [Lending Protocol](https://docs.vii.finance/addresses#lending-protocol) --- # VII Finance (Lending Protocol) | VII Finance [Skip to main content](https://docs.vii.finance/Architecture/lending-protocol#__docusaurus_skipToContent_fallback) 🚀 VII Finance is in Beta! Join our [Discord](https://discord.gg/WAYTNJVNRb) for early access updates. On this page VII Finance extends the Euler v2 Protocol functionality to allow Uniswap Liquidity Positions to be used as collateral in any Euler vault built with the Euler Vault Kit (EVK). Euler v2 is a modular protocol. It has an Ethereum vault connector that is not opinionated and only handles authentication. On top of that, the Euler Vault Kit is built, which handles lending and borrowing of ERC20 tokens. So, on top of the Ethereum vault connector, we have built collateral-only vaults that accept Uniswap Liquidity Position NFTs as collateral. These vaults take Liquidity Positions from the user and let EVK vaults know how much they are worth. EVK vaults can then issue debt against this collateral. Before the collateral value drops below the debt, the EVK vaults ask the collateral-only vault to transfer the collateral from the violator to the liquidator. The liquidator can then extract the raw asset from the liquidity position. For any operation that reduces a user's health (removing part of the liquidity, etc.), the collateral-only vault makes sure to ask Ethereum vault connector to fail the transaction the operation if the user's position becomes underwater. Of course, these collateral-only vaults also accept liquidity positions in pools with the Yield Harvesting Hook as collateral as well. Lifecycle of borrowing against Uniswap V4 Liquidity Position NFT[​](https://docs.vii.finance/Architecture/lending-protocol#lifecycle-of-borrowing-against-uniswap-v4-liquidity-position-nft "Direct link to Lifecycle of borrowing against Uniswap V4 Liquidity Position NFT") ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- ⛶ Fixed Price OraclePriceOracle adapter that applies a fixed exchange rate.Oracle RouterDefault Oracle resolver for Euler lending productsEVCThe Ethereum Vault Connector (EVC) is a foundational layer on which Euler Vaults (ERC20s) and collateral only vaults(developed by us) sits on. It handles all of the authentication related parts of a lending protocol.Euler USDC VaultEuler Vault deployer by a curator that accept multiple ERC20s as collateral + UniswapV3Wrapper as well and allows user to borrow the underlying tokens against it.UniswapV3Wrapper WETH/USDC 0.05%EVC aware collateral only vault for Uniswap V3 liquidity positions. This contract allows EVK vaults to accept Uniswap V3 liquidity positions as collateralUniswapV3Pool WETH/USDC 0.05%In Uniswap v3, each liquidity pool was represented by a separate smart contract deployed through the Uniswapv3Factory contract. In V3 the PoolManager contract now serves as a single entry point for all liquidity pools. Instead of deploying separate contracts for each pool, the pool state and logic are encapsulated within the PoolManager itself.NFT Position ManagerWraps Uniswap V3 positions in the ERC721 non-fungible token interfaceFixed Price OraclePriceOracle adapter that applies a fixed exchange rate.Oracle RouterDefault Oracle resolver for Euler lending productsEVCThe Ethereum Vault Connector (EVC) is a foundational layer on which Euler Vaults (ERC20s) and collateral only vaults(developed by us) sits on. It handles all of the authentication related parts of a lending protocol.Euler USDC VaultEuler Vault deployer by a curator that accept multiple ERC20s as collateral + UniswapV3Wrapper as well and allows user to borrow the underlying tokens against it.UniswapV3Wrapper WETH/USDC 0.05%EVC aware collateral only vault for Uniswap V3 liquidity positions. This contract allows EVK vaults to accept Uniswap V3 liquidity positions as collateralUniswapV3Pool WETH/USDC 0.05%In Uniswap v3, each liquidity pool was represented by a separate smart contract deployed through the Uniswapv3Factory contract. In V3 the PoolManager contract now serves as a single entry point for all liquidity pools. Instead of deploying separate contracts for each pool, the pool state and logic are encapsulated within the PoolManager itself.NFT Position ManagerWraps Uniswap V3 positions in the ERC721 non-fungible token interfaceMint the tokenId representing the LP positionSupply the tokenId to be used as collateralBorrowStart the checks to make sure Alice is not underwater after borrowingAlice\`mint\` Add liquidity to a specific range using ETH and USDCView \`mint\` Add liquidity to a specific range using ETH and USDC on GitHub\`mint\` Open LP position on behalf of Alice at specified rangeView \`mint\` Open LP position on behalf of Alice at specified range on GitHubLP positionView LP position on GitHubMint an NFT representing the LP positionView Mint an NFT representing the LP position on GitHub\`wrap(tokenId)\` Supply the minted tokenId that they want to use as collateralView \`wrap(tokenId)\` Supply the minted tokenId that they want to use as collateral on GitHubMint FULL\_AMOUNT of ERC6909 tokens with tokenId representing full control of the tokenId that was just supplied (wrapped)View Mint FULL\_AMOUNT of ERC6909 tokens with tokenId representing full control of the tokenId that was just supplied (wrapped) on GitHub\`enableTokenIdAsCollateral(tokenId)\` Enable tokenId as collateralView \`enableTokenIdAsCollateral(tokenId)\` Enable tokenId as collateral on GitHubThe wrapper will now consider the value of tokenId in the balanceOf AliceView The wrapper will now consider the value of tokenId in the balanceOf Alice on GitHub\`enableCollateral(UniswapV3Wrapper address)\` Enable UniswapV3Wrapper WETH/USDC 0.05% vault as collateralView \`enableCollateral(UniswapV3Wrapper address)\` Enable UniswapV3Wrapper WETH/USDC 0.05% vault as collateral on GitHub\`borrow\` Borrow some USDCView \`borrow\` Borrow some USDC on GitHubCall through EVCThis is a modifier that executed before the borrow function call in Euler Vault to make sure the call comes from EVC on behalf of the userOptimistically asks Euler USDC vault to allow borrowing without any checksView Optimistically asks Euler USDC vault to allow borrowing without any checks on GitHub\`transfer\` Send the borrowed USDCView \`transfer\` Send the borrowed USDC on GitHub\`checkAccountStatus(account: alice, collaterals: array of enabled collateral vaults)\` Ask the Euler USDC vault to check the account status of AliceView \`checkAccountStatus(account: alice, collaterals: array of enabled collateral vaults)\` Ask the Euler USDC vault to check the account status of Alice on GitHub\`balanceOf(alice)\` Get the current balance of AliceView \`balanceOf(alice)\` Get the current balance of Alice on GitHubThe current value of each enabled tokenId in unitOfAccount termsView The current value of each enabled tokenId in unitOfAccount terms on GitHub\`getQuote\` Send the amount returned by UniswapV3Wrapper to oracle router to be converted to unitOfAccount termsView \`getQuote\` Send the amount returned by UniswapV3Wrapper to oracle router to be converted to unitOfAccount terms on GitHub\`getQuote\` Ask it to convert the amount to unitOfAccount termsView \`getQuote\` Ask it to convert the amount to unitOfAccount terms on GitHubReturn the amount 1:1View Return the amount 1:1 on GitHubReturn the amount 1:1View Return the amount 1:1 on GitHub\`checkLiquidity\` Ensure collateral value in unitOfAccount terms ≥ borrowed value (with liquidation LTV considered)View \`checkLiquidity\` Ensure collateral value in unitOfAccount terms ≥ borrowed value (with liquidation LTV considered) on GitHubFail if Alice is underwater, give all clear if Alice is notView Fail if Alice is underwater, give all clear if Alice is not on GitHubFinish the borrowing processView Finish the borrowing process on GitHubAlice * [Lifecycle of borrowing against Uniswap V4 Liquidity Position NFT](https://docs.vii.finance/Architecture/lending-protocol#lifecycle-of-borrowing-against-uniswap-v4-liquidity-position-nft) --- # Introducing VII Finance | VII Finance [Skip to main content](https://docs.vii.finance/blog/introducing-vii-finance#__docusaurus_skipToContent_fallback) 🚀 VII Finance is in Beta! Join our [Discord](https://discord.gg/WAYTNJVNRb) for early access updates. We’re excited to introduce **VII Finance**, a credit based market making protocol that unlocks a new layer of efficiency and capital productivity in DeFi. At its core, VII Finance allows users to **borrow against their Uniswap v4 liquidity positions** while continuing to earn lending interest on top of swap fees. DeFi has always been about composability, and VII Finance is built with that philosophy in mind. Instead of reinventing the wheel, we extend proven primitives, Uniswap v4 and Euler v2, with a novel design that makes liquidity positions more powerful than ever. Watch the Explainer[​](https://docs.vii.finance/blog/introducing-vii-finance#watch-the-explainer "Direct link to Watch the Explainer") --------------------------------------------------------------------------------------------------------------------------------------- How It Works[​](https://docs.vii.finance/blog/introducing-vii-finance#how-it-works "Direct link to How It Works") ------------------------------------------------------------------------------------------------------------------ VII Finance is made up of two major components: 1. **Uniswap v4 Hook for Earning Lending Interest + Swap Fees** 2. **Credit Layer for Borrowing Against Liquidity Positions** ### The Uniswap v4 Hook: Earn Lending Interest on Top of Swap Fees[​](https://docs.vii.finance/blog/introducing-vii-finance#the-uniswap-v4-hook-earn-lending-interest-on-top-of-swap-fees "Direct link to The Uniswap v4 Hook: Earn Lending Interest on Top of Swap Fees") Normally, when you deposit tokens into a lending protocol x, you receive interest bearing tokens (xTokens) whose value increases as interest accrues. A naive attempt to keep earning lending interest while providing liquidity would be to create Uniswap v4 pools using these xTokens, say, `xUSDC` and `xUSDT`. The problem is that Uniswap v4 isn’t designed for this. As the value of xUSDC and xUSDT increases, that appreciation is captured by arbitrageurs. VII Finance solves this with a **custom Uniswap v4 hook**. Instead of pairing xTokens directly, our hook introduces a vault wrapper (**VII-xToken**), which separates principal from yield. Pools are created only with the principal tokens, while yield is distributed directly to active LPs in the pool before every action (before adding or removing liquidity and before each swap). This means LPs can treat the wrapped tokens exactly like the underlying assets, without worrying about interest accrual skewing the price, while still earning lending interest on top of swap fees. Here’s a simple example of what this enables: Suppose a vanilla USDC–USDT pool earns 4% from swap fees. If a user provides liquidity to a pool with same configuration that has our hook enabled, they can earn ~5% from lending interest + 4% from swap fees. Regardless of swap volume, active LPs continue earning the ~5% lending yield. ### The Credit Layer: Borrowing Against Liquidity Positions[​](https://docs.vii.finance/blog/introducing-vii-finance#the-credit-layer-borrowing-against-liquidity-positions "Direct link to The Credit Layer: Borrowing Against Liquidity Positions") On the credit side, VII Finance is built as a **curator on Euler v2**, one of the most battle tested lending protocols in DeFi. Euler v2 provides secure lending markets, robust liquidation mechanisms, and a proven foundation for borrowing and lending. We extend Euler with a key innovation: **Uniswap v4 liquidity positions can now be used as collateral**. This unlocks an entirely new design space. For example, suppose you only have ETH. On VII Finance, you can borrow USDC against it and provide liquidity to the ETH/USDC pair at 2x leverage. There no need to loose ETH exposure by buying USDC with half of your ETH to provide liquidity. * * * Putting the Two Together[​](https://docs.vii.finance/blog/introducing-vii-finance#putting-the-two-together "Direct link to Putting the Two Together") ------------------------------------------------------------------------------------------------------------------------------------------------------ ![VII Finance Overview](https://docs.vii.finance/assets/images/blog_example-d8ae2d034a6a60b0ffb4c5b238116dc1.png) Here’s an example of what a user can do: Let’s say you have 100,000 USDC. With VII Finance, you can borrow 2M USDC, convert half to USDT, and provide liquidity to the USDC/USDT pool in a tight range using our hook. Because your LP tokens themselves are accepted as collateral, your effective Loan-to-Value (LTV) ratio is 95%, which is considered safe for stable pairs. Now, what are your returns on this position? * Swap Fees: ~5% on the 2M pool * Lending Yield: ~5% * Borrowing Cost: ~-5.5% on 2M USDC On your original 100k USDC, that’s an effective APY of roughly **90%**. This is just one example. Strategies are limited only by the creativity of DeFi users. * * * Security First[​](https://docs.vii.finance/blog/introducing-vii-finance#security-first "Direct link to Security First") ------------------------------------------------------------------------------------------------------------------------ In DeFi, security is everything. Our contracts are **immutable**, and we delegate the most critical functions to proven protocols rather than reinventing them. * **AMM**: Managed fully through Uniswap v4, with our hook ensuring yield distribution before every add/remove liquidity or swap action. * **Lending**: Powered by Euler v2, inheriting its superior liquidation and risk management systems. Still, we know systems are only as strong as their weakest link. That's why we've built an **extensive invariant test suite** and completed **two rigorous external audits**. One with [Cyfrin](https://www.cyfrin.io/) covering our core contracts and a second with [33 Audits](http://33audits.xyz/) reviewing the core contracts post mitigation in addition to the Uniswap v4 hook. The most recent audit reported **no high or medium severity issues**. For complete details on our security measures and audit reports, visit our [Security page](https://docs.vii.finance/security) . * * * What’s Next[​](https://docs.vii.finance/blog/introducing-vii-finance#whats-next "Direct link to What’s Next") -------------------------------------------------------------------------------------------------------------- We’re gearing up to launch on **Unichain**, and we can’t wait for the community to try VII Finance. This is just the beginning of a new era for credit-based market making, and we’re excited to see the creative strategies that builders, traders, and liquidity providers unlock. Stay tuned for more updates as we approach our launch! 👉 Explore our [Docs](https://docs.vii.finance/) 👉 Join the conversation on [Discord](https://discord.gg/WAYTNJVNRb) 👉 Try it out at [VII.Finance](https://vii.finance/) * [Watch the Explainer](https://docs.vii.finance/blog/introducing-vii-finance#watch-the-explainer) * [How It Works](https://docs.vii.finance/blog/introducing-vii-finance#how-it-works) * [The Uniswap v4 Hook: Earn Lending Interest on Top of Swap Fees](https://docs.vii.finance/blog/introducing-vii-finance#the-uniswap-v4-hook-earn-lending-interest-on-top-of-swap-fees) * [The Credit Layer: Borrowing Against Liquidity Positions](https://docs.vii.finance/blog/introducing-vii-finance#the-credit-layer-borrowing-against-liquidity-positions) * [Putting the Two Together](https://docs.vii.finance/blog/introducing-vii-finance#putting-the-two-together) * [Security First](https://docs.vii.finance/blog/introducing-vii-finance#security-first) * [What’s Next](https://docs.vii.finance/blog/introducing-vii-finance#whats-next) --- # VII Finance - One post | VII Finance [Skip to main content](https://docs.vii.finance/blog/authors/vii-team#__docusaurus_skipToContent_fallback) 🚀 VII Finance is in Beta! Join our [Discord](https://discord.gg/WAYTNJVNRb) for early access updates. * * * We’re excited to introduce **VII Finance**, a credit based market making protocol that unlocks a new layer of efficiency and capital productivity in DeFi. At its core, VII Finance allows users to **borrow against their Uniswap v4 liquidity positions** while continuing to earn lending interest on top of swap fees. DeFi has always been about composability, and VII Finance is built with that philosophy in mind. Instead of reinventing the wheel, we extend proven primitives, Uniswap v4 and Euler v2, with a novel design that makes liquidity positions more powerful than ever. Watch the Explainer[​](https://docs.vii.finance/blog/authors/vii-team#watch-the-explainer "Direct link to Watch the Explainer") -------------------------------------------------------------------------------------------------------------------------------- How It Works[​](https://docs.vii.finance/blog/authors/vii-team#how-it-works "Direct link to How It Works") ----------------------------------------------------------------------------------------------------------- VII Finance is made up of two major components: 1. **Uniswap v4 Hook for Earning Lending Interest + Swap Fees** 2. **Credit Layer for Borrowing Against Liquidity Positions** ### The Uniswap v4 Hook: Earn Lending Interest on Top of Swap Fees[​](https://docs.vii.finance/blog/authors/vii-team#the-uniswap-v4-hook-earn-lending-interest-on-top-of-swap-fees "Direct link to The Uniswap v4 Hook: Earn Lending Interest on Top of Swap Fees") Normally, when you deposit tokens into a lending protocol x, you receive interest bearing tokens (xTokens) whose value increases as interest accrues. A naive attempt to keep earning lending interest while providing liquidity would be to create Uniswap v4 pools using these xTokens, say, `xUSDC` and `xUSDT`. The problem is that Uniswap v4 isn’t designed for this. As the value of xUSDC and xUSDT increases, that appreciation is captured by arbitrageurs. VII Finance solves this with a **custom Uniswap v4 hook**. Instead of pairing xTokens directly, our hook introduces a vault wrapper (**VII-xToken**), which separates principal from yield. Pools are created only with the principal tokens, while yield is distributed directly to active LPs in the pool before every action (before adding or removing liquidity and before each swap). This means LPs can treat the wrapped tokens exactly like the underlying assets, without worrying about interest accrual skewing the price, while still earning lending interest on top of swap fees. Here’s a simple example of what this enables: Suppose a vanilla USDC–USDT pool earns 4% from swap fees. If a user provides liquidity to a pool with same configuration that has our hook enabled, they can earn ~5% from lending interest + 4% from swap fees. Regardless of swap volume, active LPs continue earning the ~5% lending yield. ### The Credit Layer: Borrowing Against Liquidity Positions[​](https://docs.vii.finance/blog/authors/vii-team#the-credit-layer-borrowing-against-liquidity-positions "Direct link to The Credit Layer: Borrowing Against Liquidity Positions") On the credit side, VII Finance is built as a **curator on Euler v2**, one of the most battle tested lending protocols in DeFi. Euler v2 provides secure lending markets, robust liquidation mechanisms, and a proven foundation for borrowing and lending. We extend Euler with a key innovation: **Uniswap v4 liquidity positions can now be used as collateral**. This unlocks an entirely new design space. For example, suppose you only have ETH. On VII Finance, you can borrow USDC against it and provide liquidity to the ETH/USDC pair at 2x leverage. There no need to loose ETH exposure by buying USDC with half of your ETH to provide liquidity. * * * Putting the Two Together[​](https://docs.vii.finance/blog/authors/vii-team#putting-the-two-together "Direct link to Putting the Two Together") ----------------------------------------------------------------------------------------------------------------------------------------------- ![VII Finance Overview](https://docs.vii.finance/assets/images/blog_example-d8ae2d034a6a60b0ffb4c5b238116dc1.png) Here’s an example of what a user can do: Let’s say you have 100,000 USDC. With VII Finance, you can borrow 2M USDC, convert half to USDT, and provide liquidity to the USDC/USDT pool in a tight range using our hook. Because your LP tokens themselves are accepted as collateral, your effective Loan-to-Value (LTV) ratio is 95%, which is considered safe for stable pairs. Now, what are your returns on this position? * Swap Fees: ~5% on the 2M pool * Lending Yield: ~5% * Borrowing Cost: ~-5.5% on 2M USDC On your original 100k USDC, that’s an effective APY of roughly **90%**. This is just one example. Strategies are limited only by the creativity of DeFi users. * * * Security First[​](https://docs.vii.finance/blog/authors/vii-team#security-first "Direct link to Security First") ----------------------------------------------------------------------------------------------------------------- In DeFi, security is everything. Our contracts are **immutable**, and we delegate the most critical functions to proven protocols rather than reinventing them. * **AMM**: Managed fully through Uniswap v4, with our hook ensuring yield distribution before every add/remove liquidity or swap action. * **Lending**: Powered by Euler v2, inheriting its superior liquidation and risk management systems. Still, we know systems are only as strong as their weakest link. That's why we've built an **extensive invariant test suite** and completed **two rigorous external audits**. One with [Cyfrin](https://www.cyfrin.io/) covering our core contracts and a second with [33 Audits](http://33audits.xyz/) reviewing the core contracts post mitigation in addition to the Uniswap v4 hook. The most recent audit reported **no high or medium severity issues**. For complete details on our security measures and audit reports, visit our [Security page](https://docs.vii.finance/security) . * * * What’s Next[​](https://docs.vii.finance/blog/authors/vii-team#whats-next "Direct link to What’s Next") ------------------------------------------------------------------------------------------------------- We’re gearing up to launch on **Unichain**, and we can’t wait for the community to try VII Finance. This is just the beginning of a new era for credit-based market making, and we’re excited to see the creative strategies that builders, traders, and liquidity providers unlock. Stay tuned for more updates as we approach our launch! 👉 Explore our [Docs](https://docs.vii.finance/) 👉 Join the conversation on [Discord](https://discord.gg/WAYTNJVNRb) 👉 Try it out at [VII.Finance](https://vii.finance/) --- # Authors | VII Finance [Skip to main content](https://docs.vii.finance/blog/authors#__docusaurus_skipToContent_fallback) 🚀 VII Finance is in Beta! Join our [Discord](https://discord.gg/WAYTNJVNRb) for early access updates. Authors ======= * [![VII Finance](https://docs.vii.finance/img/logo.png)](https://docs.vii.finance/blog/authors/vii-team) [VII Finance\ -----------](https://docs.vii.finance/blog/authors/vii-team) 1 core team [](https://x.com/vii_finance "X") [](https://github.com/vii-finance "GitHub") ---