> For the complete documentation index, see [llms.txt](https://docs.efficientdex.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.efficientdex.com/use-efficient/provide-liquidity.md).

# Provide liquidity

How depositors enter and exit an Efficient pool: in proportion, with one asset, or by request on the entry market, and what can stop each.

**Depositors in an Efficient pool hold its shares.** Each share is a proportional claim on the whole book. Shares are valued in the pool asset, net of any debt. Fees, inventory, interest and debt [move value per share](/use-efficient/provide-liquidity/understanding-returns.md).

Shares are ERC-20 tokens, so a depositor can also sell or transfer them without exiting the pool. Depositors in Everlong vaults start at [Everlong](https://docs.foreverlong.io/everlong). The Everlong app offers the asset router as Instant and the entry market as Delayed.

Each pool trades its pool asset against a loan asset: the other token in its pair, which the pool can borrow. In an Efficient pool that trades BTC against USDC, with shares valued in BTC, the loan asset is USDC. Any extra token the pool can borrow is a loan asset too.

{% hint style="info" %}
[Pool operators](/use-efficient/provide-liquidity/pool-operators.md) lists the reads to run on a pool before a deposit. [Risks and safeguards](/use-efficient/risks-and-safeguards.md) covers the risks every pool shares.
{% endhint %}

## Three routes in and out

**Every route that settles through the pool builds on the pool's two proportional calls, `depositProRata` and `redeemProRata`.** The proportional route also has `mintProRata`. It's a share-sized entry for a book that owes nothing. Neither the asset router nor the entry market calls it.

| Route        | Contract         | What the depositor handles                                    | When it settles                                 |
| ------------ | ---------------- | ------------------------------------------------------------- | ----------------------------------------------- |
| Proportional | The pool         | The pool asset, plus the shares' net slice of each loan asset | In one transaction                              |
| Single asset | The asset router | The pool asset or the first loan asset, alone                 | In one transaction                              |
| By request   | The entry market | The pool asset to enter, or shares to exit                    | When someone settles the request, before expiry |

The asset router and the entry market are each deployed for one pool. Not every pool has them. [Deposits and exits for apps](/integrate/deposits-and-exits-for-apps.md) gives the calls. [Tranches](/use-efficient/provide-liquidity/tranches.md) covers senior and junior claims on a pool's shares.

## Proportional entry and exit

**A proportional deposit or exit moves the same fraction of every part of the book.** So it takes no value from depositors who stay.

A deposit borrows the new shares' slice of each lending market's debt. It also adds their slice of what the pool has supplied, and of the loan asset on hand. The pool then settles the net of each loan asset with the depositor. The depositor receives it where the book owes more than it holds, and pays it otherwise.

`mintProRata` makes the same entry, sized in shares. It works only for a book that owes nothing, so it never borrows. Its cap on the share supply is zero at creation, so it stays closed until the pool operator raises the cap.

An exit collects the shares' slice of any net debt from the depositor in the loan asset. It repays that slice and pays the rest in kind. The depositor ends with the net value of the redeemed shares.

No pause, lockup or holding period stops an exit. In a pool with a lending market, that market can still make an exit [wait](#what-can-stop-a-deposit-or-an-exit). [The pool and its book](/how-pools-work/the-pool-and-its-book.md) works through an entry and an exit on an example book.

## Single-asset deposits and exits

**The asset router lets a depositor enter or exit with only one of the pool's two assets.** It needs a pool with one loan asset. It makes the same proportional deposit or exit, converting through a DEX aggregator bound to the pool. Each conversion uses only DEX routers the pool operator whitelists.

On an exit, the depositor fronts any debt slice in either asset and picks either asset for the payout.

A conversion's [cost](/use-efficient/fees.md#costs-of-entering-and-exiting) falls on the depositor who converts, not on depositors who stay. It's at most 1% of the amount converted at the feed price.

## The entry market: intents for shares

**The entry market takes deposit and exit requests that work like limit orders.** So a depositor sets the worst price they accept. A request escrows only the pool asset or the shares, even when the pool has debt.

Each request sets a minimum output and a maximum discount to value per share. The discount grows from zero over a ramp the requester chooses.

Every settlement pays at least the minimum, and at least value per share less the discount reached. Any maker's edge or [conversion cost](/use-efficient/fees.md#costs-of-entering-and-exiting) comes out of that discount.

Requests settle in three ways:

* by netting, at no discount
* by a maker's fill from inventory
* through the pool, in a pool with one loan asset

Netting and a maker's fill move existing shares. So the pool's pause, financing and lending-market caps don't apply to them. To settle through the pool, a maker fronts the loan asset, or anyone calls the crank. The crank converts through the pool's DEX aggregator.

A request fills only when someone settles it, so no time to a fill is guaranteed. It can settle in parts and expires within 30 days. Its requester can cancel it at any time to get the escrow back.

## The deposit allowlist

**A pool's deposit allowlist decides who can receive shares from a deposit.** It never applies to an exit or a share transfer. While the pool operator has it switched on, only listed addresses can receive those shares. While it's off, anyone can.

Each pool binds its allowlist contract at creation. A pool bound to none admits every depositor. The entry market checks a deposit requester when the request is posted, and again when it settles.

## What can stop a deposit or an exit

**No pause, feature switch, allowlist or price check stops a proportional exit.** Neither does a pause of the financing router.

A deposit through the pool reverts when:

* the pool is paused, deposits are switched off, or the allowlist refuses the receiver
* it would pass a supply cap, set per lending-market position, per loan asset across positions, or by the lending market itself
* it fails the [credit check](/how-pools-work/credit-and-collateral.md#the-credit-check), or its borrow leg breaks a [borrowing limit](/how-pools-work/credit-and-collateral.md#limits-on-new-borrowing), including the lending market's free cash
* the financing router is paused and the deposit borrows or supplies
* it borrows a loan asset that has no checked feed price or is off its peg
* a performance or protocol fee rate is on, and a loan asset the pool holds or owes has no checked feed price
* a `mintProRata` entry finds debt on the book, or would lift the share supply past `mintProRataCap`

The pool sets no cap on `depositProRata`. So only the caps and limits on its lending-market positions bound that entry's size.

An exit through the pool reverts when it fails its [ratio test](/how-pools-work/credit-and-collateral.md#deposits-buys-and-exits). In a pool with a lending market, an exit also has to wait when:

* a lending market lacks the free cash to return the shares' slice of supply
* a lending market refuses a repayment, where its venue type can refuse actions
* a position with debt is past its liquidation LTV or its market oracle can't be read, unless the exit clears that whole debt
* a lending market that can't be read refuses every action, which stops deposits too

Morpho Blue is the only venue type in the code. It refuses no action and never becomes unreadable, because every admitted market's rate model answers each read.

Conversions also need a checked feed price. So does every entry-market settlement, including netting and a maker's fill, because each reads value per share. That read reverts while a loan asset the pool holds or owes has no checked feed price. A pool with no price band reads no price. So its entry market settles no request while the pool holds any loan asset.

The entry market's pause stops only new requests, never settlement. Cancellation works regardless of the pause or the price. [Roles and governance](/run-a-pool/roles-and-governance.md) covers who can pause and tighten each limit.
