> For the complete documentation index, see [llms.txt](https://docs.creditcoop.xyz/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.creditcoop.xyz/core-concepts/vaults/depositing-and-redeeming.md).

# Depositing & Redeeming

Lending Vaults implement **ERC-7540 asynchronous flows**: deposits and redemptions are requested first, processed by the Curator, then claimed. This matches the reality of a credit vault — capital is deployed into term positions, so liquidity is managed deliberately rather than assumed instant.

### Depositing

1. **Request.** The depositor calls `requestDeposit`, transferring assets into the vault. Pending deposits are ring-fenced: they are not part of vault assets, cannot be deployed, and earn nothing yet.
2. **Processing.** The Curator (or a vault Operator) processes the request, converting the assets to shares at the current share price. Processing enforces depositor-protective min/max share bounds, and vault fees are accrued immediately beforehand so the share price is fair to existing and new depositors alike.
3. **Claim.** The depositor claims: shares transfer to the receiver. Claims can be made in assets (`deposit`) or shares (`mint`) terms.
4. **Cancellation.** Until processed, a request can be cancelled by the depositor (or their approved operator) and the assets returned in full.

### Redeeming

1. **Request.** The depositor calls `requestRedeem`; the shares transfer to the vault and are queued.
2. **Processing.** The Curator processes the request — the vault checks it holds sufficient available liquidity, burns the shares, and ring-fences the corresponding assets. Min/max asset bounds protect the depositor, and fees accrue first.
3. **Claim.** The depositor withdraws the assets (`withdraw`/`redeem`).
4. **Cancellation.** Until processed, a redemption request can be cancelled and the shares returned.

### Share pricing

Share price = total assets / total shares, where total assets include liquid balances across the vault and both strategies **plus** deposits and interest owed on all active credit positions. Ring-fenced pending deposits and claimable redemption assets are excluded. Standard ERC-4626 `preview*` functions are intentionally disabled — pricing happens at processing time, per ERC-7540.

### Access controls

* **Whitelist.** Vaults can restrict requests and claims to whitelisted addresses (managed by the Curator; can be toggled off for permissionless vaults).
* **Operators.** A depositor can approve operator addresses to act on their behalf across the request lifecycle (ERC-7540 operator standard).
* **Pause.** Designated pausers can pause the request/claim functions in an emergency; fees are accrued at pause and the fee clock resets at unpause so no fees accrue on paused time.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

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

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.creditcoop.xyz/core-concepts/vaults/depositing-and-redeeming.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

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.
