# Onchain Liquidity Architecture

### Overview

To maximize the on-chain liquidity of SolvBTC, in addition to the BTC Mainnet Vault architecture, SolvBTC introduces an on-chain liquidity contract architecture.

This architecture consists of three main components: the **SolvBTC Minting Contracts** for all users, the **Whitelisted Swap Contracts** designed for liquidity and liquidation use cases, and the **Standard Redemption Contracts** for general users.

***

### Architecture and Key Flows

The on-chain liquidity architecture of SolvBTC consists of three functional paths and a unified asset custody structure: **Deposit Contracts**, **Whitelisted Swap Contracts**, **Standard Redemption Contracts**, and the **Safe Vault** as the underlying asset custody and delivery structure.

The liquidity governance framework adopts the same **Auditors** model as the SolvBTC mainnet architecture. This governance framework is used to constrain key permissions and configurations among on-chain liquidity-related contracts, and together with the Deposit Contracts, Safe Vault, and various redemption contracts, defines the complete operational boundary of the system.

***

### Deposit Contracts

Deposit Contracts are the contract structures within the SolvBTC on-chain liquidity system that handle Reserve Asset deposits and the minting of SolvBTC. They define how users introduce Reserve Assets into the system and map these deposits into mintable SolvBTC balances.

Deposit Contracts do not assume long-term custody responsibility for Reserve Assets. All Reserve Assets received through this structure are ultimately transferred to the Safe Vault for unified management.

The current Deposit Contracts structure is inherited from the original **SAL (Staking Abstraction Layer)** design and adapted to the SolvBTC asset minting logic. As SolvBTC evolves independently, this part of the contract structure is expected to be redesigned.

#### Key Components

**Market Contract**

The Market Contract defines the acceptable types of Reserve Assets and their corresponding deposit parameters, and serves as the entry contract for users initiating the deposit process.

This contract validates whether the deposited assets comply with the current market configuration and forwards valid deposit requests to subsequent contracts.

**Shares Contract**

The Shares Contract records the share representation corresponding to user deposits. During the deposit process, a user’s Reserve Asset is mapped to a corresponding amount of Shares, representing the user’s deposit rights within the system.

Shares do not directly represent transferable assets and serve only as an intermediate representation for minting SolvBTC.

**Mint Contract**

The Mint Contract completes the minting of SolvBTC based on the amount of Shares held by the user.\
It is responsible for mapping Shares to concrete SolvBTC balances and allocating the minted SolvBTC to the user’s address.

#### Flow

**Deposit Flow**

Users submit Reserve Asset deposit requests via the Market Contract. After the deposit request is validated, the system generates the corresponding Shares for the deposit, and the Mint Contract mints SolvBTC based on the number of Shares.

Once minting is completed, the corresponding Reserve Assets are transferred to the Safe Vault as system-managed reserve assets.

Deposit Contracts are only responsible for handling Reserve Asset deposits and SolvBTC minting, and do not participate in redemption, swapping, or asset custody processes.

***

### Safe Vault

The Safe Vault is an asset custody and delivery structure within the SolvBTC on-chain liquidity system. It is responsible for the aggregation, holding, and unified outward delivery of Reserve Assets within the system during redemption processes.

The Safe Vault does not exist as a single address or contract, but is composed of a set of constrained accounts and control mechanisms. Asset flows are completed through fixed connections with the redemption contract system.

#### Key Components

**Safe Wallet**

The Safe Wallet is the on-chain account within the Safe Vault that actually holds Reserve Assets. It maintains the system’s reserve asset balances and acts as the execution entity for asset transfers during redemption processes.

The account includes built-in asset transfer constraint mechanisms. All outgoing asset transfers must satisfy predefined rules and are validated before execution.

**Solv Guardian**

Solv Guardian is an asset transfer control contract framework implemented based on the built-in mechanisms of the Safe Wallet. It inspects asset transfer requests initiated by the Safe Wallet and determines whether such requests can be executed.

Solv Guardian does not perform asset relaying or routing functions, and exists solely as a control and validation module within the Safe Wallet asset transfer process.

For detailed description, please refer to [**Solv Guard**](https://docs.solv.finance/security/solv-guard)**.**

#### Flows

**Storage Flow**

After users deposit Reserve Assets and complete the minting process via the Deposit Contracts, the system transfers the corresponding Reserve Assets into the Safe Wallet as reserve assets managed by the Safe Vault.

**Redemption Flow**

In redemption scenarios, the Safe Vault transfers Reserve Assets from the Safe Wallet to redemption-related contract structures to complete different types of redemption paths.\
Asset transfer requests are validated by Solv Guardian prior to execution, and transfers are executed only if the destination contract complies with predefined rules.

Except for redemption-related contracts, the Safe Vault does not support transferring Reserve Assets to other addresses or contracts.

***

### Whitelisted Swap Contracts

Whitelisted Swap Contracts are contract structures within the SolvBTC on-chain liquidity system that support instant redemption for specific addresses. This structure defines a restricted redemption path that allows qualified callers to directly swap SolvBTC for Reserve Assets held in the Safe Vault via on-chain transactions.

Whitelisted Swap Contracts are primarily used to meet the instant redemption needs of liquidity partners. Typical scenarios include asset swap flows triggered by liquidation mechanisms in on-chain lending protocols. In this path, redemption operations are usually initiated by protocols or liquidation-related addresses rather than ordinary users.

The callable scope of Whitelisted Swap Contracts is restricted by a whitelist mechanism and is directly linked to the asset outflow process of the Safe Vault. Redemption operations are allowed only when the caller’s address satisfies the whitelist conditions.

#### Key Components

**Whitelisted Swap Contract**

The Whitelisted Swap Contract is the core contract responsible for executing instant redemption logic. It receives call requests from authorized addresses and, when conditions are met, completes the burning of SolvBTC and coordinates with the Safe Vault to deliver assets.

This contract defines the specific execution logic for the instant redemption path, including handling redemption amounts, the burning order of SolvBTC, and triggering Safe Vault asset transfers. It does not include pricing or market-making logic; redemption results are determined by predefined asset redemption relationships.

The contract itself does not hold Reserve Assets, and acts solely as an execution node in the redemption process, working directly with the Safe Vault’s asset outflow mechanism to complete delivery.

**Whitelist**

The Whitelist is an access control structure used in conjunction with the Whitelisted Swap Contract to restrict the set of addresses allowed to call it.

Addresses recorded in the whitelist typically include liquidity partners, liquidation protocols, or liquidation-related addresses. When calling the Whitelisted Swap Contract, the system performs a whitelist check on the caller’s address, and the redemption process proceeds only if the check passes.

#### Flow

**Instant Redemption Flow**

A whitelisted address calls the Whitelisted Swap Contract and submits a SolvBTC redemption request.\
After the whitelist check passes, the Whitelisted Swap Contract performs the following actions:

* Burns the corresponding amount of SolvBTC
* Triggers the asset transfer process within the Safe Vault
* Transfers the corresponding amount of Reserve Assets from the Safe Vault and delivers them to the caller

All of the above actions are completed within a single on-chain transaction.

***

### Standard Redemption Contracts

Standard Redemption Contracts are contract structures within the SolvBTC on-chain liquidity system that handle redemption requests from ordinary users. This structure defines a standardized redemption path that allows users to redeem their SolvBTC back into the corresponding underlying Reserve Assets.

Standard Redemption Contracts are open to ordinary users who minted SolvBTC using Reserve Assets and serve as the default redemption exit within the SolvBTC system.

The current Standard Redemption Contracts structure is also inherited from the original **SAL (Staking Abstraction Layer)** design and adapted to the SolvBTC asset redemption logic. As SolvBTC evolves independently, this part of the contract structure is expected to be redesigned.

#### Key Components

**Redemption Contract**

The Redemption Contract is the core contract that receives user redemption requests. It records the redemption amount submitted by the user and burns the corresponding amount of SolvBTC at the start of the redemption process.

The Redemption Contract does not directly transfer Reserve Assets to users, but instead converts redemption requests into redemption records that can be processed in subsequent steps.

**Redemption SFT**

The Redemption SFT is an intermediate credential used to represent the state of a redemption request. After a user submits a redemption request and the SolvBTC is burned, the system generates a corresponding Redemption SFT to indicate the processing status and claim eligibility of the redemption.

The Redemption SFT is not used as a transferable asset and serves only to carry state information within the redemption process.

#### Flow

**Standard Redemption Flow**

Users call the Redemption Contract to submit a SolvBTC redemption request.\
After the request is accepted, the system performs the following actions:

* Burns the SolvBTC submitted by the user
* Generates a corresponding Redemption SFT for the redemption request
* Within a predefined processing period, allocates the Reserve Assets corresponding to the Redemption SFT from the Safe Vault to the redemption contract
* After asset allocation is completed, users claim the corresponding Reserve Assets using the Redemption SFT


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.solv.finance/onchain-liquidity-architecture.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
