# Deposits

{% hint style="warning" %}
Examples are performed with BOB on Polygon. However, **the BOB pool is now a USDC pool on Polygon**. You can also follow the instructions to deposit BOB or ETH on Optimism.
{% endhint %}

Deposits to the zkBob pool involve moving the supported token (USDC on Polygon, ETH or BOB on Optimism) from a web3 wallet address (MetaMask/WalletConnect) into a zkAccount. You can use the UI to easily connect a wallet and deposit into your zkAccount.

1\) Check your [accounts are connected](/zkbob-app/account-creation.md).

1. Web3 wallet address (MetaMask, WalletConnect)
2. zkAccount

*If you have previously setup your zkBob account using the Metamask/WalletConnect method, but the accounts are not instantly connected,* [*follow the prompts* ](/zkbob-app/account-creation.md#metamask-walletconnect-already-connected)*to reconnect your account.*

<figure><img src="/files/kHhfGzegAqVO9Oe2o2Zc" alt=""><figcaption></figcaption></figure>

2\) You should have some amount of tokens available to deposit. Enter the amount and press **Deposit**.&#x20;

{% hint style="warning" %}
Note that a 0.10 fee is added to any amount you deposit to pay the relayer fee. If you deposit 10 USDC 10 USDC is added to your zkAccount and an additional 0.10 USDC is deducted from your 0x address to pay the relayer. The total cost for this tx is 10.1 USDC.
{% endhint %}

<figure><img src="/files/c5AjLvtvTjzjJ1i2Rijn" alt=""><figcaption></figcaption></figure>

3\) A proof is generated on your local machine. Next, sign the Metamask notification to allow the contract to use your tokens, and wait for the relayer to complete the deposit.

<figure><img src="/files/E9qJxHawYOCJ36Xuhzia" alt=""><figcaption></figcaption></figure>

4\) Your deposit is complete! Once the transaction is finalized you can transfer to another zkAddress in the pool or withdraw.&#x20;

<figure><img src="/files/ShLlQx2xv7pXSdV1c6Ut" alt=""><figcaption></figcaption></figure>

5\) Return to the application. You will see the pending transaction, and can click through to view on Polygonscan.

<figure><img src="/files/EEJ6WAMgDr4dEWUCcEm4" alt=""><figcaption></figcaption></figure>

6\) View updated balances.

{% hint style="info" %}
Note: It may take several minutes to update the pool state. If your balances do not update (in the case below the MM address has not yet updated) you can refresh your wallet balances **from within the application**. This is easier than refreshing the page itself -  you will need to re-enter your password to access the app if you do a page refresh.
{% endhint %}

<figure><img src="/files/n0VFZenSOZcKxUCX9WTN" alt=""><figcaption><p><em>Before refresh</em></p></figcaption></figure>

<figure><img src="/files/CR4bQ5fLNd0FTzwcSOQz" alt=""><figcaption><p><em>After refresh</em></p></figcaption></figure>

*Tx details on Polygonscan :* [*https://polygonscan.com/tx/0xbb9330d77f8903b91cfcdab32d590a3298962a718ab4951262696f0b18d354c9*](https://polygonscan.com/tx/0xbb9330d77f8903b91cfcdab32d590a3298962a718ab4951262696f0b18d354c9)

<figure><img src="/files/2U5rVHU6XjWnpXKRzOUB" alt=""><figcaption></figcaption></figure>


---

# 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.zkbob.com/zkbob-app/deposits.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.
