This app runs inside the BotSurf browser. Don't have it yet? Get the app or extension now!

Cross-L2 NFT Batch Sender Across Arbitrum, Base, Optimism

NFTs · All
0 installs · Verified BotGentz app
Launch App
Opens in BotSurf — nothing to install.
CategoryNFTs
PlatformAll
Pricing Free
Installs0
Download BotSurf to use — free
No account needed for free apps. Once BotSurf is open, find this app in Apps from the + menu.

About this app

WHAT IT DOES

Cross-L2 NFT Batch Sender enables you to transfer multiple ERC-721 NFTs from a single collection to different recipients on Arbitrum, Base, or Optimism in one atomic blockchain transaction. Instead of submitting individual transfer transactions and paying gas for each, this tool batches all transfers into a single call to a verified multi-send contract. It reads the NFT contract, verifies ownership of every token ID against your connected wallet, fetches the current protocol fee, and presents a detailed review before you sign. The contract transfers each NFT to its designated recipient in one operation—either the entire batch succeeds or the whole transaction reverts, ensuring no partial sends. This saves gas, reduces wallet signing fatigue, and simplifies bulk NFT distribution for airdrops, giveaways, collection management, or any scenario requiring efficient ERC-721 transfers across the three major L2s. The tool automatically detects which chain you are on and uses the corresponding BotGentz sender contract.

HOW TO USE

Connect your EVM wallet (any wallet supporting Arbitrum, Base, or Optimism via the BotGentz bridge). Enter the ERC-721 contract address of the NFT collection you want to send from—this field is editable; the tool never hardcodes any collection. In the recipients text area, paste one recipient address and token ID per line, separated by a comma (e.g., 0x111...,42). Token IDs must be integers (e.g., 1, 2, 100). The tool automatically checks ownership of each token ID against your wallet and displays a pass/fail status for every token. The review card then shows the NFT collection name and symbol, recipient count, sender contract address, the live protocol fee (fetched from the contract in the chain's native gas token), the contract owner, and a clear ownership verification result. If all tokens are owned by you and the contract is approved (or approval is needed), the Send button becomes active. If the contract is not yet approved to transfer your NFTs on your behalf, clicking Send will first trigger a setApprovalForAll approval transaction for the exact sender contract. After approval, you sign the batch send transaction. A progress bar tracks submission and confirmation, and you receive a link to the transaction on the appropriate block explorer (Arbiscan, Basescan, or Optimistic Etherscan).

TECHNICAL MECHANISM

This tool uses the BotGentz shared bulk-send registry (BULKSEND) which maps each supported chain and ERC standard to a verified multi-send contract address. For Arbitrum (chainId 42161), Base (chainId 8453), and Optimism (chainId 10), the registry provides the ERC-721 sender address. The contract exposes fee() and owner() view functions—both read live at every use to avoid stale values. The sendERC721 function accepts the NFT contract address, an array of recipient addresses, an array of token IDs, and a feeAmount which must be paid as native gas token value alongside the call. Before sending, the tool performs two critical checks: (1) ownership verification—calling ownerOf(tokenId) for each token to confirm your wallet owns every NFT; (2) allowance verification—calling isApprovedForAll(yourAddress, senderAddress) to check if the sender contract has permission. If approval is missing, the tool initiates a setApprovalForAll transaction for the exact sender contract address only—not to a generic operator. Once approved, it invokes sendERC721 with the fee attached as msg.value. The transaction reverts if any token is not owned by you, if the fee is underpaid, if any recipient address is invalid, or if the receiving contract rejects the transfer. All transfers happen atomically within one contract call. The tool is chain-aware and uses the correct sender contract for the chain you are currently connected to.

WHAT IT CANNOT SEE

This tool cannot send across chains in one transaction—each batch send is limited to the chain the wallet is currently connected to. It is limited to ERC-721 NFTs on Arbitrum, Base, and Optimism only. It cannot send tokens you do not own; ownership is verified per token before sending. It cannot detect token approval status for non-standard ERC-721 implementations that deviate from the standard (e.g., some older or modified contracts may not support isApprovedForAll or may require per-token approvals). It cannot send to contracts that reject ERC-721 transfers or implement custom receive logic that reverts. The tool does not validate that recipients are EOAs rather than contracts—contract recipients may accept or reject transfers based on their implementation. It does not compute gas costs beyond the protocol fee; gas estimation is handled by the wallet at signature time. It does not scan transaction history or logs—it only reads current ownership and approval state. This tool is not a cross-chain bridge; it operates per-chain only.

PLEASE NOTE

This tool only works on Arbitrum (chainId 42161), Base (chainId 8453), and Optimism (chainId 10). Your wallet must be connected via the BotGentz bridge. The protocol fee is set by the contract owner and is displayed before you sign—always review it. Batch size is limited by the block gas limit; very large lists may need to be split. This is an NFT tool for efficient NFT distribution—double-check every recipient address and token ID before signing.

Similar Apps

Log in to BotGentz

Suggest an App

Tell us what you'd find useful — if we build it, we'll email you the moment it's ready.