You can get a US bank account without US address or SSN. But they would take 2 - 3 years to issue credit card without SSN. Credit Card would be issued based on TIN that would be generated while account data is submitted to IRS for the first time.
Personally, I would not take this approach for it may not be legal. A Tax Identification Number (TIN) is issued by US Federal government / IRS only when you are a legitimate alien (yes the US government calls non-Americans as aliens!) residing in US but are not eligible to apply for a Social Security Number (SSN). Usually, spouses of professionals who go on H1B visa (spouse visa is H4) are the ones who get TINs. But if one has no reason to be in US and especially have no reason to open an US account, then taking this approach may land the person in trouble when they travel to US for employment in the future.
I am not a legal expert on this, but I have lived in US and paid taxes to know that SSN / TIN numbers are not toys and are used to track not just tax returns but a whole lot of information about an individual. Given the fact that US government has been coming down strongly on money laundering since September 11, why go to this length and ask for unwanted trouble?
I did not have SSN when I got BOA account, you get debit card with it that can be used for online purchase.
You need minimum balance of USD 1200 to avoid account opening + monthly charges.
Even I did the same thing when i landed in US,
but, BoA will keep copies of your passport and visa. How would one provide a valid visa from India when you don't have one? And BoA does this mostly with Indian software professionals because they are exploiting a vulnerable population. Unfortunately for any professional on a H1B visa, they do not get a US Social Security Number till they land in US.
So, even though you may have a brand spanking new H1B on your passport and have landed successfully in US, you just can't start getting paid in greenbacks yet since you dont have a SSN! You need to get your I94 in the passport and then go to the nearest social security office and apply for SSN. Issuing SSN may take anywhere between 2 - 10 weeks depending on a lot of factors. But what do we do for salary till then? That's were banks like BoA & Citi step in. Though technically you cannot open an account without SSN, they exploit a loophole (i don't quite know what it is) that allows non immigrant professionals to open an account without SSN. However you are required to provide a copy of your SSN to the bank within six months of account opening if you are on H1B. FYI my employer never paid me salary officially till I got my SSN. I was given allowances equivalent to my salary and they were adjusted against my salaries after I got SSN.
Again, be very cautious on what you're doing and what you're advising to the forum.