If you've ever tried to call a European bank's open banking endpoint directly — say, to read your own account balances programmatically — you probably hit a wall that looks something like this:

HTTP 401 Unauthorized

{"error": "invalid_client", "error_description": "mutual TLS certificate required"}

Enter fullscreen mode

Exit fullscreen mode