Перечень сторонних компонентов программного обеспечения «БанкСклад»
Версия документа: 0.2
Дата подготовки: 2026-06-03
Дата утверждения: 2026-06-03
Правообладатель: ИП Рыбин Анатолий Сергеевич
ИНН: 344597418038
ОГРНИП: 322344300063718
Программное обеспечение: «БанкСклад»
Версия ПО: 2.0
1. Назначение документа
Документ содержит рабочий перечень сторонних программных компонентов, используемых в ПО «БанкСклад» версии 2.0.
Перечень составлен на основании файлов репозитория «БанкСклад»:
requirements.txt;functions/requirements.txt;front/package.json;front/yarn.lock.
Python-зависимости зафиксированы по воспроизведенному freeze от 2026-06-03. Freeze сформирован во временных окружениях Python 3.12 по файлам requirements.txt и functions/requirements.txt без изменения репозитория «БанкСклад». Production Dockerfile использует базовый образ python:3.12-slim.
2. Серверная часть
| Компонент | Версия/диапазон | Лицензия | Назначение |
|---|---|---|---|
| Python | 3.12 (python:3.12-slim) | PSF License | Язык программирования серверной части |
| FastAPI | 0.101.0 | MIT | Backend API |
| Pydantic | 2.4.0 | MIT | Валидация данных и схемы |
| Pydantic Core | 2.10.0 | MIT | Ядро валидации Pydantic |
| Pydantic Settings | 2.2.1 | MIT | Настройки приложения из окружения |
| SQLAlchemy | 2.0.23 | MIT | ORM и работа с БД |
| Alembic | 1.11.0 | MIT | Миграции БД |
| Asyncpg | 0.29.0 | Apache-2.0 | Асинхронный драйвер PostgreSQL |
| Uvicorn | 0.23.1 | BSD-3-Clause | ASGI-сервер |
| Aiohttp | 3.9.5 | Apache-2.0 | Асинхронные HTTP-запросы |
| UJSON | 5.8.0 | BSD-3-Clause | Быстрая обработка JSON |
| Python JSON Logger | 4.1.0 | BSD-2-Clause | Форматирование логов в JSON |
| AioLogger | 0.7.0 | MIT | Асинхронное логирование |
| Python JOSE | 3.3.0 | MIT | Работа с JOSE/JWT |
| PyJWT | 2.13.0 | MIT | Работа с JWT |
| Cryptography | 48.0.0 | Apache-2.0 или BSD | Криптографические операции |
| Python Telegram Bot | 22.7 | LGPL-3.0 | Пользовательские Telegram-уведомления |
| Pytz | 2026.2 | MIT | Работа с часовыми поясами |
| Sentry SDK | 2.61.1 | MIT | Мониторинг ошибок |
| Boto3 | 1.43.22 | Apache-2.0 | Работа с S3-совместимым хранилищем |
| Botocore | 1.43.22 | Apache-2.0 | Низкоуровневый клиент AWS/S3 API |
| S3Transfer | 0.18.0 | Apache-2.0 | Передача объектов в S3 |
| Dacite | 1.9.2 | MIT | Преобразование словарей в dataclass-структуры |
| Starlette | 0.27.0 | BSD-3-Clause | ASGI-фреймворк, транзитивная зависимость FastAPI |
| AnyIO | 4.13.0 | MIT | Асинхронная совместимость |
| HTTPX | 0.28.1 | BSD-3-Clause | HTTP-клиент, транзитивная зависимость Telegram Bot |
| HTTP Core | 1.0.9 | BSD-3-Clause | Низкоуровневый HTTP-клиент |
| Python Dotenv | 1.2.2 | BSD-3-Clause | Загрузка переменных окружения |
| Python Dateutil | 2.9.0.post0 | Apache-2.0 или BSD | Работа с датами |
| RSA | 4.9.1 | Apache-2.0 | Криптографические операции |
| ECDSA | 0.19.2 | MIT | Криптографические операции |
| PyASN1 | 0.6.3 | BSD-2-Clause | ASN.1-структуры |
| CFFI | 2.0.0 | MIT | FFI для cryptography |
| Pycparser | 3.0 | BSD-3-Clause | C parser для CFFI |
| Mako | 1.3.12 | MIT | Шаблоны миграций Alembic |
| MarkupSafe | 3.0.3 | BSD-3-Clause | Безопасная обработка строк в шаблонах |
| Click | 8.4.1 | BSD-3-Clause | CLI-зависимость Uvicorn |
| Certifi | 2026.5.20 | MPL-2.0 | Корневые сертификаты |
| Typing Extensions | 4.15.0 | PSF License | Расширения typing |
| Annotated Types | 0.7.0 | MIT | Типы для Pydantic |
| AioSignal | 1.4.0 | Apache-2.0 | Сигналы aiohttp |
| Attrs | 26.1.0 | MIT | Вспомогательные структуры данных |
| Frozenlist | 1.8.0 | Apache-2.0 | Неизменяемые списки для aiohttp |
| Multidict | 6.7.1 | Apache-2.0 | HTTP multi-dict для aiohttp |
| Yarl | 1.24.2 | Apache-2.0 | URL-структуры для aiohttp |
| PropCache | 0.5.2 | Apache-2.0 | Кэширование свойств для aiohttp |
| IDNA | 3.18 | BSD-3-Clause | Internationalized domain names |
| H11 | 0.16.0 | MIT | HTTP/1.1 протокол |
| JMESPath | 1.1.0 | MIT | Запросы к JSON-структурам AWS SDK |
| Six | 1.17.0 | MIT | Совместимость Python-библиотек |
| Urllib3 | 2.7.0 | MIT | HTTP-клиент, транзитивная зависимость |
3. Фоновые функции и обработчики
| Компонент | Версия/диапазон | Лицензия | Назначение |
|---|---|---|---|
| PyYAML | 6.0.3 | MIT | Чтение YAML-конфигураций |
| Aiohttp | 3.14.0 | Apache-2.0 | Асинхронные HTTP-запросы |
| AioLogger | 0.7.0 | MIT | Асинхронное логирование |
| Python Telegram Bot | 22.7 | LGPL-3.0 | Telegram-уведомления |
| Chardet | 7.4.3 | LGPL-2.1 | Определение кодировки текстовых данных |
| Beautiful Soup 4 | 4.14.3 | MIT | Разбор HTML/XML |
| LXML | 6.1.1 | BSD-3-Clause | Разбор XML/HTML |
| Python Magic | 0.4.27 | MIT | Определение типа файлов |
| Boto3 | 1.43.22 | Apache-2.0 | Работа с S3-совместимым хранилищем |
| Botocore | 1.43.22 | Apache-2.0 | Низкоуровневый клиент AWS/S3 API |
| S3Transfer | 0.18.0 | Apache-2.0 | Передача объектов в S3 |
| Six | 1.17.0 | MIT | Совместимость Python-библиотек |
| Aiohappyeyeballs | 2.6.2 | PSF License | Ускорение TCP-подключений aiohttp |
| AioSignal | 1.4.0 | Apache-2.0 | Сигналы aiohttp |
| AnyIO | 4.13.0 | MIT | Асинхронная совместимость |
| Attrs | 26.1.0 | MIT | Вспомогательные структуры данных |
| Certifi | 2026.5.20 | MPL-2.0 | Корневые сертификаты |
| Frozenlist | 1.8.0 | Apache-2.0 | Неизменяемые списки для aiohttp |
| H11 | 0.16.0 | MIT | HTTP/1.1 протокол |
| HTTP Core | 1.0.9 | BSD-3-Clause | Низкоуровневый HTTP-клиент |
| HTTPX | 0.28.1 | BSD-3-Clause | HTTP-клиент |
| IDNA | 3.18 | BSD-3-Clause | Internationalized domain names |
| JMESPath | 1.1.0 | MIT | Запросы к JSON-структурам AWS SDK |
| Multidict | 6.7.1 | Apache-2.0 | HTTP multi-dict для aiohttp |
| PropCache | 0.5.2 | Apache-2.0 | Кэширование свойств для aiohttp |
| Python Dateutil | 2.9.0.post0 | Apache-2.0 или BSD | Работа с датами |
| Soupsieve | 2.8.4 | MIT | CSS-селекторы для Beautiful Soup |
| Typing Extensions | 4.15.0 | PSF License | Расширения typing |
| Urllib3 | 2.7.0 | MIT | HTTP-клиент, транзитивная зависимость |
| Yarl | 1.24.2 | Apache-2.0 | URL-структуры для aiohttp |
4. Пользовательский frontend
| Компонент | Версия по front/yarn.lock | Лицензия | Назначение |
|---|---|---|---|
| Nuxt | 3.15.2 | MIT | Frontend-фреймворк |
| Vue | 3.5.13 | MIT | UI-библиотека |
| Vue Router | 4.5.0 | MIT | Маршрутизация frontend |
| Pinia | 2.1.7 | MIT | Хранилище состояния frontend |
| PrimeVue | 4.3.3 | MIT | UI-компоненты |
| PrimeVue Themes | 4.3.3 | MIT | Темы UI-компонентов |
| PrimeVue Nuxt Module | 4.3.3 | MIT | Интеграция PrimeVue с Nuxt |
| PrimeIcons | 7.0.0 | MIT | Иконки интерфейса |
| Tailwind CSS | 3.4.17 | MIT | CSS utility-фреймворк |
| Nuxt TailwindCSS Module | 6.11.3 | MIT | Интеграция Tailwind CSS с Nuxt |
| PostCSS | 8.5.3 | MIT | Обработка CSS |
| Autoprefixer | 10.4.21 | MIT | Добавление CSS vendor-prefixes |
| JWT Decode | 4.0.0 | MIT | Декодирование JWT на frontend |
| Yandex Metrika Module Nuxt 3 | 1.5.3 | MIT | Интеграция с Яндекс Метрикой |
5. Инфраструктурные и внешние компоненты
| Компонент/сервис | Лицензия/основание | Назначение |
|---|---|---|
| PostgreSQL | PostgreSQL License | Основная база данных |
| Docker | Apache-2.0 | Контейнеризация и поставка серверной части |
| Яндекс Облако | Договор с провайдером | Размещение серверной инфраструктуры на территории РФ |
| S3-совместимое объектное хранилище Яндекс Облака | Договор с провайдером | Хранение файлов и объектов |
| API «МоегоСклада» | Документация и договорные условия «МоегоСклада» | Работа с аккаунтом, платежами, контрагентами, организациями и документами |
| Vendor API «МоегоСклада» | Документация и договорные условия «МоегоСклада» | Установка приложения, статусы аккаунта и открытие приложения |
| API банков | Договорные условия банков | Прямые банковские интеграции |
| Электронная почта | Договорные условия провайдера | Получение регулярных банковских выписок |
| Telegram Bot API | Условия Telegram | Пользовательские уведомления |
6. Компонент DataSklad Vendor
«БанкСклад» работает в связке с общим контуром DataSklad Vendor, который используется как инфраструктурный компонент для установки приложения через каталог решений «МоегоСклада», обработки vendor-запросов, авторизации открытия приложения, статуса доступа, тарифов и служебных транзакций.
DataSklad Vendor не является отдельным пользовательским продуктом в рамках настоящего пакета документов. В заявке по ПО «БанкСклад» его следует описывать как платформенный/инфраструктурный компонент, обеспечивающий работу экземпляра ПО, установку через «МойСклад» и контроль доступа.
7. Что уточнить перед подачей
- При необходимости сверить воспроизведенный freeze с фактическим production-контейнером БанкСклада.
- Уточнить версии PostgreSQL, Docker/base image и системных пакетов контейнера.
- Проверить, нужно ли включать транзитивные зависимости frontend из
yarn.lockполностью или достаточно прямых зависимостей. - Зафиксировать, какие компоненты входят именно в production-сборку, а какие используются только для разработки.