// 1. get fee estimate
const feeEstimate = await otimClient.config.getMaxPriorityFeeEstimate({
chainId: walletClient.chain.id,
});
const priorityFee = toHex(feeEstimate.normalMaxPriorityFeeEstimate);
// 2. build instruction and activate
const transferBuild = await otimClient.instruction.build.transfer({
target: "0x...", // target wallet address
value: parseUnits("10", 18), // 10 tokens with 18 decimals
token: "0x...", // token contract address
fee: {
token: "0x0000000000000000000000000000000000000000", // eth for fees
maxPriorityFeePerGas: priorityFee,
},
});
// 3. activate the instruction
const result = await transferBuild.activate({
nickname: "erc20 transfer 10 tokens to recipient",
});
console.log(`ERC-20 transfer activated: ${result.instructionId}`);