I'm trying integrate your Admin API features into a bank.
For example there are some company which uses your service and our bank.
We want to provide this company ability to see it's balance and transactions.
I found balance and transactions in Admin API, but I still don't understand how to make requests.
Where can I read instructions how to get api keys and how to use them to make requests?
That only applies to private apps. If you are publishing a public app or connecting a third party application to Shopify you can also authenticate through OAuth so you don't need to get the user to generate the API keys. https://shopify.dev/concepts/about-apis/authentication
But why you can't just show your users in their dashboards some api keys and they can't give me them to fetch their balance data like the most services do?
Why I have to create apps in your service?
As a user I just want to see my keys in dashboard to make api admin requests.
Why so many steps to do the simplest thing?
That is what your user does when they create a private app under your name: https://shopify.dev/tutorials/authenticate-a-private-app-with-shopify-admin#generate-credentials-fro...
After they create the private app they are shown API key and password which they then provide to you. It is very similar to other applications where you have to manually generate API keys. The main difference is the user is sorting their private keys under specific apps. Not much difference from other platforms as you want unique API key for each third party you are providing access to.
Ok, I've created a private app in your service.
Now how to fetch balance and balance transactions using ruby or at least curl?
I've read this https://shopify.dev/docs/admin-api/rest/reference/shopify_payments/balance and this https://github.com/Shopify/shopify_api and still don't understand.