Smart Contract Architecture
Security is a core attribute. NUVA leverages the highest standards, leveraging industry best practices and undergoing rigorous audits by leading security firms.
How the vault contract receives, holds, and manages deposits
Deposit flow
When a user deposits USDC into a vault:
User approves the vault contract to spend their USDC
User initiates a deposit transaction specifying the amount and vault
The vault contract receives the USDC and verifies the transaction
The vault contract records the deposit and calculates the vault token amount to mint
Vault tokens are minted and transferred to the user's wallet
Asset holding mechanis
The vault contract holds all deposited USDC in its own smart contract address on Ethereum Mainnet. The contract maintains an internal ledger tracking:
Total USDC deposited
USDC allocated to underlying assets (e.g., YLDS or HELOC tokens)
Total vault token supply
User balances (tracked by ERC-20 standard
Management and rebalancing
The vault contract includes administrative functions for:
Rebalancing vault allocations between assets
Processing yield distributions
Managing vault parameters (fees, limits, etc.)
Administrative functions are controlled by authorized multisig wallets to prevent single-point-of-failure vulnerabilities.
Vault token minting mechanics (ERC-20 standard)
Minting process
When USDC is deposited, vault tokens are minted according to the formula:
Vault Tokens Minted = (USDC Deposited / Vault Token Price)
The vault token price is calculated as:
Vault Token Price = Total Underlying Assets / Total Vault Tokens Outstanding
Initial vault token price
When a vault is first created, the initial vault token price is set to $1. Early depositors receive vault tokens at a 1:1 ratio with USDC deposited.
Token price appreciation with yield
As yield accrues in the vault, the total underlying assets increase. Since the vault token supply remains constant (no new tokens are minted), the price per vault token increases. This is how yield is reflected in vault token appreciation.
Example of token price appreciation
User deposits $10,000 USDC into nuYLDS
Receives 10,000 nuYLDS tokens (at $1 price)
After one year with 4% yield, vault has $10,400
If total vault supply is still 10,000 tokens, new price = $1.04
User's 10,000 tokens are now worth $10,400
User earned $400 in yield without receiving new tokens
ERC-20 compliance
Vault tokens follow the ERC-20 standard, which means:
They can be transferred between wallets
They can be traded on DEXs
They are compatible with all Ethereum wallets
Standard token functions (transfer, approve, balanceOf) apply
How yield accrues and compounds on-chain
Continuous accrual mechanism
Yield is accrued continuously as underlying assets generate returns. The vault contract tracks yield in real-time:
Underlying assets (YLDS, HELOC tokens) generate yield
Yield is paid into the vault contract
Total vault assets increase
Vault token price increases (without minting new tokens)
Compounding mechanics
Yield compounds automatically because:
As vault assets increase, the vault token price increases
The higher token price means subsequent yield is earned on a larger base
This creates compounding returns without additional user action
Example of compounding (1 year, $100k initial deposit):
Strategy
Final amount
Extra earned
6% simple interest
$106,000
—
6% compounded monthly
$106,168
+$168
6% compounded continuously
$106,184
+$184
On-chain verification
All yield accrual is recorded on-chain and verifiable. You can:
Check the vault contract on Etherscan to see total assets
Divide total assets by vault token supply to calculate current token price
Track yield accumulation over time by monitoring price changes
Withdrawal execution and settlement
Withdrawal request initiation
When a user requests to withdraw vault tokens:
User specifies the amount of vault tokens to withdraw
User selects withdrawal type (if applicable)
Contract calculates USDC amount owed:
USDC Owed = Vault Tokens * Current Token PriceUser confirms the transaction
Settlement process
USDC settlement times vary by vault. nuYLDS withdrawals settle within minutes to 2 U.S. business days, while nuHELOC withdrawals settle within minutes to 5 U.S. business days. Once your withdrawal is processed, USDC is transferred to your wallet.
Liquidity management for withdrawals
The vault maintains sufficient liquidity to process withdrawals:
For YLDS (highly liquid): instant withdrawals possible anytime
For HELOC loans (less liquid): standard redemptions take longer as assets are liquidated
Settlement confirmation
Once settlement completes, the transaction is recorded on-chain:
Vault tokens are burned (removed from supply)
USDC is transferred to user's wallet
Vault record is updated reflecting the reduced asset base
Contract addresses (Ethereum mainnet)
[Contract addresses to be added for:]
nuYLDS vault contract
nuHELOC vault contract
Future vaults