Yes you absolutely can, the order of instruction is what matters here. This is what happens when you send any token from your wallet to a new address. First create ATA instruction is passed and then the transfer instruction. The 'associatedToken' variable in this case will be passed in destination. Here's an example code: ```typescript const token = new PublicKey(mint); const transaction = new Transaction(); const fromTokenAccount = await getAssociatedTokenAddress(token, fromPubKey); const toTokenAccount = await getAssociatedTokenAddress(token, toPubKey); const toTokenAccountInfo = await connection.getAccountInfo(toTokenAccount); // Add create token account instruction if source account not created if (!toTokenAccountInfo) { transaction.add( createAssociatedTokenAccountInstruction( fromPubKey, toTokenAccount, toPubKey, token ) ); } // Add token transfer instructions to transaction transaction.add( createTransferInstruction( fromTokenAccount, toTokenAccount, fromPubKey, Number(amount) * 1000000 // Token decimal (6 in case of USDC) ) );