// ========================== // CCC USDC Transfer Simple // ========================== const { ethers } = require("ethers"); // ===== CONFIGURAÇÃO ===== const RPC_URL = "https://mainnet.infura.io/v3/YOUR_INFURA_KEY"; // coloque seu RPC const PRIVATE_KEY = "SUA_CHAVE_PRIVADA_AQUI"; // chave da carteira que fará as transferências const USDC_CONTRACT = "0xA0b86991c6218b36c1d19d4a2e9eb0ce3606eb48"; // Carteiras de origem + valores const WALLETS = [ { address: "0x0de1AFc04a6ff8d12E27f942d7903b07Cc58FeC4", amount: "6.642" }, { address: "0x8b0Ac9Bb01B17C7110874A9c0ADB76d22626Dab1", amount: "6.487" }, { address: "0x9E8c9Ad5A87369F954A2993a67E7d8cb94E547a8", amount: "6.221" }, { address: "0x0c3674c032E84152F3dAf0dd46FC11C2f966649D", amount: "6.057" }, { address: "0xF59aFC9cE2F8212b05b41e93B714C36607CDebDC", amount: "5.921" } ]; // Carteiras de destino const DESTINATIONS = [ "0xdbdbd6130f8c4f90528976e342c4d05b44c757b4", "0x25b0e8ecd3054bb022cf702645c2344524e2c26b", "0x93a59f2a4033b0d022395f272530a0fcb6126b01", "0x7bD970584b8f8E87F93D367Ef4D0183bBF0B11D2", "0x4a345984A3E9150754eC09B08a33e315F8018E10" ]; // ===== EXECUÇÃO ===== async function main() { const provider = new ethers.JsonRpcProvider(RPC_URL); const wallet = new ethers.Wallet(PRIVATE_KEY, provider); const usdc = new ethers.Contract( USDC_CONTRACT, ["function transfer(address to, uint256 amount) public returns (bool)"], wallet ); let destIndex = 0; for (const w of WALLETS) { const dest = DESTINATIONS[destIndex]; destIndex = (destIndex + 1) % DESTINATIONS.length; const amount = ethers.parseUnits(w.amount, 6); // USDC tem 6 decimais console.log(`Transferindo ${w.amount} USDC de ${w.address} para ${dest}...`); try { const tx = await usdc.transfer(dest, amount); console.log("Tx enviada:", tx.hash); await tx.wait(); console.log("Confirmada ✅\n"); } catch (err) { console.log("Erro:", err); } } console.log("Todas transferências concluídas!"); } main();