Овернайты (tbank.overnight)¶
Овернайт — размещение свободного остатка расчётного счёта на ночь под процент. SDK покрывает сводку по счёту и пополнение.
Хост:
secured-openapi.tbank.ru, требуется mTLS-сертификат (cert).Суммы T-API отдаёт строками — модели сохраняют их как есть (без
Decimal).Клиенты:
tbank.overnight.OvernightClient(async) иtbank.overnight.sync.OvernightClient(sync).
from tbank.overnight import OvernightClient
client = OvernightClient(
token="business-token",
cert=("client.pem", "client-key.pem"),
)
info = await client.get_overnight_info("OV-АГ-123")
print(info.amount, info.percent_rate) # сумма на счёте, ставка
print(info.auto_pay.is_active) # автоматическое размещение
print(info.actual_deal.paid_amount) # будущая выплата по сделке
await client.replenish_overnight("OV-АГ-123", "50000.00")
Клиент¶
- class tbank.overnight.aio.OvernightClient(token, *, base_url=None, sandbox=False, cert=None, verify=True, retry=None, transport=None)[исходный код]¶
Базовые классы:
BaseAsyncClientАсинхронный клиент овернайта: сводка по счёту и пополнение.
Домен работает на secured-хосте и требует mTLS-сертификата (cert). Суммы T-API отдаёт строками — модели сохраняют их как есть.
- Параметры:
token (str)
base_url (Optional[str])
sandbox (bool)
cert (Optional[CertTypes])
verify (VerifyTypes)
retry (Optional[RetryPolicy])
transport (Optional[AsyncTransport])
- async get_overnight_info(agreement_number)[исходный код]¶
Сводка по счёту овернайт: суммы, ставка, автоплатёж, текущая сделка.
- Параметры:
agreement_number (str)
- Тип результата:
- async replenish_overnight(agreement_number, amount)[исходный код]¶
Пополнить счёт овернайт на указанную сумму.
Модели¶
- class tbank.overnight.models.OvernightModel[исходный код]¶
Базовые классы:
BaseModelБазовая модель домена: snake_case в Python, camelCase на проводе.
- model_config = {'alias_generator': <function to_camel>, 'extra': 'ignore', 'populate_by_name': True, 'validate_by_alias': True, 'validate_by_name': True}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class tbank.overnight.models.OvernightAutoPay(*, isAccessible, isActive, type=None)[исходный код]¶
Базовые классы:
OvernightModelНастройки автоматического размещения средств.
- Параметры:
isAccessible (bool)
isActive (bool)
type (AutoPayType | None)
- model_config = {'alias_generator': <function to_camel>, 'extra': 'ignore', 'populate_by_name': True, 'validate_by_alias': True, 'validate_by_name': True}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class tbank.overnight.models.OvernightDeal(*, opened, closed, percentRate=None, amount=None, paidAmount=None)[исходный код]¶
Базовые классы:
OvernightModelИнформация по текущей сделке овернайт (суммы — строки).
- Параметры:
- model_config = {'alias_generator': <function to_camel>, 'extra': 'ignore', 'populate_by_name': True, 'validate_by_alias': True, 'validate_by_name': True}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class tbank.overnight.models.OvernightSettings(*, minAmount, maxAmount, currentAmount=None, overnightAmount=None)[исходный код]¶
Базовые классы:
OvernightModelНастройки счёта овернайт (суммы — строки).
- model_config = {'alias_generator': <function to_camel>, 'extra': 'ignore', 'populate_by_name': True, 'validate_by_alias': True, 'validate_by_name': True}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class tbank.overnight.models.OvernightInfo(*, agreementNumber, amount, blockedAmount, isAccessible, isDealActive, autoPay, actualDeal, settings, percentRate=None, linkedAgreementNumber=None)[исходный код]¶
Базовые классы:
OvernightModelСводка по счёту овернайт (суммы — строки, как их отдаёт T-API).
- Параметры:
agreementNumber (str)
amount (str)
blockedAmount (str)
isAccessible (bool)
isDealActive (bool)
autoPay (OvernightAutoPay)
actualDeal (OvernightDeal)
settings (OvernightSettings)
percentRate (str | None)
linkedAgreementNumber (str | None)
- model_config = {'alias_generator': <function to_camel>, 'extra': 'ignore', 'populate_by_name': True, 'validate_by_alias': True, 'validate_by_name': True}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].