tinkoff_api
TinkoffApi для Crystal Lang
Библиотека для доступ к Tinkoff Business OpenApi с авторизацией через сценарий Селф-Сервиса.
Ознакомиться с документацией Тинькоффа.
Установка
-
Добавьте зависимость в Ваш
shard.yml
:dependencies: tinkoff_api: github: marzhaev/tinkoff_api
-
Выполните
shards install
Использование
require "tinkoff_api"
Для авторизации требуется передать выданный банком ключ доступа (AccessToken) Селф-Сервис сценария через переменную среды.
Пример через командную строку
TINKOFF_ACCESS_TOKEN=... crystal run src/tinkoff_api.cr
Пример через код Вашего приложения
ENV["TINKOFF_ACCESS_TOKEN"] ||= "..."
Примеры запросов
На данный момент реализованы три сервиса: - информация по компании, информация по счетам, выписка по счёту
Информация по компании доступна:
response = TinkoffApi::Company::Client.new.execute #=> TinkoffApi::Company::Response
response.name # Название Вашей компании
Список счетов компании доступен:
response = TinkoffApi::BankAccounts::Client.new.execute #=> TinkoffApi::BankAccounts::Response
bank_account = response.bank_accounts[0] # Первый доступный счёт
bank_account.balance # Остаток на первом счёте
Получение выписки требует указания счёта и, по желания, начала и конца периода. В примере ниже мы используем два разных варианта задания даты
from = Time.utc(2021, 3, 2, 0, 0, 0).to_tinkoff # Задание через родной Time
from = TinkoffApi::Date.new("2021-03-02") # Задание вручную
statement = TinkoffApi::BankStatement::Client.new.execute(account_number: "...", from: from)
statement.saldo_in # Возвращает входящее сальдо
operation = statement.saldoIn[0] # Возвращает первое платёжное поручение
operation.amount # Возвращает сумму платёжного поручения
Contributing
- Fork it (https://github.com/marzhaev/tinkoff_api/fork)
- Create your feature branch (
git checkout -b my-new-feature
) - Commit your changes (
git commit -am 'Add some feature'
) - Push to the branch (
git push origin my-new-feature
) - Create a new Pull Request
Contributors
- Mikhail Arzhaev - creator and maintainer
tinkoff_api
- 2
- 0
- 0
- 0
- 0
- 2 days ago
- March 3, 2021
MIT License
Wed, 02 Apr 2025 22:49:10 GMT