zkSync Era ERC-721 Batch Sender
Free to download on every platform. Comes pre-installed on BotFone, BotPad and BotFlip — with extra free apps included.
About this app
WHAT IT DOES
This tool allows you to batch transfer multiple ERC-721 NFTs on the zkSync Era network to different recipients in a single transaction. Instead of sending one NFT per transaction, which wastes gas and time, it bundles all transfers into one contract call using the Disperse.app compatible multisend contract. You provide the NFT contract address and a list of token IDs with corresponding recipient addresses. The tool checks ownership of each NFT, handles the contract approval flow, and executes the batch transfer all at once. This is ideal for NFT creators, collectors, and marketplace operators who need to distribute multiple NFTs efficiently on zkSync Era.
HOW TO USE
Connect your EVM wallet and ensure you are on the zkSync Era network (chainId 324). Enter the address of the NFT contract, then provide a list of token IDs and recipient addresses (one per line, formatted as tokenId, 0xAddress). Click "Preview batch" to see how many NFTs will be sent, verify ownership status for each token, and check if the contract is approved for transfer. The tool displays how many NFTs you own versus how many you are trying to send. Once you confirm the details, click "Send batch" to approve the NFT contract for transfer (if needed) and execute the batch operation. The transaction status and a zkSync Era explorer link are displayed after completion.
TECHNICAL MECHANISM
This tool uses the shared BotGentz sender contract from the BULKSEND registry, looking up the zkSync Era (chainId 324) erc721 contract address. It reads the fee from the contract live each time using the fee() method, ensuring you never pay a stale fee that could cause a revert. The tool verifies ownership of every NFT before sending, checking each tokenId with the ERC-721 ownerOf() method and reporting which tokens are owned versus not owned. For approval, it uses setApprovalForAll() to grant the sender contract permission to transfer all NFTs from your wallet, but only requests approval if not already granted. The contract uses disperseNFT() which accepts parallel arrays of recipients and tokenIds, matching each NFT to its intended recipient in order. Gas costs are reported using effectiveGasPrice from the transaction receipt, giving you the actual spend after EIP-1559 compression.
WHAT IT CANNOT SEE
This tool cannot verify that the recipient addresses you provide are valid wallets capable of receiving and holding NFTs. Some recipient addresses may be smart contracts that do not implement the ERC-721 receiver interface and could reject or mishandle the transfer, causing the entire batch to fail. It cannot simulate off-chain recipient willingness to receive or guarantee delivery if a recipient contract is malicious or poorly coded. It cannot verify the authenticity or provenance of the NFTs beyond checking ownership — you are responsible for ensuring the contract address and token IDs are correct. It does not account for zkSync Era-specific gas fee structures beyond the submitted transaction — gas costs on zkSync Era can vary based on L1 data availability fees and network congestion. It cannot protect you from accidentally sending NFTs to the wrong address.
PLEASE NOTE
This tool works exclusively on EVM-compatible chains, specifically zkSync Era (chainId 324). It requires an EVM wallet bridge (injected via BGWallet) and will not function on non-EVM networks like Solana, Tron, Starknet, SUI, TON, Aptos, Bitcoin, Cosmos, or XRP. Always double-check the NFT contract address and token IDs before sending, as irreversible transactions on the blockchain cannot be undone. This tool sends ERC-721 NFTs only, not ERC-1155 or ERC-20 tokens. The fee is charged in the native token (ETH on zkSync Era) and is separate from the NFTs themselves.