> ## Documentation Index
> Fetch the complete documentation index at: https://docs.li.fi/llms.txt
> Use this file to discover all available pages before exploring further.

# New Protocol Onboarding

> Why and how to get your DeFi protocol integrated with LI.FI Composer, including technical requirements.

LI.FI Composer enables users to deposit into your protocol from **any token on any EVM chain** in a single transaction. This page covers why you should integrate, the technical requirements, and how the process works.

***

## Why Integrate with Composer

### Reach users on every chain

Without Composer, users must navigate to your protocol's UI and sign multiple transactions. With Composer, users can deposit into your protocol in one click, directly from wallets, dApps, and aggregators that integrate LI.FI — including from any other EVM chain.

### Distribution through the LI.FI ecosystem

LI.FI is integrated into hundreds of wallets, dApps, and DeFi platforms. When your protocol is available via Composer, it becomes accessible through:

* **LI.FI API** — used by integrators building custom DeFi experiences
* **LI.FI SDK** — TypeScript SDK for frontend and backend applications
* **LI.FI Widget** — embeddable UI component used by wallets and dApps

### Better UX for your users

Composer transforms multi-step, multi-chain operations into a single transaction:

| Without Composer                 | With Composer    |
| -------------------------------- | ---------------- |
| Bridge assets to the right chain | One transaction  |
| Swap to the required token       | One signature    |
| Approve the token                | One click        |
| Deposit into the protocol        | Atomic execution |

### Pre-execution simulation

Every Composer transaction is simulated before execution, giving users certainty about the outcome before they sign. This reduces failed transactions and improves trust in your protocol.

***

## Technical Requirements

Your protocol must meet these requirements to be integrated.

### 1. EVM compatibility

Your protocol must be deployed on an **EVM-compatible chain**. Composer's onchain VM executes compiled bytecode on EVM chains. Non-EVM chains (Solana, SUI, etc.) are not currently supported.

### 2. Tokenised position return

Upon deposit, your protocol must return a **token** to the user's wallet. Composer routes are identified by the `toToken` parameter, which must be a valid ERC-20 token representing the user's position.

Supported token types:

| Token type            | Example                             | Protocol example         |
| --------------------- | ----------------------------------- | ------------------------ |
| ERC-4626 vault shares | Vault share tokens                  | Morpho, Euler            |
| aTokens               | Interest-bearing receipt tokens     | Aave V3                  |
| Liquid staking tokens | LSTs representing staked positions  | Lido wstETH, EtherFi     |
| Yield tokens          | Tokens representing yield positions | Pendle, Ethena sUSDe     |
| Custom receipt tokens | Protocol-specific deposit receipts  | Felix Vanilla, Neverland |

Protocols that do not return a token upon deposit are not currently supported.

### 3. Standard deposit interface

Your deposit function should accept standard parameters that Composer's eDSL compiler can encode. Common patterns include:

* **ERC-4626 `deposit(uint256 assets, address receiver)`** — standard vault interface
* **Aave-style `supply(address asset, uint256 amount, address onBehalfOf, uint16 referralCode)`** — lending pool interface
* **Staking `stake(uint256 amount)`** or `wrap(uint256 amount)` — staking/wrapping interface

Composer passes values between steps at runtime: the VM encodes each call's calldata as it executes, so the exact deposit amount is determined from the output of preceding swap/bridge steps rather than pre-computed off-chain. Your deposit function must accept a standard amount parameter. The LI.FI team will work with you to confirm compatibility.

### Deposit vs. withdraw support

Composer supports two action types per protocol:

| Action       | Description                                            | Required?     |
| ------------ | ------------------------------------------------------ | ------------- |
| **Deposit**  | User sends tokens, receives position tokens            | Yes (minimum) |
| **Withdraw** | User sends position tokens, receives underlying tokens | Optional      |

Some protocols are integrated with **deposit only** (e.g., Kinetiq, Ethena, Maple). This is acceptable, and withdraw support can be added later.

***

## Currently Integrated Protocols

Dozens of protocols are already integrated with Composer, spanning lending, liquid staking, yield, and vault strategies.

<Card title="Supported Protocols" icon="list" href="/composer/protocols-and-chains">
  View the full list of integrated protocols, supported actions, and example
  token addresses.
</Card>

***

## After Integration

Once live, your protocol is accessible via:

```bash theme={"system"}
# Users can deposit from any token on any EVM chain
curl -X GET 'https://li.quest/v1/quote?fromChain=SOURCE_CHAIN_ID&toChain=YOUR_PROTOCOL_CHAIN_ID&fromToken=ANY_TOKEN_ADDRESS&toToken=YOUR_VAULT_TOKEN_ADDRESS&fromAddress=0xUSER_WALLET&toAddress=0xUSER_WALLET&fromAmount=AMOUNT'
```

Your protocol is automatically available to:

* **All LI.FI API integrators** — your vault/staking tokens appear as valid `toToken` destinations
* **All LI.FI Widget deployments** — users can select your protocol's tokens as destinations
* **All LI.FI SDK users** — developers can build custom flows targeting your protocol

LI.FI handles routing, bridging, swapping, and deposit execution. No additional work is required from your side after integration.

***

## Getting Integrated

Integrations are handled by the LI.FI team, who can collaborate with you directly on the integration.

<Card title="Apply for Composer Integration" icon="file-lines" href="https://forms.gle/h1d265zuSWfQ3jsq9">
  Fill out the protocol integration form to start the process.
</Card>

You can also reach out directly:

* **Partnerships** — [marketing@li.finance](mailto:marketing@li.finance)
* **Technical questions** — [support@li.fi](mailto:support@li.fi)

***

## Next Steps

<CardGroup cols={2}>
  <Card title="Composer Overview" icon="wand-magic-sparkles" href="/composer/overview">
    Learn how Composer works
  </Card>

  <Card title="Supported Protocols" icon="list" href="/composer/protocols-and-chains">
    Currently integrated protocols
  </Card>

  <Card title="Limitations" icon="circle-info" href="/composer/lifi-api/reference/limitations">
    Current constraints and supported chains
  </Card>

  <Card title="How It Works" icon="diagram-project" href="/composer/composer-101">
    Architecture deep-dive
  </Card>
</CardGroup>
