> For the complete documentation index, see [llms.txt](https://docs.beamswap.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.beamswap.io/token-distributions.md).

# Send tokens to a list

Upload or paste a recipient list, review it, and create a token claim page on Base.

Use a distribution for community rewards, an approved contributor payout or a refund list. Recipients claim their tokens from a shared page using their own wallets.

## 1. Prepare recipients

Open [Create a distribution](https://app.beamswap.io/distribute). Choose the **token contract on Base**, then download the recipient template or paste from a spreadsheet.

Use exactly two columns:

```csv
address,amount
0x1111111111111111111111111111111111111111,100
0x2222222222222222222222222222222222222222,25.5
```

**These addresses are examples. Replace both before using the list.** Amounts are readable token amounts: `25.5` means 25.5 tokens, not raw units. Use a dot for decimals, no currency symbols, thousands separators or formulas.

### Excel or Google Sheets

1. Name columns A and B `address` and `amount`. Format wallet cells as plain text.
2. Add one recipient per row. Keep decimal amounts exact and remove spreadsheet formulas before export.
3. Copy both columns and paste them into Beamswap, or export the sheet as CSV and upload it.

You can ask any AI to help format an already approved list:

> Format this list as CSV with columns address and amount. Preserve every wallet and decimal amount exactly. Flag duplicates and invalid rows separately. Do not invent wallets, combine entries, round amounts or decide who is eligible. Show the count and total for my review.

Never use an AI-generated list without checking it against your original records.

## 2. Review

The importer checks wallet addresses, duplicate recipients, positive amounts and the selected token's decimals. It reports the affected row when something needs fixing. Review the count, visible preview and exact total against your original list.

The importer accepts source files up to 4 MiB and at most 100,000 recipients. The encoded API request also has a size limit, so large lists can reach it before the row limit. Fee-on-transfer and rebasing tokens are unsupported.

## 3. Create, fund and open

1. Connect the creator wallet on Base and set a future claim deadline.
2. Review the creation payment: $50 USDC list price, less any applicable GLINT discount.
3. After creation, open **Fund and manage**. Claims start paused.
4. Review and approve the token allowance, then fund through the factory. The displayed gross amount includes the current fee so the full allocation remains available after fees.
5. Open claims only after the page's checks pass, then share the claim link.

Default funding fee: 0.1%. The factory owner can change it up to 1%; review the current fee before funding. Your wallet pays transaction gas in ETH.

## Repeat a payout

Running the same reward every month? You do not need to start from a blank page.

1. On [Create a distribution](https://app.beamswap.io/distribute), choose **Start from a previous distribution**. Sign in with your wallet (free, no transaction) to see your history. A finished distribution also has a **Repeat** action.
2. Pick the payout to repeat. Beamswap fills in the name, the token and a deadline of the same length.
3. Choose **Use the same list** or **Upload the new list**.
4. If you upload a new list, Beamswap shows **Changes from** the previous distribution: how many wallets were **Added**, **Removed**, **Changed** or **Unchanged**, the total before and after, and the difference. Open each group to see the wallets and amounts.
5. Tick **I reviewed the changes** to continue. Creation stays blocked until you do.

If you change the token, amounts are compared as raw numbers, so read the warning. Each repeat is a new distribution with its own claim page, funding and fee. Nothing is sent to recipients automatically.

## Fund from another chain

Holding the payout token on Arbitrum, Optimism or Ethereum? When you fund a distribution, the page shows **Needed on Base**, **Your Base balance** and **Still needed**. The amount includes the factory fee.

1. Under **Fund from another chain**, find the chain where you hold the token and choose **Bring to Base**.
2. Review the route, fees and the least you will receive, then sign on the source chain. The swap is routed by LI.FI, which adds its own 0.25% fee. It is shown before you sign.
3. Follow the transfer until it arrives. Bridged amounts can arrive slightly lower than sent because of route fees, so check **Still needed** again.
4. Fund the distribution with the fund button on the same page.

Bringing funds sends them to your own wallet on Base. It does not fund the payout, so funding stays a separate step you approve.

## Your history

[Activity](https://app.beamswap.io/activity) lists your **Distributions**, **Orders**, **Automations**, **Transfers** and **API receipts**. You can export each list as CSV.

## If something is uncertain

If a payment response is interrupted, do not pay again. Keep the recovery details and verify the payment/distribution outcome first. The page blocks a new payment while that outcome is unresolved.

Creators control pauses, deadlines, roots, early ending and sweeping remaining tokens. Changing the root also requires updating stored proofs; the website does not offer automatic root correction. Recipients should check the creator's terms.
