Because smaller banks don't have the compliance team or technology to allow other companies to manage accounts. There's only a few banks that do this. All the challenger banks mainly use the same banks. The core bank systems don't support multi-tenant, most were designed in 90s or 80s and sometimes 70s. The bank needs to build a middle tier to control access so accounts are separated between companies. Protocols to these systems are terrible, its pretty much a terminal and you are reading columns and line positions to get data. SVB i think actually runs a pretty modern core bank system that has "modern" API, probably soap.
Probably because of the same unfounded hype that other startups choose them for, but Stripe Atlas now offers better alternatives with Azlo [1] and Mercury [2], although you can still choose SVB if you want: https://stripe.com/docs/atlas/next#bank-account
I wouldn’t say Azlo is better, a I’ve had more issues with them and support than any other bank I’ve used. Everything they do goes through the larger bank, azlo is more like a shiny wrapper on bva.