There are two good answers to this: One is that there is a cost associated with everything: the banks have salaries, overhead, and risk. I have two business operating accounts and it costs me $2.00 to move money between them at any time. But writing software costs money and maintaining computer security does too. The other issue is risk. I can use ACH transactions to pay or receive funds from customers or vendors at a minimal cost but this is because the accounts at each end are verified. You can do what is called a Fed wire which is a transfer into another bank account in the US for about $10.00, not a very high cost, but the transfer is irrevocable and the bank takes no risk in making the transaction because I as the sender have verified where the money is supposed to go. You can use remote deposit which is the automated check processing introduced a few years ago by the Fed. You know the one where it may say substitute check on your bank statement. THe problem here is how long the bank may hold the deposit and hang on to the float depending on the source of the funds. There is no free lunch when it comes to this stuff. SRM