# Transfers

{% 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 %}

Transfers are made within the zkpool between zkAccounts. You do not transfer to an 0x account, but rather to another zkAccount holder's generated receiving address. Typically, the receiver will send you a [generated receiving address](https://docs.zkbob.com/zkbob-app/generate-a-secure-address) via a private channel, invoice, or some other private method.&#x20;

This also means you do not need to connect MetaMask, WalletConnect or any other web3 wallet. Transfers occur within the application with no need for outside wallet connections.

zkAccount addresses are not fixed. You can generate a new address for each incoming transaction. **It is not possible to link different private addresses to one another or to the primary account.** Only the account owner can confirm ownership of a private address.

Each created address is encoded in base58 format. For example `5fkW3dXTvA8Kizt1EbuRyjWofuqR4Ud1YTjGgY1r8nGosDeSaUreq6bwfF61jWL`

Any previously generated address can be used indefinitely, so if you send an address to one party and then generate a new address to send to another party, both can be used to receive token transfers.

See [Receiving a Transfer](#receiving-a-transfer) for instructions on generating a zkAccount address.

Interested in sending to multiple zkAddresses with 1 tx? Try the [Multitransfer feature](https://docs.zkbob.com/zkbob-app/transfers/multitransfers).

{% hint style="info" %}
The minimum transfer amount is 0.05 BOB. A 0.10 fee is added to each transfer.
{% endhint %}

## Sending a Transfer

1\) Check your zkAccount is connected (you will see zk*AccountName* and an amount of BOB/USDC/ETH if it is connected). Since you will not be depositing funds, it is your choice whether or not to connect your MetaMask/WalletConnect wallet.

<figure><img src="https://283693977-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MjSwkv4zokqCUebt-98%2Fuploads%2F82VayFJbizKDbO3mspFT%2Ftrans-1.png?alt=media&#x26;token=785641fa-e14d-4021-ae71-46af4bb5ef7a" alt=""><figcaption></figcaption></figure>

2\) Enter information and initiate the transfer.

1. Amount to transfer.
2. Receiver's zkAddress.
3. Press **Transfer.**

{% hint style="info" %}
Receiver should send you a generated address from the application *\<see* [*Receiving a Transfer*](#receiving-a-transfer)*>*
{% endhint %}

<figure><img src="https://283693977-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MjSwkv4zokqCUebt-98%2Fuploads%2FS6ZmnlLh98bbPuVnV6C2%2Ftrans-2.png?alt=media&#x26;token=06a755fe-8d11-4004-94a3-08c4c9a4eb52" alt=""><figcaption></figcaption></figure>

3\) **Confirm** transfer details.

<figure><img src="https://283693977-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MjSwkv4zokqCUebt-98%2Fuploads%2Fas6DgkwgbwU7B1LVOwmS%2Ftrans-confirm.png?alt=media&#x26;token=3f24d684-d07f-4010-9270-5e460049db75" alt=""><figcaption></figcaption></figure>

4\) Wait for proof generation and transfer completion. Transfers cost 0.10 BOB per transfer.

{% hint style="warning" %}
Do not refresh during the transfer process. This typically takes less than 1 minute but can be longer during times of high network congestion.
{% endhint %}

![](https://283693977-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MjSwkv4zokqCUebt-98%2Fuploads%2Fz4frjjnRE8aqPp2Ps3yf%2Fproof.png?alt=media\&token=4b290086-897b-4d64-bb58-7845b8cfcf35)

![](https://283693977-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MjSwkv4zokqCUebt-98%2Fuploads%2FRUtpUvz7JjqgNBHYGvub%2Ftrans-completed.png?alt=media\&token=85ed2c97-87e7-40c7-8a17-3d23959602ce)

Once completed you will see the latest transfer in the app. You can also check the History tab to see transfer details. Click the transaction hash to view the private tx in Polyscan.

<figure><img src="https://283693977-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MjSwkv4zokqCUebt-98%2Fuploads%2F0WblZqacQeAkT2Sw1QoQ%2Ftrans-end.png?alt=media&#x26;token=0228d25f-b37b-4e86-a697-226ffba6d169" alt=""><figcaption><p>Latest transfer</p></figcaption></figure>

<figure><img src="https://283693977-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MjSwkv4zokqCUebt-98%2Fuploads%2FSLhzQizxdPAlbS70X446%2Fhistory.png?alt=media&#x26;token=ba9754f3-7050-4b57-b533-6c7b9ec69913" alt=""><figcaption></figcaption></figure>

Tx details in Polyscan: [0xca5f18509ae64f4e24def56453afbce8edb86ff2f4146bbe5db1205002ed785a](https://polygonscan.com/tx/0xca5f18509ae64f4e24def56453afbce8edb86ff2f4146bbe5db1205002ed785a)

<figure><img src="https://283693977-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MjSwkv4zokqCUebt-98%2Fuploads%2FLi2swmkVZpoZaQ7xc1hl%2Fpolyscan-deposit.png?alt=media&#x26;token=c601ae7a-454a-4b15-ad7c-e90922ea9977" alt=""><figcaption></figcaption></figure>

## Receiving a Transfer

Generate and send a zkAddress to the sender to receive a shielded transfer.

1\) Press the zkAccount button.

<figure><img src="https://283693977-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MjSwkv4zokqCUebt-98%2Fuploads%2F82VayFJbizKDbO3mspFT%2Ftrans-1.png?alt=media&#x26;token=785641fa-e14d-4021-ae71-46af4bb5ef7a" alt=""><figcaption></figcaption></figure>

2\) Press **Generate receiving address**.

<figure><img src="https://283693977-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MjSwkv4zokqCUebt-98%2Fuploads%2F51mXuwxIOQecDIeQhOcC%2Fgenerate.png?alt=media&#x26;token=5d2191b8-23c8-4c96-ab5e-53018ccf2aaa" alt=""><figcaption></figcaption></figure>

3\) Copy generated address and send to your friend via a private channel of your choice.

<figure><img src="https://283693977-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MjSwkv4zokqCUebt-98%2Fuploads%2FT7esvFqKPhF9qOjqIj3S%2Fgenerate-copy.png?alt=media&#x26;token=9a77ae2d-aca0-48af-b900-5e828a8b2f15" alt=""><figcaption></figcaption></figure>

4\) Wait for receipt. If your zkBob application remains open, you can refresh using the refresh button next to your zk account. If you refresh the browser itself, you will need to re-enter your password.

Once received, check the history tab to see the transaction, and press the tx hash for more details.
