From a newbie to the game, so if I missed something in my comment please feel free to correct or flame at will ...
Banks are a form of protecting ones money. Now as I understand it, putting money in the bank protects your money while you're out dueling just in case you bite the bullet, kick the bucket and decide to push up a few daisies. A bank should be able to generate interest on that money for something that would better the town, such as a better guard service for the local bank (more money requires better bank security ... that can come into play if bank robbery is an added feature to the game at some point) but the player should not benefit from that interest that the bank can generate because the bank is guaranteeing that the players money is safe.
Second, why is money automatically deducted from the players bank when the player makes a purchase? Shouldn't this only happen if the player has money in the bank in which he is making the purchase? Did you every hear what tended to happen to money transfers in the old west? (think stagecoach and robbery) As I also understand it, you can only deposit money in the bank in your town. Why? Couldn't you pay a fee, fixed percentage at the time of deposit, to bank in other towns and just have that fee waived if you're a citizen/member of the town? This way, if you want to haul your money back to your town in order to deposit it, then knock yourself out. But if you want the convenience to deposit it safely and keep on paying then it will cost you a small fee (1%, 5%, variable based on the town or size of the bank?)
Taxes are a good idea for the individual towns, but I don't think most people would implement a town tax because they are already paying to boost up their own towns anyway. If the tax rates were set by the town leaders then most would probably set them at zero so as not to scare away new members, after all, have you seen how many towns are in each world ... and they're all competing for members from the same pool of players.