Why do some banks have more than one routing number in the US?
For example, Bank of America has several routing numbers:
Why not use the same routing number for all types of transactions?
A lot of it has to do with bank mergers, acquisitions, etc. over the years. In order to reduce the confusion generated with routing numbers changing, they are kept around. This happened to me when US Bank took over the bank I used after it failed. This was in the 2008-2009 timeframe and the routing number from the original bank is still used. In fact, checks from the original bank are still good.
The numbers came into existence long before computers/automation of processing. They are designed to help banks internally work out where money is coming from (location) and what it's for (task).
As a consequence, large banks with exposure to multiple geographic markets and domains of service use multiple numbers to show them exactly what's going on.
This historical legacy remains in place today, as no one wants to undertake the monumental task of unpicking the routing number system.
The wire transfer numbers are different because they work across a different network (SWIFT - Society for Worldwide Interbank Financial Telecommunication), which handles international interbank transfers. As such, they'll be assigned different numbers than the ABA Routing Transit Number (ABA RTN) network, used for transactions between banks in the United States.