I use https://www.pomerium.io/ for my internal services with Google oauth. I like it because unlike oauth-proxy I can define which users are allowed to which (sub)domains. I run this in Kubernetes and it supports forward authentication, so adding a new service is editing a configmap to let pomerium know about the domain and its allowed users (support for defining this in the ingress is coming), and adding a few ingress annotations.
N26 does most of what Revolut does, and it's a real bank. The exchange rates are a bit worse than Revolut but still better than the average bank. They have a webapp but you cannot topup with other cards, you can only transfer money into it.