Выплаты самозанятым (tbank.selfemployed)¶
E2C-выплаты самозанятым: регистрация анкет, платёжные реестры, их подписание,
оплата и получение чеков. Все операции — асинхронные: инициирующий метод
возвращает клиентский correlationId, по которому затем опрашивается результат
*_result.
Хосты: обычные операции (анкеты, создание реестра, карточка) — на
business.tbank.ru/openapiпо Bearer-токену; подписание, оплата, чеки и список реестров — наsecured-openapi.tbank.ruи требуют mTLS-сертификата (cert).Суммы:
Decimalв рублях (на проводе — number).Провод:
camelCase.Клиенты:
tbank.selfemployed.SelfEmployedClient(async) иtbank.selfemployed.sync.SelfEmployedClient(sync).
Сценарий выплаты¶
from decimal import Decimal
from tbank.selfemployed import SelfEmployedClient
from tbank.selfemployed.models import (
AddRecipientsByRequisitesRequest, RecipientByRequisites, RecipientBankInfo,
CreatePaymentRegistryRequest, RegistryPayment, SelfEmployedInfo,
)
client = SelfEmployedClient(
token="self-service-token",
cert=("client.pem", "client-key.pem"), # mTLS для подписания/оплаты/чеков
)
# 1) добавить самозанятого по реквизитам → correlationId для опроса
cid = await client.add_recipients_by_requisites(AddRecipientsByRequisitesRequest(
recipients=[RecipientByRequisites(
number=1, first_name="Иван", last_name="Петров",
inn="770012345678",
bank_info=RecipientBankInfo(account_number="40817810000000000001"),
)],
))
result = await client.get_add_recipients_result(cid) # ждём CREATED
# 2) создать черновик платёжного реестра
cid = await client.create_payment_registry(CreatePaymentRegistryRequest(
payments=[RegistryPayment(
number=1, account_number="40817810000000000001",
payment_purpose="Оплата услуг",
self_employed_info=SelfEmployedInfo(first_name="Иван", last_name="Петров"),
sum=Decimal("1500.50"),
)],
))
created = await client.get_create_registry_result(cid) # → paymentRegistryId
registry_id = created.payment_registry_id
# 3) подписать → 4) оплатить (mTLS)
await client.submit_payment_registry(registry_id)
sub = await client.get_submit_result(cid) # ждём ACCEPTED
await client.pay_payment_registry(registry_id)
pay = await client.get_pay_result(cid) # статусы платежей
# 5) чеки самозанятых
await client.request_receipts(registry_id)
receipts = await client.get_receipts_result(cid) # ссылки на чеки
correlationId генерируется SDK автоматически (можно передать свой через
correlation_id=). Инициирующие методы возвращают именно его.
Самозанятые (анкеты)¶
from tbank.selfemployed.models import (
CreateRecipientsRequest, RecipientDraft, ListRecipientsRequest,
)
from tbank.selfemployed.enums import DocumentType, PhoneType
# полная анкета (черновик)
await client.create_recipients(CreateRecipientsRequest(recipients=[RecipientDraft(
number=1, first_name="Иван", last_name="Петров",
birth_date="1990-01-02", birth_place="Москва", citizenship="РФ",
)]))
# информация по самозанятым (фильтры + пагинация)
await client.list_recipients(ListRecipientsRequest(inn=["770012345678"], limit=50))
Реестры¶
from tbank.selfemployed.models import ListRegistriesRequest
from tbank.selfemployed.enums import RegistryStatus
# список реестров за период (mTLS)
await client.list_payment_registries(ListRegistriesRequest(
statuses=[RegistryStatus.EXECUTED], period_start="2026-01-01", period_end="2026-06-30",
))
# карточка реестра
info = await client.get_payment_registry(registry_id) # суммы, статусы, платежи
Клиент¶
- class tbank.selfemployed.aio.SelfEmployedClient(token, *, base_url=None, secured_base_url=None, sandbox=False, cert=None, verify=True, retry=None, transport=None, secured_transport=None)[исходный код]¶
Базовые классы:
BaseAsyncClientАсинхронный клиент выплат самозанятым (e2c): анкеты, платёжные реестры, подписание, оплата и чеки.
Часть операций (подписание/оплата/чеки/список реестров) идёт на secured-хост и требует mTLS-сертификата (cert); анкеты и создание реестра — на обычном хосте по Bearer-токену. Все инициирующие методы возвращают клиентский correlationId, по которому опрашивается *_result.
- Параметры:
token (str)
base_url (Optional[str])
secured_base_url (Optional[str])
sandbox (bool)
cert (Optional[CertTypes])
verify (VerifyTypes)
retry (Optional[RetryPolicy])
transport (Optional[AsyncTransport])
secured_transport (Optional[AsyncTransport])
- decimal_body: ClassVar[bool] = True¶
True → тело парсится с parse_float=Decimal (точные денежные суммы).
- async create_recipients(request)[исходный код]¶
Создать черновики анкет самозанятых.
- Параметры:
request (CreateRecipientsRequest)
- Тип результата:
- async get_create_recipients_result(correlation_id)[исходный код]¶
Результат создания черновиков анкет.
- Параметры:
correlation_id (str)
- Тип результата:
- async add_recipients_by_requisites(request)[исходный код]¶
Добавить самозанятых по реквизитам.
- Параметры:
request (AddRecipientsByRequisitesRequest)
- Тип результата:
- async get_add_recipients_result(correlation_id)[исходный код]¶
Результат добавления самозанятых по реквизитам.
- Параметры:
correlation_id (str)
- Тип результата:
- async list_recipients(request)[исходный код]¶
Информация по самозанятым (фильтры + пагинация).
- Параметры:
request (ListRecipientsRequest)
- Тип результата:
- async create_payment_registry(request)[исходный код]¶
Создать черновик платёжного реестра.
- Параметры:
request (CreatePaymentRegistryRequest)
- Тип результата:
- async get_create_registry_result(correlation_id)[исходный код]¶
Результат создания черновика реестра (paymentRegistryId + ошибки).
- Параметры:
correlation_id (str)
- Тип результата:
- async submit_payment_registry(registry_id, *, correlation_id=None)[исходный код]¶
Подписать платёжный реестр (mTLS).
- async get_submit_result(correlation_id)[исходный код]¶
Результат подписания реестра (mTLS).
- Параметры:
correlation_id (str)
- Тип результата:
- async pay_payment_registry(registry_id, *, correlation_id=None)[исходный код]¶
Оплатить платёжный реестр (mTLS).
- async get_pay_result(correlation_id)[исходный код]¶
Результат оплаты реестра (mTLS).
- Параметры:
correlation_id (str)
- Тип результата:
- async request_receipts(registry_id, *, correlation_id=None)[исходный код]¶
Запросить чеки по оплаченному реестру (mTLS).
- async get_receipts_result(correlation_id)[исходный код]¶
Результат запроса чеков — ссылки на чеки самозанятых (mTLS).
- Параметры:
correlation_id (str)
- Тип результата:
- async list_payment_registries(request)[исходный код]¶
Список платёжных реестров за период (mTLS).
- Параметры:
request (ListRegistriesRequest)
- Тип результата:
- async get_payment_registry(registry_id)[исходный код]¶
Карточка платёжного реестра: суммы, статусы, платежи.
- Параметры:
registry_id (int)
- Тип результата:
Модели¶
- class tbank.selfemployed.models.SelfEmployedModel[исходный код]¶
Базовые классы:
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].
Базовые классы:
SelfEmployedModelЗапрос-инициатор async-операции с клиентским correlationId.
- Параметры:
correlationId (str)
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class tbank.selfemployed.models.FieldError(*, fieldName, errorDescription)[исходный код]¶
Базовые классы:
SelfEmployedModel- 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.selfemployed.models.CodeMessageError(*, errorCode, errorMessage)[исходный код]¶
Базовые классы:
SelfEmployedModel- 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.selfemployed.models.CodeDescriptionError(*, errorCode, errorDescription)[исходный код]¶
Базовые классы:
SelfEmployedModel- 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.selfemployed.models.RecipientPhone(*, type, number)[исходный код]¶
Базовые классы:
SelfEmployedModel- 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.selfemployed.models.RecipientAddress(*, type, postalCode, state, country=None, city=None, district=None, settlement=None, street=None, house=None, building=None, construction=None, apartment=None)[исходный код]¶
Базовые классы:
SelfEmployedModel- Параметры:
- 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.selfemployed.models.RecipientDocument(*, type, serial, date, organization, number=None, division=None, expireDate=None)[исходный код]¶
Базовые классы:
SelfEmployedModel- Параметры:
- 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.selfemployed.models.RegistrationInfo(*, oktmo, activityCodes=<factory>)[исходный код]¶
Базовые классы:
SelfEmployedModel- 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.selfemployed.models.RecipientDraft(*, number, firstName, lastName, birthDate, birthPlace, citizenship, middleName=None, email=None, latinFirstName=None, latinLastName=None, phones=None, addresses=None, documents=None, registrationInfo=None)[исходный код]¶
Базовые классы:
SelfEmployedModel- Параметры:
number (int)
firstName (str)
lastName (str)
birthDate (date)
birthPlace (str)
citizenship (str)
middleName (str | None)
email (str | None)
latinFirstName (str | None)
latinLastName (str | None)
phones (List[RecipientPhone] | None)
addresses (List[RecipientAddress] | None)
documents (List[RecipientDocument] | None)
registrationInfo (RegistrationInfo | 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.selfemployed.models.CreateRecipientsRequest(*, correlationId=<factory>, recipients)[исходный код]¶
Базовые классы:
CorrelatedRequest- Параметры:
correlationId (str)
recipients (List[RecipientDraft])
- 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.selfemployed.models.RecipientResult(*, number, firstName, lastName, status, recipientId=None, middleName=None, errors=<factory>)[исходный код]¶
Базовые классы:
SelfEmployedModel- Параметры:
number (int)
firstName (str)
lastName (str)
status (DraftStatus)
recipientId (int | None)
middleName (str | None)
errors (List[FieldError])
- 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.selfemployed.models.RecipientResults(*, recipientResults=<factory>)[исходный код]¶
Базовые классы:
SelfEmployedModel- Параметры:
recipientResults (List[RecipientResult])
- 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.selfemployed.models.RecipientBankInfo(*, accountNumber, bankBic=None)[исходный код]¶
Базовые классы:
SelfEmployedModel- 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.selfemployed.models.RecipientByRequisites(*, number, firstName, lastName, bankInfo, middleName=None, mobileNumber=None, inn=None)[исходный код]¶
Базовые классы:
SelfEmployedModel- Параметры:
- 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.selfemployed.models.AddRecipientsByRequisitesRequest(*, correlationId=<factory>, recipients)[исходный код]¶
Базовые классы:
CorrelatedRequest- Параметры:
correlationId (str)
recipients (List[RecipientByRequisites])
- 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.selfemployed.models.DateRange(*, from_=None, to=None)[исходный код]¶
Базовые классы:
SelfEmployedModel- 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.selfemployed.models.ListRecipientsRequest(*, recipientIds=None, inn=None, status=None, selfEmployedStatus=None, creationDate=None, offset=None, limit=None)[исходный код]¶
Базовые классы:
SelfEmployedModel- Параметры:
- 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.selfemployed.models.RecipientBankInfoFull(*, accountNumber=None, agreementNumber=None, bankBic=None)[исходный код]¶
Базовые классы:
SelfEmployedModel- 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.selfemployed.models.RecipientInfo(*, id, status, selfEmployedStatus, selfEmployedIdentificationStatus, selfEmployedAgreementStatus, firstName, lastName, bankInfo, middleName=None, birthDate=None, phones=None, documents=None, registrationInfo=None, inn=None, creationDate=None)[исходный код]¶
Базовые классы:
SelfEmployedModel- Параметры:
id (int)
status (RecipientStatus)
selfEmployedStatus (SelfEmployedStatus)
selfEmployedIdentificationStatus (SelfEmployedIdentificationStatus)
selfEmployedAgreementStatus (SelfEmployedAgreementStatus)
firstName (str)
lastName (str)
bankInfo (RecipientBankInfoFull)
middleName (str | None)
birthDate (date | None)
phones (List[RecipientPhone] | None)
documents (List[RecipientDocument] | None)
registrationInfo (RegistrationInfo | None)
inn (str | None)
creationDate (datetime | 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.selfemployed.models.ListRecipientsResult(*, recipients=<factory>)[исходный код]¶
Базовые классы:
SelfEmployedModel- Параметры:
recipients (List[RecipientInfo])
- 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.selfemployed.models.SelfEmployedInfo(*, firstName, lastName, middleName=None)[исходный код]¶
Базовые классы:
SelfEmployedModel- 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.selfemployed.models.RegistryPayment(*, number, accountNumber, paymentPurpose, selfEmployedInfo, sum, revenueTypeCode=None, collectionAmount=None)[исходный код]¶
Базовые классы:
SelfEmployedModel- Параметры:
number (int)
accountNumber (str)
paymentPurpose (str)
selfEmployedInfo (SelfEmployedInfo)
sum (Annotated[Decimal, PlainSerializer(func=~tbank.selfemployed.models.<lambda>, return_type=float, when_used=json)])
revenueTypeCode (RevenueTypeCode | None)
collectionAmount (Annotated[Decimal, PlainSerializer(func=~tbank.selfemployed.models.<lambda>, return_type=float, when_used=json)] | 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.selfemployed.models.CreatePaymentRegistryRequest(*, correlationId=<factory>, payments, companyAccountNumber=None, registryCreateType=None, taxHolding=None, incomeType=None)[исходный код]¶
Базовые классы:
CorrelatedRequest- Параметры:
correlationId (str)
payments (List[RegistryPayment])
companyAccountNumber (str | None)
registryCreateType (RegistryCreateType | None)
taxHolding (bool | None)
incomeType (IncomeType | 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.selfemployed.models.PaymentError(*, number, accountNumber=None, errors=<factory>)[исходный код]¶
Базовые классы:
SelfEmployedModel- Параметры:
number (int)
accountNumber (str | None)
errors (List[FieldError])
- 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.selfemployed.models.CreateRegistryResult(*, status, paymentRegistryId=None, error=None, paymentErrors=<factory>)[исходный код]¶
Базовые классы:
SelfEmployedModel- Параметры:
status (DraftStatus)
paymentRegistryId (int | None)
error (FieldError | None)
paymentErrors (List[PaymentError])
- 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.selfemployed.models.SubmitRegistryResult(*, paymentRegistryId, status, error=None, paymentErrors=<factory>)[исходный код]¶
Базовые классы:
SelfEmployedModel- Параметры:
paymentRegistryId (int)
status (SubmitResultStatus)
error (CodeMessageError | None)
paymentErrors (List[PaymentError])
- 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.selfemployed.models.PaymentResult(*, number, paymentStatus, accountNumber=None, errors=<factory>)[исходный код]¶
Базовые классы:
SelfEmployedModel- Параметры:
number (int)
paymentStatus (PaymentResultStatus)
accountNumber (str | None)
errors (List[FieldError])
- 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.selfemployed.models.PayRegistryResult(*, paymentRegistryId, status, count, error=None, paymentResults=<factory>)[исходный код]¶
Базовые классы:
SelfEmployedModel- Параметры:
paymentRegistryId (int)
status (PayResultStatus)
count (int)
error (CodeDescriptionError | None)
paymentResults (List[PaymentResult])
- 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.selfemployed.models.ReceiptSelfEmployedInfo(*, firstName, lastName, middleName=None, inn=None, recipientId=None)[исходный код]¶
Базовые классы:
SelfEmployedModel- Параметры:
- 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.selfemployed.models.Receipt(*, number, selfEmployedInfo, status, link=None, sum=None, comment=None, error=None)[исходный код]¶
Базовые классы:
SelfEmployedModel- Параметры:
number (int)
selfEmployedInfo (ReceiptSelfEmployedInfo)
status (ReceiptStatus)
link (str | None)
sum (Decimal | None)
comment (str | None)
error (CodeMessageError | 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.selfemployed.models.ReceiptsResult(*, status, error=None, receipts=<factory>)[исходный код]¶
Базовые классы:
SelfEmployedModel- Параметры:
status (ReceiptsRequestStatus)
error (CodeMessageError | 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.selfemployed.models.ListRegistriesRequest(*, offset=None, statuses=None, periodStart=None, periodEnd=None)[исходный код]¶
Базовые классы:
SelfEmployedModel- Параметры:
offset (int | None)
statuses (List[RegistryStatus] | None)
periodStart (date | None)
periodEnd (date | 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.selfemployed.models.PaymentOrder(*, number, date, count, sum, status)[исходный код]¶
Базовые классы:
SelfEmployedModel- Параметры:
number (int)
date (datetime)
count (int)
sum (Decimal)
status (RegistryStatus)
- 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.selfemployed.models.ListRegistriesResult(*, paymentOrders=<factory>)[исходный код]¶
Базовые классы:
SelfEmployedModel- Параметры:
paymentOrders (List[PaymentOrder])
- 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.selfemployed.models.RegistryPaymentInfo(*, status, selfEmployedInfo, sum, number=None, accountNumber=None, paymentPurpose=None, revenueTypeCode=None, collectionAmount=None)[исходный код]¶
Базовые классы:
SelfEmployedModel- Параметры:
status (PaymentInfoStatus)
selfEmployedInfo (SelfEmployedInfo)
sum (Decimal)
number (int | None)
accountNumber (str | None)
paymentPurpose (str | None)
revenueTypeCode (RevenueTypeCode | None)
collectionAmount (Decimal | 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.selfemployed.models.PaymentRegistryInfo(*, status, paymentsCount, totalSum, loadDate=None, payments=<factory>)[исходный код]¶
Базовые классы:
SelfEmployedModel- Параметры:
status (RegistryStatus)
paymentsCount (int)
totalSum (Decimal)
loadDate (str | None)
payments (List[RegistryPaymentInfo])
- 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.selfemployed.models.RegistryActionRequest(*, correlationId=<factory>, paymentRegistryId)[исходный код]¶
Базовые классы:
CorrelatedRequestТело submit/pay/receipts: {correlationId, paymentRegistryId}.
- 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.selfemployed.models.CorrelationRef(*, correlationId)[исходный код]¶
Базовые классы:
SelfEmployedModelСсылка по correlationId (query для GET-результатов, тело для pay/result).
- Параметры:
correlationId (str)
- 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.selfemployed.enums.RegistryCreateType(*values)[исходный код]¶
-
Поведение при ошибках в платежах реестра.
- IGNORE_ERRORS = 'IGNORE_ERRORS'¶
- FAIL_ERRORS = 'FAIL_ERRORS'¶
- class tbank.selfemployed.enums.IncomeType(*values)[исходный код]¶
-
Источник дохода самозанятого.
- FROM_LEGAL_ENTITY = 'FROM_LEGAL_ENTITY'¶
- FROM_INDIVIDUAL = 'FROM_INDIVIDUAL'¶
- class tbank.selfemployed.enums.RevenueTypeCode(*values)[исходный код]¶
-
Код вида выплаты (1–5).
- CODE_1 = '1'¶
- CODE_2 = '2'¶
- CODE_3 = '3'¶
- CODE_4 = '4'¶
- CODE_5 = '5'¶
- class tbank.selfemployed.enums.DraftStatus(*values)[исходный код]¶
-
Статус черновика (анкеты самозанятого / реестра) в async-результате.
- QUEUED = 'QUEUED'¶
- CREATED = 'CREATED'¶
- ERROR = 'ERROR'¶
- class tbank.selfemployed.enums.RegistryStatus(*values)[исходный код]¶
-
Статус платёжного реестра (список / карточка).
- DRAFT = 'DRAFT'¶
- ERROR = 'ERROR'¶
- SUBMITTED = 'SUBMITTED'¶
- PROCESSING = 'PROCESSING'¶
- ACCEPTED = 'ACCEPTED'¶
- EXECUTED = 'EXECUTED'¶
- PART_EXEC = 'PART_EXEC'¶
- REJECTED = 'REJECTED'¶
- CANCELLED = 'CANCELLED'¶
- DELETED = 'DELETED'¶
- class tbank.selfemployed.enums.SubmitResultStatus(*values)[исходный код]¶
-
Статус подписания реестра.
- IN_PROGRESS = 'IN_PROGRESS'¶
- ACCEPTED = 'ACCEPTED'¶
- ERROR = 'ERROR'¶
- class tbank.selfemployed.enums.PayResultStatus(*values)[исходный код]¶
-
Статус оплаты реестра.
- SEND_IN_PROGRESS = 'SEND_IN_PROGRESS'¶
- SENT = 'SENT'¶
- REJECTED = 'REJECTED'¶
- EXECUTED = 'EXECUTED'¶
- PART_EXEC = 'PART_EXEC'¶
- ERROR = 'ERROR'¶
- class tbank.selfemployed.enums.PaymentResultStatus(*values)[исходный код]¶
-
Статус отдельного платежа при оплате реестра.
- IN_PROGRESS = 'IN_PROGRESS'¶
- EXECUTED = 'EXECUTED'¶
- SENT = 'SENT'¶
- ERROR = 'ERROR'¶
- class tbank.selfemployed.enums.PaymentInfoStatus(*values)[исходный код]¶
-
Статус отдельного платежа в карточке реестра.
- WAITING = 'WAITING'¶
- ACCEPTED = 'ACCEPTED'¶
- EXECUTED = 'EXECUTED'¶
- REJECTED = 'REJECTED'¶
- CANCELLED = 'CANCELLED'¶
- DELETED = 'DELETED'¶
- class tbank.selfemployed.enums.ReceiptsRequestStatus(*values)[исходный код]¶
-
Статус запроса чеков по реестру.
- IN_PROGRESS = 'IN_PROGRESS'¶
- FINISHED = 'FINISHED'¶
- ERROR = 'ERROR'¶
- class tbank.selfemployed.enums.ReceiptStatus(*values)[исходный код]¶
-
Статус отдельного чека.
- IN_PROGRESS = 'IN_PROGRESS'¶
- SUCCESS = 'SUCCESS'¶
- CANCELED = 'CANCELED'¶
- FISCALIZE_FAILED = 'FISCALIZE_FAILED'¶
- ERROR = 'ERROR'¶
- class tbank.selfemployed.enums.RecipientStatus(*values)[исходный код]¶
-
Статус карточки самозанятого.
- DRAFT = 'DRAFT'¶
- PROCESSING = 'PROCESSING'¶
- PROCESSING_ERROR = 'PROCESSING_ERROR'¶
- ACTIVE = 'ACTIVE'¶
- ERROR = 'ERROR'¶
- REJECTED = 'REJECTED'¶
- DELETED = 'DELETED'¶
- MTNG_SCHD = 'MTNG_SCHD'¶
- MTNG_WAIT = 'MTNG_WAIT'¶
- MTNG_CANC = 'MTNG_CANC'¶
- class tbank.selfemployed.enums.SelfEmployedStatus(*values)[исходный код]¶
-
Статус самозанятости получателя.
- REGISTRATION_WAIT = 'REGISTRATION_WAIT'¶
- NOT_CONFIRM = 'NOT_CONFIRM'¶
- NOT_ACTIVE = 'NOT_ACTIVE'¶
- ACTIVE = 'ACTIVE'¶
- class tbank.selfemployed.enums.SelfEmployedIdentificationStatus(*values)[исходный код]¶
-
Статус идентификации самозанятого.
- NOT_IDENTIFIED = 'NOT_IDENTIFIED'¶
- IDENTIFIED = 'IDENTIFIED'¶
- class tbank.selfemployed.enums.SelfEmployedAgreementStatus(*values)[исходный код]¶
-
Статус согласия самозанятого.
- NOT_REQUESTED = 'NOT_REQUESTED'¶
- REQUESTED = 'REQUESTED'¶
- AGREED = 'AGREED'¶
- REJECTED = 'REJECTED'¶
- REVOKED = 'REVOKED'¶
- class tbank.selfemployed.enums.PhoneType(*values)[исходный код]¶
-
Тип телефона (значения на проводе — на русском).
- MOBILE = 'Мобильный'¶
- HOME = 'По месту жительства'¶
- WORK = 'Рабочий'¶
- class tbank.selfemployed.enums.AddressKind(*values)[исходный код]¶
-
Тип адреса анкеты (значения на проводе — на русском).
- RESIDENCE = 'Жительства'¶
- REGISTRATION = 'Регистрации'¶
- class tbank.selfemployed.enums.DocumentType(*values)[исходный код]¶
-
Тип документа анкеты (значения на проводе — на русском).
- PASSPORT = 'Паспорт'¶
- FOREIGN_PASSPORT = 'Иностранный паспорт'¶
- FOREIGN_TRAVEL_PASSPORT = 'Загр. паспорт иностранного гр.'¶
- SERVICE_PASSPORT = 'Служебный/официальный паспорт'¶
- DIPLOMATIC_PASSPORT = 'Дипломатический паспорт'¶
- MIGRATION_CARD = 'Миграционная карта'¶
- TEMPORARY_RESIDENCE_PERMIT = 'Разр. на временное проживание'¶
- VISA = 'Виза'¶
- RESIDENCE_PERMIT = 'Вид на жительство'¶