> For the complete documentation index, see [llms.txt](https://superbeam.gitbook.io/superbeam/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://superbeam.gitbook.io/superbeam/api-reference/editor-1.md).

# Send Superchain ERC20

Send ERC20 assets from any chains to any chains. Superbeam never asks from where do you want to send it. Optionally you can mention to chain.

The `sendERC20` function simplifies transferring assets by abstracting the complexities of cross-chain transfers. Before using it, ensure that the ERC20 asset you wish to transfer is configured properly with the same token address across all intended chains. The function takes in several parameters

```typescript
@params 
to : Address                // Recipient Address
amount : bigint             // Amount to send in bigint
tokenAddress : Address      // Token Address (Should be same across superchain)
toChainId: number           // Optional : Default toChainId is 901 (supersim 0)
```

{% hint style="info" %}
`sendERC20` only works for superchain ERC20 enabled assets. Learn how to deploy your own Superchain ERC20 asset or upgrade existing ERC20 assets [here](https://github.com/ethereum-optimism/superchainerc20-starter) . Its necessary to have same address of the ERC20 asset across different chains
{% endhint %}

### Example Usage

* Firstly, set up your sdk by intiliazing superbeam&#x20;

```typescript
import { superSDK } from 'superbeam'
import { Address } from 'viem'

const superbeam = new superSDK()  
```

* Interact with `sendERC20` with correct parameters

```typescript
const sweepERC20 = await superbeam.sendERC20(
    to: Address,
    amount: bigint,
    tokenAddress : Address,
    toChainId: number
):
```
