This release is a pre-release and may not be stable for production use.
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())
Пайплайн перевода по СБП физику
Пайплайн оплаты по СБП юрику/ип через куар или ссылку
Пайплайн перевода по номеру карты
Metadata
Release files for neolegoff-bank 0.0.1a3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| neolegoff_bank-0.0.1a3.tar.gz | 15.2 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| neolegoff_bank-0.0.1a3-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 28.7 kB
Release files / neolegoff_bank-0.0.1a3.tar.gz
| Download URL | neolegoff_bank-0.0.1a3.tar.gz |
|---|---|
| Size | 15.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
003488b919c7516b05d0b9c59e3300526d841e67a25dba357d7da11e6b3698ef
|
|
BLAKE2b-256 checksum How to use checksums |
55d3bf9e4eaea94bedd3514b13b7e9935a687b49915bfeca2f417fc69c126e00
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.9.16
|
Release files / neolegoff_bank-0.0.1a3-py3-none-any.whl
| Download URL | neolegoff_bank-0.0.1a3-py3-none-any.whl |
|---|---|
| Size | 13.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
0b3e6a322d6994c1c77848f92204d9713e00916ec98248ce76a8e544724ae9bb
|
|
BLAKE2b-256 checksum How to use checksums |
0848d15087ffdd7eafd37fe007cd9c16fca26902e54983185843ab4ea5a2aeba
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.9.16
|
Security for neolegoff-bank 0.0.1a3
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.