Disperse Native ETH logo

Catalog action EVM Onchain wallet Gas disperse

Batch send native ETH to multiple wallet addresses with source wallet privacy. Your funding wallet is unlinked from recipients - AnySpend's global address breaks the on-chain connection. Note: Recipients in the same batch ARE linked to each other (same disperse transaction). Use cases: (1) Private gas funding - fund wallets without revealing your source wallet, (2) Team wallet funding - distribute operational ETH to team member wallets, (3) Bot wallet refills - refuel trading bots without linking to your main wallet, (4) ETH airdrops - send ETH rewards to multiple community members atomically. Supports cross-chain: pay with any token on any chain, receive ETH on destination chain.

This action can require a wallet connector, gas, token movement, or an external side effect. Test with simulation or a controlled amount before using it in a live workflow.

At a Glance

FieldValue
Action IDanyspend-disperse-native-token
CategoryEVM Onchain
Connectorwallet
Requires gasYes
Funds movementdisperse
Tagsanyspend, disperse, gas-funding, private-funding, batch-transfer, multi-send, eth, native-token, airdrop, distribution, gas-refill, wallet-funding

Payload Schema

FieldTypeRequiredDescription
srcChainIdnumberYesSource chain ID where your funds are located. If different from dstChainId, AnySpend will handle the cross-chain transfer.
srcTokenAddressstringYesToken address to send from source chain. Use '0x0000000000000000000000000000000000000000' for native ETH, or any ERC20 token address (e.g., USDC). AnySpend will swap to native ETH on destination.
dstChainIdnumberYesDestination chain ID where ETH will be dispersed. Must have Disperse contract deployed. Currently supports Base (8453).
recipientsarrayYesArray of wallet addresses to receive ETH. Each address will receive the corresponding amount from the amounts array. Addresses must be valid Ethereum addresses (0x + 40 hex chars). Example: ['0x1234...', '0x5678...'] for funding two wallets.
amountsarrayYesArray of ETH amounts to send to each recipient, specified in wei (1 ETH = 10^18 wei). Must have the same length as recipients array. Each amount corresponds to the recipient at the same index. Examples: '10000000000000000' = 0.01 ETH, '100000000000000000' = 0.1 ETH, '1000000000000000000' = 1 ETH. For gas funding, typical amounts are 0.001-0.01 ETH per wallet.
partnerIdstringNoOptional partner ID for AnySpend attribution and analytics tracking.
clientReferenceIdstringNoOptional client reference ID for your own tracking purposes. Useful for correlating with internal systems.

Result Schema

FieldTypeRequiredDescription
successbooleanYesWhether the disperse operation completed successfully. True means all recipients received their ETH.
orderobjectNoThe AnySpend order that processed the disperse. Contains tracking information.
disperseDetailsobjectNoDetails about the disperse distribution.
transactionobjectNoDetails of the funding transaction from user wallet to AnySpend.
messagestringNoHuman-readable status message describing the outcome.

Examples

json
{ "type": "anyspend-disperse-native-token", "payload": { "srcChainId": 8453, "srcTokenAddress": "0x0000000000000000000000000000000000000000", "dstChainId": 8453, "recipients": "0x0000000000000000000000000000000000000000", "amounts": "1000000" }, "children": [], "connector": { "type": "wallet", "id": "conn_wallet" }}

Payload fields can use workflow expressions such as {{$trigger.body.amount}}, {{$nodes.fetch.result.price}}, and {{$props.asset}} when the value should come from a trigger, prior node, or reusable workflow prop.

Ask a question... ⌘I