Simple Tinkoff Bank API client
Project description
class ConfirmationInfo: pass# Neolegoff - Tinkoff Banking API client
Предисловие
Использовать на свой страх и риск. В коде нет никаких бэкдоров для вытягивания ваших данных, можете посмотреть сами. Но есть нюансик: если что-то пойдёт не так, то я не виноват, вы сами дураки.
Прогресс разработки
- Регистрация
- Вход в аккаунт
- Номер телефона
- Пароль
- Подтверждение по номеру карты
- Лже-биометрия для быстрого входа без пароля
- Автоматическое управление токенами и генерация конфига устройства
- Продукты
- Счета
- Типы счетов
- Текущие расчётные в валютах (тестировано на Black)
- Кредитных карт
- Тинькофф Мобайл
- Кредит наличными
- Внешние карты сторонних банков
- Про другие счета можно написать в t.me/apfel
- Реквизиты счёта
- Выписки по счёту
- Карты
- Перепривязка карты к другому счёту (валютному)
- Реквизиты карты
- Заморозить карту
- Заблокировать карту
- Лимиты по карте
- Установка пин кода
- Блокировка снятия наличных, операций в интернете
- Уведомления об операциях по карте
- Типы счетов
- Счета
- Открытие новых продуктов
- Карты
- Счета
- Кредит
- Самозанятость
- Присоединение
- Декларирование
- Что-то ещё?
- Платежи
- Свободная форма платежа
- СБП
- Перевод по номеру телефона
- Перевод по QR коду СБП и ПлатиQR
- Стягивание с другого банка
- Разрешение на перевод в другой банк
- Переводы
- По номеру карты
- По номеру телефона (не сбп?)
- Между счетами
- По реквизитам
- По номеру договора в тинькофф
- SWIFT
- Оплата услуг
- Пополнение баланса мобильного
- Получение оператора по номеру телефона
- Прочая срань по API
- Пополнение баланса мобильного
- QR код на снятие налика
- Запрос денег по номеру телефона (через ссылку?)
- Чат
- Поддержка
- Получение сообщений
- Отправка сообщений
- Отправка файлов
- Диалоги с другими клиентами тиньки
- Поддержка
- Ищо
- Курсы валют
- Основной банк СБП
- Секретные вопросы
- Синхронизация контактов
Как установить
Из PyPI:
python -m pip install neolegoff_bank
Из исходников:
git clone https://github.com/whiteapfel/neolegoff-bank.git
cd neolegoff-bank
python setup.py install
Как использовать
Пайплайн авторизации и получение информации о счетах и картах:
import asyncio
from neolegoff_bank import AioNeolegoff
async def login(client):
phone = "79998887766"
password = "vs2p33ox!6x_vma_!y9xjw6gz"
card = "5321304044087960"
async def get_sms_code():
return input("SMS code >>> ")
login_pipeline = client.auth.login_pipeline(phone, password, card)
async for _ in login_pipeline:
# Можно использовать любой вариант получения кода:
# ввести из консоли, дождаться создания файла или бота в телеграме.
# Как угодно. Потребуется только в первый раз, потом будет
# автоматически пропускаться, так как login_pipeline будет пустым
await login_pipeline.asend(await get_sms_code())
async def main():
# `app_name` используется для сохранения информации о токенах,
# сессии и сгенерированном конфиге устройства.
# Часть после двоеточия является паролем для шифрования,
# но это не обязательно, можно абсолютно любую строку
client = AioNeolegoff(app_name="main:whiteapfel")
await login(client)
products = await client.products.get_products()
print(products)
asyncio.run(main())
Далее в примерах будет опущен login, предполагая, что авторизация пройдена
Пополнение баланса мобильника
import asyncio
from decimal import Decimal
from neolegoff_bank import AioNeolegoff
from neolegoff_bank.models.payments.pay_request import PaymentParametersMobileProvider
from neolegoff_bank.models.payments.response import ConfirmationInfo
async def main():
client = AioNeolegoff(app_name="main:whiteapfel")
payment = PaymentParametersMobileProvider(
provider='mts',
account="5160007810",
amount=Decimal("42.72"),
phone="9867657635",
)
commission = await client.payments.payment_commission(payment)
payment_result = await client.payments.pay(payment)
if isinstance(payment_result, ConfirmationInfo):
payment_result = await client.payments.confirm(input("SMS code >>> "), payment_result)
print(payment_result)
asyncio.run(main())
Пайплайн перевода по СБП физику
Пайплайн оплаты по СБП юрику/ип через куар или ссылку
Пайплайн перевода по номеру карты
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
neolegoff_bank-0.0.1a3.tar.gz
(15.2 kB
view details)
Built Distribution
File details
Details for the file neolegoff_bank-0.0.1a3.tar.gz
.
File metadata
- Download URL: neolegoff_bank-0.0.1a3.tar.gz
- Upload date:
- Size: 15.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.9.16
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 003488b919c7516b05d0b9c59e3300526d841e67a25dba357d7da11e6b3698ef |
|
MD5 | ba3976c88d7c5d2bff9abc1d9647a0ac |
|
BLAKE2b-256 | 55d3bf9e4eaea94bedd3514b13b7e9935a687b49915bfeca2f417fc69c126e00 |
File details
Details for the file neolegoff_bank-0.0.1a3-py3-none-any.whl
.
File metadata
- Download URL: neolegoff_bank-0.0.1a3-py3-none-any.whl
- Upload date:
- Size: 13.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.9.16
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0b3e6a322d6994c1c77848f92204d9713e00916ec98248ce76a8e544724ae9bb |
|
MD5 | eb424f1377112e074d8358f721bbff8f |
|
BLAKE2b-256 | 0848d15087ffdd7eafd37fe007cd9c16fca26902e54983185843ab4ea5a2aeba |