# deposit()

{% hint style="danger" %}
Some pools might be in deficit which might effect the ability to withdraw the full amount you have deposited ([more info](https://blog.bancor.network/market-conditions-update-june-19-2022-e5b857b39336)).
{% endhint %}

### Function **deposit()**

{% code title="BancorNetwork.sol" %}

```solidity
    function deposit(Token pool, uint256 tokenAmount)
        external
        payable
```

{% endcode %}

`deposit` is a function that allows you to deposit tokens into a Bancor liquidity pool.

### **Function Arguments**

| Name        | Type    | Description                                      |
| ----------- | ------- | ------------------------------------------------ |
| pool        | Token   | The address of the token deposited into the pool |
| tokenAmount | uint256 | The amount to deposit                            |

{% hint style="success" %}
Bancor v3 use the Token address to indicate the pool mapping. Meaning, when asked to provide a `pool` address, you can use the `token` address.
{% endhint %}

{% hint style="info" %}
All pools on Bancor are initiated with a 1:1 ratio between reserve to pool token. Once fees are collected, this ratio will change to represent the increased value of pool tokens to reserve. For example, if the ratio is 1 pool token : 2 reserve, it means that the pool token value has doubled since initiation.
{% endhint %}

### BNT Deposits

When you `deposit` BNT into the Bancor pool, you will receive vBNT equal to the number of pool tokens.&#x20;

Bancor v3 supports infinity pools and deposits as a result. However, the trading liquidity is limited based on the `poolFundingLimit()` function.

See [Errors and Troubleshooting](/developer-guides/write-functions/adding-liquidity/deposit-troubleshooting.md) for a list of common errors and how to resolve them.&#x20;


---

# 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.bancor.network/developer-guides/write-functions/adding-liquidity/deposit.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.
