Выплаты самозанятым (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.

Параметры:
decimal_body: ClassVar[bool] = True

True → тело парсится с parse_float=Decimal (точные денежные суммы).

async create_recipients(request)[исходный код]

Создать черновики анкет самозанятых.

Параметры:

request (CreateRecipientsRequest)

Тип результата:

str

async get_create_recipients_result(correlation_id)[исходный код]

Результат создания черновиков анкет.

Параметры:

correlation_id (str)

Тип результата:

RecipientResults

async add_recipients_by_requisites(request)[исходный код]

Добавить самозанятых по реквизитам.

Параметры:

request (AddRecipientsByRequisitesRequest)

Тип результата:

str

async get_add_recipients_result(correlation_id)[исходный код]

Результат добавления самозанятых по реквизитам.

Параметры:

correlation_id (str)

Тип результата:

RecipientResults

async list_recipients(request)[исходный код]

Информация по самозанятым (фильтры + пагинация).

Параметры:

request (ListRecipientsRequest)

Тип результата:

ListRecipientsResult

async create_payment_registry(request)[исходный код]

Создать черновик платёжного реестра.

Параметры:

request (CreatePaymentRegistryRequest)

Тип результата:

str

async get_create_registry_result(correlation_id)[исходный код]

Результат создания черновика реестра (paymentRegistryId + ошибки).

Параметры:

correlation_id (str)

Тип результата:

CreateRegistryResult

async submit_payment_registry(registry_id, *, correlation_id=None)[исходный код]

Подписать платёжный реестр (mTLS).

Параметры:
  • registry_id (int)

  • correlation_id (str | None)

Тип результата:

str

async get_submit_result(correlation_id)[исходный код]

Результат подписания реестра (mTLS).

Параметры:

correlation_id (str)

Тип результата:

SubmitRegistryResult

async pay_payment_registry(registry_id, *, correlation_id=None)[исходный код]

Оплатить платёжный реестр (mTLS).

Параметры:
  • registry_id (int)

  • correlation_id (str | None)

Тип результата:

str

async get_pay_result(correlation_id)[исходный код]

Результат оплаты реестра (mTLS).

Параметры:

correlation_id (str)

Тип результата:

PayRegistryResult

async request_receipts(registry_id, *, correlation_id=None)[исходный код]

Запросить чеки по оплаченному реестру (mTLS).

Параметры:
  • registry_id (int)

  • correlation_id (str | None)

Тип результата:

str

async get_receipts_result(correlation_id)[исходный код]

Результат запроса чеков — ссылки на чеки самозанятых (mTLS).

Параметры:

correlation_id (str)

Тип результата:

ReceiptsResult

async list_payment_registries(request)[исходный код]

Список платёжных реестров за период (mTLS).

Параметры:

request (ListRegistriesRequest)

Тип результата:

ListRegistriesResult

async get_payment_registry(registry_id)[исходный код]

Карточка платёжного реестра: суммы, статусы, платежи.

Параметры:

registry_id (int)

Тип результата:

PaymentRegistryInfo

Модели

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].

class tbank.selfemployed.models.CorrelatedRequest(*, correlationId=<factory>)[исходный код]

Базовые классы: SelfEmployedModel

Запрос-инициатор async-операции с клиентским correlationId.

Параметры:

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.models.FieldError(*, fieldName, errorDescription)[исходный код]

Базовые классы: SelfEmployedModel

Параметры:
  • fieldName (str)

  • errorDescription (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.models.CodeMessageError(*, errorCode, errorMessage)[исходный код]

Базовые классы: SelfEmployedModel

Параметры:
  • errorCode (str)

  • errorMessage (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.models.CodeDescriptionError(*, errorCode, errorDescription)[исходный код]

Базовые классы: SelfEmployedModel

Параметры:
  • errorCode (str)

  • errorDescription (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.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

Параметры:
  • type (AddressKind)

  • postalCode (str)

  • state (str)

  • country (str | None)

  • city (str | None)

  • district (str | None)

  • settlement (str | None)

  • street (str | None)

  • house (str | None)

  • building (str | None)

  • construction (str | None)

  • apartment (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].

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

Параметры:
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

Параметры:
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

Параметры:
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

Параметры:
  • accountNumber (str)

  • bankBic (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].

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

Параметры:
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

Параметры:
  • accountNumber (str | None)

  • agreementNumber (str | None)

  • bankBic (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].

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

Параметры:
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

Параметры:
  • firstName (str)

  • lastName (str)

  • middleName (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].

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

Параметры:
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

Параметры:
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

Параметры:
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

Параметры:
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

Параметры:
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

Параметры:
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

Параметры:
  • firstName (str)

  • lastName (str)

  • middleName (str | None)

  • inn (str | None)

  • recipientId (int | 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.Receipt(*, number, selfEmployedInfo, status, link=None, sum=None, comment=None, error=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.ReceiptsResult(*, status, error=None, receipts=<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.ListRegistriesRequest(*, offset=None, statuses=None, periodStart=None, periodEnd=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.PaymentOrder(*, number, date, count, sum, status)[исходный код]

Базовые классы: 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.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

Параметры:
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

Параметры:
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}.

Параметры:
  • correlationId (str)

  • paymentRegistryId (int)

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)[исходный код]

Базовые классы: str, Enum

Поведение при ошибках в платежах реестра.

IGNORE_ERRORS = 'IGNORE_ERRORS'
FAIL_ERRORS = 'FAIL_ERRORS'
class tbank.selfemployed.enums.IncomeType(*values)[исходный код]

Базовые классы: str, Enum

Источник дохода самозанятого.

FROM_INDIVIDUAL = 'FROM_INDIVIDUAL'
class tbank.selfemployed.enums.RevenueTypeCode(*values)[исходный код]

Базовые классы: str, Enum

Код вида выплаты (1–5).

CODE_1 = '1'
CODE_2 = '2'
CODE_3 = '3'
CODE_4 = '4'
CODE_5 = '5'
class tbank.selfemployed.enums.DraftStatus(*values)[исходный код]

Базовые классы: str, Enum

Статус черновика (анкеты самозанятого / реестра) в async-результате.

QUEUED = 'QUEUED'
CREATED = 'CREATED'
ERROR = 'ERROR'
class tbank.selfemployed.enums.RegistryStatus(*values)[исходный код]

Базовые классы: str, Enum

Статус платёжного реестра (список / карточка).

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)[исходный код]

Базовые классы: str, Enum

Статус подписания реестра.

IN_PROGRESS = 'IN_PROGRESS'
ACCEPTED = 'ACCEPTED'
ERROR = 'ERROR'
class tbank.selfemployed.enums.PayResultStatus(*values)[исходный код]

Базовые классы: str, Enum

Статус оплаты реестра.

SEND_IN_PROGRESS = 'SEND_IN_PROGRESS'
SENT = 'SENT'
REJECTED = 'REJECTED'
EXECUTED = 'EXECUTED'
PART_EXEC = 'PART_EXEC'
ERROR = 'ERROR'
class tbank.selfemployed.enums.PaymentResultStatus(*values)[исходный код]

Базовые классы: str, Enum

Статус отдельного платежа при оплате реестра.

IN_PROGRESS = 'IN_PROGRESS'
EXECUTED = 'EXECUTED'
SENT = 'SENT'
ERROR = 'ERROR'
class tbank.selfemployed.enums.PaymentInfoStatus(*values)[исходный код]

Базовые классы: str, Enum

Статус отдельного платежа в карточке реестра.

WAITING = 'WAITING'
ACCEPTED = 'ACCEPTED'
EXECUTED = 'EXECUTED'
REJECTED = 'REJECTED'
CANCELLED = 'CANCELLED'
DELETED = 'DELETED'
class tbank.selfemployed.enums.ReceiptsRequestStatus(*values)[исходный код]

Базовые классы: str, Enum

Статус запроса чеков по реестру.

IN_PROGRESS = 'IN_PROGRESS'
FINISHED = 'FINISHED'
ERROR = 'ERROR'
class tbank.selfemployed.enums.ReceiptStatus(*values)[исходный код]

Базовые классы: str, Enum

Статус отдельного чека.

IN_PROGRESS = 'IN_PROGRESS'
SUCCESS = 'SUCCESS'
CANCELED = 'CANCELED'
FISCALIZE_FAILED = 'FISCALIZE_FAILED'
ERROR = 'ERROR'
class tbank.selfemployed.enums.RecipientStatus(*values)[исходный код]

Базовые классы: str, Enum

Статус карточки самозанятого.

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)[исходный код]

Базовые классы: str, Enum

Статус самозанятости получателя.

REGISTRATION_WAIT = 'REGISTRATION_WAIT'
NOT_CONFIRM = 'NOT_CONFIRM'
NOT_ACTIVE = 'NOT_ACTIVE'
ACTIVE = 'ACTIVE'
class tbank.selfemployed.enums.SelfEmployedIdentificationStatus(*values)[исходный код]

Базовые классы: str, Enum

Статус идентификации самозанятого.

NOT_IDENTIFIED = 'NOT_IDENTIFIED'
IDENTIFIED = 'IDENTIFIED'
class tbank.selfemployed.enums.SelfEmployedAgreementStatus(*values)[исходный код]

Базовые классы: str, Enum

Статус согласия самозанятого.

NOT_REQUESTED = 'NOT_REQUESTED'
REQUESTED = 'REQUESTED'
AGREED = 'AGREED'
REJECTED = 'REJECTED'
REVOKED = 'REVOKED'
class tbank.selfemployed.enums.PhoneType(*values)[исходный код]

Базовые классы: str, Enum

Тип телефона (значения на проводе — на русском).

MOBILE = 'Мобильный'
HOME = 'По месту жительства'
WORK = 'Рабочий'
class tbank.selfemployed.enums.AddressKind(*values)[исходный код]

Базовые классы: str, Enum

Тип адреса анкеты (значения на проводе — на русском).

RESIDENCE = 'Жительства'
REGISTRATION = 'Регистрации'
class tbank.selfemployed.enums.DocumentType(*values)[исходный код]

Базовые классы: str, Enum

Тип документа анкеты (значения на проводе — на русском).

PASSPORT = 'Паспорт'
FOREIGN_PASSPORT = 'Иностранный паспорт'
FOREIGN_TRAVEL_PASSPORT = 'Загр. паспорт иностранного гр.'
SERVICE_PASSPORT = 'Служебный/официальный паспорт'
DIPLOMATIC_PASSPORT = 'Дипломатический паспорт'
MIGRATION_CARD = 'Миграционная карта'
TEMPORARY_RESIDENCE_PERMIT = 'Разр. на временное проживание'
VISA = 'Виза'
RESIDENCE_PERMIT = 'Вид на жительство'