My friend is Bulgarian and is a European citizen. He has a Canadian ETA visa and he is travelling to Canada from Bulgaria. He has a four-hour layover in New York airport. He is confused about whether or not he needs a transit visa for the USA. He has no plans to go out of the New York airport.
All passengers traveling through the US will go through passport control in the US, and will need appropriate paperwork:
- Either be a US citizen or US permanent resident
- For citizens of countries eligible for the Visa Waiver Program (VWP), have an ESTA
- Otherwise, they need a visa.
Bulgarians citizens are not eligible for the VWP, so they can't use the (quicker and cheaper) ESTA, they need an actual visa.
This is true even if they stay only a very short time, don't exit the airport, and have connecting flights: there is no "secure airside" transit in the US, everybody enters the US and then exits back again.
It is probably much easier if they change their flights to avoid the US.