Skip to main content
1

Navigate to Airdrops

Go to Airdrops → New Campaign in the sidebar.
2

Configure the campaign

Fill in the campaign details:
  • Title: public campaign name
  • Token: BCH or a CashToken (requires the 32-byte tokenCategory hex)
  • Total amount: full pool to distribute
  • Amount per claim: how much each wallet receives per claim
  • Max claims per address: defaults to 1
  • Start / End dates: optional claim window
  • KYC restricted: enable to require a recipient whitelist
3

Generate merkle tree (KYC only)

If KYC is enabled, upload a CSV with address,amount rows. The app POSTs to POST /api/airdrops/:id/generate-merkle and stores the merkle root in the contract.
4

Fund the contract

Click Fund. The app calls GET /api/airdrops/:id/funding-info to build the funding wcTransaction. Sign in your wallet.
5

Confirm funding

After your wallet broadcasts, the app calls POST /api/airdrops/:id/confirm-funding. Once the on-chain output is verified, the campaign status changes to ACTIVE.
6

Share the claim link

Copy the auto-generated claim link from the campaign detail page and share it. Recipients visit the link and claim with a single wallet signature.

Airdrop Lifecycle

PENDING → ACTIVE → PAUSED → ACTIVE → COMPLETED / CANCELLED
The campaign becomes COMPLETED when all tokens are claimed. It moves to CANCELLED when the creator cancels and withdraws remaining funds.